]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
build: bump jest, puppeteer and use official rollup terser plugin
authorEvan You <yyx990803@gmail.com>
Mon, 14 Nov 2022 10:21:58 +0000 (18:21 +0800)
committerEvan You <yyx990803@gmail.com>
Mon, 14 Nov 2022 10:21:58 +0000 (18:21 +0800)
51 files changed:
jest.config.js
package.json
packages/compiler-core/__tests__/__snapshots__/codegen.spec.ts.snap
packages/compiler-core/__tests__/__snapshots__/compile.spec.ts.snap
packages/compiler-core/__tests__/__snapshots__/parse.spec.ts.snap
packages/compiler-core/__tests__/__snapshots__/scopeId.spec.ts.snap
packages/compiler-core/__tests__/codegen.spec.ts
packages/compiler-core/__tests__/transforms/__snapshots__/hoistStatic.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/transformExpressions.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/transformText.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/vFor.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/vIf.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/vMemo.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/vModel.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/vOnce.spec.ts.snap
packages/compiler-core/__tests__/transforms/__snapshots__/vSlot.spec.ts.snap
packages/compiler-dom/__tests__/__snapshots__/index.spec.ts.snap
packages/compiler-dom/__tests__/transforms/__snapshots__/Transition.spec.ts.snap
packages/compiler-dom/__tests__/transforms/__snapshots__/stringifyStatic.spec.ts.snap
packages/compiler-dom/__tests__/transforms/__snapshots__/vModel.spec.ts.snap
packages/compiler-dom/__tests__/transforms/__snapshots__/vShow.spec.ts.snap
packages/compiler-sfc/__tests__/__snapshots__/compileScript.spec.ts.snap
packages/compiler-sfc/__tests__/__snapshots__/compileScriptPropsTransform.spec.ts.snap
packages/compiler-sfc/__tests__/__snapshots__/compileTemplate.spec.ts.snap
packages/compiler-sfc/__tests__/__snapshots__/cssVars.spec.ts.snap
packages/compiler-sfc/__tests__/__snapshots__/templateTransformAssetUrl.spec.ts.snap
packages/compiler-sfc/__tests__/__snapshots__/templateTransformSrcset.spec.ts.snap
packages/compiler-sfc/__tests__/cssVars.spec.ts
packages/compiler-ssr/__tests__/ssrComponent.spec.ts
packages/compiler-ssr/__tests__/ssrElement.spec.ts
packages/compiler-ssr/__tests__/ssrFallthroughAttrs.spec.ts
packages/compiler-ssr/__tests__/ssrInjectCssVars.spec.ts
packages/compiler-ssr/__tests__/ssrPortal.spec.ts
packages/compiler-ssr/__tests__/ssrScopeId.spec.ts
packages/compiler-ssr/__tests__/ssrSlotOutlet.spec.ts
packages/compiler-ssr/__tests__/ssrSuspense.spec.ts
packages/compiler-ssr/__tests__/ssrText.spec.ts
packages/compiler-ssr/__tests__/ssrTransitionGroup.spec.ts
packages/compiler-ssr/__tests__/ssrVFor.spec.ts
packages/compiler-ssr/__tests__/ssrVIf.spec.ts
packages/compiler-ssr/__tests__/ssrVModel.spec.ts
packages/compiler-ssr/__tests__/ssrVShow.spec.ts
packages/runtime-core/__tests__/hydration.spec.ts
packages/shared/__tests__/__snapshots__/codeframe.spec.ts.snap
packages/shared/__tests__/normalizeProp.spec.ts
packages/shared/__tests__/toDisplayString.spec.ts
packages/vue-compat/__tests__/componentFunctional.spec.ts
packages/vue/__tests__/e2eUtils.ts
packages/vue/examples/__tests__/svg.spec.ts
pnpm-lock.yaml
rollup.config.mjs

index 248fb6d086c91426cc71764b1512808059158539..5a75ee75584f19205bf524c70f7e4a46084add56 100644 (file)
@@ -2,6 +2,17 @@ module.exports = {
   testEnvironment: 'jsdom',
   preset: 'ts-jest',
   setupFilesAfterEnv: ['./scripts/setupJestEnv.ts'],
+  transform: {
+    '^.+\\.tsx?$': [
+      'ts-jest',
+      {
+        tsconfig: {
+          target: 'esnext',
+          sourceMap: true
+        }
+      }
+    ]
+  },
   globals: {
     __DEV__: true,
     __TEST__: true,
@@ -15,13 +26,7 @@ module.exports = {
     __FEATURE_OPTIONS_API__: true,
     __FEATURE_SUSPENSE__: true,
     __FEATURE_PROD_DEVTOOLS__: false,
-    __COMPAT__: true,
-    'ts-jest': {
-      tsconfig: {
-        target: 'esnext',
-        sourceMap: true
-      }
-    }
+    __COMPAT__: true
   },
   coverageDirectory: 'coverage',
   coverageReporters: ['html', 'lcov', 'text'],
index 10e9619122136fa8a1bade3023355b5deb426ed9..8d2b5e1d471c000ba493977b55be50463b9fa120 100644 (file)
     "@rollup/plugin-json": "^5.0.1",
     "@rollup/plugin-node-resolve": "^15.0.1",
     "@rollup/plugin-replace": "^5.0.1",
+    "@rollup/plugin-terser": "^0.1.0",
     "@types/hash-sum": "^1.0.0",
-    "@types/jest": "^27.0.1",
+    "@types/jest": "^29.2.2",
     "@types/node": "^16.4.7",
-    "@types/puppeteer": "^5.0.0",
     "@typescript-eslint/parser": "^5.23.0",
     "@vue/consolidate": "0.17.3",
     "@vue/reactivity": "workspace:*",
@@ -79,7 +79,8 @@
     "eslint-plugin-jest": "26.1.5",
     "execa": "^4.0.2",
     "fs-extra": "^9.0.1",
-    "jest": "^27.1.0",
+    "jest": "^29.3.1",
+    "jest-environment-jsdom": "^29.3.1",
     "lint-staged": "^10.2.10",
     "lodash": "^4.17.15",
     "marked": "^4.0.10",
     "npm-run-all": "^4.1.5",
     "prettier": "^2.7.1",
     "pug": "^3.0.1",
-    "puppeteer": "^10.4.0",
+    "puppeteer": "^19.2.2",
     "rollup": "~3.2.3",
     "rollup-plugin-node-builtins": "^2.1.2",
     "rollup-plugin-node-globals": "^1.4.0",
     "rollup-plugin-polyfill-node": "^0.11.0",
-    "rollup-plugin-terser": "^7.0.2",
     "rollup-plugin-typescript2": "^0.34.1",
     "semver": "^7.3.2",
     "serve": "^12.0.0",
-    "terser": "^5.15.1",
     "simple-git-hooks": "^2.8.1",
+    "terser": "^5.15.1",
     "todomvc-app-css": "^2.3.0",
-    "ts-jest": "^27.0.5",
+    "ts-jest": "^29.0.3",
     "tslib": "^2.4.0",
     "typescript": "^4.8.0",
     "vite": "^3.0.0",
index c292b0329340763b886a77a8319680f7fad6df3c..036b7c8f95332518e5f511ad264810721b99c4be 100644 (file)
@@ -48,12 +48,12 @@ exports[`compiler: codegen Element (callExpression + objectExpression + Template
 "
 return function render(_ctx, _cache) {
   with (_ctx) {
-    return _createElementVNode(\\"div\\", {
-      id: \\"foo\\",
+    return _createElementVNode("div", {
+      id: "foo",
       [prop]: bar,
       [foo + bar]: bar
     }, [
-      _createElementVNode(\\"p\\", { \\"some-key\\": \\"foo\\" })
+      _createElementVNode("p", { "some-key": "foo" })
     ], 16)
   }
 }"
@@ -63,12 +63,12 @@ exports[`compiler: codegen assets + temps 1`] = `
 "
 return function render(_ctx, _cache) {
   with (_ctx) {
-    const _component_Foo = _resolveComponent(\\"Foo\\")
-    const _component_bar_baz = _resolveComponent(\\"bar-baz\\")
-    const _component_barbaz = _resolveComponent(\\"barbaz\\")
-    const _component_Qux = _resolveComponent(\\"Qux\\", true)
-    const _directive_my_dir_0 = _resolveDirective(\\"my_dir_0\\")
-    const _directive_my_dir_1 = _resolveDirective(\\"my_dir_1\\")
+    const _component_Foo = _resolveComponent("Foo")
+    const _component_bar_baz = _resolveComponent("bar-baz")
+    const _component_barbaz = _resolveComponent("barbaz")
+    const _component_Qux = _resolveComponent("Qux", true)
+    const _directive_my_dir_0 = _resolveDirective("my_dir_0")
+    const _directive_my_dir_1 = _resolveDirective("my_dir_1")
     let _temp0, _temp1, _temp2
 
     return null
@@ -80,7 +80,7 @@ exports[`compiler: codegen comment 1`] = `
 "
 return function render(_ctx, _cache) {
   with (_ctx) {
-    return _createCommentVNode(\\"foo\\")
+    return _createCommentVNode("foo")
   }
 }"
 `;
@@ -135,7 +135,7 @@ return function render(_ctx, _cache) {
 exports[`compiler: codegen hoists 1`] = `
 "
 const _hoisted_1 = hello
-const _hoisted_2 = { id: \\"foo\\" }
+const _hoisted_2 = { id: "foo" }
 
 return function render(_ctx, _cache) {
   with (_ctx) {
@@ -165,7 +165,7 @@ return function render(_ctx, _cache) {
 `;
 
 exports[`compiler: codegen module mode preamble 1`] = `
-"import { createVNode as _createVNode, resolveDirective as _resolveDirective } from \\"vue\\"
+"import { createVNode as _createVNode, resolveDirective as _resolveDirective } from "vue"
 
 export function render(_ctx, _cache) {
   return null
@@ -173,7 +173,7 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler: codegen module mode preamble w/ optimizeImports: true 1`] = `
-"import { createVNode, resolveDirective } from \\"vue\\"
+"import { createVNode, resolveDirective } from "vue"
 
 // Binding optimization for webpack code-split
 const _createVNode = createVNode, _resolveDirective = resolveDirective
@@ -187,7 +187,7 @@ exports[`compiler: codegen static text 1`] = `
 "
 return function render(_ctx, _cache) {
   with (_ctx) {
-    return \\"hello\\"
+    return "hello"
   }
 }"
 `;
index a9189ac72a9fafcb0b9f0522cb1cf1aac1c7ad73..02c995fe97fc9d4b46631c8796e31d1ad5536ad2 100644 (file)
@@ -7,19 +7,19 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, renderList: _renderList, createElementVNode: _createElementVNode, normalizeClass: _normalizeClass } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", {
-      id: \\"foo\\",
+    return (_openBlock(), _createElementBlock("div", {
+      id: "foo",
       class: _normalizeClass(bar.baz)
     }, [
-      _createTextVNode(_toDisplayString(world.burn()) + \\" \\", 1 /* TEXT */),
+      _createTextVNode(_toDisplayString(world.burn()) + ", 1 /* TEXT */),
       ok
-        ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }, \\"yes\\"))
+        ? (_openBlock(), _createElementBlock("div", { key: 0 }, "yes"))
         : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [
-            _createTextVNode(\\"no\\")
+            _createTextVNode("no")
           ], 64 /* STABLE_FRAGMENT */)),
       (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(list, (value, index) => {
-        return (_openBlock(), _createElementBlock(\\"div\\", null, [
-          _createElementVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */)
+        return (_openBlock(), _createElementBlock("div", null, [
+          _createElementVNode("span", null, _toDisplayString(value + index), 1 /* TEXT */)
         ]))
       }), 256 /* UNKEYED_FRAGMENT */))
     ], 2 /* CLASS */))
@@ -31,19 +31,19 @@ exports[`compiler: integration tests function mode w/ prefixIdentifiers: true 1`
 "const { toDisplayString: _toDisplayString, openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, renderList: _renderList, createElementVNode: _createElementVNode, normalizeClass: _normalizeClass } = Vue
 
 return function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", {
-    id: \\"foo\\",
+  return (_openBlock(), _createElementBlock("div", {
+    id: "foo",
     class: _normalizeClass(_ctx.bar.baz)
   }, [
-    _createTextVNode(_toDisplayString(_ctx.world.burn()) + \\" \\", 1 /* TEXT */),
+    _createTextVNode(_toDisplayString(_ctx.world.burn()) + ", 1 /* TEXT */),
     (_ctx.ok)
-      ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }, \\"yes\\"))
+      ? (_openBlock(), _createElementBlock("div", { key: 0 }, "yes"))
       : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [
-          _createTextVNode(\\"no\\")
+          _createTextVNode("no")
         ], 64 /* STABLE_FRAGMENT */)),
     (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, (value, index) => {
-      return (_openBlock(), _createElementBlock(\\"div\\", null, [
-        _createElementVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */)
+      return (_openBlock(), _createElementBlock("div", null, [
+        _createElementVNode("span", null, _toDisplayString(value + index), 1 /* TEXT */)
       ]))
     }), 256 /* UNKEYED_FRAGMENT */))
   ], 2 /* CLASS */))
@@ -51,22 +51,22 @@ return function render(_ctx, _cache) {
 `;
 
 exports[`compiler: integration tests module mode 1`] = `
-"import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, renderList as _renderList, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass } from \\"vue\\"
+"import { toDisplayString as _toDisplayString, openBlock as _openBlock, createElementBlock as _createElementBlock, createCommentVNode as _createCommentVNode, createTextVNode as _createTextVNode, Fragment as _Fragment, renderList as _renderList, createElementVNode as _createElementVNode, normalizeClass as _normalizeClass } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", {
-    id: \\"foo\\",
+  return (_openBlock(), _createElementBlock("div", {
+    id: "foo",
     class: _normalizeClass(_ctx.bar.baz)
   }, [
-    _createTextVNode(_toDisplayString(_ctx.world.burn()) + \\" \\", 1 /* TEXT */),
+    _createTextVNode(_toDisplayString(_ctx.world.burn()) + ", 1 /* TEXT */),
     (_ctx.ok)
-      ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }, \\"yes\\"))
+      ? (_openBlock(), _createElementBlock("div", { key: 0 }, "yes"))
       : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [
-          _createTextVNode(\\"no\\")
+          _createTextVNode("no")
         ], 64 /* STABLE_FRAGMENT */)),
     (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, (value, index) => {
-      return (_openBlock(), _createElementBlock(\\"div\\", null, [
-        _createElementVNode(\\"span\\", null, _toDisplayString(value + index), 1 /* TEXT */)
+      return (_openBlock(), _createElementBlock("div", null, [
+        _createElementVNode("span", null, _toDisplayString(value + index), 1 /* TEXT */)
       ]))
     }), 256 /* UNKEYED_FRAGMENT */))
   ], 2 /* CLASS */))
index 000cedaf86fa71fa8e17cac257f03d385a58a080..8a12c8c399f8f71fa3d6b3064dd5f02d4d3195d2 100644 (file)
@@ -1,21 +1,21 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`compiler: parse Errors ABRUPT_CLOSING_OF_EMPTY_COMMENT <template><!--></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "<!-->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -26,40 +26,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 27,
           "line": 1,
           "offset": 26,
         },
         "source": "<template><!--></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 27,
       "line": 1,
       "offset": 26,
     },
     "source": "<template><!--></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -71,21 +71,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors ABRUPT_CLOSING_OF_EMPTY_COMMENT <template><!---></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 17,
               "line": 1,
               "offset": 16,
             },
             "source": "<!--->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -96,40 +96,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 28,
           "line": 1,
           "offset": 27,
         },
         "source": "<template><!---></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 28,
       "line": 1,
       "offset": 27,
     },
     "source": "<template><!---></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -141,21 +141,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors ABRUPT_CLOSING_OF_EMPTY_COMMENT <template><!----></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 18,
               "line": 1,
               "offset": 17,
             },
             "source": "<!---->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -166,40 +166,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 29,
           "line": 1,
           "offset": 28,
         },
         "source": "<template><!----></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 29,
       "line": 1,
       "offset": 28,
     },
     "source": "<template><!----></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -211,21 +211,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors CDATA_IN_HTML_CONTENT <template><![CDATA[cdata]]></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "[CDATA[cdata]]",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 28,
               "line": 1,
               "offset": 27,
             },
             "source": "<![CDATA[cdata]]>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -236,40 +236,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 39,
           "line": 1,
           "offset": 38,
         },
         "source": "<template><![CDATA[cdata]]></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 39,
       "line": 1,
       "offset": 38,
     },
     "source": "<template><![CDATA[cdata]]></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -281,23 +281,23 @@ Object {
 `;
 
 exports[`compiler: parse Errors CDATA_IN_HTML_CONTENT <template><svg><![CDATA[cdata]]></svg></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [
-            Object {
+  "children": [
+    {
+      "children": [
+        {
+          "children": [
+            {
               "content": "cdata",
-              "loc": Object {
-                "end": Object {
+              "loc": {
+                "end": {
                   "column": 30,
                   "line": 1,
                   "offset": 29,
                 },
                 "source": "cdata",
-                "start": Object {
+                "start": {
                   "column": 25,
                   "line": 1,
                   "offset": 24,
@@ -308,21 +308,21 @@ Object {
           ],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 39,
               "line": 1,
               "offset": 38,
             },
             "source": "<svg><![CDATA[cdata]]></svg>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 1,
-          "props": Array [],
+          "props": [],
           "tag": "svg",
           "tagType": 0,
           "type": 1,
@@ -330,40 +330,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 50,
           "line": 1,
           "offset": 49,
         },
         "source": "<template><svg><![CDATA[cdata]]></svg></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 50,
       "line": 1,
       "offset": 49,
     },
     "source": "<template><svg><![CDATA[cdata]]></svg></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -375,39 +375,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors DUPLICATE_ATTRIBUTE <template><div id="" id=""></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 34,
               "line": 1,
               "offset": 33,
             },
-            "source": "<div id=\\"\\" id=\\"\\"></div>",
-            "start": Object {
+            "source": "<div id="" id=""></div>",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 21,
                   "line": 1,
                   "offset": 20,
                 },
-                "source": "id=\\"\\"",
-                "start": Object {
+                "source": "id=""",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -415,16 +415,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 21,
                     "line": 1,
                     "offset": 20,
                   },
-                  "source": "\\"\\"",
-                  "start": Object {
+                  "source": """",
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -433,15 +433,15 @@ Object {
                 "type": 2,
               },
             },
-            Object {
-              "loc": Object {
-                "end": Object {
+            {
+              "loc": {
+                "end": {
                   "column": 27,
                   "line": 1,
                   "offset": 26,
                 },
-                "source": "id=\\"\\"",
-                "start": Object {
+                "source": "id=""",
+                "start": {
                   "column": 22,
                   "line": 1,
                   "offset": 21,
@@ -449,16 +449,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 27,
                     "line": 1,
                     "offset": 26,
                   },
-                  "source": "\\"\\"",
-                  "start": Object {
+                  "source": """",
+                  "start": {
                     "column": 25,
                     "line": 1,
                     "offset": 24,
@@ -475,40 +475,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 45,
           "line": 1,
           "offset": 44,
         },
-        "source": "<template><div id=\\"\\" id=\\"\\"></div></template>",
-        "start": Object {
+        "source": "<template><div id="" id=""></div></template>",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 45,
       "line": 1,
       "offset": 44,
     },
-    "source": "<template><div id=\\"\\" id=\\"\\"></div></template>",
-    "start": Object {
+    "source": "<template><div id="" id=""></div></template>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -520,30 +520,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors END_TAG_WITH_ATTRIBUTES <template><div></div id=""></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 28,
               "line": 1,
               "offset": 27,
             },
-            "source": "<div></div id=\\"\\">",
-            "start": Object {
+            "source": "<div></div id="">",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "div",
           "tagType": 0,
           "type": 1,
@@ -551,40 +551,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 39,
           "line": 1,
           "offset": 38,
         },
-        "source": "<template><div></div id=\\"\\"></template>",
-        "start": Object {
+        "source": "<template><div></div id=""></template>",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 39,
       "line": 1,
       "offset": 38,
     },
-    "source": "<template><div></div id=\\"\\"></template>",
-    "start": Object {
+    "source": "<template><div></div id=""></template>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -596,30 +596,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors END_TAG_WITH_TRAILING_SOLIDUS <template><div></div/></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 23,
               "line": 1,
               "offset": 22,
             },
             "source": "<div></div/>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "div",
           "tagType": 0,
           "type": 1,
@@ -627,40 +627,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 34,
           "line": 1,
           "offset": 33,
         },
         "source": "<template><div></div/></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 34,
       "line": 1,
       "offset": 33,
     },
     "source": "<template><div></div/></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -672,21 +672,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_BEFORE_TAG_NAME <template>< 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "<",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 12,
               "line": 1,
               "offset": 11,
             },
             "source": "<",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -697,40 +697,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 12,
           "line": 1,
           "offset": 11,
         },
         "source": "<template><",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 12,
       "line": 1,
       "offset": 11,
     },
     "source": "<template><",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -742,21 +742,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_BEFORE_TAG_NAME <template></ 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "</",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 13,
               "line": 1,
               "offset": 12,
             },
             "source": "</",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -767,40 +767,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 13,
           "line": 1,
           "offset": 12,
         },
         "source": "<template></",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 13,
       "line": 1,
       "offset": 12,
     },
     "source": "<template></",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -812,30 +812,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_CDATA <template><svg><![CDATA[ 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 25,
               "line": 1,
               "offset": 24,
             },
             "source": "<svg><![CDATA[",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 1,
-          "props": Array [],
+          "props": [],
           "tag": "svg",
           "tagType": 0,
           "type": 1,
@@ -843,40 +843,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<template><svg><![CDATA[",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<template><svg><![CDATA[",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -888,23 +888,23 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_CDATA <template><svg><![CDATA[cdata 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [
-            Object {
+  "children": [
+    {
+      "children": [
+        {
+          "children": [
+            {
               "content": "cdata",
-              "loc": Object {
-                "end": Object {
+              "loc": {
+                "end": {
                   "column": 30,
                   "line": 1,
                   "offset": 29,
                 },
                 "source": "cdata",
-                "start": Object {
+                "start": {
                   "column": 25,
                   "line": 1,
                   "offset": 24,
@@ -915,21 +915,21 @@ Object {
           ],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 30,
               "line": 1,
               "offset": 29,
             },
             "source": "<svg><![CDATA[cdata",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 1,
-          "props": Array [],
+          "props": [],
           "tag": "svg",
           "tagType": 0,
           "type": 1,
@@ -937,40 +937,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 30,
           "line": 1,
           "offset": 29,
         },
         "source": "<template><svg><![CDATA[cdata",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 30,
       "line": 1,
       "offset": 29,
     },
     "source": "<template><svg><![CDATA[cdata",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -982,21 +982,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_COMMENT <template><! 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 13,
               "line": 1,
               "offset": 12,
             },
             "source": "<!",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -1007,40 +1007,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 13,
           "line": 1,
           "offset": 12,
         },
         "source": "<template><!",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 13,
       "line": 1,
       "offset": 12,
     },
     "source": "<template><!",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1052,21 +1052,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_COMMENT <template><!- 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "-",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 14,
               "line": 1,
               "offset": 13,
             },
             "source": "<!-",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -1077,40 +1077,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 14,
           "line": 1,
           "offset": 13,
         },
         "source": "<template><!-",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 14,
       "line": 1,
       "offset": 13,
     },
     "source": "<template><!-",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1122,21 +1122,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_COMMENT <template><!-- 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 15,
               "line": 1,
               "offset": 14,
             },
             "source": "<!--",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -1147,40 +1147,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 15,
           "line": 1,
           "offset": 14,
         },
         "source": "<template><!--",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 15,
       "line": 1,
       "offset": 14,
     },
     "source": "<template><!--",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1192,21 +1192,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_COMMENT <template><!--comment 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "comment",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 22,
               "line": 1,
               "offset": 21,
             },
             "source": "<!--comment",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -1217,40 +1217,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 22,
           "line": 1,
           "offset": 21,
         },
         "source": "<template><!--comment",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 22,
       "line": 1,
       "offset": 21,
     },
     "source": "<template><!--comment",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1262,21 +1262,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_COMMENT <template><!abc 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "abc",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "<!abc",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -1287,40 +1287,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 16,
           "line": 1,
           "offset": 15,
         },
         "source": "<template><!abc",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 16,
       "line": 1,
       "offset": 15,
     },
     "source": "<template><!abc",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1332,21 +1332,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_SCRIPT_HTML_COMMENT_LIKE_TEXT <script><!--console.log('hello') 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "<!--console.log('hello')",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 33,
               "line": 1,
               "offset": 32,
             },
             "source": "<!--console.log('hello')",
-            "start": Object {
+            "start": {
               "column": 9,
               "line": 1,
               "offset": 8,
@@ -1357,40 +1357,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 33,
           "line": 1,
           "offset": 32,
         },
         "source": "<script><!--console.log('hello')",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "script",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 33,
       "line": 1,
       "offset": 32,
     },
     "source": "<script><!--console.log('hello')",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1402,21 +1402,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_SCRIPT_HTML_COMMENT_LIKE_TEXT <script>console.log('hello') 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "console.log('hello')",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 29,
               "line": 1,
               "offset": 28,
             },
             "source": "console.log('hello')",
-            "start": Object {
+            "start": {
               "column": 9,
               "line": 1,
               "offset": 8,
@@ -1427,40 +1427,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 29,
           "line": 1,
           "offset": 28,
         },
         "source": "<script>console.log('hello')",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "script",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 29,
       "line": 1,
       "offset": 28,
     },
     "source": "<script>console.log('hello')",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1472,47 +1472,47 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <div></div 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [],
+  "children": [
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 11,
           "line": 1,
           "offset": 10,
         },
         "source": "<div></div",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "div",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 11,
       "line": 1,
       "offset": 10,
     },
     "source": "<div></div",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1524,30 +1524,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div  1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "<div ",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "div",
           "tagType": 0,
           "type": 1,
@@ -1555,40 +1555,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 16,
           "line": 1,
           "offset": 15,
         },
         "source": "<template><div ",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 16,
       "line": 1,
       "offset": 15,
     },
     "source": "<template><div ",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1600,30 +1600,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 15,
               "line": 1,
               "offset": 14,
             },
             "source": "<div",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "div",
           "tagType": 0,
           "type": 1,
@@ -1631,40 +1631,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 15,
           "line": 1,
           "offset": 14,
         },
         "source": "<template><div",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 15,
       "line": 1,
       "offset": 14,
     },
     "source": "<template><div",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1676,39 +1676,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id  1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 19,
               "line": 1,
               "offset": 18,
             },
             "source": "<div id ",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 18,
                   "line": 1,
                   "offset": 17,
                 },
                 "source": "id",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -1726,40 +1726,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 19,
           "line": 1,
           "offset": 18,
         },
         "source": "<template><div id ",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 19,
       "line": 1,
       "offset": 18,
     },
     "source": "<template><div id ",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1771,39 +1771,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id = 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 20,
               "line": 1,
               "offset": 19,
             },
             "source": "<div id =",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 20,
                   "line": 1,
                   "offset": 19,
                 },
                 "source": "id =",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -1821,40 +1821,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 20,
           "line": 1,
           "offset": 19,
         },
         "source": "<template><div id =",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 20,
       "line": 1,
       "offset": 19,
     },
     "source": "<template><div id =",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1866,39 +1866,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 18,
               "line": 1,
               "offset": 17,
             },
             "source": "<div id",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 18,
                   "line": 1,
                   "offset": 17,
                 },
                 "source": "id",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -1916,40 +1916,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 18,
           "line": 1,
           "offset": 17,
         },
         "source": "<template><div id",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 18,
       "line": 1,
       "offset": 17,
     },
     "source": "<template><div id",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -1961,39 +1961,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id="abc 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 23,
               "line": 1,
               "offset": 22,
             },
-            "source": "<div id=\\"abc",
-            "start": Object {
+            "source": "<div id="abc",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 23,
                   "line": 1,
                   "offset": 22,
                 },
-                "source": "id=\\"abc",
-                "start": Object {
+                "source": "id="abc",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2001,16 +2001,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 23,
                     "line": 1,
                     "offset": 22,
                   },
-                  "source": "\\"abc",
-                  "start": Object {
+                  "source": ""abc",
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2027,40 +2027,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 23,
           "line": 1,
           "offset": 22,
         },
-        "source": "<template><div id=\\"abc",
-        "start": Object {
+        "source": "<template><div id="abc",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 23,
       "line": 1,
       "offset": 22,
     },
-    "source": "<template><div id=\\"abc",
-    "start": Object {
+    "source": "<template><div id="abc",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2072,39 +2072,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id="abc" 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 24,
               "line": 1,
               "offset": 23,
             },
-            "source": "<div id=\\"abc\\"",
-            "start": Object {
+            "source": "<div id="abc"",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
-                "source": "id=\\"abc\\"",
-                "start": Object {
+                "source": "id="abc"",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2112,16 +2112,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
-                  "source": "\\"abc\\"",
-                  "start": Object {
+                  "source": ""abc"",
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2138,40 +2138,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 24,
           "line": 1,
           "offset": 23,
         },
-        "source": "<template><div id=\\"abc\\"",
-        "start": Object {
+        "source": "<template><div id="abc"",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 24,
       "line": 1,
       "offset": 23,
     },
-    "source": "<template><div id=\\"abc\\"",
-    "start": Object {
+    "source": "<template><div id="abc"",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2183,39 +2183,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id="abc"/ 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 25,
               "line": 1,
               "offset": 24,
             },
-            "source": "<div id=\\"abc\\"/",
-            "start": Object {
+            "source": "<div id="abc"/",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
-                "source": "id=\\"abc\\"",
-                "start": Object {
+                "source": "id="abc"",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2223,16 +2223,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
-                  "source": "\\"abc\\"",
-                  "start": Object {
+                  "source": ""abc"",
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2249,40 +2249,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
-        "source": "<template><div id=\\"abc\\"/",
-        "start": Object {
+        "source": "<template><div id="abc"/",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
-    "source": "<template><div id=\\"abc\\"/",
-    "start": Object {
+    "source": "<template><div id="abc"/",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2294,39 +2294,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id='abc 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 23,
               "line": 1,
               "offset": 22,
             },
             "source": "<div id='abc",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 23,
                   "line": 1,
                   "offset": 22,
                 },
                 "source": "id='abc",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2334,16 +2334,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 23,
                     "line": 1,
                     "offset": 22,
                   },
                   "source": "'abc",
-                  "start": Object {
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2360,40 +2360,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 23,
           "line": 1,
           "offset": 22,
         },
         "source": "<template><div id='abc",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 23,
       "line": 1,
       "offset": 22,
     },
     "source": "<template><div id='abc",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2405,39 +2405,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id='abc' 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 24,
               "line": 1,
               "offset": 23,
             },
             "source": "<div id='abc'",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
                 "source": "id='abc'",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2445,16 +2445,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
                   "source": "'abc'",
-                  "start": Object {
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2471,40 +2471,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 24,
           "line": 1,
           "offset": 23,
         },
         "source": "<template><div id='abc'",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 24,
       "line": 1,
       "offset": 23,
     },
     "source": "<template><div id='abc'",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2516,39 +2516,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id='abc'/ 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 25,
               "line": 1,
               "offset": 24,
             },
             "source": "<div id='abc'/",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
                 "source": "id='abc'",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2556,16 +2556,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
                   "source": "'abc'",
-                  "start": Object {
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2582,40 +2582,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<template><div id='abc'/",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<template><div id='abc'/",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2627,39 +2627,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id=abc / 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 24,
               "line": 1,
               "offset": 23,
             },
             "source": "<div id=abc /",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 22,
                   "line": 1,
                   "offset": 21,
                 },
                 "source": "id=abc",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2667,16 +2667,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 22,
                     "line": 1,
                     "offset": 21,
                   },
                   "source": "abc",
-                  "start": Object {
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2693,40 +2693,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 24,
           "line": 1,
           "offset": 23,
         },
         "source": "<template><div id=abc /",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 24,
       "line": 1,
       "offset": 23,
     },
     "source": "<template><div id=abc /",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2738,39 +2738,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors EOF_IN_TAG <template><div id=abc 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 22,
               "line": 1,
               "offset": 21,
             },
             "source": "<div id=abc",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 22,
                   "line": 1,
                   "offset": 21,
                 },
                 "source": "id=abc",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -2778,16 +2778,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "abc",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 22,
                     "line": 1,
                     "offset": 21,
                   },
                   "source": "abc",
-                  "start": Object {
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -2804,40 +2804,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 22,
           "line": 1,
           "offset": 21,
         },
         "source": "<template><div id=abc",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 22,
       "line": 1,
       "offset": 21,
     },
     "source": "<template><div id=abc",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2849,21 +2849,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INCORRECTLY_CLOSED_COMMENT <template><!--comment--!></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "comment",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 26,
               "line": 1,
               "offset": 25,
             },
             "source": "<!--comment--!>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -2874,40 +2874,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 37,
           "line": 1,
           "offset": 36,
         },
         "source": "<template><!--comment--!></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 37,
       "line": 1,
       "offset": 36,
     },
     "source": "<template><!--comment--!></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2919,19 +2919,19 @@ Object {
 `;
 
 exports[`compiler: parse Errors INCORRECTLY_OPENED_COMMENT <!DOCTYPE html> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
+  "children": [
+    {
       "content": "DOCTYPE html",
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 16,
           "line": 1,
           "offset": 15,
         },
         "source": "<!DOCTYPE html>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
@@ -2941,19 +2941,19 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 16,
       "line": 1,
       "offset": 15,
     },
     "source": "<!DOCTYPE html>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -2965,21 +2965,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INCORRECTLY_OPENED_COMMENT <template><!></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 14,
               "line": 1,
               "offset": 13,
             },
             "source": "<!>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -2990,40 +2990,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<template><!></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<template><!></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3035,21 +3035,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INCORRECTLY_OPENED_COMMENT <template><!-></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "-",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 15,
               "line": 1,
               "offset": 14,
             },
             "source": "<!->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3060,40 +3060,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 26,
           "line": 1,
           "offset": 25,
         },
         "source": "<template><!-></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 26,
       "line": 1,
       "offset": 25,
     },
     "source": "<template><!-></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3105,21 +3105,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INCORRECTLY_OPENED_COMMENT <template><!ELEMENT br EMPTY></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "ELEMENT br EMPTY",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 30,
               "line": 1,
               "offset": 29,
             },
             "source": "<!ELEMENT br EMPTY>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3130,40 +3130,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 41,
           "line": 1,
           "offset": 40,
         },
         "source": "<template><!ELEMENT br EMPTY></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 41,
       "line": 1,
       "offset": 40,
     },
     "source": "<template><!ELEMENT br EMPTY></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3175,21 +3175,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INVALID_FIRST_CHARACTER_OF_TAG_NAME <template></�></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "�",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 15,
               "line": 1,
               "offset": 14,
             },
             "source": "</�>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3200,40 +3200,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 26,
           "line": 1,
           "offset": 25,
         },
         "source": "<template></�></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 26,
       "line": 1,
       "offset": 25,
     },
     "source": "<template></�></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3245,21 +3245,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INVALID_FIRST_CHARACTER_OF_TAG_NAME <template><�></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "<�>",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 14,
               "line": 1,
               "offset": 13,
             },
             "source": "<�>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3270,40 +3270,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<template><�></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<template><�></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3315,24 +3315,24 @@ Object {
 `;
 
 exports[`compiler: parse Errors INVALID_FIRST_CHARACTER_OF_TAG_NAME <template>{{a < b}}</template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "content": Object {
+  "children": [
+    {
+      "children": [
+        {
+          "content": {
             "constType": 0,
             "content": "a < b",
             "isStatic": false,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 18,
                 "line": 1,
                 "offset": 17,
               },
               "source": "a < b",
-              "start": Object {
+              "start": {
                 "column": 13,
                 "line": 1,
                 "offset": 12,
@@ -3340,14 +3340,14 @@ Object {
             },
             "type": 4,
           },
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 20,
               "line": 1,
               "offset": 19,
             },
             "source": "{{a < b}}",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3358,40 +3358,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 31,
           "line": 1,
           "offset": 30,
         },
         "source": "<template>{{a < b}}</template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 31,
       "line": 1,
       "offset": 30,
     },
     "source": "<template>{{a < b}}</template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3403,21 +3403,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INVALID_FIRST_CHARACTER_OF_TAG_NAME <template>a < b</template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a < b",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "a < b",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3428,40 +3428,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 27,
           "line": 1,
           "offset": 26,
         },
         "source": "<template>a < b</template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 27,
       "line": 1,
       "offset": 26,
     },
     "source": "<template>a < b</template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3473,21 +3473,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors INVALID_FIRST_CHARACTER_OF_TAG_NAME <template>a </ b</template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a ",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 13,
               "line": 1,
               "offset": 12,
             },
             "source": "a ",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -3495,16 +3495,16 @@ Object {
           },
           "type": 2,
         },
-        Object {
+        {
           "content": " b</template",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 28,
               "line": 1,
               "offset": 27,
             },
             "source": "</ b</template>",
-            "start": Object {
+            "start": {
               "column": 13,
               "line": 1,
               "offset": 12,
@@ -3515,40 +3515,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 28,
           "line": 1,
           "offset": 27,
         },
         "source": "<template>a </ b</template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 28,
       "line": 1,
       "offset": 27,
     },
     "source": "<template>a </ b</template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3560,39 +3560,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors MISSING_ATTRIBUTE_VALUE <template><div id= /></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 28,
               "line": 1,
               "offset": 27,
             },
             "source": "<div id= /></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 21,
                   "line": 1,
                   "offset": 20,
                 },
                 "source": "id= /",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -3600,16 +3600,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "/",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 21,
                     "line": 1,
                     "offset": 20,
                   },
                   "source": "/",
-                  "start": Object {
+                  "start": {
                     "column": 20,
                     "line": 1,
                     "offset": 19,
@@ -3626,40 +3626,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 39,
           "line": 1,
           "offset": 38,
         },
         "source": "<template><div id= /></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 39,
       "line": 1,
       "offset": 38,
     },
     "source": "<template><div id= /></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3671,39 +3671,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors MISSING_ATTRIBUTE_VALUE <template><div id= ></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 27,
               "line": 1,
               "offset": 26,
             },
             "source": "<div id= ></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 20,
                   "line": 1,
                   "offset": 19,
                 },
                 "source": "id= ",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -3721,40 +3721,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 38,
           "line": 1,
           "offset": 37,
         },
         "source": "<template><div id= ></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 38,
       "line": 1,
       "offset": 37,
     },
     "source": "<template><div id= ></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3766,39 +3766,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors MISSING_ATTRIBUTE_VALUE <template><div id=></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 26,
               "line": 1,
               "offset": 25,
             },
             "source": "<div id=></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 19,
                   "line": 1,
                   "offset": 18,
                 },
                 "source": "id=",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -3816,40 +3816,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 37,
           "line": 1,
           "offset": 36,
         },
         "source": "<template><div id=></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 37,
       "line": 1,
       "offset": 36,
     },
     "source": "<template><div id=></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3861,47 +3861,47 @@ Object {
 `;
 
 exports[`compiler: parse Errors MISSING_END_TAG_NAME <template></></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [],
+  "children": [
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<template></></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<template></></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -3913,40 +3913,40 @@ Object {
 `;
 
 exports[`compiler: parse Errors MISSING_WHITESPACE_BETWEEN_ATTRIBUTES <template><div id="foo"\\x0d;\\x0a;class="bar"></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 19,
               "line": 2,
               "offset": 43,
             },
-            "source": "<div id=\\"foo\\"
-class=\\"bar\\"></div>",
-            "start": Object {
+            "source": "<div id="foo"
+class="bar"></div>",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
-                "source": "id=\\"foo\\"",
-                "start": Object {
+                "source": "id="foo"",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -3954,16 +3954,16 @@ class=\\"bar\\"></div>",
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "foo",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
-                  "source": "\\"foo\\"",
-                  "start": Object {
+                  "source": ""foo"",
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -3972,15 +3972,15 @@ class=\\"bar\\"></div>",
                 "type": 2,
               },
             },
-            Object {
-              "loc": Object {
-                "end": Object {
+            {
+              "loc": {
+                "end": {
                   "column": 12,
                   "line": 2,
                   "offset": 36,
                 },
-                "source": "class=\\"bar\\"",
-                "start": Object {
+                "source": "class="bar"",
+                "start": {
                   "column": 1,
                   "line": 2,
                   "offset": 25,
@@ -3988,16 +3988,16 @@ class=\\"bar\\"></div>",
               },
               "name": "class",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 12,
                     "line": 2,
                     "offset": 36,
                   },
-                  "source": "\\"bar\\"",
-                  "start": Object {
+                  "source": ""bar"",
+                  "start": {
                     "column": 7,
                     "line": 2,
                     "offset": 31,
@@ -4014,42 +4014,42 @@ class=\\"bar\\"></div>",
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 30,
           "line": 2,
           "offset": 54,
         },
-        "source": "<template><div id=\\"foo\\"
-class=\\"bar\\"></div></template>",
-        "start": Object {
+        "source": "<template><div id="foo"
+class="bar"></div></template>",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 30,
       "line": 2,
       "offset": 54,
     },
-    "source": "<template><div id=\\"foo\\"
-class=\\"bar\\"></div></template>",
-    "start": Object {
+    "source": "<template><div id="foo"
+class="bar"></div></template>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4061,39 +4061,39 @@ class=\\"bar\\"></div></template>",
 `;
 
 exports[`compiler: parse Errors MISSING_WHITESPACE_BETWEEN_ATTRIBUTES <template><div id="foo"class="bar"></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 42,
               "line": 1,
               "offset": 41,
             },
-            "source": "<div id=\\"foo\\"class=\\"bar\\"></div>",
-            "start": Object {
+            "source": "<div id="foo"class="bar"></div>",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
-                "source": "id=\\"foo\\"",
-                "start": Object {
+                "source": "id="foo"",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -4101,16 +4101,16 @@ Object {
               },
               "name": "id",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "foo",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
-                  "source": "\\"foo\\"",
-                  "start": Object {
+                  "source": ""foo"",
+                  "start": {
                     "column": 19,
                     "line": 1,
                     "offset": 18,
@@ -4119,15 +4119,15 @@ Object {
                 "type": 2,
               },
             },
-            Object {
-              "loc": Object {
-                "end": Object {
+            {
+              "loc": {
+                "end": {
                   "column": 35,
                   "line": 1,
                   "offset": 34,
                 },
-                "source": "class=\\"bar\\"",
-                "start": Object {
+                "source": "class="bar"",
+                "start": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
@@ -4135,16 +4135,16 @@ Object {
               },
               "name": "class",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 35,
                     "line": 1,
                     "offset": 34,
                   },
-                  "source": "\\"bar\\"",
-                  "start": Object {
+                  "source": ""bar"",
+                  "start": {
                     "column": 30,
                     "line": 1,
                     "offset": 29,
@@ -4161,40 +4161,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 53,
           "line": 1,
           "offset": 52,
         },
-        "source": "<template><div id=\\"foo\\"class=\\"bar\\"></div></template>",
-        "start": Object {
+        "source": "<template><div id="foo"class="bar"></div></template>",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 53,
       "line": 1,
       "offset": 52,
     },
-    "source": "<template><div id=\\"foo\\"class=\\"bar\\"></div></template>",
-    "start": Object {
+    "source": "<template><div id="foo"class="bar"></div></template>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4206,21 +4206,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors NESTED_COMMENT <template><!--a<!-- 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a<!--",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 20,
               "line": 1,
               "offset": 19,
             },
             "source": "<!--a<!--",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -4231,40 +4231,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 20,
           "line": 1,
           "offset": 19,
         },
         "source": "<template><!--a<!--",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 20,
       "line": 1,
       "offset": 19,
     },
     "source": "<template><!--a<!--",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4276,21 +4276,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors NESTED_COMMENT <template><!--a<!--></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a<!",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 21,
               "line": 1,
               "offset": 20,
             },
             "source": "<!--a<!-->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -4301,40 +4301,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 32,
           "line": 1,
           "offset": 31,
         },
         "source": "<template><!--a<!--></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 32,
       "line": 1,
       "offset": 31,
     },
     "source": "<template><!--a<!--></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4346,21 +4346,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors NESTED_COMMENT <template><!--a<!--b<!----></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a<!--b<!--",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 28,
               "line": 1,
               "offset": 27,
             },
             "source": "<!--a<!--b<!---->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -4371,40 +4371,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 39,
           "line": 1,
           "offset": 38,
         },
         "source": "<template><!--a<!--b<!----></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 39,
       "line": 1,
       "offset": 38,
     },
     "source": "<template><!--a<!--b<!----></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4416,21 +4416,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors NESTED_COMMENT <template><!--a<!--b<!--c--></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a<!--b<!--c",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 29,
               "line": 1,
               "offset": 28,
             },
             "source": "<!--a<!--b<!--c-->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -4441,40 +4441,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 40,
           "line": 1,
           "offset": 39,
         },
         "source": "<template><!--a<!--b<!--c--></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 40,
       "line": 1,
       "offset": 39,
     },
     "source": "<template><!--a<!--b<!--c--></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4486,21 +4486,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors NESTED_COMMENT <template><!--a<!--b--></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "a<!--b",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 24,
               "line": 1,
               "offset": 23,
             },
             "source": "<!--a<!--b-->",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -4511,40 +4511,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 35,
           "line": 1,
           "offset": 34,
         },
         "source": "<template><!--a<!--b--></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 35,
       "line": 1,
       "offset": 34,
     },
     "source": "<template><!--a<!--b--></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4556,56 +4556,56 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_ATTRIBUTE_NAME <template><div a"bc=''></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 30,
               "line": 1,
               "offset": 29,
             },
-            "source": "<div a\\"bc=''></div>",
-            "start": Object {
+            "source": "<div a"bc=''></div>",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 23,
                   "line": 1,
                   "offset": 22,
                 },
-                "source": "a\\"bc=''",
-                "start": Object {
+                "source": "a"bc=''",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
                 },
               },
-              "name": "a\\"bc",
+              "name": "a"bc",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 23,
                     "line": 1,
                     "offset": 22,
                   },
                   "source": "''",
-                  "start": Object {
+                  "start": {
                     "column": 21,
                     "line": 1,
                     "offset": 20,
@@ -4622,40 +4622,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 41,
           "line": 1,
           "offset": 40,
         },
-        "source": "<template><div a\\"bc=''></div></template>",
-        "start": Object {
+        "source": "<template><div a"bc=''></div></template>",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 41,
       "line": 1,
       "offset": 40,
     },
-    "source": "<template><div a\\"bc=''></div></template>",
-    "start": Object {
+    "source": "<template><div a"bc=''></div></template>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4667,39 +4667,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_ATTRIBUTE_NAME <template><div a'bc=''></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 30,
               "line": 1,
               "offset": 29,
             },
             "source": "<div a'bc=''></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 23,
                   "line": 1,
                   "offset": 22,
                 },
                 "source": "a'bc=''",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -4707,16 +4707,16 @@ Object {
               },
               "name": "a'bc",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 23,
                     "line": 1,
                     "offset": 22,
                   },
                   "source": "''",
-                  "start": Object {
+                  "start": {
                     "column": 21,
                     "line": 1,
                     "offset": 20,
@@ -4733,40 +4733,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 41,
           "line": 1,
           "offset": 40,
         },
         "source": "<template><div a'bc=''></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 41,
       "line": 1,
       "offset": 40,
     },
     "source": "<template><div a'bc=''></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4778,39 +4778,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_ATTRIBUTE_NAME <template><div a<bc=''></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 30,
               "line": 1,
               "offset": 29,
             },
             "source": "<div a<bc=''></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 23,
                   "line": 1,
                   "offset": 22,
                 },
                 "source": "a<bc=''",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -4818,16 +4818,16 @@ Object {
               },
               "name": "a<bc",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 23,
                     "line": 1,
                     "offset": 22,
                   },
                   "source": "''",
-                  "start": Object {
+                  "start": {
                     "column": 21,
                     "line": 1,
                     "offset": 20,
@@ -4844,40 +4844,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 41,
           "line": 1,
           "offset": 40,
         },
         "source": "<template><div a<bc=''></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 41,
       "line": 1,
       "offset": 40,
     },
     "source": "<template><div a<bc=''></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -4889,39 +4889,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_UNQUOTED_ATTRIBUTE_VALUE <template><div foo=bar"></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 31,
               "line": 1,
               "offset": 30,
             },
-            "source": "<div foo=bar\\"></div>",
-            "start": Object {
+            "source": "<div foo=bar"></div>",
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
-                "source": "foo=bar\\"",
-                "start": Object {
+                "source": "foo=bar"",
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -4929,16 +4929,16 @@ Object {
               },
               "name": "foo",
               "type": 6,
-              "value": Object {
-                "content": "bar\\"",
-                "loc": Object {
-                  "end": Object {
+              "value": {
+                "content": "bar"",
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
-                  "source": "bar\\"",
-                  "start": Object {
+                  "source": "bar"",
+                  "start": {
                     "column": 20,
                     "line": 1,
                     "offset": 19,
@@ -4955,40 +4955,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 42,
           "line": 1,
           "offset": 41,
         },
-        "source": "<template><div foo=bar\\"></div></template>",
-        "start": Object {
+        "source": "<template><div foo=bar"></div></template>",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 42,
       "line": 1,
       "offset": 41,
     },
-    "source": "<template><div foo=bar\\"></div></template>",
-    "start": Object {
+    "source": "<template><div foo=bar"></div></template>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5000,39 +5000,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_UNQUOTED_ATTRIBUTE_VALUE <template><div foo=bar'></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 31,
               "line": 1,
               "offset": 30,
             },
             "source": "<div foo=bar'></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
                 "source": "foo=bar'",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5040,16 +5040,16 @@ Object {
               },
               "name": "foo",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar'",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
                   "source": "bar'",
-                  "start": Object {
+                  "start": {
                     "column": 20,
                     "line": 1,
                     "offset": 19,
@@ -5066,40 +5066,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 42,
           "line": 1,
           "offset": 41,
         },
         "source": "<template><div foo=bar'></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 42,
       "line": 1,
       "offset": 41,
     },
     "source": "<template><div foo=bar'></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5111,39 +5111,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_UNQUOTED_ATTRIBUTE_VALUE <template><div foo=bar<div></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 34,
               "line": 1,
               "offset": 33,
             },
             "source": "<div foo=bar<div></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 27,
                   "line": 1,
                   "offset": 26,
                 },
                 "source": "foo=bar<div",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5151,16 +5151,16 @@ Object {
               },
               "name": "foo",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar<div",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 27,
                     "line": 1,
                     "offset": 26,
                   },
                   "source": "bar<div",
-                  "start": Object {
+                  "start": {
                     "column": 20,
                     "line": 1,
                     "offset": 19,
@@ -5177,40 +5177,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 45,
           "line": 1,
           "offset": 44,
         },
         "source": "<template><div foo=bar<div></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 45,
       "line": 1,
       "offset": 44,
     },
     "source": "<template><div foo=bar<div></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5222,39 +5222,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_UNQUOTED_ATTRIBUTE_VALUE <template><div foo=bar=baz></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 34,
               "line": 1,
               "offset": 33,
             },
             "source": "<div foo=bar=baz></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 27,
                   "line": 1,
                   "offset": 26,
                 },
                 "source": "foo=bar=baz",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5262,16 +5262,16 @@ Object {
               },
               "name": "foo",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar=baz",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 27,
                     "line": 1,
                     "offset": 26,
                   },
                   "source": "bar=baz",
-                  "start": Object {
+                  "start": {
                     "column": 20,
                     "line": 1,
                     "offset": 19,
@@ -5288,40 +5288,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 45,
           "line": 1,
           "offset": 44,
         },
         "source": "<template><div foo=bar=baz></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 45,
       "line": 1,
       "offset": 44,
     },
     "source": "<template><div foo=bar=baz></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5333,39 +5333,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_CHARACTER_IN_UNQUOTED_ATTRIBUTE_VALUE <template><div foo=bar\`></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 31,
               "line": 1,
               "offset": 30,
             },
             "source": "<div foo=bar\`></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
                 "source": "foo=bar\`",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5373,16 +5373,16 @@ Object {
               },
               "name": "foo",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar\`",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
                   "source": "bar\`",
-                  "start": Object {
+                  "start": {
                     "column": 20,
                     "line": 1,
                     "offset": 19,
@@ -5399,40 +5399,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 42,
           "line": 1,
           "offset": 41,
         },
         "source": "<template><div foo=bar\`></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 42,
       "line": 1,
       "offset": 41,
     },
     "source": "<template><div foo=bar\`></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5444,39 +5444,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_EQUALS_SIGN_BEFORE_ATTRIBUTE_NAME <template><div =></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 24,
               "line": 1,
               "offset": 23,
             },
             "source": "<div =></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 17,
                   "line": 1,
                   "offset": 16,
                 },
                 "source": "=",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5494,40 +5494,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 35,
           "line": 1,
           "offset": 34,
         },
         "source": "<template><div =></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 35,
       "line": 1,
       "offset": 34,
     },
     "source": "<template><div =></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5539,39 +5539,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_EQUALS_SIGN_BEFORE_ATTRIBUTE_NAME <template><div =foo=bar></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 31,
               "line": 1,
               "offset": 30,
             },
             "source": "<div =foo=bar></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 24,
                   "line": 1,
                   "offset": 23,
                 },
                 "source": "=foo=bar",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5579,16 +5579,16 @@ Object {
               },
               "name": "=foo",
               "type": 6,
-              "value": Object {
+              "value": {
                 "content": "bar",
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 24,
                     "line": 1,
                     "offset": 23,
                   },
                   "source": "bar",
-                  "start": Object {
+                  "start": {
                     "column": 21,
                     "line": 1,
                     "offset": 20,
@@ -5605,40 +5605,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 42,
           "line": 1,
           "offset": 41,
         },
         "source": "<template><div =foo=bar></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 42,
       "line": 1,
       "offset": 41,
     },
     "source": "<template><div =foo=bar></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5650,21 +5650,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_QUESTION_MARK_INSTEAD_OF_TAG_NAME <template><?xml?></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "?xml?",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 18,
               "line": 1,
               "offset": 17,
             },
             "source": "<?xml?>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -5675,40 +5675,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 29,
           "line": 1,
           "offset": 28,
         },
         "source": "<template><?xml?></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 29,
       "line": 1,
       "offset": 28,
     },
     "source": "<template><?xml?></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5720,39 +5720,39 @@ Object {
 `;
 
 exports[`compiler: parse Errors UNEXPECTED_SOLIDUS_IN_TAG <template><div a/b></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 26,
               "line": 1,
               "offset": 25,
             },
             "source": "<div a/b></div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "loc": Object {
-                "end": Object {
+          "props": [
+            {
+              "loc": {
+                "end": {
                   "column": 17,
                   "line": 1,
                   "offset": 16,
                 },
                 "source": "a",
-                "start": Object {
+                "start": {
                   "column": 16,
                   "line": 1,
                   "offset": 15,
@@ -5762,15 +5762,15 @@ Object {
               "type": 6,
               "value": undefined,
             },
-            Object {
-              "loc": Object {
-                "end": Object {
+            {
+              "loc": {
+                "end": {
                   "column": 19,
                   "line": 1,
                   "offset": 18,
                 },
                 "source": "b",
-                "start": Object {
+                "start": {
                   "column": 18,
                   "line": 1,
                   "offset": 17,
@@ -5788,40 +5788,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 37,
           "line": 1,
           "offset": 36,
         },
         "source": "<template><div a/b></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 37,
       "line": 1,
       "offset": 36,
     },
     "source": "<template><div a/b></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5833,21 +5833,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_INVALID_END_TAG <svg><![CDATA[</div>]]></svg> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "</div>",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 21,
               "line": 1,
               "offset": 20,
             },
             "source": "</div>",
-            "start": Object {
+            "start": {
               "column": 15,
               "line": 1,
               "offset": 14,
@@ -5858,40 +5858,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 30,
           "line": 1,
           "offset": 29,
         },
         "source": "<svg><![CDATA[</div>]]></svg>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 1,
-      "props": Array [],
+      "props": [],
       "tag": "svg",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 30,
       "line": 1,
       "offset": 29,
     },
     "source": "<svg><![CDATA[</div>]]></svg>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5903,21 +5903,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_INVALID_END_TAG <svg><!--</div>--></svg> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "</div>",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 19,
               "line": 1,
               "offset": 18,
             },
             "source": "<!--</div>-->",
-            "start": Object {
+            "start": {
               "column": 6,
               "line": 1,
               "offset": 5,
@@ -5928,40 +5928,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<svg><!--</div>--></svg>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 1,
-      "props": Array [],
+      "props": [],
       "tag": "svg",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<svg><!--</div>--></svg>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -5973,47 +5973,47 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_INVALID_END_TAG <template></div></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [],
+  "children": [
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 34,
           "line": 1,
           "offset": 33,
         },
         "source": "<template></div></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 34,
       "line": 1,
       "offset": 33,
     },
     "source": "<template></div></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6025,47 +6025,47 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_INVALID_END_TAG <template></div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [],
+  "children": [
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 28,
           "line": 1,
           "offset": 27,
         },
         "source": "<template></div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 28,
       "line": 1,
       "offset": 27,
     },
     "source": "<template></div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6077,24 +6077,24 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_INVALID_END_TAG <template>{{'</div>'}}</template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "content": Object {
+  "children": [
+    {
+      "children": [
+        {
+          "content": {
             "constType": 0,
             "content": "'</div>'",
             "isStatic": false,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 21,
                 "line": 1,
                 "offset": 20,
               },
               "source": "'</div>'",
-              "start": Object {
+              "start": {
                 "column": 13,
                 "line": 1,
                 "offset": 12,
@@ -6102,14 +6102,14 @@ Object {
             },
             "type": 4,
           },
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 23,
               "line": 1,
               "offset": 22,
             },
             "source": "{{'</div>'}}",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -6120,40 +6120,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 34,
           "line": 1,
           "offset": 33,
         },
         "source": "<template>{{'</div>'}}</template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 34,
       "line": 1,
       "offset": 33,
     },
     "source": "<template>{{'</div>'}}</template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6165,21 +6165,21 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_INVALID_END_TAG <textarea></div></textarea> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
+  "children": [
+    {
+      "children": [
+        {
           "content": "</div>",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 17,
               "line": 1,
               "offset": 16,
             },
             "source": "</div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
@@ -6190,40 +6190,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 28,
           "line": 1,
           "offset": 27,
         },
         "source": "<textarea></div></textarea>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "textarea",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 28,
       "line": 1,
       "offset": 27,
     },
     "source": "<textarea></div></textarea>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6235,41 +6235,41 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_MISSING_DYNAMIC_DIRECTIVE_ARGUMENT_END <div v-foo:[sef fsef] /> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [],
+  "children": [
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": true,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 25,
           "line": 1,
           "offset": 24,
         },
         "source": "<div v-foo:[sef fsef] />",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [
-        Object {
-          "arg": Object {
+      "props": [
+        {
+          "arg": {
             "constType": 0,
             "content": "sef",
             "isStatic": false,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 16,
                 "line": 1,
                 "offset": 15,
               },
               "source": "[sef",
-              "start": Object {
+              "start": {
                 "column": 12,
                 "line": 1,
                 "offset": 11,
@@ -6278,32 +6278,32 @@ Object {
             "type": 4,
           },
           "exp": undefined,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "v-foo:[sef",
-            "start": Object {
+            "start": {
               "column": 6,
               "line": 1,
               "offset": 5,
             },
           },
-          "modifiers": Array [],
+          "modifiers": [],
           "name": "foo",
           "type": 7,
         },
-        Object {
-          "loc": Object {
-            "end": Object {
+        {
+          "loc": {
+            "end": {
               "column": 22,
               "line": 1,
               "offset": 21,
             },
             "source": "fsef]",
-            "start": Object {
+            "start": {
               "column": 17,
               "line": 1,
               "offset": 16,
@@ -6320,19 +6320,19 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 25,
       "line": 1,
       "offset": 24,
     },
     "source": "<div v-foo:[sef fsef] />",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6344,30 +6344,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_MISSING_END_TAG <template><div> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "<div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "div",
           "tagType": 0,
           "type": 1,
@@ -6375,40 +6375,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 16,
           "line": 1,
           "offset": 15,
         },
         "source": "<template><div>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 16,
       "line": 1,
       "offset": 15,
     },
     "source": "<template><div>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6420,30 +6420,30 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_MISSING_END_TAG <template><div></template> 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 16,
               "line": 1,
               "offset": 15,
             },
             "source": "<div>",
-            "start": Object {
+            "start": {
               "column": 11,
               "line": 1,
               "offset": 10,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "div",
           "tagType": 0,
           "type": 1,
@@ -6451,40 +6451,40 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 27,
           "line": 1,
           "offset": 26,
         },
         "source": "<template><div></template>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "template",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 27,
       "line": 1,
       "offset": 26,
     },
     "source": "<template><div></template>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6496,19 +6496,19 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_MISSING_INTERPOLATION_END {{ 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
+  "children": [
+    {
       "content": "{{",
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 3,
           "line": 1,
           "offset": 2,
         },
         "source": "{{",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
@@ -6518,19 +6518,19 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 3,
       "line": 1,
       "offset": 2,
     },
     "source": "{{",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6542,19 +6542,19 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_MISSING_INTERPOLATION_END {{ foo 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
+  "children": [
+    {
       "content": "{{ foo",
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 7,
           "line": 1,
           "offset": 6,
         },
         "source": "{{ foo",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
@@ -6564,19 +6564,19 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 7,
       "line": 1,
       "offset": 6,
     },
     "source": "{{ foo",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6588,22 +6588,22 @@ Object {
 `;
 
 exports[`compiler: parse Errors X_MISSING_INTERPOLATION_END {{}} 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "content": Object {
+  "children": [
+    {
+      "content": {
         "constType": 0,
         "content": "",
         "isStatic": false,
-        "loc": Object {
-          "end": Object {
+        "loc": {
+          "end": {
             "column": 3,
             "line": 1,
             "offset": 2,
           },
           "source": "",
-          "start": Object {
+          "start": {
             "column": 3,
             "line": 1,
             "offset": 2,
@@ -6611,14 +6611,14 @@ Object {
         },
         "type": 4,
       },
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 5,
           "line": 1,
           "offset": 4,
         },
         "source": "{{}}",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
@@ -6628,19 +6628,19 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 5,
       "line": 1,
       "offset": 4,
     },
     "source": "{{}}",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6652,31 +6652,31 @@ Object {
 `;
 
 exports[`compiler: parse invalid html 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": false,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 1,
               "line": 3,
               "offset": 13,
             },
             "source": "<span>
 ",
-            "start": Object {
+            "start": {
               "column": 1,
               "line": 2,
               "offset": 6,
             },
           },
           "ns": 0,
-          "props": Array [],
+          "props": [],
           "tag": "span",
           "tagType": 0,
           "type": 1,
@@ -6684,8 +6684,8 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 7,
           "line": 3,
           "offset": 19,
@@ -6693,27 +6693,27 @@ Object {
         "source": "<div>
 <span>
 </div>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [],
+      "props": [],
       "tag": "div",
       "tagType": 0,
       "type": 1,
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 8,
       "line": 4,
       "offset": 27,
@@ -6722,7 +6722,7 @@ Object {
 <span>
 </div>
 </span>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6734,41 +6734,41 @@ Object {
 `;
 
 exports[`compiler: parse self closing multiple tag 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [],
+  "children": [
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": true,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 37,
           "line": 1,
           "offset": 36,
         },
-        "source": "<div :class=\\"{ some: condition }\\" />",
-        "start": Object {
+        "source": "<div :class="{ some: condition }" />",
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [
-        Object {
-          "arg": Object {
+      "props": [
+        {
+          "arg": {
             "constType": 3,
             "content": "class",
             "isStatic": true,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 12,
                 "line": 1,
                 "offset": 11,
               },
               "source": "class",
-              "start": Object {
+              "start": {
                 "column": 7,
                 "line": 1,
                 "offset": 6,
@@ -6776,18 +6776,18 @@ Object {
             },
             "type": 4,
           },
-          "exp": Object {
+          "exp": {
             "constType": 0,
             "content": "{ some: condition }",
             "isStatic": false,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 33,
                 "line": 1,
                 "offset": 32,
               },
               "source": "{ some: condition }",
-              "start": Object {
+              "start": {
                 "column": 14,
                 "line": 1,
                 "offset": 13,
@@ -6795,20 +6795,20 @@ Object {
             },
             "type": 4,
           },
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 34,
               "line": 1,
               "offset": 33,
             },
-            "source": ":class=\\"{ some: condition }\\"",
-            "start": Object {
+            "source": ":class="{ some: condition }"",
+            "start": {
               "column": 6,
               "line": 1,
               "offset": 5,
             },
           },
-          "modifiers": Array [],
+          "modifiers": [],
           "name": "bind",
           "type": 7,
         },
@@ -6817,38 +6817,38 @@ Object {
       "tagType": 0,
       "type": 1,
     },
-    Object {
-      "children": Array [],
+    {
+      "children": [],
       "codegenNode": undefined,
       "isSelfClosing": true,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 37,
           "line": 2,
           "offset": 73,
         },
-        "source": "<p v-bind:style=\\"{ color: 'red' }\\"/>",
-        "start": Object {
+        "source": "<p v-bind:style="{ color: 'red' }"/>",
+        "start": {
           "column": 1,
           "line": 2,
           "offset": 37,
         },
       },
       "ns": 0,
-      "props": Array [
-        Object {
-          "arg": Object {
+      "props": [
+        {
+          "arg": {
             "constType": 3,
             "content": "style",
             "isStatic": true,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 16,
                 "line": 2,
                 "offset": 52,
               },
               "source": "style",
-              "start": Object {
+              "start": {
                 "column": 11,
                 "line": 2,
                 "offset": 47,
@@ -6856,18 +6856,18 @@ Object {
             },
             "type": 4,
           },
-          "exp": Object {
+          "exp": {
             "constType": 0,
             "content": "{ color: 'red' }",
             "isStatic": false,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 34,
                 "line": 2,
                 "offset": 70,
               },
               "source": "{ color: 'red' }",
-              "start": Object {
+              "start": {
                 "column": 18,
                 "line": 2,
                 "offset": 54,
@@ -6875,20 +6875,20 @@ Object {
             },
             "type": 4,
           },
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 35,
               "line": 2,
               "offset": 71,
             },
-            "source": "v-bind:style=\\"{ color: 'red' }\\"",
-            "start": Object {
+            "source": "v-bind:style="{ color: 'red' }"",
+            "start": {
               "column": 4,
               "line": 2,
               "offset": 40,
             },
           },
-          "modifiers": Array [],
+          "modifiers": [],
           "name": "bind",
           "type": 7,
         },
@@ -6899,20 +6899,20 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 37,
       "line": 2,
       "offset": 73,
     },
-    "source": "<div :class=\\"{ some: condition }\\" />
-<p v-bind:style=\\"{ color: 'red' }\\"/>",
-    "start": Object {
+    "source": "<div :class="{ some: condition }" />
+<p v-bind:style="{ color: 'red' }"/>",
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
@@ -6924,43 +6924,43 @@ Object {
 `;
 
 exports[`compiler: parse valid html 1`] = `
-Object {
+{
   "cached": 0,
-  "children": Array [
-    Object {
-      "children": Array [
-        Object {
-          "children": Array [],
+  "children": [
+    {
+      "children": [
+        {
+          "children": [],
           "codegenNode": undefined,
           "isSelfClosing": true,
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 39,
               "line": 2,
               "offset": 73,
             },
-            "source": "<p v-bind:style=\\"{ color: 'red' }\\"/>",
-            "start": Object {
+            "source": "<p v-bind:style="{ color: 'red' }"/>",
+            "start": {
               "column": 3,
               "line": 2,
               "offset": 37,
             },
           },
           "ns": 0,
-          "props": Array [
-            Object {
-              "arg": Object {
+          "props": [
+            {
+              "arg": {
                 "constType": 3,
                 "content": "style",
                 "isStatic": true,
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 18,
                     "line": 2,
                     "offset": 52,
                   },
                   "source": "style",
-                  "start": Object {
+                  "start": {
                     "column": 13,
                     "line": 2,
                     "offset": 47,
@@ -6968,18 +6968,18 @@ Object {
                 },
                 "type": 4,
               },
-              "exp": Object {
+              "exp": {
                 "constType": 0,
                 "content": "{ color: 'red' }",
                 "isStatic": false,
-                "loc": Object {
-                  "end": Object {
+                "loc": {
+                  "end": {
                     "column": 36,
                     "line": 2,
                     "offset": 70,
                   },
                   "source": "{ color: 'red' }",
-                  "start": Object {
+                  "start": {
                     "column": 20,
                     "line": 2,
                     "offset": 54,
@@ -6987,20 +6987,20 @@ Object {
                 },
                 "type": 4,
               },
-              "loc": Object {
-                "end": Object {
+              "loc": {
+                "end": {
                   "column": 37,
                   "line": 2,
                   "offset": 71,
                 },
-                "source": "v-bind:style=\\"{ color: 'red' }\\"",
-                "start": Object {
+                "source": "v-bind:style="{ color: 'red' }"",
+                "start": {
                   "column": 6,
                   "line": 2,
                   "offset": 40,
                 },
               },
-              "modifiers": Array [],
+              "modifiers": [],
               "name": "bind",
               "type": 7,
             },
@@ -7009,16 +7009,16 @@ Object {
           "tagType": 0,
           "type": 1,
         },
-        Object {
+        {
           "content": " a comment with <html> inside it ",
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 43,
               "line": 3,
               "offset": 116,
             },
             "source": "<!-- a comment with <html> inside it -->",
-            "start": Object {
+            "start": {
               "column": 3,
               "line": 3,
               "offset": 76,
@@ -7029,37 +7029,37 @@ Object {
       ],
       "codegenNode": undefined,
       "isSelfClosing": false,
-      "loc": Object {
-        "end": Object {
+      "loc": {
+        "end": {
           "column": 7,
           "line": 4,
           "offset": 123,
         },
-        "source": "<div :class=\\"{ some: condition }\\">
-  <p v-bind:style=\\"{ color: 'red' }\\"/>
+        "source": "<div :class="{ some: condition }">
+  <p v-bind:style="{ color: 'red' }"/>
   <!-- a comment with <html> inside it -->
 </div>",
-        "start": Object {
+        "start": {
           "column": 1,
           "line": 1,
           "offset": 0,
         },
       },
       "ns": 0,
-      "props": Array [
-        Object {
-          "arg": Object {
+      "props": [
+        {
+          "arg": {
             "constType": 3,
             "content": "class",
             "isStatic": true,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 12,
                 "line": 1,
                 "offset": 11,
               },
               "source": "class",
-              "start": Object {
+              "start": {
                 "column": 7,
                 "line": 1,
                 "offset": 6,
@@ -7067,18 +7067,18 @@ Object {
             },
             "type": 4,
           },
-          "exp": Object {
+          "exp": {
             "constType": 0,
             "content": "{ some: condition }",
             "isStatic": false,
-            "loc": Object {
-              "end": Object {
+            "loc": {
+              "end": {
                 "column": 33,
                 "line": 1,
                 "offset": 32,
               },
               "source": "{ some: condition }",
-              "start": Object {
+              "start": {
                 "column": 14,
                 "line": 1,
                 "offset": 13,
@@ -7086,20 +7086,20 @@ Object {
             },
             "type": 4,
           },
-          "loc": Object {
-            "end": Object {
+          "loc": {
+            "end": {
               "column": 34,
               "line": 1,
               "offset": 33,
             },
-            "source": ":class=\\"{ some: condition }\\"",
-            "start": Object {
+            "source": ":class="{ some: condition }"",
+            "start": {
               "column": 6,
               "line": 1,
               "offset": 5,
             },
           },
-          "modifiers": Array [],
+          "modifiers": [],
           "name": "bind",
           "type": 7,
         },
@@ -7110,22 +7110,22 @@ Object {
     },
   ],
   "codegenNode": undefined,
-  "components": Array [],
-  "directives": Array [],
+  "components": [],
+  "directives": [],
   "helpers": Set {},
-  "hoists": Array [],
-  "imports": Array [],
-  "loc": Object {
-    "end": Object {
+  "hoists": [],
+  "imports": [],
+  "loc": {
+    "end": {
       "column": 7,
       "line": 4,
       "offset": 123,
     },
-    "source": "<div :class=\\"{ some: condition }\\">
-  <p v-bind:style=\\"{ color: 'red' }\\"/>
+    "source": "<div :class="{ some: condition }">
+  <p v-bind:style="{ color: 'red' }"/>
   <!-- a comment with <html> inside it -->
 </div>",
-    "start": Object {
+    "start": {
       "column": 1,
       "line": 1,
       "offset": 0,
index 826bc4a027fb0f45cea0ed764bfb03d8b8ecda20..4f20eabbad58fd0be2639620b896537290fd8110 100644 (file)
@@ -1,14 +1,14 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`scopeId compiler support should push scopeId for hoisted nodes 1`] = `
-"import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from "vue"
 
-const _withScopeId = n => (_pushScopeId(\\"test\\"),n=n(),_popScopeId(),n)
-const _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\\"div\\", null, \\"hello\\", -1 /* HOISTED */))
-const _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\\"div\\", null, \\"world\\", -1 /* HOISTED */))
+const _withScopeId = n => (_pushScopeId("test"),n=n(),_popScopeId(),n)
+const _hoisted_1 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode("div", null, "hello", -1 /* HOISTED */))
+const _hoisted_2 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode("div", null, "world", -1 /* HOISTED */))
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
+  return (_openBlock(), _createElementBlock("div", null, [
     _hoisted_1,
     _createTextVNode(_toDisplayString(_ctx.foo), 1 /* TEXT */),
     _hoisted_2
@@ -17,14 +17,14 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`scopeId compiler support should wrap default slot 1`] = `
-"import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  const _component_Child = _resolveComponent(\\"Child\\")
+  const _component_Child = _resolveComponent("Child")
 
   return (_openBlock(), _createBlock(_component_Child, null, {
     default: _withCtx(() => [
-      _createElementVNode(\\"div\\")
+      _createElementVNode("div")
     ]),
     _: 1 /* STABLE */
   }))
@@ -32,26 +32,26 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`scopeId compiler support should wrap dynamic slots 1`] = `
-"import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, renderList as _renderList, createSlots as _createSlots, openBlock as _openBlock, createBlock as _createBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, renderList as _renderList, createSlots as _createSlots, openBlock as _openBlock, createBlock as _createBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  const _component_Child = _resolveComponent(\\"Child\\")
+  const _component_Child = _resolveComponent("Child")
 
   return (_openBlock(), _createBlock(_component_Child, null, _createSlots({ _: 2 /* DYNAMIC */ }, [
     (_ctx.ok)
       ? {
-          name: \\"foo\\",
+          name: "foo",
           fn: _withCtx(() => [
-            _createElementVNode(\\"div\\")
+            _createElementVNode("div")
           ]),
-          key: \\"0\\"
+          key: "0"
         }
       : undefined,
     _renderList(_ctx.list, (i) => {
       return {
         name: i,
         fn: _withCtx(() => [
-          _createElementVNode(\\"div\\")
+          _createElementVNode("div")
         ])
       }
     })
@@ -60,17 +60,17 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`scopeId compiler support should wrap named slots 1`] = `
-"import { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from \\"vue\\"
+"import { toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createElementVNode as _createElementVNode, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  const _component_Child = _resolveComponent(\\"Child\\")
+  const _component_Child = _resolveComponent("Child")
 
   return (_openBlock(), _createBlock(_component_Child, null, {
     foo: _withCtx(({ msg }) => [
       _createTextVNode(_toDisplayString(msg), 1 /* TEXT */)
     ]),
     bar: _withCtx(() => [
-      _createElementVNode(\\"div\\")
+      _createElementVNode("div")
     ]),
     _: 1 /* STABLE */
   }))
index e300580c04559348140a9a9744c74cf6d923b520..3f9120471bb0d7948b756ca00edf936fd4298d46 100644 (file)
@@ -631,9 +631,9 @@ describe('compiler: codegen', () => {
 
     test('tag only', () => {
       expect(genCode(createVNodeCall(null, `"div"`))).toMatchInlineSnapshot(`
-              "return _createElementVNode(\\"div\\")
-               "
-          `)
+        "return _createElementVNode("div")
+         "
+      `)
       expect(genCode(createVNodeCall(null, FRAGMENT))).toMatchInlineSnapshot(`
               "return _createElementVNode(_Fragment)
                "
@@ -643,15 +643,15 @@ describe('compiler: codegen', () => {
     test('with props', () => {
       expect(genCode(createVNodeCall(null, `"div"`, mockProps)))
         .toMatchInlineSnapshot(`
-              "return _createElementVNode(\\"div\\", { foo: \\"bar\\" })
-               "
-          `)
+        "return _createElementVNode("div", { foo: "bar" })
+         "
+      `)
     })
 
     test('with children, no props', () => {
       expect(genCode(createVNodeCall(null, `"div"`, undefined, mockChildren)))
         .toMatchInlineSnapshot(`
-        "return _createElementVNode(\\"div\\", null, children)
+        "return _createElementVNode("div", null, children)
          "
       `)
     })
@@ -659,7 +659,7 @@ describe('compiler: codegen', () => {
     test('with children + props', () => {
       expect(genCode(createVNodeCall(null, `"div"`, mockProps, mockChildren)))
         .toMatchInlineSnapshot(`
-        "return _createElementVNode(\\"div\\", { foo: \\"bar\\" }, children)
+        "return _createElementVNode("div", { foo: "bar" }, children)
          "
       `)
     })
@@ -667,7 +667,7 @@ describe('compiler: codegen', () => {
     test('with patchFlag and no children/props', () => {
       expect(genCode(createVNodeCall(null, `"div"`, undefined, undefined, '1')))
         .toMatchInlineSnapshot(`
-        "return _createElementVNode(\\"div\\", null, null, 1)
+        "return _createElementVNode("div", null, null, 1)
          "
       `)
     })
@@ -687,7 +687,7 @@ describe('compiler: codegen', () => {
           )
         )
       ).toMatchInlineSnapshot(`
-        "return (_openBlock(), _createElementBlock(\\"div\\", { foo: \\"bar\\" }, children))
+        "return (_openBlock(), _createElementBlock("div", { foo: "bar" }, children))
          "
       `)
     })
@@ -708,7 +708,7 @@ describe('compiler: codegen', () => {
           )
         )
       ).toMatchInlineSnapshot(`
-        "return (_openBlock(true), _createElementBlock(\\"div\\", { foo: \\"bar\\" }, children))
+        "return (_openBlock(true), _createElementBlock("div", { foo: "bar" }, children))
          "
       `)
     })
@@ -727,7 +727,7 @@ describe('compiler: codegen', () => {
           )
         )
       ).toMatchInlineSnapshot(`
-        "return _withDirectives(_createElementVNode(\\"div\\", { foo: \\"bar\\" }, children), [
+        "return _withDirectives(_createElementVNode("div", { foo: "bar" }, children), [
               [foo, bar]
             ])
          "
@@ -749,7 +749,7 @@ describe('compiler: codegen', () => {
           )
         )
       ).toMatchInlineSnapshot(`
-        "return _withDirectives((_openBlock(), _createElementBlock(\\"div\\", { foo: \\"bar\\" }, children)), [
+        "return _withDirectives((_openBlock(), _createElementBlock("div", { foo: "bar" }, children)), [
               [foo, bar]
             ])
          "
index 15b5cf4c309d745d14ab048a423dd27a9341864a..2770335a5f37f46fb9478319abb85df3dbeb645a 100644 (file)
@@ -4,7 +4,7 @@ exports[`compiler: hoistStatic transform hoist element with static key 1`] = `
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"div\\", { key: \\"foo\\" }, null, -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("div", { key: "foo" }, null, -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
 ]
@@ -13,7 +13,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
   }
 }"
 `;
@@ -22,9 +22,9 @@ exports[`compiler: hoistStatic transform hoist nested static tree 1`] = `
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"p\\", null, [
-  /*#__PURE__*/_createElementVNode(\\"span\\"),
-  /*#__PURE__*/_createElementVNode(\\"span\\")
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("p", null, [
+  /*#__PURE__*/_createElementVNode("span"),
+  /*#__PURE__*/_createElementVNode("span")
 ], -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
@@ -34,7 +34,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
   }
 }"
 `;
@@ -43,8 +43,8 @@ exports[`compiler: hoistStatic transform hoist nested static tree with comments
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode, createCommentVNode: _createCommentVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"div\\", null, [
-  /*#__PURE__*/_createCommentVNode(\\"comment\\")
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("div", null, [
+  /*#__PURE__*/_createCommentVNode("comment")
 ], -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
@@ -54,7 +54,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createCommentVNode: _createCommentVNode, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
   }
 }"
 `;
@@ -63,8 +63,8 @@ exports[`compiler: hoistStatic transform hoist siblings with common non-hoistabl
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"span\\", null, null, -1 /* HOISTED */)
-const _hoisted_2 = /*#__PURE__*/_createElementVNode(\\"div\\", null, null, -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("span", null, null, -1 /* HOISTED */)
+const _hoisted_2 = /*#__PURE__*/_createElementVNode("div", null, null, -1 /* HOISTED */)
 const _hoisted_3 = [
   _hoisted_1,
   _hoisted_2
@@ -74,7 +74,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_3))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_3))
   }
 }"
 `;
@@ -83,7 +83,7 @@ exports[`compiler: hoistStatic transform hoist simple element 1`] = `
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"span\\", { class: \\"inline\\" }, \\"hello\\", -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("span", { class: "inline" }, "hello", -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
 ]
@@ -92,7 +92,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
   }
 }"
 `;
@@ -101,16 +101,16 @@ exports[`compiler: hoistStatic transform hoist static props for elements with di
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = { id: \\"foo\\" }
+const _hoisted_1 = { id: "foo" }
 
 return function render(_ctx, _cache) {
   with (_ctx) {
     const { resolveDirective: _resolveDirective, createElementVNode: _createElementVNode, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    const _directive_foo = _resolveDirective(\\"foo\\")
+    const _directive_foo = _resolveDirective("foo")
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _withDirectives(_createElementVNode(\\"div\\", _hoisted_1, null, 512 /* NEED_PATCH */), [
+    return (_openBlock(), _createElementBlock("div", null, [
+      _withDirectives(_createElementVNode("div", _hoisted_1, null, 512 /* NEED_PATCH */), [
         [_directive_foo]
       ])
     ]))
@@ -122,14 +122,14 @@ exports[`compiler: hoistStatic transform hoist static props for elements with dy
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = { id: \\"foo\\" }
+const _hoisted_1 = { id: "foo" }
 
 return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _createElementVNode(\\"div\\", _hoisted_1, _toDisplayString(hello), 1 /* TEXT */)
+    return (_openBlock(), _createElementBlock("div", null, [
+      _createElementVNode("div", _hoisted_1, _toDisplayString(hello), 1 /* TEXT */)
     ]))
   }
 }"
@@ -139,16 +139,16 @@ exports[`compiler: hoistStatic transform hoist static props for elements with un
 "const _Vue = Vue
 const { createVNode: _createVNode, createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = { id: \\"foo\\" }
+const _hoisted_1 = { id: "foo" }
 
 return function render(_ctx, _cache) {
   with (_ctx) {
     const { resolveComponent: _resolveComponent, createVNode: _createVNode, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _createElementVNode(\\"div\\", _hoisted_1, [
+    return (_openBlock(), _createElementBlock("div", null, [
+      _createElementVNode("div", _hoisted_1, [
         _createVNode(_component_Comp)
       ])
     ]))
@@ -168,8 +168,8 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, normalizeClass: _normalizeClass, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _createElementVNode(\\"span\\", _hoisted_1, _toDisplayString(_ctx.bar), 1 /* TEXT */)
+    return (_openBlock(), _createElementBlock("div", null, [
+      _createElementVNode("span", _hoisted_1, _toDisplayString(_ctx.bar), 1 /* TEXT */)
     ]))
   }
 }"
@@ -179,7 +179,7 @@ exports[`compiler: hoistStatic transform prefixIdentifiers hoist nested static t
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"span\\", null, \\"foo \\" + /*#__PURE__*/_toDisplayString(1) + \\" \\" + /*#__PURE__*/_toDisplayString(true), -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("span", null, "foo " + /*#__PURE__*/_toDisplayString(1) + " " + /*#__PURE__*/_toDisplayString(true), -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
 ]
@@ -188,7 +188,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
   }
 }"
 `;
@@ -197,7 +197,7 @@ exports[`compiler: hoistStatic transform prefixIdentifiers hoist nested static t
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"span\\", { foo: 0 }, /*#__PURE__*/_toDisplayString(1), -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("span", { foo: 0 }, /*#__PURE__*/_toDisplayString(1), -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
 ]
@@ -206,7 +206,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+    return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
   }
 }"
 `;
@@ -215,7 +215,7 @@ exports[`compiler: hoistStatic transform prefixIdentifiers should NOT hoist SVG
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"path\\", { d: \\"M2,3H5.5L12\\" }, null, -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("path", { d: "M2,3H5.5L12" }, null, -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
 ]
@@ -224,10 +224,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, resolveDirective: _resolveDirective, openBlock: _openBlock, createElementBlock: _createElementBlock, withDirectives: _withDirectives } = _Vue
 
-    const _directive_foo = _resolveDirective(\\"foo\\")
+    const _directive_foo = _resolveDirective("foo")
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _withDirectives((_openBlock(), _createElementBlock(\\"svg\\", null, _hoisted_2)), [
+    return (_openBlock(), _createElementBlock("div", null, [
+      _withDirectives((_openBlock(), _createElementBlock("svg", null, _hoisted_2)), [
         [_directive_foo]
       ])
     ]))
@@ -236,12 +236,12 @@ return function render(_ctx, _cache) {
 `;
 
 exports[`compiler: hoistStatic transform prefixIdentifiers should NOT hoist elements with cached handlers + other bindings 1`] = `
-"import { normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { normalizeClass as _normalizeClass, createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
-    _createElementVNode(\\"div\\", null, [
-      _createElementVNode(\\"div\\", {
+  return (_openBlock(), _createElementBlock("div", null, [
+    _createElementVNode("div", null, [
+      _createElementVNode("div", {
         class: _normalizeClass({}),
         onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.foo && _ctx.foo(...args)))
       })
@@ -251,12 +251,12 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler: hoistStatic transform prefixIdentifiers should NOT hoist elements with cached handlers 1`] = `
-"import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
-    _createElementVNode(\\"div\\", null, [
-      _createElementVNode(\\"div\\", {
+  return (_openBlock(), _createElementBlock("div", null, [
+    _createElementVNode("div", null, [
+      _createElementVNode("div", {
         onClick: _cache[0] || (_cache[0] = (...args) => (_ctx.foo && _ctx.foo(...args)))
       })
     ])
@@ -271,10 +271,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, toDisplayString: _toDisplayString, createElementVNode: _createElementVNode } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, (o) => {
-        return (_openBlock(), _createElementBlock(\\"p\\", null, [
-          _createElementVNode(\\"span\\", null, _toDisplayString(o + 'foo'), 1 /* TEXT */)
+        return (_openBlock(), _createElementBlock("p", null, [
+          _createElementVNode("span", null, _toDisplayString(o + 'foo'), 1 /* TEXT */)
         ]))
       }), 256 /* UNKEYED_FRAGMENT */))
     ]))
@@ -289,7 +289,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, createTextVNode: _createTextVNode, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
     return (_openBlock(), _createBlock(_component_Comp, null, {
       default: _withCtx(({ foo }) => [
@@ -308,10 +308,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, toDisplayString: _toDisplayString, createElementVNode: _createElementVNode } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, (o) => {
-        return (_openBlock(), _createElementBlock(\\"p\\", null, [
-          _createElementVNode(\\"span\\", null, _toDisplayString(o), 1 /* TEXT */)
+        return (_openBlock(), _createElementBlock("p", null, [
+          _createElementVNode("span", null, _toDisplayString(o), 1 /* TEXT */)
         ]))
       }), 256 /* UNKEYED_FRAGMENT */))
     ]))
@@ -326,9 +326,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
-        return (_openBlock(), _createElementBlock(\\"span\\", { key: item }))
+        return (_openBlock(), _createElementBlock("span", { key: item }))
       }), 128 /* KEYED_FRAGMENT */))
     ]))
   }
@@ -342,9 +342,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { resolveComponent: _resolveComponent, createVNode: _createVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       _createVNode(_component_Comp)
     ]))
   }
@@ -358,8 +358,8 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      (_openBlock(), _createElementBlock(\\"div\\", { key: foo }))
+    return (_openBlock(), _createElementBlock("div", null, [
+      (_openBlock(), _createElementBlock("div", { key: foo }))
     ]))
   }
 }"
@@ -369,14 +369,14 @@ exports[`compiler: hoistStatic transform should NOT hoist element with dynamic p
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = [\\"id\\"]
+const _hoisted_1 = ["id"]
 
 return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _createElementVNode(\\"div\\", { id: foo }, null, 8 /* PROPS */, _hoisted_1)
+    return (_openBlock(), _createElementBlock("div", null, [
+      _createElementVNode("div", { id: foo }, null, 8 /* PROPS */, _hoisted_1)
     ]))
   }
 }"
@@ -389,8 +389,8 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
-      _createElementVNode(\\"div\\", { ref: foo }, null, 512 /* NEED_PATCH */)
+    return (_openBlock(), _createElementBlock("div", null, [
+      _createElementVNode("div", { ref: foo }, null, 512 /* NEED_PATCH */)
     ]))
   }
 }"
@@ -403,7 +403,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\"))
+    return (_openBlock(), _createElementBlock("div"))
   }
 }"
 `;
@@ -412,8 +412,8 @@ exports[`compiler: hoistStatic transform should hoist v-for children if static 1
 "const _Vue = Vue
 const { createElementVNode: _createElementVNode } = _Vue
 
-const _hoisted_1 = { id: \\"foo\\" }
-const _hoisted_2 = /*#__PURE__*/_createElementVNode(\\"span\\", null, null, -1 /* HOISTED */)
+const _hoisted_1 = { id: "foo" }
+const _hoisted_2 = /*#__PURE__*/_createElementVNode("span", null, null, -1 /* HOISTED */)
 const _hoisted_3 = [
   _hoisted_2
 ]
@@ -422,9 +422,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, createElementVNode: _createElementVNode } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(list, (i) => {
-        return (_openBlock(), _createElementBlock(\\"div\\", _hoisted_1, _hoisted_3))
+        return (_openBlock(), _createElementBlock("div", _hoisted_1, _hoisted_3))
       }), 256 /* UNKEYED_FRAGMENT */))
     ]))
   }
@@ -437,9 +437,9 @@ const { createElementVNode: _createElementVNode, createCommentVNode: _createComm
 
 const _hoisted_1 = {
   key: 0,
-  id: \\"foo\\"
+  id: "foo"
 }
-const _hoisted_2 = /*#__PURE__*/_createElementVNode(\\"span\\", null, null, -1 /* HOISTED */)
+const _hoisted_2 = /*#__PURE__*/_createElementVNode("span", null, null, -1 /* HOISTED */)
 const _hoisted_3 = [
   _hoisted_2
 ]
@@ -448,10 +448,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       ok
-        ? (_openBlock(), _createElementBlock(\\"div\\", _hoisted_1, _hoisted_3))
-        : _createCommentVNode(\\"v-if\\", true)
+        ? (_openBlock(), _createElementBlock("div", _hoisted_1, _hoisted_3))
+        : _createCommentVNode("v-if", true)
     ]))
   }
 }"
index 93c4277ffa35a400e23201c45ef32c4f551a6acc..aa8a6e2e20e517a1036abdf8c5e33b1c77f8c450 100644 (file)
@@ -2,7 +2,7 @@
 
 exports[`compiler: expression transform bindingMetadata inline mode 1`] = `
 "(_ctx, _cache) => {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, _toDisplayString(__props.props) + \\" \\" + _toDisplayString(_unref(setup)) + \\" \\" + _toDisplayString(setupConst) + \\" \\" + _toDisplayString(_ctx.data) + \\" \\" + _toDisplayString(_ctx.options), 1 /* TEXT */))
+  return (_openBlock(), _createElementBlock("div", null, _toDisplayString(__props.props) + " " + _toDisplayString(_unref(setup)) + " " + _toDisplayString(setupConst) + " " + _toDisplayString(_ctx.data) + " " + _toDisplayString(_ctx.options), 1 /* TEXT */))
 }"
 `;
 
@@ -10,6 +10,6 @@ exports[`compiler: expression transform bindingMetadata non-inline mode 1`] = `
 "const { toDisplayString: _toDisplayString, openBlock: _openBlock, createElementBlock: _createElementBlock } = Vue
 
 return function render(_ctx, _cache, $props, $setup, $data, $options) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, _toDisplayString($props.props) + \\" \\" + _toDisplayString($setup.setup) + \\" \\" + _toDisplayString($data.data) + \\" \\" + _toDisplayString($options.options), 1 /* TEXT */))
+  return (_openBlock(), _createElementBlock("div", null, _toDisplayString($props.props) + " " + _toDisplayString($setup.setup) + " " + _toDisplayString($data.data) + " " + _toDisplayString($options.options), 1 /* TEXT */))
 }"
 `;
index b17a825b7b8131fed64f2d8ffa8ce0b8cdc20cf0..945d19609cb0cd455aa406e7568efaaa25919e2e 100644 (file)
@@ -9,7 +9,7 @@ return function render(_ctx, _cache) {
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(list, (i) => {
       return (_openBlock(), _createElementBlock(_Fragment, null, [
-        _createTextVNode(\\"foo\\")
+        _createTextVNode("foo")
       ], 64 /* STABLE_FRAGMENT */))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
@@ -23,7 +23,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString } = _Vue
 
-    return _toDisplayString(foo) + \\" bar \\" + _toDisplayString(baz)
+    return _toDisplayString(foo) + " bar " + _toDisplayString(baz)
   }
 }"
 `;
@@ -36,9 +36,9 @@ return function render(_ctx, _cache) {
     const { createElementVNode: _createElementVNode, toDisplayString: _toDisplayString, createTextVNode: _createTextVNode, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(), _createElementBlock(_Fragment, null, [
-      _createElementVNode(\\"div\\"),
-      _createTextVNode(_toDisplayString(foo) + \\" bar \\" + _toDisplayString(baz), 1 /* TEXT */),
-      _createElementVNode(\\"div\\")
+      _createElementVNode("div"),
+      _createTextVNode(_toDisplayString(foo) + " bar " + _toDisplayString(baz), 1 /* TEXT */),
+      _createElementVNode("div")
     ], 64 /* STABLE_FRAGMENT */))
   }
 }"
@@ -52,11 +52,11 @@ return function render(_ctx, _cache) {
     const { createElementVNode: _createElementVNode, toDisplayString: _toDisplayString, createTextVNode: _createTextVNode, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(), _createElementBlock(_Fragment, null, [
-      _createElementVNode(\\"div\\"),
-      _createTextVNode(_toDisplayString(foo) + \\" bar \\" + _toDisplayString(baz), 1 /* TEXT */),
-      _createElementVNode(\\"div\\"),
-      _createTextVNode(\\"hello\\"),
-      _createElementVNode(\\"div\\")
+      _createElementVNode("div"),
+      _createTextVNode(_toDisplayString(foo) + " bar " + _toDisplayString(baz), 1 /* TEXT */),
+      _createElementVNode("div"),
+      _createTextVNode("hello"),
+      _createElementVNode("div")
     ], 64 /* STABLE_FRAGMENT */))
   }
 }"
@@ -69,9 +69,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { toDisplayString: _toDisplayString, createTextVNode: _createTextVNode, resolveDirective: _resolveDirective, openBlock: _openBlock, createElementBlock: _createElementBlock, withDirectives: _withDirectives } = _Vue
 
-    const _directive_foo = _resolveDirective(\\"foo\\")
+    const _directive_foo = _resolveDirective("foo")
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"p\\", null, [
+    return _withDirectives((_openBlock(), _createElementBlock("p", null, [
       _createTextVNode(_toDisplayString(foo), 1 /* TEXT */)
     ])), [
       [_directive_foo]
@@ -100,9 +100,9 @@ return function render(_ctx, _cache) {
     const { createElementVNode: _createElementVNode, createTextVNode: _createTextVNode, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(), _createElementBlock(_Fragment, null, [
-      _createElementVNode(\\"div\\"),
-      _createTextVNode(\\"hello\\"),
-      _createElementVNode(\\"div\\")
+      _createElementVNode("div"),
+      _createTextVNode("hello"),
+      _createElementVNode("div")
     ], 64 /* STABLE_FRAGMENT */))
   }
 }"
@@ -112,6 +112,6 @@ exports[`compiler: transform text with prefixIdentifiers: true 1`] = `
 "const { toDisplayString: _toDisplayString } = Vue
 
 return function render(_ctx, _cache) {
-  return _toDisplayString(_ctx.foo) + \\" bar \\" + _toDisplayString(_ctx.baz + _ctx.qux)
+  return _toDisplayString(_ctx.foo) + " bar " + _toDisplayString(_ctx.baz + _ctx.qux)
 }"
 `;
index cd53651daca024594d6a58f6041abda9faca776c..2d8498703e55a2ddb3f60ac724c7115e390814eb 100644 (file)
@@ -8,7 +8,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
-      return (_openBlock(), _createElementBlock(\\"span\\"))
+      return (_openBlock(), _createElementBlock("span"))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
@@ -23,8 +23,8 @@ return function render(_ctx, _cache) {
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
       return (_openBlock(), _createElementBlock(_Fragment, { key: item }, [
-        \\"hello\\",
-        _createElementVNode(\\"span\\")
+        "hello",
+        _createElementVNode("span")
       ], 64 /* STABLE_FRAGMENT */))
     }), 128 /* KEYED_FRAGMENT */))
   }
@@ -39,7 +39,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
-      return (_openBlock(), _createElementBlock(\\"span\\", { key: item }))
+      return (_openBlock(), _createElementBlock("span", { key: item }))
     }), 128 /* KEYED_FRAGMENT */))
   }
 }"
@@ -53,7 +53,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item, __, index) => {
-      return (_openBlock(), _createElementBlock(\\"span\\"))
+      return (_openBlock(), _createElementBlock("span"))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
@@ -67,7 +67,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (_, __, index) => {
-      return (_openBlock(), _createElementBlock(\\"span\\"))
+      return (_openBlock(), _createElementBlock("span"))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
@@ -81,7 +81,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (_, key, index) => {
-      return (_openBlock(), _createElementBlock(\\"span\\"))
+      return (_openBlock(), _createElementBlock("span"))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
@@ -96,8 +96,8 @@ return function render(_ctx, _cache) {
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
       return (_openBlock(), _createElementBlock(_Fragment, null, [
-        \\"hello\\",
-        _createElementVNode(\\"span\\")
+        "hello",
+        _createElementVNode("span")
       ], 64 /* STABLE_FRAGMENT */))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
@@ -112,10 +112,10 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
-      return (_openBlock(), _createElementBlock(\\"span\\", {
+      return (_openBlock(), _createElementBlock("span", {
         key: item.id,
         id: item.id
-      }, null, 8 /* PROPS */, [\\"id\\"]))
+      }, null, 8 /* PROPS */, ["id"]))
     }), 128 /* KEYED_FRAGMENT */))
   }
 }"
@@ -129,7 +129,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, renderSlot: _renderSlot } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
-      return _renderSlot($slots, \\"default\\")
+      return _renderSlot($slots, "default")
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
@@ -143,7 +143,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, renderSlot: _renderSlot } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item) => {
-      return _renderSlot($slots, \\"default\\")
+      return _renderSlot($slots, "default")
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
@@ -156,10 +156,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, resolveDirective: _resolveDirective, withDirectives: _withDirectives } = _Vue
 
-    const _directive_foo = _resolveDirective(\\"foo\\")
+    const _directive_foo = _resolveDirective("foo")
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(list, (i) => {
-      return _withDirectives((_openBlock(), _createElementBlock(\\"div\\", null, null, 512 /* NEED_PATCH */)), [
+      return _withDirectives((_openBlock(), _createElementBlock("div", null, null, 512 /* NEED_PATCH */)), [
         [_directive_foo]
       ])
     }), 256 /* UNKEYED_FRAGMENT */))
@@ -175,7 +175,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock, toDisplayString: _toDisplayString, createElementVNode: _createElementVNode } = _Vue
 
     return (_openBlock(), _createElementBlock(_Fragment, null, _renderList(10, (item) => {
-      return _createElementVNode(\\"p\\", null, _toDisplayString(item), 1 /* TEXT */)
+      return _createElementVNode("p", null, _toDisplayString(item), 1 /* TEXT */)
     }), 64 /* STABLE_FRAGMENT */))
   }
 }"
@@ -190,9 +190,9 @@ return function render(_ctx, _cache) {
 
     return ok
       ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(list, (i) => {
-          return (_openBlock(), _createElementBlock(\\"div\\"))
+          return (_openBlock(), _createElementBlock("div"))
         }), 256 /* UNKEYED_FRAGMENT */))
-      : _createCommentVNode(\\"v-if\\", true)
+      : _createCommentVNode("v-if", true)
   }
 }"
 `;
@@ -208,7 +208,7 @@ return function render(_ctx, _cache) {
       ? (_openBlock(true), _createElementBlock(_Fragment, { key: 0 }, _renderList(list, (i) => {
           return (_openBlock(), _createElementBlock(_Fragment, null, [], 64 /* STABLE_FRAGMENT */))
         }), 256 /* UNKEYED_FRAGMENT */))
-      : _createCommentVNode(\\"v-if\\", true)
+      : _createCommentVNode("v-if", true)
   }
 }"
 `;
@@ -221,7 +221,7 @@ return function render(_ctx, _cache) {
     const { renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(items, (item, key, index) => {
-      return (_openBlock(), _createElementBlock(\\"span\\"))
+      return (_openBlock(), _createElementBlock("span"))
     }), 256 /* UNKEYED_FRAGMENT */))
   }
 }"
index ee15a6558d963f20ff351b1afdbee0b8441628d7..b36e21f7c37cca61baa485324b6d53922c442470 100644 (file)
@@ -8,8 +8,8 @@ return function render(_ctx, _cache) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode } = _Vue
 
     return ok
-      ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }))
-      : _createCommentVNode(\\"v-if\\", true)
+      ? (_openBlock(), _createElementBlock("div", { key: 0 }))
+      : _createCommentVNode("v-if", true)
   }
 }"
 `;
@@ -23,13 +23,13 @@ return function render(_ctx, _cache) {
 
     return (_openBlock(), _createElementBlock(_Fragment, null, [
       ok
-        ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }))
-        : (_openBlock(), _createElementBlock(\\"p\\", { key: 1 })),
+        ? (_openBlock(), _createElementBlock("div", { key: 0 }))
+        : (_openBlock(), _createElementBlock("p", { key: 1 })),
       another
-        ? (_openBlock(), _createElementBlock(\\"div\\", { key: 2 }))
+        ? (_openBlock(), _createElementBlock("div", { key: 2 }))
         : orNot
-          ? (_openBlock(), _createElementBlock(\\"p\\", { key: 3 }))
-          : (_openBlock(), _createElementBlock(\\"p\\", { key: 4 }))
+          ? (_openBlock(), _createElementBlock("p", { key: 3 }))
+          : (_openBlock(), _createElementBlock("p", { key: 4 }))
     ], 64 /* STABLE_FRAGMENT */))
   }
 }"
@@ -44,11 +44,11 @@ return function render(_ctx, _cache) {
 
     return (_openBlock(), _createElementBlock(_Fragment, null, [
       ok
-        ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }))
-        : _createCommentVNode(\\"v-if\\", true),
+        ? (_openBlock(), _createElementBlock("div", { key: 0 }))
+        : _createCommentVNode("v-if", true),
       orNot
-        ? (_openBlock(), _createElementBlock(\\"p\\", { key: 1 }))
-        : _createCommentVNode(\\"v-if\\", true)
+        ? (_openBlock(), _createElementBlock("p", { key: 1 }))
+        : _createCommentVNode("v-if", true)
     ], 64 /* STABLE_FRAGMENT */))
   }
 }"
@@ -63,11 +63,11 @@ return function render(_ctx, _cache) {
 
     return ok
       ? (_openBlock(), _createElementBlock(_Fragment, { key: 0 }, [
-          _createElementVNode(\\"div\\"),
-          \\"hello\\",
-          _createElementVNode(\\"p\\")
+          _createElementVNode("div"),
+          "hello",
+          _createElementVNode("p")
         ], 64 /* STABLE_FRAGMENT */))
-      : _createCommentVNode(\\"v-if\\", true)
+      : _createCommentVNode("v-if", true)
   }
 }"
 `;
@@ -80,8 +80,8 @@ return function render(_ctx, _cache) {
     const { renderSlot: _renderSlot, createCommentVNode: _createCommentVNode } = _Vue
 
     return ok
-      ? _renderSlot($slots, \\"default\\", { key: 0 })
-      : _createCommentVNode(\\"v-if\\", true)
+      ? _renderSlot($slots, "default", { key: 0 })
+      : _createCommentVNode("v-if", true)
   }
 }"
 `;
@@ -94,8 +94,8 @@ return function render(_ctx, _cache) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode } = _Vue
 
     return ok
-      ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }))
-      : (_openBlock(), _createElementBlock(\\"p\\", { key: 1 }))
+      ? (_openBlock(), _createElementBlock("div", { key: 0 }))
+      : (_openBlock(), _createElementBlock("p", { key: 1 }))
   }
 }"
 `;
@@ -108,10 +108,10 @@ return function render(_ctx, _cache) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode, Fragment: _Fragment } = _Vue
 
     return ok
-      ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }))
+      ? (_openBlock(), _createElementBlock("div", { key: 0 }))
       : orNot
-        ? (_openBlock(), _createElementBlock(\\"p\\", { key: 1 }))
-        : (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, [\\"fine\\"], 64 /* STABLE_FRAGMENT */))
+        ? (_openBlock(), _createElementBlock("p", { key: 1 }))
+        : (_openBlock(), _createElementBlock(_Fragment, { key: 2 }, ["fine"], 64 /* STABLE_FRAGMENT */))
   }
 }"
 `;
@@ -124,10 +124,10 @@ return function render(_ctx, _cache) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock, createCommentVNode: _createCommentVNode } = _Vue
 
     return ok
-      ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }))
+      ? (_openBlock(), _createElementBlock("div", { key: 0 }))
       : orNot
-        ? (_openBlock(), _createElementBlock(\\"p\\", { key: 1 }))
-        : _createCommentVNode(\\"v-if\\", true)
+        ? (_openBlock(), _createElementBlock("p", { key: 1 }))
+        : _createCommentVNode("v-if", true)
   }
 }"
 `;
@@ -140,8 +140,8 @@ return function render(_ctx, _cache) {
     const { renderSlot: _renderSlot, createCommentVNode: _createCommentVNode } = _Vue
 
     return ok
-      ? _renderSlot($slots, \\"default\\", { key: 0 })
-      : _createCommentVNode(\\"v-if\\", true)
+      ? _renderSlot($slots, "default", { key: 0 })
+      : _createCommentVNode("v-if", true)
   }
 }"
 `;
index 7627d8fd3da6b2ee2ffa4d626c92c58879207e6d..35e2aa66a7292e2d5e46a4005b71817663ac8c26 100644 (file)
@@ -1,44 +1,44 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`compiler: v-memo transform on component 1`] = `
-"import { resolveComponent as _resolveComponent, createVNode as _createVNode, withMemo as _withMemo, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { resolveComponent as _resolveComponent, createVNode as _createVNode, withMemo as _withMemo, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
+  return (_openBlock(), _createElementBlock("div", null, [
     _withMemo([_ctx.x], () => _createVNode(_component_Comp), _cache, 0)
   ]))
 }"
 `;
 
 exports[`compiler: v-memo transform on normal element 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock, withMemo as _withMemo } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock, withMemo as _withMemo } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
-    _withMemo([_ctx.x], () => (_openBlock(), _createElementBlock(\\"div\\")), _cache, 0)
+  return (_openBlock(), _createElementBlock("div", null, [
+    _withMemo([_ctx.x], () => (_openBlock(), _createElementBlock("div")), _cache, 0)
   ]))
 }"
 `;
 
 exports[`compiler: v-memo transform on root element 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock, withMemo as _withMemo } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock, withMemo as _withMemo } from "vue"
 
 export function render(_ctx, _cache) {
-  return _withMemo([_ctx.x], () => (_openBlock(), _createElementBlock(\\"div\\")), _cache, 0)
+  return _withMemo([_ctx.x], () => (_openBlock(), _createElementBlock("div")), _cache, 0)
 }"
 `;
 
 exports[`compiler: v-memo transform on template v-for 1`] = `
-"import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, isMemoSame as _isMemoSame, withMemo as _withMemo } from \\"vue\\"
+"import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, isMemoSame as _isMemoSame, withMemo as _withMemo } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
+  return (_openBlock(), _createElementBlock("div", null, [
     (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, ({ x, y }, __, ___, _cached) => {
       const _memo = ([x, y === _ctx.z])
       if (_cached && _cached.key === x && _isMemoSame(_cached, _memo)) return _cached
-      const _item = (_openBlock(), _createElementBlock(\\"span\\", { key: x }, \\"foobar\\"))
+      const _item = (_openBlock(), _createElementBlock("span", { key: x }, "foobar"))
       _item.memo = _memo
       return _item
     }, _cache, 0), 128 /* KEYED_FRAGMENT */))
@@ -47,15 +47,15 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler: v-memo transform on v-for 1`] = `
-"import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, isMemoSame as _isMemoSame, withMemo as _withMemo } from \\"vue\\"
+"import { renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, createElementVNode as _createElementVNode, isMemoSame as _isMemoSame, withMemo as _withMemo } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
+  return (_openBlock(), _createElementBlock("div", null, [
     (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.list, ({ x, y }, __, ___, _cached) => {
       const _memo = ([x, y === _ctx.z])
       if (_cached && _cached.key === x && _isMemoSame(_cached, _memo)) return _cached
-      const _item = (_openBlock(), _createElementBlock(\\"div\\", { key: x }, [
-        _createElementVNode(\\"span\\", null, \\"foobar\\")
+      const _item = (_openBlock(), _createElementBlock("div", { key: x }, [
+        _createElementVNode("span", null, "foobar")
       ]))
       _item.memo = _memo
       return _item
@@ -65,16 +65,16 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler: v-memo transform on v-if 1`] = `
-"import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, withMemo as _withMemo, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createElementBlock as _createElementBlock, withMemo as _withMemo, createCommentVNode as _createCommentVNode, resolveComponent as _resolveComponent, createBlock as _createBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
-  return (_openBlock(), _createElementBlock(\\"div\\", null, [
+  return (_openBlock(), _createElementBlock("div", null, [
     (_ctx.ok)
-      ? _withMemo([_ctx.x], () => (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }, [
-          _createElementVNode(\\"span\\", null, \\"foo\\"),
-          _createTextVNode(\\"bar\\")
+      ? _withMemo([_ctx.x], () => (_openBlock(), _createElementBlock("div", { key: 0 }, [
+          _createElementVNode("span", null, "foo"),
+          _createTextVNode("bar")
         ])), _cache, 0)
       : _withMemo([_ctx.x], () => (_openBlock(), _createBlock(_component_Comp, { key: 1 })), _cache, 1)
   ]))
index 8cc085572af9d9bcd8ee24e2384fda75decfc09b..d4e9c6b2e1691d8a9e9197ec6616a8a5578af2f2 100644 (file)
@@ -1,13 +1,13 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`compiler: transform v-model compound expression (with prefixIdentifiers) 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"input\\", {
+  return (_openBlock(), _createElementBlock("input", {
     modelValue: _ctx.model[_ctx.index],
-    \\"onUpdate:modelValue\\": $event => ((_ctx.model[_ctx.index]) = $event)
-  }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"]))
+    "onUpdate:modelValue": $event => ((_ctx.model[_ctx.index]) = $event)
+  }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue"]))
 }"
 `;
 
@@ -18,10 +18,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"input\\", {
+    return (_openBlock(), _createElementBlock("input", {
       modelValue: model[index],
-      \\"onUpdate:modelValue\\": $event => ((model[index]) = $event)
-    }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"]))
+      "onUpdate:modelValue": $event => ((model[index]) = $event)
+    }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue"]))
   }
 }"
 `;
@@ -33,30 +33,30 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"input\\", {
+    return (_openBlock(), _createElementBlock("input", {
       modelValue: 
  model
 .
 foo 
 ,
-      \\"onUpdate:modelValue\\": $event => ((
+      "onUpdate:modelValue": $event => ((
  model
 .
 foo 
 ) = $event)
-    }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"]))
+    }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue"]))
   }
 }"
 `;
 
 exports[`compiler: transform v-model simple expression (with prefixIdentifiers) 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"input\\", {
+  return (_openBlock(), _createElementBlock("input", {
     modelValue: _ctx.model,
-    \\"onUpdate:modelValue\\": $event => ((_ctx.model) = $event)
-  }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"]))
+    "onUpdate:modelValue": $event => ((_ctx.model) = $event)
+  }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue"]))
 }"
 `;
 
@@ -67,10 +67,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"input\\", {
+    return (_openBlock(), _createElementBlock("input", {
       modelValue: model,
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"modelValue\\", \\"onUpdate:modelValue\\"]))
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["modelValue", "onUpdate:modelValue"]))
   }
 }"
 `;
@@ -82,21 +82,21 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"input\\", {
-      \\"foo-value\\": model,
-      \\"onUpdate:fooValue\\": $event => ((model) = $event)
-    }, null, 40 /* PROPS, HYDRATE_EVENTS */, [\\"foo-value\\", \\"onUpdate:fooValue\\"]))
+    return (_openBlock(), _createElementBlock("input", {
+      "foo-value": model,
+      "onUpdate:fooValue": $event => ((model) = $event)
+    }, null, 40 /* PROPS, HYDRATE_EVENTS */, ["foo-value", "onUpdate:fooValue"]))
   }
 }"
 `;
 
 exports[`compiler: transform v-model with dynamic argument (with prefixIdentifiers) 1`] = `
-"import { normalizeProps as _normalizeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { normalizeProps as _normalizeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"input\\", _normalizeProps({
+  return (_openBlock(), _createElementBlock("input", _normalizeProps({
     [_ctx.value]: _ctx.model,
-    [\\"onUpdate:\\" + _ctx.value]: $event => ((_ctx.model) = $event)
+    ["onUpdate:" + _ctx.value]: $event => ((_ctx.model) = $event)
   }), null, 16 /* FULL_PROPS */))
 }"
 `;
@@ -108,9 +108,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { normalizeProps: _normalizeProps, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"input\\", _normalizeProps({
+    return (_openBlock(), _createElementBlock("input", _normalizeProps({
       [value]: model,
-      [\\"onUpdate:\\" + value]: $event => ((model) = $event)
+      ["onUpdate:" + value]: $event => ((model) = $event)
     }), null, 16 /* FULL_PROPS */))
   }
 }"
index 575c59ebb59978e82daa3df1023783d5874fd631..972acfb479aec19372b1cf1bbbffb9fdeb40c3da 100644 (file)
@@ -9,7 +9,7 @@ return function render(_ctx, _cache) {
 
     return _cache[0] || (
       _setBlockTracking(-1),
-      _cache[0] = _createElementVNode(\\"div\\", { id: foo }, null, 8 /* PROPS */, [\\"id\\"]),
+      _cache[0] = _createElementVNode("div", { id: foo }, null, 8 /* PROPS */, ["id"]),
       _setBlockTracking(1),
       _cache[0]
     )
@@ -24,12 +24,12 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { setBlockTracking: _setBlockTracking, resolveComponent: _resolveComponent, createVNode: _createVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       _cache[0] || (
         _setBlockTracking(-1),
-        _cache[0] = _createVNode(_component_Comp, { id: foo }, null, 8 /* PROPS */, [\\"id\\"]),
+        _cache[0] = _createVNode(_component_Comp, { id: foo }, null, 8 /* PROPS */, ["id"]),
         _setBlockTracking(1),
         _cache[0]
       )
@@ -45,10 +45,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { setBlockTracking: _setBlockTracking, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       _cache[0] || (
         _setBlockTracking(-1),
-        _cache[0] = _createElementVNode(\\"div\\", { id: foo }, null, 8 /* PROPS */, [\\"id\\"]),
+        _cache[0] = _createElementVNode("div", { id: foo }, null, 8 /* PROPS */, ["id"]),
         _setBlockTracking(1),
         _cache[0]
       )
@@ -64,10 +64,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { setBlockTracking: _setBlockTracking, renderSlot: _renderSlot, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       _cache[0] || (
         _setBlockTracking(-1),
-        _cache[0] = _renderSlot($slots, \\"default\\"),
+        _cache[0] = _renderSlot($slots, "default"),
         _setBlockTracking(1),
         _cache[0]
       )
@@ -83,10 +83,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { setBlockTracking: _setBlockTracking, createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return (_openBlock(), _createElementBlock(\\"div\\", null, [
+    return (_openBlock(), _createElementBlock("div", null, [
       _cache[0] || (
         _setBlockTracking(-1),
-        _cache[0] = _createElementVNode(\\"div\\"),
+        _cache[0] = _createElementVNode("div"),
         _setBlockTracking(1),
         _cache[0]
       )
index 55796020a47fd588354f56c17ecd19f32e30109d..c17d1d0e52e65e5bdebdd373f5d152ebb1053727 100644 (file)
@@ -4,7 +4,7 @@ exports[`compiler: transform component slots dynamically named slots 1`] = `
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     [_ctx.one]: _withCtx(({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)]),
@@ -18,11 +18,11 @@ exports[`compiler: transform component slots implicit default slot 1`] = `
 "const { createElementVNode: _createElementVNode, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     default: _withCtx(() => [
-      _createElementVNode(\\"div\\")
+      _createElementVNode("div")
     ]),
     _: 1 /* STABLE */
   }))
@@ -33,7 +33,7 @@ exports[`compiler: transform component slots named slot with v-for w/ prefixIden
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, renderList: _renderList, createSlots: _createSlots, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, _createSlots({ _: 2 /* DYNAMIC */ }, [
     _renderList(_ctx.list, (name) => {
@@ -50,14 +50,14 @@ exports[`compiler: transform component slots named slot with v-if + prefixIdenti
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, createSlots: _createSlots, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, _createSlots({ _: 2 /* DYNAMIC */ }, [
     (_ctx.ok)
       ? {
-          name: \\"one\\",
+          name: "one",
           fn: _withCtx((props) => [_toDisplayString(props)]),
-          key: \\"0\\"
+          key: "0"
         }
       : undefined
   ]), 1024 /* DYNAMIC_SLOTS */))
@@ -71,25 +71,25 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { resolveComponent: _resolveComponent, withCtx: _withCtx, createSlots: _createSlots, openBlock: _openBlock, createBlock: _createBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
     return (_openBlock(), _createBlock(_component_Comp, null, _createSlots({ _: 2 /* DYNAMIC */ }, [
       ok
         ? {
-            name: \\"one\\",
-            fn: _withCtx(() => [\\"foo\\"]),
-            key: \\"0\\"
+            name: "one",
+            fn: _withCtx(() => ["foo"]),
+            key: "0"
           }
         : orNot
           ? {
-              name: \\"two\\",
-              fn: _withCtx((props) => [\\"bar\\"]),
-              key: \\"1\\"
+              name: "two",
+              fn: _withCtx((props) => ["bar"]),
+              key: "1"
             }
           : {
-              name: \\"one\\",
-              fn: _withCtx(() => [\\"baz\\"]),
-              key: \\"2\\"
+              name: "one",
+              fn: _withCtx(() => ["baz"]),
+              key: "2"
             }
     ]), 1024 /* DYNAMIC_SLOTS */))
   }
@@ -103,14 +103,14 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { resolveComponent: _resolveComponent, withCtx: _withCtx, createSlots: _createSlots, openBlock: _openBlock, createBlock: _createBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
     return (_openBlock(), _createBlock(_component_Comp, null, _createSlots({ _: 2 /* DYNAMIC */ }, [
       ok
         ? {
-            name: \\"one\\",
-            fn: _withCtx(() => [\\"hello\\"]),
-            key: \\"0\\"
+            name: "one",
+            fn: _withCtx(() => ["hello"]),
+            key: "0"
           }
         : undefined
     ]), 1024 /* DYNAMIC_SLOTS */))
@@ -125,13 +125,13 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { createElementVNode: _createElementVNode, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = _Vue
 
-    const _component_Comp = _resolveComponent(\\"Comp\\")
+    const _component_Comp = _resolveComponent("Comp")
 
     return (_openBlock(), _createBlock(_component_Comp, null, {
-      one: _withCtx(() => [\\"foo\\"]),
+      one: _withCtx(() => ["foo"]),
       default: _withCtx(() => [
-        \\"bar\\",
-        _createElementVNode(\\"span\\")
+        "bar",
+        _createElementVNode("span")
       ]),
       _: 1 /* STABLE */
     }))
@@ -143,8 +143,8 @@ exports[`compiler: transform component slots nested slots scoping 1`] = `
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, createVNode: _createVNode, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Inner = _resolveComponent(\\"Inner\\")
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Inner = _resolveComponent("Inner")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     default: _withCtx(({ foo }) => [
@@ -152,7 +152,7 @@ return function render(_ctx, _cache) {
         default: _withCtx(({ bar }) => [_toDisplayString(foo), _toDisplayString(bar), _toDisplayString(_ctx.baz)]),
         _: 2 /* DYNAMIC */
       }, 1024 /* DYNAMIC_SLOTS */),
-      \\" \\",
+      ",
       _toDisplayString(foo),
       _toDisplayString(_ctx.bar),
       _toDisplayString(_ctx.baz)
@@ -166,7 +166,7 @@ exports[`compiler: transform component slots on component dynamically named slot
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     [_ctx.named]: _withCtx(({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)]),
@@ -179,7 +179,7 @@ exports[`compiler: transform component slots on component named slot 1`] = `
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     named: _withCtx(({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)]),
@@ -192,7 +192,7 @@ exports[`compiler: transform component slots on-component default slot 1`] = `
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     default: _withCtx(({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)]),
@@ -205,7 +205,7 @@ exports[`compiler: transform component slots template named slots 1`] = `
 "const { toDisplayString: _toDisplayString, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
     one: _withCtx(({ foo }) => [_toDisplayString(foo), _toDisplayString(_ctx.bar)]),
@@ -219,13 +219,13 @@ exports[`compiler: transform component slots with whitespace: 'preserve' implici
 "const { createElementVNode: _createElementVNode, resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
-    header: _withCtx(() => [\\" Header \\"]),
+    header: _withCtx(() => [" Header "]),
     default: _withCtx(() => [
-      \\" \\",
-      _createElementVNode(\\"p\\")
+      ",
+      _createElementVNode("p")
     ]),
     _: 1 /* STABLE */
   }))
@@ -236,11 +236,11 @@ exports[`compiler: transform component slots with whitespace: 'preserve' named d
 "const { resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
-    header: _withCtx(() => [\\" Header \\"]),
-    default: _withCtx(() => [\\" Default \\"]),
+    header: _withCtx(() => [" Header "]),
+    default: _withCtx(() => [" Default "]),
     _: 1 /* STABLE */
   }))
 }"
@@ -250,11 +250,11 @@ exports[`compiler: transform component slots with whitespace: 'preserve' should
 "const { resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = Vue
 
 return function render(_ctx, _cache) {
-  const _component_Comp = _resolveComponent(\\"Comp\\")
+  const _component_Comp = _resolveComponent("Comp")
 
   return (_openBlock(), _createBlock(_component_Comp, null, {
-    header: _withCtx(() => [\\" Header \\"]),
-    footer: _withCtx(() => [\\" Footer \\"]),
+    header: _withCtx(() => [" Header "]),
+    footer: _withCtx(() => [" Footer "]),
     _: 1 /* STABLE */
   }))
 }"
index e65442fd36ce17e1f99e963d9e43e503de12e301..2cc7a3bfb144d4500b7e0770b8c07d34d78f6b24 100644 (file)
@@ -8,13 +8,13 @@ return function render(_ctx, _cache) {
     const { toDisplayString: _toDisplayString, createElementVNode: _createElementVNode, normalizeStyle: _normalizeStyle, Fragment: _Fragment, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
     return (_openBlock(), _createElementBlock(_Fragment, null, [
-      _createElementVNode(\\"div\\", {
+      _createElementVNode("div", {
         textContent: _toDisplayString(text)
-      }, null, 8 /* PROPS */, [\\"textContent\\"]),
-      _createElementVNode(\\"div\\", { innerHTML: html }, null, 8 /* PROPS */, [\\"innerHTML\\"]),
-      _createElementVNode(\\"div\\", null, \\"test\\"),
-      _createElementVNode(\\"div\\", { style: {\\"color\\":\\"red\\"} }, \\"red\\"),
-      _createElementVNode(\\"div\\", {
+      }, null, 8 /* PROPS */, ["textContent"]),
+      _createElementVNode("div", { innerHTML: html }, null, 8 /* PROPS */, ["innerHTML"]),
+      _createElementVNode("div", null, "test"),
+      _createElementVNode("div", { style: {"color":"red"} }, "red"),
+      _createElementVNode("div", {
         style: _normalizeStyle({color: 'green'})
       }, null, 4 /* STYLE */)
     ], 64 /* STABLE_FRAGMENT */))
index 026fb8aae45451b3145ae87db6060b165a3a4dd8..8396cb7ff5b8f5fac76e947e733242a9f892cdb0 100644 (file)
@@ -7,9 +7,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vShow: _vShow, createElementVNode: _createElementVNode, withDirectives: _withDirectives, Transition: _Transition, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock } = _Vue
 
-    return (_openBlock(), _createBlock(_Transition, { persisted: \\"\\" }, {
+    return (_openBlock(), _createBlock(_Transition, { persisted: "" }, {
       default: _withCtx(() => [
-        _withDirectives(_createElementVNode(\\"div\\", null, null, 512 /* NEED_PATCH */), [
+        _withDirectives(_createElementVNode("div", null, null, 512 /* NEED_PATCH */), [
           [_vShow, ok]
         ])
       ]),
@@ -29,15 +29,15 @@ return function render(_ctx, _cache) {
     return (_openBlock(), _createBlock(_Transition, null, {
       default: _withCtx(() => [
         a
-          ? (_openBlock(), _createElementBlock(\\"div\\", { key: 0 }, \\"hey\\"))
+          ? (_openBlock(), _createElementBlock("div", { key: 0 }, "hey"))
           : b
-            ? (_openBlock(), _createElementBlock(\\"div\\", { key: 1 }, \\"hey\\"))
-            : (_openBlock(), _createElementBlock(\\"div\\", { key: 2 }, [
+            ? (_openBlock(), _createElementBlock("div", { key: 1 }, "hey"))
+            : (_openBlock(), _createElementBlock("div", { key: 2 }, [
                 c
-                  ? (_openBlock(), _createElementBlock(\\"p\\", { key: 0 }))
+                  ? (_openBlock(), _createElementBlock("p", { key: 0 }))
                   : (_openBlock(), _createElementBlock(_Fragment, { key: 1 }, [
-                      _createCommentVNode(\\" this should not be ignored \\"),
-                      _createElementVNode(\\"p\\")
+                      _createCommentVNode(" this should not be ignored "),
+                      _createElementVNode("p")
                     ], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */))
               ]))
       ]),
index 8427b38fcecf74aeac7357aab3a2822b5b84b015..176004794c9215a99c4118460ad965c5401b7331 100644 (file)
@@ -3,40 +3,40 @@
 exports[`stringify static html should bail on bindings that are hoisted but not stringifiable 1`] = `
 "const { createElementVNode: _createElementVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = Vue
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"div\\", null, [
-  /*#__PURE__*/_createElementVNode(\\"span\\", { class: \\"foo\\" }, \\"foo\\"),
-  /*#__PURE__*/_createElementVNode(\\"span\\", { class: \\"foo\\" }, \\"foo\\"),
-  /*#__PURE__*/_createElementVNode(\\"span\\", { class: \\"foo\\" }, \\"foo\\"),
-  /*#__PURE__*/_createElementVNode(\\"span\\", { class: \\"foo\\" }, \\"foo\\"),
-  /*#__PURE__*/_createElementVNode(\\"span\\", { class: \\"foo\\" }, \\"foo\\"),
-  /*#__PURE__*/_createElementVNode(\\"img\\", { src: _imports_0_ })
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("div", null, [
+  /*#__PURE__*/_createElementVNode("span", { class: "foo" }, "foo"),
+  /*#__PURE__*/_createElementVNode("span", { class: "foo" }, "foo"),
+  /*#__PURE__*/_createElementVNode("span", { class: "foo" }, "foo"),
+  /*#__PURE__*/_createElementVNode("span", { class: "foo" }, "foo"),
+  /*#__PURE__*/_createElementVNode("span", { class: "foo" }, "foo"),
+  /*#__PURE__*/_createElementVNode("img", { src: _imports_0_ })
 ], -1 /* HOISTED */)
 const _hoisted_2 = [
   _hoisted_1
 ]
 
 return function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+  return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
 }"
 `;
 
 exports[`stringify static html should work with bindings that are non-static but stringifiable 1`] = `
 "const { createElementVNode: _createElementVNode, createStaticVNode: _createStaticVNode, openBlock: _openBlock, createElementBlock: _createElementBlock } = Vue
 
-const _hoisted_1 = /*#__PURE__*/_createStaticVNode(\\"<div><span class=\\\\\\"foo\\\\\\">foo</span><span class=\\\\\\"foo\\\\\\">foo</span><span class=\\\\\\"foo\\\\\\">foo</span><span class=\\\\\\"foo\\\\\\">foo</span><span class=\\\\\\"foo\\\\\\">foo</span><img src=\\\\\\"\\" + _imports_0_ + \\"\\\\\\"></div>\\", 1)
+const _hoisted_1 = /*#__PURE__*/_createStaticVNode("<div><span class=\\"foo\\">foo</span><span class=\\"foo\\">foo</span><span class=\\"foo\\">foo</span><span class=\\"foo\\">foo</span><span class=\\"foo\\">foo</span><img src=\\"" + _imports_0_ + "\\"></div>", 1)
 const _hoisted_2 = [
   _hoisted_1
 ]
 
 return function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_2))
+  return (_openBlock(), _createElementBlock("div", null, _hoisted_2))
 }"
 `;
 
 exports[`stringify static html stringify v-html 1`] = `
 "const { createElementVNode: _createElementVNode, createStaticVNode: _createStaticVNode } = Vue
 
-const _hoisted_1 = /*#__PURE__*/_createStaticVNode(\\"<pre data-type=\\\\\\"js\\\\\\"><code><span>show-it </span></code></pre><div class><span class>1</span><span class>2</span></div>\\", 2)
+const _hoisted_1 = /*#__PURE__*/_createStaticVNode("<pre data-type=\\"js\\"><code><span>show-it </span></code></pre><div class><span class>1</span><span class>2</span></div>", 2)
 
 return function render(_ctx, _cache) {
   return _hoisted_1
@@ -46,7 +46,7 @@ return function render(_ctx, _cache) {
 exports[`stringify static html stringify v-text 1`] = `
 "const { createElementVNode: _createElementVNode, createStaticVNode: _createStaticVNode } = Vue
 
-const _hoisted_1 = /*#__PURE__*/_createStaticVNode(\\"<pre data-type=\\\\\\"js\\\\\\"><code>&lt;span&gt;show-it &lt;/span&gt;</code></pre><div class><span class>1</span><span class>2</span></div>\\", 2)
+const _hoisted_1 = /*#__PURE__*/_createStaticVNode("<pre data-type=\\"js\\"><code>&lt;span&gt;show-it &lt;/span&gt;</code></pre><div class><span class>1</span><span class>2</span></div>", 2)
 
 return function render(_ctx, _cache) {
   return _hoisted_1
index cdaadc1d6302270f8a0b9c9ebfec01d6ad31326e..513f2572f8c76d38316d65d3ed8d50ae8734367c 100644 (file)
@@ -7,9 +7,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"my-input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("my-input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelText, model]
     ])
   }
@@ -23,9 +23,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelDynamic: _vModelDynamic, mergeProps: _mergeProps, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", _mergeProps(obj, {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }), null, 16 /* FULL_PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", _mergeProps(obj, {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }), null, 16 /* FULL_PROPS */, ["onUpdate:modelValue"])), [
       [_vModelDynamic, model]
     ])
   }
@@ -39,9 +39,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelDynamic: _vModelDynamic, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelDynamic, model]
     ])
   }
@@ -55,9 +55,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [
         _vModelText,
         model,
@@ -76,9 +76,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [
         _vModelText,
         model,
@@ -97,9 +97,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [
         _vModelText,
         model,
@@ -118,9 +118,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelText, model]
     ])
   }
@@ -134,10 +134,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelCheckbox: _vModelCheckbox, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      type: \\"checkbox\\",
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      type: "checkbox",
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelCheckbox, model]
     ])
   }
@@ -151,9 +151,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelDynamic: _vModelDynamic, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelDynamic, model]
     ])
   }
@@ -167,10 +167,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelRadio: _vModelRadio, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      type: \\"radio\\",
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      type: "radio",
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelRadio, model]
     ])
   }
@@ -184,10 +184,10 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"input\\", {
-      type: \\"text\\",
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("input", {
+      type: "text",
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelText, model]
     ])
   }
@@ -201,9 +201,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelSelect: _vModelSelect, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"select\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("select", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelSelect, model]
     ])
   }
@@ -217,9 +217,9 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vModelText: _vModelText, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"textarea\\", {
-      \\"onUpdate:modelValue\\": $event => ((model) = $event)
-    }, null, 8 /* PROPS */, [\\"onUpdate:modelValue\\"])), [
+    return _withDirectives((_openBlock(), _createElementBlock("textarea", {
+      "onUpdate:modelValue": $event => ((model) = $event)
+    }, null, 8 /* PROPS */, ["onUpdate:modelValue"])), [
       [_vModelText, model]
     ])
   }
index a0d5e72002bd1d2c8594ef7af38afd224060946f..fbd96bc428c41871e617d5bea3ab18d05a31d72f 100644 (file)
@@ -7,7 +7,7 @@ return function render(_ctx, _cache) {
   with (_ctx) {
     const { vShow: _vShow, withDirectives: _withDirectives, openBlock: _openBlock, createElementBlock: _createElementBlock } = _Vue
 
-    return _withDirectives((_openBlock(), _createElementBlock(\\"div\\", null, null, 512 /* NEED_PATCH */)), [
+    return _withDirectives((_openBlock(), _createElementBlock("div", null, null, 512 /* NEED_PATCH */)), [
       [_vShow, a]
     ])
   }
index ae42d6f87b9a441c40701924573b54cd04dc079d..a4306b42ec1d1d2cf666ba3f4b9cc5d125bea5b7 100644 (file)
@@ -101,7 +101,7 @@ exports[`SFC compile <script setup> <script> and <script setup> co-usage script
 import { x } from './x'
       
       const __default__ = {
-        name: \\"test\\"
+        name: "test"
       }
       
 
@@ -976,7 +976,7 @@ return { ref }
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode avoid unref() when necessary 1`] = `
-"import { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { unref as _unref, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, withCtx as _withCtx, createVNode as _createVNode, createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 import { ref } from 'vue'
         import Foo, { bar } from './Foo.vue'
@@ -1000,8 +1000,8 @@ return (_ctx, _cache) => {
       ]),
       _: 1 /* STABLE */
     }),
-    _createElementVNode(\\"div\\", { onClick: fn }, _toDisplayString(count.value) + \\" \\" + _toDisplayString(constant) + \\" \\" + _toDisplayString(_unref(maybe)) + \\" \\" + _toDisplayString(_unref(lett)) + \\" \\" + _toDisplayString(_unref(other)), 1 /* TEXT */),
-    _createTextVNode(\\" \\" + _toDisplayString(tree.foo()), 1 /* TEXT */)
+    _createElementVNode("div", { onClick: fn }, _toDisplayString(count.value) + " " + _toDisplayString(constant) + " " + _toDisplayString(_unref(maybe)) + " " + _toDisplayString(_unref(lett)) + " " + _toDisplayString(_unref(other)), 1 /* TEXT */),
+    _createTextVNode(" + _toDisplayString(tree.foo()), 1 /* TEXT */)
   ], 64 /* STABLE_FRAGMENT */))
 }
 }
@@ -1010,7 +1010,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode referencing scope components and directives 1`] = `
-"import { unref as _unref, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createVNode as _createVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { unref as _unref, createElementVNode as _createElementVNode, withDirectives as _withDirectives, createVNode as _createVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 import ChildComp from './Child.vue'
         import SomeOtherComp from './Other.vue'
@@ -1022,7 +1022,7 @@ export default {
         
 return (_ctx, _cache) => {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _withDirectives(_createElementVNode(\\"div\\", null, null, 512 /* NEED_PATCH */), [
+    _withDirectives(_createElementVNode("div", null, null, 512 /* NEED_PATCH */), [
       [_unref(vMyDir)]
     ]),
     _createVNode(ChildComp),
@@ -1035,9 +1035,9 @@ return (_ctx, _cache) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode should work 1`] = `
-"import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"div\\", null, \\"static\\", -1 /* HOISTED */)
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("div", null, "static", -1 /* HOISTED */)
 
 import { ref } from 'vue'
         
@@ -1048,7 +1048,7 @@ export default {
         
 return (_ctx, _cache) => {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"div\\", null, _toDisplayString(count.value), 1 /* TEXT */),
+    _createElementVNode("div", null, _toDisplayString(count.value), 1 /* TEXT */),
     _hoisted_1
   ], 64 /* STABLE_FRAGMENT */))
 }
@@ -1058,7 +1058,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode ssr codegen 1`] = `
-"import { ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate } from \\"vue/server-renderer\\"
+"import { ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate } from "vue/server-renderer"
 
 import { ref } from 'vue'
         
@@ -1070,7 +1070,7 @@ export default {
         
 return (_ctx, _push, _parent, _attrs) => {
   const _cssVars = { style: {
-  \\"--xxxxxxxx-count\\": (count.value)
+  "--xxxxxxxx-count": (count.value)
 }}
   _push(\`<!--[--><div\${
     _ssrRenderAttrs(_cssVars)
@@ -1086,7 +1086,7 @@ return (_ctx, _push, _parent, _attrs) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode template assignment expression codegen 1`] = `
-"import { createElementVNode as _createElementVNode, isRef as _isRef, unref as _unref, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, isRef as _isRef, unref as _unref, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 import { ref } from 'vue'
         
@@ -1100,28 +1100,28 @@ export default {
         
 return (_ctx, _cache) => {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[0] || (_cache[0] = $event => (count.value = 1))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[1] || (_cache[1] = $event => (maybe.value = count.value))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[2] || (_cache[2] = $event => (_isRef(lett) ? lett.value = count.value : lett = count.value))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[3] || (_cache[3] = $event => (_isRef(v) ? v.value += 1 : v += 1))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[4] || (_cache[4] = $event => (_isRef(v) ? v.value -= 1 : v -= 1))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[5] || (_cache[5] = () => {
               let a = '' + _unref(lett)
               _isRef(v) ? v.value = a : v = a
            })
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[6] || (_cache[6] = () => {
               // nested scopes
               (()=>{
@@ -1143,7 +1143,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode template destructure assignment codegen 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 import { ref } from 'vue'
         
@@ -1157,13 +1157,13 @@ export default {
         
 return (_ctx, _cache) => {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[0] || (_cache[0] = $event => (({ count: count.value } = val)))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[1] || (_cache[1] = $event => ([maybe.value] = val))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[2] || (_cache[2] = $event => (({ lett: lett } = val)))
     })
   ], 64 /* STABLE_FRAGMENT */))
@@ -1174,7 +1174,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode template update expression codegen 1`] = `
-"import { createElementVNode as _createElementVNode, isRef as _isRef, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, isRef as _isRef, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 import { ref } from 'vue'
         
@@ -1187,22 +1187,22 @@ export default {
         
 return (_ctx, _cache) => {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[0] || (_cache[0] = $event => (count.value++))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[1] || (_cache[1] = $event => (--count.value))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[2] || (_cache[2] = $event => (maybe.value++))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[3] || (_cache[3] = $event => (--maybe.value))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[4] || (_cache[4] = $event => (_isRef(lett) ? lett.value++ : lett++))
     }),
-    _createElementVNode(\\"div\\", {
+    _createElementVNode("div", {
       onClick: _cache[5] || (_cache[5] = $event => (_isRef(lett) ? --lett.value : --lett))
     })
   ], 64 /* STABLE_FRAGMENT */))
@@ -1213,7 +1213,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`SFC compile <script setup> inlineTemplate mode v-model codegen 1`] = `
-"import { vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, unref as _unref, isRef as _isRef, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { vModelText as _vModelText, createElementVNode as _createElementVNode, withDirectives as _withDirectives, unref as _unref, isRef as _isRef, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 import { ref } from 'vue'
         
@@ -1226,18 +1226,18 @@ export default {
         
 return (_ctx, _cache) => {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _withDirectives(_createElementVNode(\\"input\\", {
-      \\"onUpdate:modelValue\\": _cache[0] || (_cache[0] = $event => ((count).value = $event))
+    _withDirectives(_createElementVNode("input", {
+      "onUpdate:modelValue": _cache[0] || (_cache[0] = $event => ((count).value = $event))
     }, null, 512 /* NEED_PATCH */), [
       [_vModelText, count.value]
     ]),
-    _withDirectives(_createElementVNode(\\"input\\", {
-      \\"onUpdate:modelValue\\": _cache[1] || (_cache[1] = $event => (_isRef(maybe) ? (maybe).value = $event : null))
+    _withDirectives(_createElementVNode("input", {
+      "onUpdate:modelValue": _cache[1] || (_cache[1] = $event => (_isRef(maybe) ? (maybe).value = $event : null))
     }, null, 512 /* NEED_PATCH */), [
       [_vModelText, _unref(maybe)]
     ]),
-    _withDirectives(_createElementVNode(\\"input\\", {
-      \\"onUpdate:modelValue\\": _cache[2] || (_cache[2] = $event => (_isRef(lett) ? (lett).value = $event : lett = $event))
+    _withDirectives(_createElementVNode("input", {
+      "onUpdate:modelValue": _cache[2] || (_cache[2] = $event => (_isRef(lett) ? (lett).value = $event : lett = $event))
     }, null, 512 /* NEED_PATCH */), [
       [_vModelText, _unref(lett)]
     ])
@@ -1306,7 +1306,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (exporte
 export interface Emits { (e: 'foo' | 'bar'): void }
       
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ({ (e: 'foo' | 'bar'): void }), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1323,7 +1323,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (exporte
 export type Emits = { (e: 'foo' | 'bar'): void }
       
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ({ (e: 'foo' | 'bar'): void }), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1357,7 +1357,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (interfa
 interface Emits { (e: 'foo' | 'bar'): void }
       
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ({ (e: 'foo' | 'bar'): void }), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1374,7 +1374,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (referen
 export type Emits = (e: 'foo' | 'bar') => void
       
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ((e: 'foo' | 'bar') => void), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1391,7 +1391,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (referen
 type Emits = (e: 'foo' | 'bar') => void
       
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ((e: 'foo' | 'bar') => void), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1408,7 +1408,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (type al
 type Emits = { (e: 'foo' | 'bar'): void }
       
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ({ (e: 'foo' | 'bar'): void }), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1424,7 +1424,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type (type li
 "import { defineComponent as _defineComponent } from 'vue'
 
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\", \\"baz\\"],
+  emits: ["foo", "bar", "baz"],
   setup(__props, { expose, emit }: { emit: ({(e: 'foo' | 'bar'): void; (e: 'baz', id: number): void;}), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1440,7 +1440,7 @@ exports[`SFC compile <script setup> with TypeScript defineEmits w/ type 1`] = `
 "import { defineComponent as _defineComponent } from 'vue'
 
 export default /*#__PURE__*/_defineComponent({
-  emits: [\\"foo\\", \\"bar\\"],
+  emits: ["foo", "bar"],
   setup(__props, { expose, emit }: { emit: ((e: 'foo' | 'bar') => void), expose: any, slots: any, attrs: any }) {
   expose();
 
@@ -1693,9 +1693,9 @@ exports[`SFC compile <script setup> with TypeScript runtime Enum in normal scrip
 "import { defineComponent as _defineComponent } from 'vue'
 enum Foo { A = 123 }
         
-          export enum D { D = \\"D\\" }
-          const enum C { C = \\"C\\" }
-          enum B { B = \\"B\\" }
+          export enum D { D = "D" }
+          const enum C { C = "C" }
+          enum B { B = "B" }
         
 export default /*#__PURE__*/_defineComponent({
   setup(__props, { expose }) {
index 7c14e2b21b49bffc0cb1ea484951655f4ab8804d..7641a151ef5268c1287ec090881f93aa5b74aa07 100644 (file)
@@ -21,7 +21,7 @@ return () => {}
 `;
 
 exports[`sfc props transform aliasing 1`] = `
-"import { toDisplayString as _toDisplayString } from \\"vue\\"
+"import { toDisplayString as _toDisplayString } from "vue"
 
 
 export default {
@@ -41,7 +41,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`sfc props transform basic usage 1`] = `
-"import { toDisplayString as _toDisplayString } from \\"vue\\"
+"import { toDisplayString as _toDisplayString } from "vue"
 
 
 export default {
@@ -60,7 +60,7 @@ return (_ctx, _cache) => {
 `;
 
 exports[`sfc props transform computed static key 1`] = `
-"import { toDisplayString as _toDisplayString } from \\"vue\\"
+"import { toDisplayString as _toDisplayString } from "vue"
 
 
 export default {
@@ -154,7 +154,7 @@ return () => {}
 `;
 
 exports[`sfc props transform non-identifier prop names 1`] = `
-"import { toDisplayString as _toDisplayString } from \\"vue\\"
+"import { toDisplayString as _toDisplayString } from "vue"
 
 
 export default {
@@ -162,10 +162,10 @@ export default {
   setup(__props) {
 
       
-      let x = __props[\\"foo.bar\\"]
+      let x = __props["foo.bar"]
       
 return (_ctx, _cache) => {
-  return _toDisplayString(__props[\\"foo.bar\\"])
+  return _toDisplayString(__props["foo.bar"])
 }
 }
 
@@ -179,7 +179,7 @@ export default {
   props: ['foo', 'bar', 'baz'],
   setup(__props) {
 
-const rest = _createPropsRestProxy(__props, [\\"foo\\",\\"bar\\"]);
+const rest = _createPropsRestProxy(__props, ["foo","bar"]);
 
       
       
index 9d04c5159a9079a17536718fa1b180d4158fb163..05540795b28f13e75230b5cee2805860e6b6154c 100644 (file)
@@ -1,10 +1,10 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`dynamic v-on + static v-on should merged 1`] = `
-"import { toHandlerKey as _toHandlerKey, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { toHandlerKey as _toHandlerKey, mergeProps as _mergeProps, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"input\\", _mergeProps({
+  return (_openBlock(), _createElementBlock("input", _mergeProps({
     onBlur: _cache[0] || (_cache[0] = (...args) => (_ctx.onBlur && _ctx.onBlur(...args)))
   }, {
     [_toHandlerKey(_ctx.validateEvent)]: _cache[1] || (_cache[1] = (...args) => (_ctx.onValidateEvent && _ctx.onValidateEvent(...args)))
@@ -13,19 +13,19 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`should not hoist srcset URLs in SSR mode 1`] = `
-"import { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from \\"vue\\"
-import { ssrRenderAttr as _ssrRenderAttr, ssrRenderComponent as _ssrRenderComponent } from \\"vue/server-renderer\\"
+"import { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from "vue"
+import { ssrRenderAttr as _ssrRenderAttr, ssrRenderComponent as _ssrRenderComponent } from "vue/server-renderer"
 import _imports_0 from './img/foo.svg'
 import _imports_1 from './img/bar.svg'
 
 
 export function ssrRender(_ctx, _push, _parent, _attrs) {
-  const _component_router_link = _resolveComponent(\\"router-link\\")
+  const _component_router_link = _resolveComponent("router-link")
 
   _push(\`<!--[--><picture><source\${
-    _ssrRenderAttr(\\"srcset\\", _imports_0)
+    _ssrRenderAttr("srcset", _imports_0)
   }><img\${
-    _ssrRenderAttr(\\"src\\", _imports_0)
+    _ssrRenderAttr("src", _imports_0)
   }></picture>\`)
   _push(_ssrRenderComponent(_component_router_link, null, {
     default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -33,21 +33,21 @@ export function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<picture\${
           _scopeId
         }><source\${
-          _ssrRenderAttr(\\"srcset\\", _imports_1)
+          _ssrRenderAttr("srcset", _imports_1)
         }\${
           _scopeId
         }><img\${
-          _ssrRenderAttr(\\"src\\", _imports_1)
+          _ssrRenderAttr("src", _imports_1)
         }\${
           _scopeId
         }></picture>\`)
       } else {
         return [
-          _createVNode(\\"picture\\", null, [
-            _createVNode(\\"source\\", {
+          _createVNode("picture", null, [
+            _createVNode("source", {
               srcset: _imports_1
             }),
-            _createVNode(\\"img\\", { src: _imports_1 })
+            _createVNode("img", { src: _imports_1 })
           ])
         ]
       }
@@ -59,15 +59,15 @@ export function ssrRender(_ctx, _push, _parent, _attrs) {
 `;
 
 exports[`source map 1`] = `
-Object {
+{
   "mappings": ";;;wBACE,oBAA8B;IAAzB,oBAAmB,4BAAbA,WAAM",
-  "names": Array [
+  "names": [
     "render",
   ],
-  "sources": Array [
+  "sources": [
     "example.vue",
   ],
-  "sourcesContent": Array [
+  "sourcesContent": [
     "
   <div><p>{{ render }}</p></div>
 ",
@@ -77,7 +77,7 @@ Object {
 `;
 
 exports[`template errors 1`] = `
-Array [
+[
   [SyntaxError: Error parsing JavaScript expression: Unexpected token (1:3)],
   [SyntaxError: v-bind is missing expression.],
   [SyntaxError: v-model can only be used on <input>, <textarea> and <select> elements.],
index 78692a152268ff3fd3ae8ea8936bd73c24137e7c..32980894ad6b7ed06d39a607b6085f83b6a2ba1f 100644 (file)
@@ -5,7 +5,7 @@ exports[`CSS vars injection codegen <script> w/ default export 1`] = `
 import { useCssVars as _useCssVars } from 'vue'
 const __injectCSSVars__ = () => {
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (_ctx.color)
+  "xxxxxxxx-color": (_ctx.color)
 }))}
 const __setup__ = __default__.setup
 __default__.setup = __setup__
@@ -23,7 +23,7 @@ exports[`CSS vars injection codegen <script> w/ default export in strings/commen
 import { useCssVars as _useCssVars } from 'vue'
 const __injectCSSVars__ = () => {
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (_ctx.color)
+  "xxxxxxxx-color": (_ctx.color)
 }))}
 const __setup__ = __default__.setup
 __default__.setup = __setup__
@@ -39,7 +39,7 @@ const __default__ = {}
 import { useCssVars as _useCssVars } from 'vue'
 const __injectCSSVars__ = () => {
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (_ctx.color)
+  "xxxxxxxx-color": (_ctx.color)
 }))}
 const __setup__ = __default__.setup
 __default__.setup = __setup__
@@ -57,7 +57,7 @@ export default {
   expose();
 
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-width\\": (width)
+  "xxxxxxxx-width": (width)
 }))
 const color = 'red';const width = 100
 return { color, width }
@@ -74,10 +74,10 @@ export default {
   expose();
 
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-foo\\": (_unref(foo)),
-  \\"xxxxxxxx-foo\\\\ \\\\+\\\\ \\\\'px\\\\'\\": (_unref(foo) + 'px'),
-  \\"xxxxxxxx-\\\\(a\\\\ \\\\+\\\\ b\\\\)\\\\ \\\\/\\\\ 2\\\\ \\\\+\\\\ \\\\'px\\\\'\\": ((_unref(a) + _unref(b)) / 2 + 'px'),
-  \\"xxxxxxxx-\\\\(\\\\(a\\\\ \\\\+\\\\ b\\\\)\\\\)\\\\ \\\\/\\\\ \\\\(2\\\\ \\\\*\\\\ a\\\\)\\": (((_unref(a) + _unref(b))) / (2 * _unref(a)))
+  "xxxxxxxx-foo": (_unref(foo)),
+  "xxxxxxxx-foo\\ \\+\\ \\'px\\'": (_unref(foo) + 'px'),
+  "xxxxxxxx-\\(a\\ \\+\\ b\\)\\ \\/\\ 2\\ \\+\\ \\'px\\'": ((_unref(a) + _unref(b)) / 2 + 'px'),
+  "xxxxxxxx-\\(\\(a\\ \\+\\ b\\)\\)\\ \\/\\ \\(2\\ \\*\\ a\\)": (((_unref(a) + _unref(b))) / (2 * _unref(a)))
 }))
 
         let a = 100
@@ -98,7 +98,7 @@ export default {
   expose();
 
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (color)
+  "xxxxxxxx-color": (color)
 }))
 const color = 'red'
 return { color }
@@ -115,7 +115,7 @@ export default {
   expose();
 
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (color)
+  "xxxxxxxx-color": (color)
 }))
 
         const color = 'red'
@@ -132,8 +132,8 @@ const __default__ = {}
 import { useCssVars as _useCssVars } from 'vue'
 const __injectCSSVars__ = () => {
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (_ctx.color),
-  \\"xxxxxxxx-font\\\\.size\\": (_ctx.font.size)
+  "xxxxxxxx-color": (_ctx.color),
+  "xxxxxxxx-font\\.size": (_ctx.font.size)
 }))}
 const __setup__ = __default__.setup
 __default__.setup = __setup__
@@ -155,9 +155,9 @@ export default {
   expose();
 
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-color\\": (color),
-  \\"xxxxxxxx-size\\": (size.value),
-  \\"xxxxxxxx-foo\\": (__props.foo)
+  "xxxxxxxx-color": (color),
+  "xxxxxxxx-size": (size.value),
+  "xxxxxxxx-foo": (__props.foo)
 }))
 
         const color = 'red'
@@ -183,7 +183,7 @@ exports[`CSS vars injection w/ normal <script> binding analysis 1`] = `
 import { useCssVars as _useCssVars } from 'vue'
 const __injectCSSVars__ = () => {
 _useCssVars(_ctx => ({
-  \\"xxxxxxxx-size\\": (_ctx.size)
+  "xxxxxxxx-size": (_ctx.size)
 }))}
 const __setup__ = __default__.setup
 __default__.setup = __setup__
index ac09f57e40d4ea96cf3faa4db239b0710e27ea98..d92a24782f7ef58e08c45e52c09d9319795f992f 100644 (file)
@@ -1,45 +1,45 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`compiler sfc: transform asset url should allow for full base URLs, with paths 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"img\\", { src: \\"http://localhost:3000/src/logo.png\\" }))
+  return (_openBlock(), _createElementBlock("img", { src: "http://localhost:3000/src/logo.png" }))
 }"
 `;
 
 exports[`compiler sfc: transform asset url should allow for full base URLs, without paths 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"img\\", { src: \\"http://localhost:3000/logo.png\\" }))
+  return (_openBlock(), _createElementBlock("img", { src: "http://localhost:3000/logo.png" }))
 }"
 `;
 
 exports[`compiler sfc: transform asset url should allow for full base URLs, without port 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"img\\", { src: \\"http://localhost/logo.png\\" }))
+  return (_openBlock(), _createElementBlock("img", { src: "http://localhost/logo.png" }))
 }"
 `;
 
 exports[`compiler sfc: transform asset url should allow for full base URLs, without protocol 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"img\\", { src: \\"//localhost/logo.png\\" }))
+  return (_openBlock(), _createElementBlock("img", { src: "//localhost/logo.png" }))
 }"
 `;
 
 exports[`compiler sfc: transform asset url support uri fragment 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from '@svg/file.svg'
 
 
 const _hoisted_1 = _imports_0 + '#fragment'
-const _hoisted_2 = /*#__PURE__*/_createElementVNode(\\"use\\", { href: _hoisted_1 }, null, -1 /* HOISTED */)
-const _hoisted_3 = /*#__PURE__*/_createElementVNode(\\"use\\", { href: _hoisted_1 }, null, -1 /* HOISTED */)
+const _hoisted_2 = /*#__PURE__*/_createElementVNode("use", { href: _hoisted_1 }, null, -1 /* HOISTED */)
+const _hoisted_3 = /*#__PURE__*/_createElementVNode("use", { href: _hoisted_1 }, null, -1 /* HOISTED */)
 
 export function render(_ctx, _cache) {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
@@ -50,76 +50,76 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler sfc: transform asset url support uri is empty 1`] = `
-"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"use\\", { href: '' }))
+  return (_openBlock(), _createElementBlock("use", { href: '' }))
 }"
 `;
 
 exports[`compiler sfc: transform asset url transform assetUrls 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from './logo.png'
 import _imports_1 from 'fixtures/logo.png'
 
 
 export function render(_ctx, _cache) {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"img\\", { src: _imports_0 }),
-    _createElementVNode(\\"img\\", { src: _imports_1 }),
-    _createElementVNode(\\"img\\", { src: _imports_1 }),
-    _createElementVNode(\\"img\\", { src: \\"http://example.com/fixtures/logo.png\\" }),
-    _createElementVNode(\\"img\\", { src: \\"//example.com/fixtures/logo.png\\" }),
-    _createElementVNode(\\"img\\", { src: \\"/fixtures/logo.png\\" }),
-    _createElementVNode(\\"img\\", { src: \\"data:image/png;base64,i\\" })
+    _createElementVNode("img", { src: _imports_0 }),
+    _createElementVNode("img", { src: _imports_1 }),
+    _createElementVNode("img", { src: _imports_1 }),
+    _createElementVNode("img", { src: "http://example.com/fixtures/logo.png" }),
+    _createElementVNode("img", { src: "//example.com/fixtures/logo.png" }),
+    _createElementVNode("img", { src: "/fixtures/logo.png" }),
+    _createElementVNode("img", { src: "data:image/png;base64,i" })
   ], 64 /* STABLE_FRAGMENT */))
 }"
 `;
 
 exports[`compiler sfc: transform asset url transform with stringify 1`] = `
-"import { createElementVNode as _createElementVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from './bar.png'
 import _imports_1 from '/bar.png'
 
 
-const _hoisted_1 = /*#__PURE__*/_createStaticVNode(\\"<img src=\\\\\\"\\" + _imports_0 + \\"\\\\\\"><img src=\\\\\\"\\" + _imports_1 + \\"\\\\\\"><img src=\\\\\\"https://foo.bar/baz.png\\\\\\"><img src=\\\\\\"//foo.bar/baz.png\\\\\\"><img src=\\\\\\"\\" + _imports_0 + \\"\\\\\\">\\", 5)
+const _hoisted_1 = /*#__PURE__*/_createStaticVNode("<img src=\\"" + _imports_0 + "\\"><img src=\\"" + _imports_1 + "\\"><img src=\\"https://foo.bar/baz.png\\"><img src=\\"//foo.bar/baz.png\\"><img src=\\"" + _imports_0 + "\\">", 5)
 const _hoisted_6 = [
   _hoisted_1
 ]
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_6))
+  return (_openBlock(), _createElementBlock("div", null, _hoisted_6))
 }"
 `;
 
 exports[`compiler sfc: transform asset url with explicit base 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from 'bar.png'
 import _imports_1 from '@theme/bar.png'
 
 
 export function render(_ctx, _cache) {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"img\\", { src: \\"/foo/bar.png\\" }),
-    _createElementVNode(\\"img\\", { src: \\"bar.png\\" }),
-    _createElementVNode(\\"img\\", { src: _imports_0 }),
-    _createElementVNode(\\"img\\", { src: _imports_1 })
+    _createElementVNode("img", { src: "/foo/bar.png" }),
+    _createElementVNode("img", { src: "bar.png" }),
+    _createElementVNode("img", { src: _imports_0 }),
+    _createElementVNode("img", { src: _imports_1 })
   ], 64 /* STABLE_FRAGMENT */))
 }"
 `;
 
 exports[`compiler sfc: transform asset url with includeAbsolute: true 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from './bar.png'
 import _imports_1 from '/bar.png'
 
 
 export function render(_ctx, _cache) {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
-    _createElementVNode(\\"img\\", { src: _imports_0 }),
-    _createElementVNode(\\"img\\", { src: _imports_1 }),
-    _createElementVNode(\\"img\\", { src: \\"https://foo.bar/baz.png\\" }),
-    _createElementVNode(\\"img\\", { src: \\"//foo.bar/baz.png\\" })
+    _createElementVNode("img", { src: _imports_0 }),
+    _createElementVNode("img", { src: _imports_1 }),
+    _createElementVNode("img", { src: "https://foo.bar/baz.png" }),
+    _createElementVNode("img", { src: "//foo.bar/baz.png" })
   ], 64 /* STABLE_FRAGMENT */))
 }"
 `;
index fe80f986429757fb93b70c96d9f895e27124bf93..293c9563b08b4da5f6f875b4e81b898e5f08e083 100644 (file)
@@ -1,14 +1,14 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`compiler sfc: transform srcset srcset w/ explicit base option 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from '@/logo.png'
 
 
 const _hoisted_1 = _imports_0 + ', ' + _imports_0 + ' 2x'
-const _hoisted_2 = _imports_0 + ' 1x, ' + \\"/foo/logo.png\\" + ' 2x'
-const _hoisted_3 = /*#__PURE__*/_createElementVNode(\\"img\\", { srcset: _hoisted_1 }, null, -1 /* HOISTED */)
-const _hoisted_4 = /*#__PURE__*/_createElementVNode(\\"img\\", { srcset: _hoisted_2 }, null, -1 /* HOISTED */)
+const _hoisted_2 = _imports_0 + ' 1x, ' + "/foo/logo.png" + ' 2x'
+const _hoisted_3 = /*#__PURE__*/_createElementVNode("img", { srcset: _hoisted_1 }, null, -1 /* HOISTED */)
+const _hoisted_4 = /*#__PURE__*/_createElementVNode("img", { srcset: _hoisted_2 }, null, -1 /* HOISTED */)
 
 export function render(_ctx, _cache) {
   return (_openBlock(), _createElementBlock(_Fragment, null, [
@@ -19,7 +19,7 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler sfc: transform srcset transform srcset 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from './logo.png'
 
 
@@ -30,54 +30,54 @@ const _hoisted_4 = _imports_0 + ', ' + _imports_0 + ' 2x'
 const _hoisted_5 = _imports_0 + ' 2x, ' + _imports_0
 const _hoisted_6 = _imports_0 + ' 2x, ' + _imports_0 + ' 3x'
 const _hoisted_7 = _imports_0 + ', ' + _imports_0 + ' 2x, ' + _imports_0 + ' 3x'
-const _hoisted_8 = \\"/logo.png\\" + ', ' + _imports_0 + ' 2x'
-const _hoisted_9 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"\\"
+const _hoisted_8 = "/logo.png" + ', ' + _imports_0 + ' 2x'
+const _hoisted_9 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: ""
 }, null, -1 /* HOISTED */)
-const _hoisted_10 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_10 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_1
 }, null, -1 /* HOISTED */)
-const _hoisted_11 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_11 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_2
 }, null, -1 /* HOISTED */)
-const _hoisted_12 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_12 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_3
 }, null, -1 /* HOISTED */)
-const _hoisted_13 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_13 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_4
 }, null, -1 /* HOISTED */)
-const _hoisted_14 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_14 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_5
 }, null, -1 /* HOISTED */)
-const _hoisted_15 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_15 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_6
 }, null, -1 /* HOISTED */)
-const _hoisted_16 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_16 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_7
 }, null, -1 /* HOISTED */)
-const _hoisted_17 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"/logo.png\\",
-  srcset: \\"/logo.png, /logo.png 2x\\"
+const _hoisted_17 = /*#__PURE__*/_createElementVNode("img", {
+  src: "/logo.png",
+  srcset: "/logo.png, /logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_18 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"https://example.com/logo.png\\",
-  srcset: \\"https://example.com/logo.png, https://example.com/logo.png 2x\\"
+const _hoisted_18 = /*#__PURE__*/_createElementVNode("img", {
+  src: "https://example.com/logo.png",
+  srcset: "https://example.com/logo.png, https://example.com/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_19 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"/logo.png\\",
+const _hoisted_19 = /*#__PURE__*/_createElementVNode("img", {
+  src: "/logo.png",
   srcset: _hoisted_8
 }, null, -1 /* HOISTED */)
-const _hoisted_20 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"data:image/png;base64,i\\",
-  srcset: \\"data:image/png;base64,i 1x, data:image/png;base64,i 2x\\"
+const _hoisted_20 = /*#__PURE__*/_createElementVNode("img", {
+  src: "data:image/png;base64,i",
+  srcset: "data:image/png;base64,i 1x, data:image/png;base64,i 2x"
 }, null, -1 /* HOISTED */)
 
 export function render(_ctx, _cache) {
@@ -99,55 +99,55 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler sfc: transform srcset transform srcset w/ base 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 
-const _hoisted_1 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"\\"
+const _hoisted_1 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: ""
 }, null, -1 /* HOISTED */)
-const _hoisted_2 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png\\"
+const _hoisted_2 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png"
 }, null, -1 /* HOISTED */)
-const _hoisted_3 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png 2x\\"
+const _hoisted_3 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_4 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png 2x\\"
+const _hoisted_4 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_5 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png, /foo/logo.png 2x\\"
+const _hoisted_5 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png, /foo/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_6 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png 2x, /foo/logo.png\\"
+const _hoisted_6 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png 2x, /foo/logo.png"
 }, null, -1 /* HOISTED */)
-const _hoisted_7 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png 2x, /foo/logo.png 3x\\"
+const _hoisted_7 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png 2x, /foo/logo.png 3x"
 }, null, -1 /* HOISTED */)
-const _hoisted_8 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"/foo/logo.png, /foo/logo.png 2x, /foo/logo.png 3x\\"
+const _hoisted_8 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: "/foo/logo.png, /foo/logo.png 2x, /foo/logo.png 3x"
 }, null, -1 /* HOISTED */)
-const _hoisted_9 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"/logo.png\\",
-  srcset: \\"/logo.png, /logo.png 2x\\"
+const _hoisted_9 = /*#__PURE__*/_createElementVNode("img", {
+  src: "/logo.png",
+  srcset: "/logo.png, /logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_10 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"https://example.com/logo.png\\",
-  srcset: \\"https://example.com/logo.png, https://example.com/logo.png 2x\\"
+const _hoisted_10 = /*#__PURE__*/_createElementVNode("img", {
+  src: "https://example.com/logo.png",
+  srcset: "https://example.com/logo.png, https://example.com/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_11 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"/logo.png\\",
-  srcset: \\"/logo.png, /foo/logo.png 2x\\"
+const _hoisted_11 = /*#__PURE__*/_createElementVNode("img", {
+  src: "/logo.png",
+  srcset: "/logo.png, /foo/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_12 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"data:image/png;base64,i\\",
-  srcset: \\"data:image/png;base64,i 1x, data:image/png;base64,i 2x\\"
+const _hoisted_12 = /*#__PURE__*/_createElementVNode("img", {
+  src: "data:image/png;base64,i",
+  srcset: "data:image/png;base64,i 1x, data:image/png;base64,i 2x"
 }, null, -1 /* HOISTED */)
 
 export function render(_ctx, _cache) {
@@ -169,7 +169,7 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler sfc: transform srcset transform srcset w/ includeAbsolute: true 1`] = `
-"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from './logo.png'
 import _imports_1 from '/logo.png'
 
@@ -183,53 +183,53 @@ const _hoisted_6 = _imports_0 + ' 2x, ' + _imports_0 + ' 3x'
 const _hoisted_7 = _imports_0 + ', ' + _imports_0 + ' 2x, ' + _imports_0 + ' 3x'
 const _hoisted_8 = _imports_1 + ', ' + _imports_1 + ' 2x'
 const _hoisted_9 = _imports_1 + ', ' + _imports_0 + ' 2x'
-const _hoisted_10 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
-  srcset: \\"\\"
+const _hoisted_10 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
+  srcset: ""
 }, null, -1 /* HOISTED */)
-const _hoisted_11 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_11 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_1
 }, null, -1 /* HOISTED */)
-const _hoisted_12 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_12 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_2
 }, null, -1 /* HOISTED */)
-const _hoisted_13 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_13 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_3
 }, null, -1 /* HOISTED */)
-const _hoisted_14 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_14 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_4
 }, null, -1 /* HOISTED */)
-const _hoisted_15 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_15 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_5
 }, null, -1 /* HOISTED */)
-const _hoisted_16 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_16 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_6
 }, null, -1 /* HOISTED */)
-const _hoisted_17 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"./logo.png\\",
+const _hoisted_17 = /*#__PURE__*/_createElementVNode("img", {
+  src: "./logo.png",
   srcset: _hoisted_7
 }, null, -1 /* HOISTED */)
-const _hoisted_18 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"/logo.png\\",
+const _hoisted_18 = /*#__PURE__*/_createElementVNode("img", {
+  src: "/logo.png",
   srcset: _hoisted_8
 }, null, -1 /* HOISTED */)
-const _hoisted_19 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"https://example.com/logo.png\\",
-  srcset: \\"https://example.com/logo.png, https://example.com/logo.png 2x\\"
+const _hoisted_19 = /*#__PURE__*/_createElementVNode("img", {
+  src: "https://example.com/logo.png",
+  srcset: "https://example.com/logo.png, https://example.com/logo.png 2x"
 }, null, -1 /* HOISTED */)
-const _hoisted_20 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"/logo.png\\",
+const _hoisted_20 = /*#__PURE__*/_createElementVNode("img", {
+  src: "/logo.png",
   srcset: _hoisted_9
 }, null, -1 /* HOISTED */)
-const _hoisted_21 = /*#__PURE__*/_createElementVNode(\\"img\\", {
-  src: \\"data:image/png;base64,i\\",
-  srcset: \\"data:image/png;base64,i 1x, data:image/png;base64,i 2x\\"
+const _hoisted_21 = /*#__PURE__*/_createElementVNode("img", {
+  src: "data:image/png;base64,i",
+  srcset: "data:image/png;base64,i 1x, data:image/png;base64,i 2x"
 }, null, -1 /* HOISTED */)
 
 export function render(_ctx, _cache) {
@@ -251,7 +251,7 @@ export function render(_ctx, _cache) {
 `;
 
 exports[`compiler sfc: transform srcset transform srcset w/ stringify 1`] = `
-"import { createElementVNode as _createElementVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from \\"vue\\"
+"import { createElementVNode as _createElementVNode, createStaticVNode as _createStaticVNode, openBlock as _openBlock, createElementBlock as _createElementBlock } from "vue"
 import _imports_0 from './logo.png'
 import _imports_1 from '/logo.png'
 
@@ -265,12 +265,12 @@ const _hoisted_6 = _imports_0 + ' 2x, ' + _imports_0 + ' 3x'
 const _hoisted_7 = _imports_0 + ', ' + _imports_0 + ' 2x, ' + _imports_0 + ' 3x'
 const _hoisted_8 = _imports_1 + ', ' + _imports_1 + ' 2x'
 const _hoisted_9 = _imports_1 + ', ' + _imports_0 + ' 2x'
-const _hoisted_10 = /*#__PURE__*/_createStaticVNode(\\"<img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_1 + \\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_2 + \\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_3 + \\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_4 + \\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_5 + \\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_6 + \\"\\\\\\"><img src=\\\\\\"./logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_7 + \\"\\\\\\"><img src=\\\\\\"/logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_8 + \\"\\\\\\"><img src=\\\\\\"https://example.com/logo.png\\\\\\" srcset=\\\\\\"https://example.com/logo.png, https://example.com/logo.png 2x\\\\\\"><img src=\\\\\\"/logo.png\\\\\\" srcset=\\\\\\"\\" + _hoisted_9 + \\"\\\\\\"><img src=\\\\\\"data:image/png;base64,i\\\\\\" srcset=\\\\\\"data:image/png;base64,i 1x, data:image/png;base64,i 2x\\\\\\">\\", 12)
+const _hoisted_10 = /*#__PURE__*/_createStaticVNode("<img src=\\"./logo.png\\" srcset=\\"\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_1 + "\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_2 + "\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_3 + "\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_4 + "\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_5 + "\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_6 + "\\"><img src=\\"./logo.png\\" srcset=\\"" + _hoisted_7 + "\\"><img src=\\"/logo.png\\" srcset=\\"" + _hoisted_8 + "\\"><img src=\\"https://example.com/logo.png\\" srcset=\\"https://example.com/logo.png, https://example.com/logo.png 2x\\"><img src=\\"/logo.png\\" srcset=\\"" + _hoisted_9 + "\\"><img src=\\"data:image/png;base64,i\\" srcset=\\"data:image/png;base64,i 1x, data:image/png;base64,i 2x\\">", 12)
 const _hoisted_22 = [
   _hoisted_10
 ]
 
 export function render(_ctx, _cache) {
-  return (_openBlock(), _createElementBlock(\\"div\\", null, _hoisted_22))
+  return (_openBlock(), _createElementBlock("div", null, _hoisted_22))
 }"
 `;
index ffa5d4e798b468ec866c5224864ab901c820cbcb..6cccf40ece013160914278ac00082379417573a1 100644 (file)
@@ -90,7 +90,7 @@ describe('CSS vars injection', () => {
     expect(code).toMatchInlineSnapshot(`
       ".foo {
               color: var(--test-color);
-              font-size: var(--test-font\\\\.size);
+              font-size: var(--test-font\\.size);
 
               font-weight: var(--test-_φ);
               font-size: var(--test-1-字号);
index cd21e48cb9a3e471a1354ad681c7f92713e6eeb0..d359e844b3391f58036501ec4190e47482781803 100644 (file)
@@ -3,14 +3,14 @@ import { compile } from '../src'
 describe('ssr: components', () => {
   test('basic', () => {
     expect(compile(`<foo id="a" :prop="b" />`).code).toMatchInlineSnapshot(`
-      "const { resolveComponent: _resolveComponent, mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+      "const { resolveComponent: _resolveComponent, mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         _push(_ssrRenderComponent(_component_foo, _mergeProps({
-          id: \\"a\\",
+          id: "a",
           prop: _ctx.b
         }, _attrs), null, _parent))
       }"
@@ -20,11 +20,11 @@ describe('ssr: components', () => {
   // event listeners should still be passed
   test('event listeners', () => {
     expect(compile(`<foo @click="bar" />`).code).toMatchInlineSnapshot(`
-      "const { resolveComponent: _resolveComponent, mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+      "const { resolveComponent: _resolveComponent, mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         _push(_ssrRenderComponent(_component_foo, _mergeProps({ onClick: _ctx.bar }, _attrs), null, _parent))
       }"
@@ -34,21 +34,21 @@ describe('ssr: components', () => {
   test('dynamic component', () => {
     expect(compile(`<component is="foo" prop="b" />`).code)
       .toMatchInlineSnapshot(`
-      "const { resolveDynamicComponent: _resolveDynamicComponent, mergeProps: _mergeProps, createVNode: _createVNode } = require(\\"vue\\")
-      const { ssrRenderVNode: _ssrRenderVNode } = require(\\"vue/server-renderer\\")
+      "const { resolveDynamicComponent: _resolveDynamicComponent, mergeProps: _mergeProps, createVNode: _createVNode } = require("vue")
+      const { ssrRenderVNode: _ssrRenderVNode } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderVNode(_push, _createVNode(_resolveDynamicComponent(\\"foo\\"), _mergeProps({ prop: \\"b\\" }, _attrs), null), _parent)
+        _ssrRenderVNode(_push, _createVNode(_resolveDynamicComponent("foo"), _mergeProps({ prop: "b" }, _attrs), null), _parent)
       }"
     `)
 
     expect(compile(`<component :is="foo" prop="b" />`).code)
       .toMatchInlineSnapshot(`
-      "const { resolveDynamicComponent: _resolveDynamicComponent, mergeProps: _mergeProps, createVNode: _createVNode } = require(\\"vue\\")
-      const { ssrRenderVNode: _ssrRenderVNode } = require(\\"vue/server-renderer\\")
+      "const { resolveDynamicComponent: _resolveDynamicComponent, mergeProps: _mergeProps, createVNode: _createVNode } = require("vue")
+      const { ssrRenderVNode: _ssrRenderVNode } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderVNode(_push, _createVNode(_resolveDynamicComponent(_ctx.foo), _mergeProps({ prop: \\"b\\" }, _attrs), null), _parent)
+        _ssrRenderVNode(_push, _createVNode(_resolveDynamicComponent(_ctx.foo), _mergeProps({ prop: "b" }, _attrs), null), _parent)
       }"
     `)
   })
@@ -56,11 +56,11 @@ describe('ssr: components', () => {
   describe('slots', () => {
     test('implicit default slot', () => {
       expect(compile(`<foo>hello<div/></foo>`).code).toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createVNode: _createVNode, createTextVNode: _createTextVNode } = require(\\"vue\\")
-        const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createVNode: _createVNode, createTextVNode: _createTextVNode } = require("vue")
+        const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
+          const _component_foo = _resolveComponent("foo")
 
           _push(_ssrRenderComponent(_component_foo, _attrs, {
             default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -68,8 +68,8 @@ describe('ssr: components', () => {
                 _push(\`hello<div\${_scopeId}></div>\`)
               } else {
                 return [
-                  _createTextVNode(\\"hello\\"),
-                  _createVNode(\\"div\\")
+                  _createTextVNode("hello"),
+                  _createVNode("div")
                 ]
               }
             }),
@@ -82,11 +82,11 @@ describe('ssr: components', () => {
     test('explicit default slot', () => {
       expect(compile(`<foo v-slot="{ msg }">{{ msg + outer }}</foo>`).code)
         .toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, toDisplayString: _toDisplayString, createTextVNode: _createTextVNode } = require(\\"vue\\")
-        const { ssrRenderComponent: _ssrRenderComponent, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, toDisplayString: _toDisplayString, createTextVNode: _createTextVNode } = require("vue")
+        const { ssrRenderComponent: _ssrRenderComponent, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
+          const _component_foo = _resolveComponent("foo")
 
           _push(_ssrRenderComponent(_component_foo, _attrs, {
             default: _withCtx(({ msg }, _push, _parent, _scopeId) => {
@@ -116,11 +116,11 @@ describe('ssr: components', () => {
         <template v-slot:named>bar</template>
       </foo>`).code
       ).toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createTextVNode: _createTextVNode } = require(\\"vue\\")
-        const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createTextVNode: _createTextVNode } = require("vue")
+        const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
+          const _component_foo = _resolveComponent("foo")
 
           _push(_ssrRenderComponent(_component_foo, _attrs, {
             default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -128,7 +128,7 @@ describe('ssr: components', () => {
                 _push(\`foo\`)
               } else {
                 return [
-                  _createTextVNode(\\"foo\\")
+                  _createTextVNode("foo")
                 ]
               }
             }),
@@ -137,7 +137,7 @@ describe('ssr: components', () => {
                 _push(\`bar\`)
               } else {
                 return [
-                  _createTextVNode(\\"bar\\")
+                  _createTextVNode("bar")
                 ]
               }
             }),
@@ -153,26 +153,26 @@ describe('ssr: components', () => {
         <template v-slot:named v-if="ok">foo</template>
       </foo>`).code
       ).toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createTextVNode: _createTextVNode, createSlots: _createSlots } = require(\\"vue\\")
-        const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, createTextVNode: _createTextVNode, createSlots: _createSlots } = require("vue")
+        const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
+          const _component_foo = _resolveComponent("foo")
 
           _push(_ssrRenderComponent(_component_foo, _attrs, _createSlots({ _: 2 /* DYNAMIC */ }, [
             (_ctx.ok)
               ? {
-                  name: \\"named\\",
+                  name: "named",
                   fn: _withCtx((_, _push, _parent, _scopeId) => {
                     if (_push) {
                       _push(\`foo\`)
                     } else {
                       return [
-                        _createTextVNode(\\"foo\\")
+                        _createTextVNode("foo")
                       ]
                     }
                   }),
-                  key: \\"0\\"
+                  key: "0"
                 }
               : undefined
           ]), _parent))
@@ -186,11 +186,11 @@ describe('ssr: components', () => {
         <template v-for="key in names" v-slot:[key]="{ msg }">{{ msg + key + bar }}</template>
       </foo>`).code
       ).toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, toDisplayString: _toDisplayString, createTextVNode: _createTextVNode, renderList: _renderList, createSlots: _createSlots } = require(\\"vue\\")
-        const { ssrRenderComponent: _ssrRenderComponent, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, toDisplayString: _toDisplayString, createTextVNode: _createTextVNode, renderList: _renderList, createSlots: _createSlots } = require("vue")
+        const { ssrRenderComponent: _ssrRenderComponent, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
+          const _component_foo = _resolveComponent("foo")
 
           _push(_ssrRenderComponent(_component_foo, _attrs, _createSlots({ _: 2 /* DYNAMIC */ }, [
             _renderList(_ctx.names, (key) => {
@@ -227,11 +227,11 @@ describe('ssr: components', () => {
         </template>
       </foo>`).code
       ).toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode } = require(\\"vue\\")
-        const { ssrRenderComponent: _ssrRenderComponent, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, withCtx: _withCtx, renderList: _renderList, Fragment: _Fragment, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode } = require("vue")
+        const { ssrRenderComponent: _ssrRenderComponent, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
+          const _component_foo = _resolveComponent("foo")
 
           _push(_ssrRenderComponent(_component_foo, _attrs, {
             foo: _withCtx(({ list }, _push, _parent, _scopeId) => {
@@ -248,12 +248,12 @@ describe('ssr: components', () => {
               } else {
                 return [
                   (_ctx.ok)
-                    ? (_openBlock(), _createBlock(\\"div\\", { key: 0 }, [
+                    ? (_openBlock(), _createBlock("div", { key: 0 }, [
                         (_openBlock(true), _createBlock(_Fragment, null, _renderList(list, (i) => {
-                          return (_openBlock(), _createBlock(\\"span\\"))
+                          return (_openBlock(), _createBlock("span"))
                         }), 256 /* UNKEYED_FRAGMENT */))
                       ]))
-                    : _createCommentVNode(\\"v-if\\", true)
+                    : _createCommentVNode("v-if", true)
                 ]
               }
             }),
@@ -271,12 +271,12 @@ describe('ssr: components', () => {
               } else {
                 return [
                   ok
-                    ? (_openBlock(), _createBlock(\\"div\\", { key: 0 }, [
+                    ? (_openBlock(), _createBlock("div", { key: 0 }, [
                         (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.list, (i) => {
-                          return (_openBlock(), _createBlock(\\"span\\"))
+                          return (_openBlock(), _createBlock("span"))
                         }), 256 /* UNKEYED_FRAGMENT */))
                       ]))
-                    : _createCommentVNode(\\"v-if\\", true)
+                    : _createCommentVNode("v-if", true)
                 ]
               }
             }),
@@ -290,26 +290,26 @@ describe('ssr: components', () => {
       test('transition', () => {
         expect(compile(`<transition><div/></transition>`).code)
           .toMatchInlineSnapshot(`
-                  "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+          "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
-                  return function ssrRender(_ctx, _push, _parent, _attrs) {
-                    _push(\`<div\${_ssrRenderAttrs(_attrs)}></div>\`)
-                  }"
-              `)
+          return function ssrRender(_ctx, _push, _parent, _attrs) {
+            _push(\`<div\${_ssrRenderAttrs(_attrs)}></div>\`)
+          }"
+        `)
       })
 
       test('keep-alive', () => {
         expect(compile(`<keep-alive><foo/></keep-alive>`).code)
           .toMatchInlineSnapshot(`
-                  "const { resolveComponent: _resolveComponent } = require(\\"vue\\")
-                  const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+          "const { resolveComponent: _resolveComponent } = require("vue")
+          const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
-                  return function ssrRender(_ctx, _push, _parent, _attrs) {
-                    const _component_foo = _resolveComponent(\\"foo\\")
+          return function ssrRender(_ctx, _push, _parent, _attrs) {
+            const _component_foo = _resolveComponent("foo")
 
-                    _push(_ssrRenderComponent(_component_foo, _attrs, null, _parent))
-                  }"
-              `)
+            _push(_ssrRenderComponent(_component_foo, _attrs, null, _parent))
+          }"
+        `)
       })
 
       // #5352
@@ -318,11 +318,11 @@ describe('ssr: components', () => {
           compile(`<foo><transition><div v-if="false"/></transition></foo>`)
             .code
         ).toMatchInlineSnapshot(`
-          "const { resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, Transition: _Transition, createVNode: _createVNode } = require(\\"vue\\")
-          const { ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+          "const { resolveComponent: _resolveComponent, withCtx: _withCtx, openBlock: _openBlock, createBlock: _createBlock, createCommentVNode: _createCommentVNode, Transition: _Transition, createVNode: _createVNode } = require("vue")
+          const { ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
           return function ssrRender(_ctx, _push, _parent, _attrs) {
-            const _component_foo = _resolveComponent(\\"foo\\")
+            const _component_foo = _resolveComponent("foo")
 
             _push(_ssrRenderComponent(_component_foo, _attrs, {
               default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -338,8 +338,8 @@ describe('ssr: components', () => {
                     _createVNode(_Transition, null, {
                       default: _withCtx(() => [
                         false
-                          ? (_openBlock(), _createBlock(\\"div\\", { key: 0 }))
-                          : _createCommentVNode(\\"v-if\\", true)
+                          ? (_openBlock(), _createBlock("div", { key: 0 }))
+                          : _createCommentVNode("v-if", true)
                       ]),
                       _: 1 /* STABLE */
                     })
@@ -357,14 +357,14 @@ describe('ssr: components', () => {
   describe('custom directive', () => {
     test('basic', () => {
       expect(compile(`<foo v-xxx:x.y="z" />`).code).toMatchInlineSnapshot(`
-        "const { resolveComponent: _resolveComponent, resolveDirective: _resolveDirective, mergeProps: _mergeProps } = require(\\"vue\\")
-        const { ssrGetDirectiveProps: _ssrGetDirectiveProps, ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+        "const { resolveComponent: _resolveComponent, resolveDirective: _resolveDirective, mergeProps: _mergeProps } = require("vue")
+        const { ssrGetDirectiveProps: _ssrGetDirectiveProps, ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          const _component_foo = _resolveComponent(\\"foo\\")
-          const _directive_xxx = _resolveDirective(\\"xxx\\")
+          const _component_foo = _resolveComponent("foo")
+          const _directive_xxx = _resolveDirective("xxx")
 
-          _push(_ssrRenderComponent(_component_foo, _mergeProps(_attrs, _ssrGetDirectiveProps(_ctx, _directive_xxx, _ctx.z, \\"x\\", { y: true })), null, _parent))
+          _push(_ssrRenderComponent(_component_foo, _mergeProps(_attrs, _ssrGetDirectiveProps(_ctx, _directive_xxx, _ctx.z, "x", { y: true })), null, _parent))
         }"
       `)
     })
index bf95065237d7fd889648c6f22a076f8b5fe193be..d2046b21034030e57b4cff7cf7ec2151e48bd89c 100644 (file)
@@ -56,16 +56,16 @@ describe('ssr: element', () => {
     test('<textarea> with dynamic v-bind', () => {
       expect(compile(`<textarea v-bind="obj">fallback</textarea>`).code)
         .toMatchInlineSnapshot(`
-        "const { mergeProps: _mergeProps } = require(\\"vue\\")
-        const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+        "const { mergeProps: _mergeProps } = require("vue")
+        const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
           let _temp0
 
           _push(\`<textarea\${
-            _ssrRenderAttrs(_temp0 = _mergeProps(_ctx.obj, _attrs), \\"textarea\\")
+            _ssrRenderAttrs(_temp0 = _mergeProps(_ctx.obj, _attrs), "textarea")
           }>\${
-            _ssrInterpolate((\\"value\\" in _temp0) ? _temp0.value : \\"fallback\\")
+            _ssrInterpolate(("value" in _temp0) ? _temp0.value : "fallback")
           }</textarea>\`)
         }"
       `)
@@ -75,7 +75,7 @@ describe('ssr: element', () => {
       expect(
         compile(`<div>{{ hello }}<textarea v-bind="a"></textarea></div>`).code
       ).toMatchInlineSnapshot(`
-        "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+        "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
           let _temp0
@@ -85,9 +85,9 @@ describe('ssr: element', () => {
           }>\${
             _ssrInterpolate(_ctx.hello)
           }<textarea\${
-            _ssrRenderAttrs(_temp0 = _ctx.a, \\"textarea\\")
+            _ssrRenderAttrs(_temp0 = _ctx.a, "textarea")
           }>\${
-            _ssrInterpolate((\\"value\\" in _temp0) ? _temp0.value : \\"\\")
+            _ssrInterpolate(("value" in _temp0) ? _temp0.value : "")
           }</textarea></div>\`)
         }"
       `)
@@ -99,11 +99,11 @@ describe('ssr: element', () => {
           isCustomElement: () => true
         }).code
       ).toMatchInlineSnapshot(`
-        "const { mergeProps: _mergeProps } = require(\\"vue\\")
-        const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+        "const { mergeProps: _mergeProps } = require("vue")
+        const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
         return function ssrRender(_ctx, _push, _parent, _attrs) {
-          _push(\`<my-foo\${_ssrRenderAttrs(_mergeProps(_ctx.obj, _attrs), \\"my-foo\\")}></my-foo>\`)
+          _push(\`<my-foo\${_ssrRenderAttrs(_mergeProps(_ctx.obj, _attrs), "my-foo")}></my-foo>\`)
         }"
       `)
     })
@@ -113,7 +113,7 @@ describe('ssr: element', () => {
     test('static attrs', () => {
       expect(
         getCompiledString(`<div id="foo" class="bar"></div>`)
-      ).toMatchInlineSnapshot(`"\`<div id=\\"foo\\" class=\\"bar\\"></div>\`"`)
+      ).toMatchInlineSnapshot(`"\`<div id="foo" class="bar"></div>\`"`)
     })
 
     test('ignore static key/ref', () => {
@@ -131,53 +131,53 @@ describe('ssr: element', () => {
     test('v-bind:class', () => {
       expect(getCompiledString(`<div id="foo" :class="bar"></div>`))
         .toMatchInlineSnapshot(`
-        "\`<div id=\\"foo\\" class=\\"\${
+        "\`<div id="foo" class="\${
             _ssrRenderClass(_ctx.bar)
-          }\\"></div>\`"
+          }"></div>\`"
       `)
     })
 
     test('static class + v-bind:class', () => {
       expect(getCompiledString(`<div class="foo" :class="bar"></div>`))
         .toMatchInlineSnapshot(`
-        "\`<div class=\\"\${
-            _ssrRenderClass([_ctx.bar, \\"foo\\"])
-          }\\"></div>\`"
+        "\`<div class="\${
+            _ssrRenderClass([_ctx.bar, "foo"])
+          }"></div>\`"
       `)
     })
 
     test('v-bind:class + static class', () => {
       expect(getCompiledString(`<div :class="bar" class="foo"></div>`))
         .toMatchInlineSnapshot(`
-        "\`<div class=\\"\${
-            _ssrRenderClass([_ctx.bar, \\"foo\\"])
-          }\\"></div>\`"
+        "\`<div class="\${
+            _ssrRenderClass([_ctx.bar, "foo"])
+          }"></div>\`"
       `)
     })
 
     test('v-bind:style', () => {
       expect(getCompiledString(`<div id="foo" :style="bar"></div>`))
         .toMatchInlineSnapshot(`
-        "\`<div id=\\"foo\\" style=\\"\${
+        "\`<div id="foo" style="\${
             _ssrRenderStyle(_ctx.bar)
-          }\\"></div>\`"
+          }"></div>\`"
       `)
     })
 
     test('static style + v-bind:style', () => {
       expect(getCompiledString(`<div style="color:red;" :style="bar"></div>`))
         .toMatchInlineSnapshot(`
-        "\`<div style=\\"\${
-            _ssrRenderStyle([{\\"color\\":\\"red\\"}, _ctx.bar])
-          }\\"></div>\`"
+        "\`<div style="\${
+            _ssrRenderStyle([{"color":"red"}, _ctx.bar])
+          }"></div>\`"
       `)
     })
 
     test('v-bind:arg (boolean)', () => {
       expect(getCompiledString(`<input type="checkbox" :checked="checked">`))
         .toMatchInlineSnapshot(`
-        "\`<input type=\\"checkbox\\"\${
-            (_ssrIncludeBooleanAttr(_ctx.checked)) ? \\" checked\\" : \\"\\"
+        "\`<input type="checkbox"\${
+            (_ssrIncludeBooleanAttr(_ctx.checked)) ? " checked" : ""
           }>\`"
       `)
     })
@@ -186,8 +186,8 @@ describe('ssr: element', () => {
       expect(getCompiledString(`<div :id="id" class="bar"></div>`))
         .toMatchInlineSnapshot(`
         "\`<div\${
-            _ssrRenderAttr(\\"id\\", _ctx.id)
-          } class=\\"bar\\"></div>\`"
+            _ssrRenderAttr("id", _ctx.id)
+          } class="bar"></div>\`"
       `)
     })
 
@@ -195,7 +195,7 @@ describe('ssr: element', () => {
       expect(getCompiledString(`<div v-bind:[key]="value"></div>`))
         .toMatchInlineSnapshot(`
         "\`<div\${
-            _ssrRenderAttrs({ [_ctx.key || \\"\\"]: _ctx.value })
+            _ssrRenderAttrs({ [_ctx.key || ""]: _ctx.value })
           }></div>\`"
       `)
 
@@ -203,8 +203,8 @@ describe('ssr: element', () => {
         .toMatchInlineSnapshot(`
         "\`<div\${
             _ssrRenderAttrs({
-              class: \\"foo\\",
-              [_ctx.key || \\"\\"]: _ctx.value
+              class: "foo",
+              [_ctx.key || ""]: _ctx.value
             })
           }></div>\`"
       `)
@@ -214,7 +214,7 @@ describe('ssr: element', () => {
         "\`<div\${
             _ssrRenderAttrs({
               id: _ctx.id,
-              [_ctx.key || \\"\\"]: _ctx.value
+              [_ctx.key || ""]: _ctx.value
             })
           }></div>\`"
       `)
@@ -231,7 +231,7 @@ describe('ssr: element', () => {
       expect(getCompiledString(`<div class="foo" v-bind="obj"></div>`))
         .toMatchInlineSnapshot(`
         "\`<div\${
-            _ssrRenderAttrs(_mergeProps({ class: \\"foo\\" }, _ctx.obj))
+            _ssrRenderAttrs(_mergeProps({ class: "foo" }, _ctx.obj))
           }></div>\`"
       `)
 
@@ -246,7 +246,7 @@ describe('ssr: element', () => {
       expect(getCompiledString(`<div :[key]="id" v-bind="obj"></div>`))
         .toMatchInlineSnapshot(`
         "\`<div\${
-            _ssrRenderAttrs(_mergeProps({ [_ctx.key || \\"\\"]: _ctx.id }, _ctx.obj))
+            _ssrRenderAttrs(_mergeProps({ [_ctx.key || ""]: _ctx.id }, _ctx.obj))
           }></div>\`"
       `)
 
@@ -255,7 +255,7 @@ describe('ssr: element', () => {
         .toMatchInlineSnapshot(`
         "\`<div\${
             _ssrRenderAttrs(_mergeProps({
-              class: [\\"a\\", _ctx.b]
+              class: ["a", _ctx.b]
             }, _ctx.obj))
           }></div>\`"
       `)
@@ -268,7 +268,7 @@ describe('ssr: element', () => {
       ).toMatchInlineSnapshot(`
         "\`<div\${
             _ssrRenderAttrs(_mergeProps({
-              style: [{\\"color\\":\\"red\\"}, _ctx.b]
+              style: [{"color":"red"}, _ctx.b]
             }, _ctx.obj))
           }></div>\`"
       `)
@@ -277,10 +277,10 @@ describe('ssr: element', () => {
     test('should ignore v-on', () => {
       expect(
         getCompiledString(`<div id="foo" @click="bar"/>`)
-      ).toMatchInlineSnapshot(`"\`<div id=\\"foo\\"></div>\`"`)
+      ).toMatchInlineSnapshot(`"\`<div id="foo"></div>\`"`)
       expect(
         getCompiledString(`<div id="foo" v-on="bar"/>`)
-      ).toMatchInlineSnapshot(`"\`<div id=\\"foo\\"></div>\`"`)
+      ).toMatchInlineSnapshot(`"\`<div id="foo"></div>\`"`)
       expect(getCompiledString(`<div v-bind="foo" v-on="bar"/>`))
         .toMatchInlineSnapshot(`
         "\`<div\${
@@ -292,7 +292,7 @@ describe('ssr: element', () => {
     test('custom dir', () => {
       expect(getCompiledString(`<div v-xxx:x.y="z" />`)).toMatchInlineSnapshot(`
         "\`<div\${
-            _ssrRenderAttrs(_ssrGetDirectiveProps(_ctx, _directive_xxx, _ctx.z, \\"x\\", { y: true }))
+            _ssrRenderAttrs(_ssrGetDirectiveProps(_ctx, _directive_xxx, _ctx.z, "x", { y: true }))
           }></div>\`"
       `)
     })
@@ -301,7 +301,7 @@ describe('ssr: element', () => {
       expect(getCompiledString(`<div class="foo" v-xxx />`))
         .toMatchInlineSnapshot(`
         "\`<div\${
-            _ssrRenderAttrs(_mergeProps({ class: \\"foo\\" }, _ssrGetDirectiveProps(_ctx, _directive_xxx)))
+            _ssrRenderAttrs(_mergeProps({ class: "foo" }, _ssrGetDirectiveProps(_ctx, _directive_xxx)))
           }></div>\`"
       `)
     })
@@ -333,8 +333,8 @@ describe('ssr: element', () => {
       ).toMatchInlineSnapshot(`
         "\`<div\${
             _ssrRenderAttrs(_mergeProps(_ctx.x, {
-              class: \\"foo\\",
-              title: \\"bar\\"
+              class: "foo",
+              title: "bar"
             }, _ssrGetDirectiveProps(_ctx, _directive_xxx)))
           }></div>\`"
       `)
index 44b113c68bef59a3cbfe3641aea57edd811d79f5..daac5b602e8fc72c0ad47b42f60af45f4d911c8c 100644 (file)
@@ -3,7 +3,7 @@ import { compile } from '../src'
 describe('ssr: attrs fallthrough', () => {
   test('basic', () => {
     expect(compile(`<div/>`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${_ssrRenderAttrs(_attrs)}></div>\`)
@@ -13,7 +13,7 @@ describe('ssr: attrs fallthrough', () => {
 
   test('with comments', () => {
     expect(compile(`<!--!--><div/>`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[--><!--!--><div\${_ssrRenderAttrs(_attrs)}></div><!--]-->\`)
@@ -40,12 +40,12 @@ describe('ssr: attrs fallthrough', () => {
   test('fallthrough component content (root with comments)', () => {
     expect(compile(`<!--root--><transition><div/></transition>`).code)
       .toMatchInlineSnapshot(`
-              "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
-              return function ssrRender(_ctx, _push, _parent, _attrs) {
-                _push(\`<!--[--><!--root--><div\${_ssrRenderAttrs(_attrs)}></div><!--]-->\`)
-              }"
-          `)
+      return function ssrRender(_ctx, _push, _parent, _attrs) {
+        _push(\`<!--[--><!--root--><div\${_ssrRenderAttrs(_attrs)}></div><!--]-->\`)
+      }"
+    `)
   })
 
   test('should not inject to fallthrough component content if not root', () => {
index 0e29fb7e445e97efedff369775825e4c17540602..2ed04a16fe5e020872ba18fbda581ff8a5341385 100644 (file)
@@ -8,8 +8,8 @@ describe('ssr: inject <style vars>', () => {
         ssrCssVars: `{ color }`
       }).code
     ).toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         const _cssVars = { style: { color: _ctx.color }}
@@ -24,7 +24,7 @@ describe('ssr: inject <style vars>', () => {
         ssrCssVars: `{ color }`
       }).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         const _cssVars = { style: { color: _ctx.color }}
@@ -43,11 +43,11 @@ describe('ssr: inject <style vars>', () => {
         ssrCssVars: `{ color }`
       }).code
     ).toMatchInlineSnapshot(`
-      "const { resolveComponent: _resolveComponent } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+      "const { resolveComponent: _resolveComponent } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         const _cssVars = { style: { color: _ctx.color }}
         _push(\`<!--[--><div\${_ssrRenderAttrs(_cssVars)}></div>\`)
@@ -63,8 +63,8 @@ describe('ssr: inject <style vars>', () => {
         ssrCssVars: `{ color }`
       }).code
     ).toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         const _cssVars = { style: { color: _ctx.color }}
@@ -95,8 +95,8 @@ describe('ssr: inject <style vars>', () => {
         }
       ).code
     ).toMatchInlineSnapshot(`
-      "const { withCtx: _withCtx } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderSuspense: _ssrRenderSuspense } = require(\\"vue/server-renderer\\")
+      "const { withCtx: _withCtx } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderSuspense: _ssrRenderSuspense } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         const _cssVars = { style: { color: _ctx.color }}
@@ -122,7 +122,7 @@ describe('ssr: inject <style vars>', () => {
 
     expect(result.code).toMatchInlineSnapshot(`
       "(_ctx, _push, _parent, _attrs) => {
-        const _cssVars = { style: { \\"--hash\\": (_unref(dynamic)) }}
+        const _cssVars = { style: { "--hash": (_unref(dynamic)) }}
         _push(\`<div\${_ssrRenderAttrs(_mergeProps(_attrs, _cssVars))}></div>\`)
       }"
     `)
index 5bed36792f2f275b84d00f90b00a41e4ce6ce3f4..2bf6b3127ea87a2406d67621741abe72835704f5 100644 (file)
@@ -4,7 +4,7 @@ describe('ssr compile: teleport', () => {
   test('should work', () => {
     expect(compile(`<teleport :to="target"><div/></teleport>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderTeleport: _ssrRenderTeleport } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderTeleport: _ssrRenderTeleport } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _ssrRenderTeleport(_push, (_push) => {
@@ -17,7 +17,7 @@ describe('ssr compile: teleport', () => {
   test('disabled prop handling', () => {
     expect(compile(`<teleport :to="target" disabled><div/></teleport>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderTeleport: _ssrRenderTeleport } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderTeleport: _ssrRenderTeleport } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _ssrRenderTeleport(_push, (_push) => {
@@ -29,7 +29,7 @@ describe('ssr compile: teleport', () => {
     expect(
       compile(`<teleport :to="target" :disabled="foo"><div/></teleport>`).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderTeleport: _ssrRenderTeleport } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderTeleport: _ssrRenderTeleport } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _ssrRenderTeleport(_push, (_push) => {
index 3445a84fda91d981a707f56da26064760aedeed5..13465e992f56a416c871cb054af49ec8684fd211 100644 (file)
@@ -10,7 +10,7 @@ describe('ssr: scopeId', () => {
         mode: 'module'
       }).code
     ).toMatchInlineSnapshot(`
-      "import { ssrRenderAttrs as _ssrRenderAttrs } from \\"vue/server-renderer\\"
+      "import { ssrRenderAttrs as _ssrRenderAttrs } from "vue/server-renderer"
 
       export function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${_ssrRenderAttrs(_attrs)} data-v-xxxxxxx><span data-v-xxxxxxx>hello</span></div>\`)
@@ -26,11 +26,11 @@ describe('ssr: scopeId', () => {
         mode: 'module'
       }).code
     ).toMatchInlineSnapshot(`
-      "import { resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode } from \\"vue\\"
-      import { ssrRenderComponent as _ssrRenderComponent } from \\"vue/server-renderer\\"
+      "import { resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode } from "vue"
+      import { ssrRenderComponent as _ssrRenderComponent } from "vue/server-renderer"
 
       export function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         _push(_ssrRenderComponent(_component_foo, _attrs, {
           default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -38,7 +38,7 @@ describe('ssr: scopeId', () => {
               _push(\`foo\`)
             } else {
               return [
-                _createTextVNode(\\"foo\\")
+                _createTextVNode("foo")
               ]
             }
           }),
@@ -55,11 +55,11 @@ describe('ssr: scopeId', () => {
         mode: 'module'
       }).code
     ).toMatchInlineSnapshot(`
-      "import { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from \\"vue\\"
-      import { ssrRenderComponent as _ssrRenderComponent } from \\"vue/server-renderer\\"
+      "import { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from "vue"
+      import { ssrRenderComponent as _ssrRenderComponent } from "vue/server-renderer"
 
       export function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         _push(_ssrRenderComponent(_component_foo, _attrs, {
           default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -67,7 +67,7 @@ describe('ssr: scopeId', () => {
               _push(\`<span data-v-xxxxxxx\${_scopeId}>hello</span>\`)
             } else {
               return [
-                _createVNode(\\"span\\", null, \\"hello\\")
+                _createVNode("span", null, "hello")
               ]
             }
           }),
@@ -84,12 +84,12 @@ describe('ssr: scopeId', () => {
         mode: 'module'
       }).code
     ).toMatchInlineSnapshot(`
-      "import { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from \\"vue\\"
-      import { ssrRenderComponent as _ssrRenderComponent } from \\"vue/server-renderer\\"
+      "import { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from "vue"
+      import { ssrRenderComponent as _ssrRenderComponent } from "vue/server-renderer"
 
       export function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
-        const _component_bar = _resolveComponent(\\"bar\\")
+        const _component_foo = _resolveComponent("foo")
+        const _component_bar = _resolveComponent("bar")
 
         _push(_ssrRenderComponent(_component_foo, _attrs, {
           default: _withCtx((_, _push, _parent, _scopeId) => {
@@ -101,7 +101,7 @@ describe('ssr: scopeId', () => {
                     _push(\`<span data-v-xxxxxxx\${_scopeId}></span>\`)
                   } else {
                     return [
-                      _createVNode(\\"span\\")
+                      _createVNode("span")
                     ]
                   }
                 }),
@@ -109,10 +109,10 @@ describe('ssr: scopeId', () => {
               }, _parent, _scopeId))
             } else {
               return [
-                _createVNode(\\"span\\", null, \\"hello\\"),
+                _createVNode("span", null, "hello"),
                 _createVNode(_component_bar, null, {
                   default: _withCtx(() => [
-                    _createVNode(\\"span\\")
+                    _createVNode("span")
                   ]),
                   _: 1 /* STABLE */
                 })
index 21fbe649c4afec065fcbea74d24e69f42a51376b..a6373a0cbbed0539dc51205c5baa58f443bfb41e 100644 (file)
@@ -4,27 +4,27 @@ import { ssrHelpers, SSR_RENDER_SLOT_INNER } from '../src/runtimeHelpers'
 describe('ssr: <slot>', () => {
   test('basic', () => {
     expect(compile(`<slot/>`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, null, _push, _parent)
+        _ssrRenderSlot(_ctx.$slots, "default", {}, null, _push, _parent)
       }"
     `)
   })
 
   test('with name', () => {
     expect(compile(`<slot name="foo" />`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlot(_ctx.$slots, \\"foo\\", {}, null, _push, _parent)
+        _ssrRenderSlot(_ctx.$slots, "foo", {}, null, _push, _parent)
       }"
     `)
   })
 
   test('with dynamic name', () => {
     expect(compile(`<slot :name="bar.baz" />`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _ssrRenderSlot(_ctx.$slots, _ctx.bar.baz, {}, null, _push, _parent)
@@ -35,12 +35,12 @@ describe('ssr: <slot>', () => {
   test('with props', () => {
     expect(compile(`<slot name="foo" :p="1" bar="2" />`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlot(_ctx.$slots, \\"foo\\", {
+        _ssrRenderSlot(_ctx.$slots, "foo", {
           p: 1,
-          bar: \\"2\\"
+          bar: "2"
         }, null, _push, _parent)
       }"
     `)
@@ -49,10 +49,10 @@ describe('ssr: <slot>', () => {
   test('with fallback', () => {
     expect(compile(`<slot>some {{ fallback }} content</slot>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, () => {
+        _ssrRenderSlot(_ctx.$slots, "default", {}, () => {
           _push(\`some \${_ssrInterpolate(_ctx.fallback)} content\`)
         }, _push, _parent)
       }"
@@ -65,10 +65,10 @@ describe('ssr: <slot>', () => {
         scopeId: 'hello'
       }).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, null, _push, _parent, \\"hello-s\\")
+        _ssrRenderSlot(_ctx.$slots, "default", {}, null, _push, _parent, "hello-s")
       }"
     `)
   })
@@ -80,10 +80,10 @@ describe('ssr: <slot>', () => {
         slotted: false
       }).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderSlot: _ssrRenderSlot } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlot: _ssrRenderSlot } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, null, _push, _parent)
+        _ssrRenderSlot(_ctx.$slots, "default", {}, null, _push, _parent)
       }"
     `)
   })
@@ -94,19 +94,19 @@ describe('ssr: <slot>', () => {
         scopeId: 'hello'
       }).code
     ).toMatchInlineSnapshot(`
-      "const { resolveComponent: _resolveComponent, withCtx: _withCtx, renderSlot: _renderSlot } = require(\\"vue\\")
-      const { ssrRenderSlot: _ssrRenderSlot, ssrRenderComponent: _ssrRenderComponent } = require(\\"vue/server-renderer\\")
+      "const { resolveComponent: _resolveComponent, withCtx: _withCtx, renderSlot: _renderSlot } = require("vue")
+      const { ssrRenderSlot: _ssrRenderSlot, ssrRenderComponent: _ssrRenderComponent } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_Comp = _resolveComponent(\\"Comp\\")
+        const _component_Comp = _resolveComponent("Comp")
 
         _push(_ssrRenderComponent(_component_Comp, _attrs, {
           default: _withCtx((_, _push, _parent, _scopeId) => {
             if (_push) {
-              _ssrRenderSlot(_ctx.$slots, \\"default\\", {}, null, _push, _parent, \\"hello-s\\" + _scopeId)
+              _ssrRenderSlot(_ctx.$slots, "default", {}, null, _push, _parent, "hello-s" + _scopeId)
             } else {
               return [
-                _renderSlot(_ctx.$slots, \\"default\\")
+                _renderSlot(_ctx.$slots, "default")
               ]
             }
           }),
@@ -120,10 +120,10 @@ describe('ssr: <slot>', () => {
     const { code } = compile(`<transition><slot/></transition>`)
     expect(code).toMatch(ssrHelpers[SSR_RENDER_SLOT_INNER])
     expect(code).toMatchInlineSnapshot(`
-      "const { ssrRenderSlotInner: _ssrRenderSlotInner } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderSlotInner: _ssrRenderSlotInner } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        _ssrRenderSlotInner(_ctx.$slots, \\"default\\", {}, null, _push, _parent, null, true)
+        _ssrRenderSlotInner(_ctx.$slots, "default", {}, null, _push, _parent, null, true)
       }"
     `)
   })
index a4d3480195619bea94db2de2a695629345374b8e..2e425362b56d602972871ba447b8e3834498feb5 100644 (file)
@@ -3,11 +3,11 @@ import { compile } from '../src'
 describe('ssr compile: suspense', () => {
   test('implicit default', () => {
     expect(compile(`<suspense><foo/></suspense>`).code).toMatchInlineSnapshot(`
-      "const { resolveComponent: _resolveComponent, withCtx: _withCtx } = require(\\"vue\\")
-      const { ssrRenderComponent: _ssrRenderComponent, ssrRenderSuspense: _ssrRenderSuspense } = require(\\"vue/server-renderer\\")
+      "const { resolveComponent: _resolveComponent, withCtx: _withCtx } = require("vue")
+      const { ssrRenderComponent: _ssrRenderComponent, ssrRenderSuspense: _ssrRenderSuspense } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         _ssrRenderSuspense(_push, {
           default: () => {
@@ -30,11 +30,11 @@ describe('ssr compile: suspense', () => {
       </template>
     </suspense>`).code
     ).toMatchInlineSnapshot(`
-      "const { resolveComponent: _resolveComponent, withCtx: _withCtx } = require(\\"vue\\")
-      const { ssrRenderComponent: _ssrRenderComponent, ssrRenderSuspense: _ssrRenderSuspense } = require(\\"vue/server-renderer\\")
+      "const { resolveComponent: _resolveComponent, withCtx: _withCtx } = require("vue")
+      const { ssrRenderComponent: _ssrRenderComponent, ssrRenderSuspense: _ssrRenderSuspense } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
-        const _component_foo = _resolveComponent(\\"foo\\")
+        const _component_foo = _resolveComponent("foo")
 
         _ssrRenderSuspense(_push, {
           default: () => {
index 8629eec0dc883097c55f6f4aa3bc1629c51b540e..54f9827a34e2d7486cec9107e8f57b4fcf0c2572 100644 (file)
@@ -8,7 +8,7 @@ describe('ssr: text', () => {
 
   test('static text with template string special chars', () => {
     expect(getCompiledString(`\`\${foo}\``)).toMatchInlineSnapshot(
-      `"\`\\\\\`\\\\\${foo}\\\\\`\`"`
+      `"\`\\\`\\\${foo}\\\`\`"`
     )
   })
 
@@ -17,7 +17,7 @@ describe('ssr: text', () => {
     // snapshot -> inline snapshot goes through two escapes
     // so that makes a total of 3 * 2 * 2 = 12 back slashes
     expect(getCompiledString(`\\$foo`)).toMatchInlineSnapshot(
-      `"\`\\\\\\\\\\\\$foo\`"`
+      `"\`\\\\\\$foo\`"`
     )
   })
 
@@ -43,7 +43,7 @@ describe('ssr: text', () => {
 
   test('interpolation', () => {
     expect(compile(`foo {{ bar }} baz`).code).toMatchInlineSnapshot(`
-      "const { ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+      "const { ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`foo \${_ssrInterpolate(_ctx.bar)} baz\`)
@@ -56,7 +56,7 @@ describe('ssr: text', () => {
       compile(`<div><span>{{ foo }} bar</span><span>baz {{ qux }}</span></div>`)
         .code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
index 2a3b6d3b4d488d3ac049117df97cd2408b679690..3c53da4349f106cbb071347f05af4d57c6e75ffd 100644 (file)
@@ -8,7 +8,7 @@ describe('transition-group', () => {
       compile(`<transition-group><div v-for="i in list"/></transition-group>`)
         .code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -26,7 +26,7 @@ describe('transition-group', () => {
         `<transition-group tag="ul"><div v-for="i in list"/></transition-group>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<ul\${_ssrRenderAttrs(_attrs)}>\`)
@@ -44,7 +44,7 @@ describe('transition-group', () => {
         `<transition-group :tag="someTag"><div v-for="i in list"/></transition-group>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<\${
@@ -70,7 +70,7 @@ describe('transition-group', () => {
             </transition-group>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -97,13 +97,13 @@ describe('transition-group', () => {
         </transition-group>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<ul\${_ssrRenderAttrs(_mergeProps({
-          class: \\"red\\",
-          id: \\"ok\\"
+          class: "red",
+          id: "ok"
         }, _attrs))}></ul>\`)
       }"
     `)
index 66ef5b493c7e9ef327149cfd1f8169eac628cbbb..e76b1be6bd8686819f74adf9f7ac93141ae1e8f9 100644 (file)
@@ -3,7 +3,7 @@ import { compile } from '../src'
 describe('ssr: v-for', () => {
   test('basic', () => {
     expect(compile(`<div v-for="i in list" />`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -18,7 +18,7 @@ describe('ssr: v-for', () => {
   test('nested content', () => {
     expect(compile(`<div v-for="i in list">foo<span>bar</span></div>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -38,7 +38,7 @@ describe('ssr: v-for', () => {
           `</div>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -61,7 +61,7 @@ describe('ssr: v-for', () => {
   test('template v-for (text)', () => {
     expect(compile(`<template v-for="i in list">{{ i }}</template>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -78,7 +78,7 @@ describe('ssr: v-for', () => {
       compile(`<template v-for="i in list"><span>{{ i }}</span></template>`)
         .code
     ).toMatchInlineSnapshot(`
-      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -96,7 +96,7 @@ describe('ssr: v-for', () => {
         `<template v-for="i in list"><span>{{ i }}</span><span>{{ i + 1 }}</span></template>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
@@ -120,7 +120,7 @@ describe('ssr: v-for', () => {
     expect(code).not.toMatch(`_ctx.foo`)
     expect(code).not.toMatch(`_ctx.index`)
     expect(code).toMatchInlineSnapshot(`
-      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrInterpolate: _ssrInterpolate, ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<!--[-->\`)
index 95b9d176d2eee598dabdde2edde11985747b4181..010a9687fbbdc71affd460c87d5bb1be21619bf6 100644 (file)
@@ -3,7 +3,7 @@ import { compile } from '../src'
 describe('ssr: v-if', () => {
   test('basic', () => {
     expect(compile(`<div v-if="foo"></div>`).code).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -18,7 +18,7 @@ describe('ssr: v-if', () => {
   test('with nested content', () => {
     expect(compile(`<div v-if="foo">hello<span>ok</span></div>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -33,7 +33,7 @@ describe('ssr: v-if', () => {
   test('v-if + v-else', () => {
     expect(compile(`<div v-if="foo"/><span v-else/>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -48,7 +48,7 @@ describe('ssr: v-if', () => {
   test('v-if + v-else-if', () => {
     expect(compile(`<div v-if="foo"/><span v-else-if="bar"/>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -65,7 +65,7 @@ describe('ssr: v-if', () => {
   test('v-if + v-else-if + v-else', () => {
     expect(compile(`<div v-if="foo"/><span v-else-if="bar"/><p v-else/>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -97,7 +97,7 @@ describe('ssr: v-if', () => {
     // single element should not wrap with fragment
     expect(compile(`<template v-if="foo"><div>hi</div></template>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -128,7 +128,7 @@ describe('ssr: v-if', () => {
     expect(
       compile(`<template v-if="foo"><div v-for="i in list"/></template>`).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderList: _ssrRenderList } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderList: _ssrRenderList } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
@@ -150,7 +150,7 @@ describe('ssr: v-if', () => {
         `<template v-if="foo"><div>hi</div><div>ho</div></template><div v-else/>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         if (_ctx.foo) {
index f1e415530348812b4a40e0a2d72e4e7d3f5b9ee3..1b27e5d54f676052d6270a6a0a534a8239e25465 100644 (file)
@@ -8,26 +8,26 @@ describe('ssr: v-model', () => {
   test('<input> (text types)', () => {
     expect(compileWithWrapper(`<input v-model="bar">`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
         }><input\${
-          _ssrRenderAttr(\\"value\\", _ctx.bar)
+          _ssrRenderAttr("value", _ctx.bar)
         }></div>\`)
       }"
     `)
 
     expect(compileWithWrapper(`<input type="email" v-model="bar">`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><input type=\\"email\\"\${
-          _ssrRenderAttr(\\"value\\", _ctx.bar)
+        }><input type="email"\${
+          _ssrRenderAttr("value", _ctx.bar)
         }></div>\`)
       }"
     `)
@@ -37,13 +37,13 @@ describe('ssr: v-model', () => {
     expect(
       compileWithWrapper(`<input type="radio" value="foo" v-model="bar">`).code
     ).toMatchInlineSnapshot(`
-      "const { ssrLooseEqual: _ssrLooseEqual, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrLooseEqual: _ssrLooseEqual, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><input type=\\"radio\\" value=\\"foo\\"\${
-          (_ssrIncludeBooleanAttr(_ssrLooseEqual(_ctx.bar, \\"foo\\"))) ? \\" checked\\" : \\"\\"
+        }><input type="radio" value="foo"\${
+          (_ssrIncludeBooleanAttr(_ssrLooseEqual(_ctx.bar, "foo"))) ? " checked" : ""
         }></div>\`)
       }"
     `)
@@ -52,15 +52,15 @@ describe('ssr: v-model', () => {
   test('<input type="checkbox">', () => {
     expect(compileWithWrapper(`<input type="checkbox" v-model="bar">`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrLooseContain: _ssrLooseContain, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrLooseContain: _ssrLooseContain, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><input type=\\"checkbox\\"\${
+        }><input type="checkbox"\${
           (_ssrIncludeBooleanAttr((Array.isArray(_ctx.bar))
             ? _ssrLooseContain(_ctx.bar, null)
-            : _ctx.bar)) ? \\" checked\\" : \\"\\"
+            : _ctx.bar)) ? " checked" : ""
         }></div>\`)
       }"
     `)
@@ -69,15 +69,15 @@ describe('ssr: v-model', () => {
       compileWithWrapper(`<input type="checkbox" value="foo" v-model="bar">`)
         .code
     ).toMatchInlineSnapshot(`
-      "const { ssrLooseContain: _ssrLooseContain, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrLooseContain: _ssrLooseContain, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><input type=\\"checkbox\\" value=\\"foo\\"\${
+        }><input type="checkbox" value="foo"\${
           (_ssrIncludeBooleanAttr((Array.isArray(_ctx.bar))
-            ? _ssrLooseContain(_ctx.bar, \\"foo\\")
-            : _ctx.bar)) ? \\" checked\\" : \\"\\"
+            ? _ssrLooseContain(_ctx.bar, "foo")
+            : _ctx.bar)) ? " checked" : ""
         }></div>\`)
       }"
     `)
@@ -87,13 +87,13 @@ describe('ssr: v-model', () => {
         `<input type="checkbox" :true-value="foo" :false-value="bar" v-model="baz">`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrLooseEqual: _ssrLooseEqual, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrLooseEqual: _ssrLooseEqual, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><input type=\\"checkbox\\"\${
-          (_ssrIncludeBooleanAttr(_ssrLooseEqual(_ctx.baz, _ctx.foo))) ? \\" checked\\" : \\"\\"
+        }><input type="checkbox"\${
+          (_ssrIncludeBooleanAttr(_ssrLooseEqual(_ctx.baz, _ctx.foo))) ? " checked" : ""
         }></div>\`)
       }"
     `)
@@ -103,13 +103,13 @@ describe('ssr: v-model', () => {
         `<input type="checkbox" true-value="foo" false-value="bar" v-model="baz">`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrLooseEqual: _ssrLooseEqual, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrLooseEqual: _ssrLooseEqual, ssrIncludeBooleanAttr: _ssrIncludeBooleanAttr, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><input type=\\"checkbox\\"\${
-          (_ssrIncludeBooleanAttr(_ssrLooseEqual(_ctx.baz, \\"foo\\"))) ? \\" checked\\" : \\"\\"
+        }><input type="checkbox"\${
+          (_ssrIncludeBooleanAttr(_ssrLooseEqual(_ctx.baz, "foo"))) ? " checked" : ""
         }></div>\`)
       }"
     `)
@@ -118,7 +118,7 @@ describe('ssr: v-model', () => {
   test('<textarea>', () => {
     expect(compileWithWrapper(`<textarea v-model="foo">bar</textarea>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttrs: _ssrRenderAttrs, ssrInterpolate: _ssrInterpolate } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
@@ -133,13 +133,13 @@ describe('ssr: v-model', () => {
   test('<input :type="x">', () => {
     expect(compileWithWrapper(`<input :type="x" v-model="foo">`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
         }><input\${
-          _ssrRenderAttr(\\"type\\", _ctx.x)
+          _ssrRenderAttr("type", _ctx.x)
         }\${
           _ssrRenderDynamicModel(_ctx.x, _ctx.foo, null)
         }></div>\`)
@@ -149,33 +149,33 @@ describe('ssr: v-model', () => {
     expect(
       compileWithWrapper(`<input :type="x" v-model="foo" value="bar">`).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
         }><input\${
-          _ssrRenderAttr(\\"type\\", _ctx.x)
+          _ssrRenderAttr("type", _ctx.x)
         }\${
-          _ssrRenderDynamicModel(_ctx.x, _ctx.foo, \\"bar\\")
-        } value=\\"bar\\"></div>\`)
+          _ssrRenderDynamicModel(_ctx.x, _ctx.foo, "bar")
+        } value="bar"></div>\`)
       }"
     `)
 
     expect(
       compileWithWrapper(`<input :type="x" v-model="foo" :value="bar">`).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderAttr: _ssrRenderAttr, ssrRenderDynamicModel: _ssrRenderDynamicModel, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
         }><input\${
-          _ssrRenderAttr(\\"type\\", _ctx.x)
+          _ssrRenderAttr("type", _ctx.x)
         }\${
           _ssrRenderDynamicModel(_ctx.x, _ctx.foo, _ctx.bar)
         }\${
-          _ssrRenderAttr(\\"value\\", _ctx.bar)
+          _ssrRenderAttr("value", _ctx.bar)
         }></div>\`)
       }"
     `)
@@ -184,8 +184,8 @@ describe('ssr: v-model', () => {
   test('<input v-bind="obj">', () => {
     expect(compileWithWrapper(`<input v-bind="obj" v-model="foo">`).code)
       .toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs, ssrGetDynamicModelProps: _ssrGetDynamicModelProps } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs, ssrGetDynamicModelProps: _ssrGetDynamicModelProps } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         let _temp0
@@ -202,8 +202,8 @@ describe('ssr: v-model', () => {
       compileWithWrapper(`<input id="x" v-bind="obj" v-model="foo" class="y">`)
         .code
     ).toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs, ssrGetDynamicModelProps: _ssrGetDynamicModelProps } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs, ssrGetDynamicModelProps: _ssrGetDynamicModelProps } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         let _temp0
@@ -211,7 +211,7 @@ describe('ssr: v-model', () => {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
         }><input\${
-          _ssrRenderAttrs((_temp0 = _mergeProps({ id: \\"x\\" }, _ctx.obj, { class: \\"y\\" }), _mergeProps(_temp0, _ssrGetDynamicModelProps(_temp0, _ctx.foo))))
+          _ssrRenderAttrs((_temp0 = _mergeProps({ id: "x" }, _ctx.obj, { class: "y" }), _mergeProps(_temp0, _ssrGetDynamicModelProps(_temp0, _ctx.foo))))
         }></div>\`)
       }"
     `)
index bc1c7183faa80d771401d73b3fee589078f4c498..996ef896e6269693a4483c94b182afcff5987b7d 100644 (file)
@@ -7,12 +7,12 @@ function compileWithWrapper(src: string) {
 describe('ssr: v-show', () => {
   test('basic as root', () => {
     expect(compile(`<div v-show="foo"/>`).code).toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${_ssrRenderAttrs(_mergeProps({
-          style: (_ctx.foo) ? null : { display: \\"none\\" }
+          style: (_ctx.foo) ? null : { display: "none" }
         }, _attrs))}></div>\`)
       }"
     `)
@@ -21,14 +21,14 @@ describe('ssr: v-show', () => {
   test('basic', () => {
     expect(compileWithWrapper(`<div v-show="foo"/>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><div style=\\"\${
-          _ssrRenderStyle((_ctx.foo) ? null : { display: \\"none\\" })
-        }\\"></div></div>\`)
+        }><div style="\${
+          _ssrRenderStyle((_ctx.foo) ? null : { display: "none" })
+        }"></div></div>\`)
       }"
     `)
   })
@@ -36,17 +36,17 @@ describe('ssr: v-show', () => {
   test('with static style', () => {
     expect(compileWithWrapper(`<div style="color:red" v-show="foo"/>`).code)
       .toMatchInlineSnapshot(`
-      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><div style=\\"\${
+        }><div style="\${
           _ssrRenderStyle([
-            {\\"color\\":\\"red\\"},
-            (_ctx.foo) ? null : { display: \\"none\\" }
+            {"color":"red"},
+            (_ctx.foo) ? null : { display: "none" }
           ])
-        }\\"></div></div>\`)
+        }"></div></div>\`)
       }"
     `)
   })
@@ -55,17 +55,17 @@ describe('ssr: v-show', () => {
     expect(
       compileWithWrapper(`<div :style="{ color: 'red' }" v-show="foo"/>`).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><div style=\\"\${
+        }><div style="\${
           _ssrRenderStyle([
             { color: 'red' },
-            (_ctx.foo) ? null : { display: \\"none\\" }
+            (_ctx.foo) ? null : { display: "none" }
           ])
-        }\\"></div></div>\`)
+        }"></div></div>\`)
       }"
     `)
   })
@@ -76,18 +76,18 @@ describe('ssr: v-show', () => {
         `<div style="color:red" :style="{ fontSize: 14 }" v-show="foo"/>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { ssrRenderStyle: _ssrRenderStyle, ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
           _ssrRenderAttrs(_attrs)
-        }><div style=\\"\${
+        }><div style="\${
           _ssrRenderStyle([
-            {\\"color\\":\\"red\\"},
+            {"color":"red"},
             { fontSize: 14 },
-            (_ctx.foo) ? null : { display: \\"none\\" }
+            (_ctx.foo) ? null : { display: "none" }
           ])
-        }\\"></div></div>\`)
+        }"></div></div>\`)
       }"
     `)
   })
@@ -98,8 +98,8 @@ describe('ssr: v-show', () => {
         `<div v-bind="baz" style="color:red" :style="{ fontSize: 14 }" v-show="foo"/>`
       ).code
     ).toMatchInlineSnapshot(`
-      "const { mergeProps: _mergeProps } = require(\\"vue\\")
-      const { ssrRenderAttrs: _ssrRenderAttrs } = require(\\"vue/server-renderer\\")
+      "const { mergeProps: _mergeProps } = require("vue")
+      const { ssrRenderAttrs: _ssrRenderAttrs } = require("vue/server-renderer")
 
       return function ssrRender(_ctx, _push, _parent, _attrs) {
         _push(\`<div\${
@@ -107,9 +107,9 @@ describe('ssr: v-show', () => {
         }><div\${
           _ssrRenderAttrs(_mergeProps(_ctx.baz, {
             style: [
-              {\\"color\\":\\"red\\"},
+              {"color":"red"},
               { fontSize: 14 },
-              (_ctx.foo) ? null : { display: \\"none\\" }
+              (_ctx.foo) ? null : { display: "none" }
             ]
           }))
         }></div></div>\`)
index 493405b8ab8247befd52dc083bf994cb5d2eadff..d88323051853f390cff55f0cfa2e66ffdf7f78cc 100644 (file)
@@ -286,7 +286,7 @@ describe('SSR hydration', () => {
 
     const teleportHtml = ctx.teleports!['#teleport2']
     expect(teleportHtml).toMatchInlineSnapshot(
-      `"<span>foo</span><span class=\\"foo\\"></span><!--teleport anchor--><span>foo2</span><span class=\\"foo2\\"></span><!--teleport anchor-->"`
+      `"<span>foo</span><span class="foo"></span><!--teleport anchor--><span>foo2</span><span class="foo2"></span><!--teleport anchor-->"`
     )
 
     teleportContainer.innerHTML = teleportHtml
@@ -323,7 +323,7 @@ describe('SSR hydration', () => {
     msg.value = 'bar'
     await nextTick()
     expect(teleportContainer.innerHTML).toMatchInlineSnapshot(
-      `"<span>bar</span><span class=\\"bar\\"></span><!--teleport anchor--><span>bar2</span><span class=\\"bar2\\"></span><!--teleport anchor-->"`
+      `"<span>bar</span><span class="bar"></span><!--teleport anchor--><span>bar2</span><span class="bar2"></span><!--teleport anchor-->"`
     )
   })
 
@@ -346,7 +346,7 @@ describe('SSR hydration', () => {
     const ctx: SSRContext = {}
     const mainHtml = await renderToString(h(Comp), ctx)
     expect(mainHtml).toMatchInlineSnapshot(
-      `"<!--[--><div>foo</div><!--teleport start--><span>foo</span><span class=\\"foo\\"></span><!--teleport end--><div class=\\"foo2\\">bar</div><!--]-->"`
+      `"<!--[--><div>foo</div><!--teleport start--><span>foo</span><span class="foo"></span><!--teleport end--><div class="foo2">bar</div><!--]-->"`
     )
 
     const teleportHtml = ctx.teleports!['#teleport3']
@@ -385,7 +385,7 @@ describe('SSR hydration', () => {
     msg.value = 'bar'
     await nextTick()
     expect(container.innerHTML).toMatchInlineSnapshot(
-      `"<!--[--><div>foo</div><!--teleport start--><span>bar</span><span class=\\"bar\\"></span><!--teleport end--><div class=\\"bar2\\">bar</div><!--]-->"`
+      `"<!--[--><div>foo</div><!--teleport start--><span>bar</span><span class="bar"></span><!--teleport end--><div class="bar2">bar</div><!--]-->"`
     )
   })
 
index 579a4507d6ef695f8704ece81b0a05e1bd3ee98a..a66fac9209deba40a4e0350d8bfe0773bb487869 100644 (file)
@@ -1,62 +1,62 @@
 // Jest Snapshot v1, https://goo.gl/fbAQLP
 
 exports[`compiler: codeframe line in middle 1`] = `
-"2  |    <template key=\\"one\\"></template>
+"2  |    <template key="one"></template>
 3  |    <ul>
-4  |      <li v-for=\\"foobar\\">hi</li>
+4  |      <li v-for="foobar">hi</li>
    |          ^^^^^^^^^^^^^^
 5  |    </ul>
-6  |    <template key=\\"two\\"></template>"
+6  |    <template key="two"></template>"
 `;
 
 exports[`compiler: codeframe line near bottom 1`] = `
-"4  |      <li v-for=\\"foobar\\">hi</li>
+"4  |      <li v-for="foobar">hi</li>
 5  |    </ul>
-6  |    <template key=\\"two\\"></template>
+6  |    <template key="two"></template>
    |              ^^^^^^^^^
 7  |  </div>"
 `;
 
 exports[`compiler: codeframe line near top 1`] = `
 "1  |  <div>
-2  |    <template key=\\"one\\"></template>
+2  |    <template key="one"></template>
    |              ^^^^^^^^^
 3  |    <ul>
-4  |      <li v-for=\\"foobar\\">hi</li>"
+4  |      <li v-for="foobar">hi</li>"
 `;
 
 exports[`compiler: codeframe multi-line highlights 1`] = `
-"1  |  <div attr=\\"some
+"1  |  <div attr="some
    |       ^^^^^^^^^^
 2  |    multiline
    |  ^^^^^^^^^^^
 3  |  attr
    |  ^^^^
-4  |  \\">
+4  |  ">
    |  ^"
 `;
 
 exports[`compiler: codeframe newline sequences - unix 1`] = `
-"8  |          <input name=\\"email\\" type=\\"text\\"/>
+"8  |          <input name="email" type="text"/>
 9  |        </div>
-10 |        <div id=\\"hook\\">
+10 |        <div id="hook">
    |        ^^^^^^^^^^^^^^^
-11 |          <label for=\\"password\\">Password</label>
+11 |          <label for="password">Password</label>
    |  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-12 |          <input name=\\"password\\" type=\\"password\\"/>
+12 |          <input name="password" type="password"/>
    |  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 13 |        </div>
    |  ^^^^^^^^^^^^"
 `;
 
 exports[`compiler: codeframe newline sequences - windows 1`] = `
-"8  |          <input name=\\"email\\" type=\\"text\\"/>
+"8  |          <input name="email" type="text"/>
 9  |        </div>
-10 |        <div id=\\"hook\\">
+10 |        <div id="hook">
    |        ^^^^^^^^^^^^^^^
-11 |          <label for=\\"password\\">Password</label>
+11 |          <label for="password">Password</label>
    |  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-12 |          <input name=\\"password\\" type=\\"password\\"/>
+12 |          <input name="password" type="password"/>
    |  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 13 |        </div>
    |  ^^^^^^^^^^^^"
index 4ef69503f047f3bf55d6100fd690de0ca8e0cf50..a3cb104c003f434345ff2f5fefd5a93b671a5f6c 100644 (file)
@@ -30,7 +30,7 @@ describe('normalizeClass', () => {
         white 0.75em
       );`)
     ).toMatchInlineSnapshot(`
-      Object {
+      {
         "background": "linear-gradient(white, white) padding-box,
             repeating-linear-gradient(
               -45deg,
index bc25c1e27fef740ae505d92f53c3386fed4a8cc2..b556402f6b81397845208caf488c1573123211d3 100644 (file)
@@ -89,7 +89,7 @@ describe('toDisplayString', () => {
     expect(toDisplayString(div)).toBe('[object HTMLDivElement]')
     expect(toDisplayString({ div })).toMatchInlineSnapshot(`
       "{
-        \\"div\\": \\"[object HTMLDivElement]\\"
+        "div": "[object HTMLDivElement]"
       }"
     `)
   })
@@ -103,28 +103,28 @@ describe('toDisplayString', () => {
 
     expect(toDisplayString(m)).toMatchInlineSnapshot(`
       "{
-        \\"Map(2)\\": {
-          \\"1 =>\\": \\"foo\\",
-          \\"[object Object] =>\\": {
-            \\"foo\\": \\"bar\\",
-            \\"qux\\": 2
+        "Map(2)": {
+          "1 =>": "foo",
+          "[object Object] =>": {
+            "foo": "bar",
+            "qux": 2
           }
         }
       }"
     `)
     expect(toDisplayString(s)).toMatchInlineSnapshot(`
       "{
-        \\"Set(3)\\": [
+        "Set(3)": [
           1,
           {
-            \\"foo\\": \\"bar\\"
+            "foo": "bar"
           },
           {
-            \\"Map(2)\\": {
-              \\"1 =>\\": \\"foo\\",
-              \\"[object Object] =>\\": {
-                \\"foo\\": \\"bar\\",
-                \\"qux\\": 2
+            "Map(2)": {
+              "1 =>": "foo",
+              "[object Object] =>": {
+                "foo": "bar",
+                "qux": 2
               }
             }
           }
@@ -139,27 +139,27 @@ describe('toDisplayString', () => {
       })
     ).toMatchInlineSnapshot(`
       "{
-        \\"m\\": {
-          \\"Map(2)\\": {
-            \\"1 =>\\": \\"foo\\",
-            \\"[object Object] =>\\": {
-              \\"foo\\": \\"bar\\",
-              \\"qux\\": 2
+        "m": {
+          "Map(2)": {
+            "1 =>": "foo",
+            "[object Object] =>": {
+              "foo": "bar",
+              "qux": 2
             }
           }
         },
-        \\"s\\": {
-          \\"Set(3)\\": [
+        "s": {
+          "Set(3)": [
             1,
             {
-              \\"foo\\": \\"bar\\"
+              "foo": "bar"
             },
             {
-              \\"Map(2)\\": {
-                \\"1 =>\\": \\"foo\\",
-                \\"[object Object] =>\\": {
-                  \\"foo\\": \\"bar\\",
-                  \\"qux\\": 2
+              "Map(2)": {
+                "1 =>": "foo",
+                "[object Object] =>": {
+                  "foo": "bar",
+                  "qux": 2
                 }
               }
             }
index e17534ce25c336917227691ba71ab25d7e43ae82..9932595696d782660c6028edd5fe6cf70f6bb4d6 100644 (file)
@@ -52,7 +52,7 @@ describe('COMPONENT_FUNCTIONAL', () => {
     expect(vm.$el.querySelector('.inject').textContent).toBe('123')
     expect(vm.$el.querySelector('.slot').textContent).toBe('hello')
     expect(vm.$el.outerHTML).toMatchInlineSnapshot(
-      `"<div id=\\"foo\\" class=\\"foo\\"><div class=\\"inject\\">123</div><div class=\\"slot\\">hello</div></div>"`
+      `"<div id="foo" class="foo"><div class="inject">123</div><div class="slot">hello</div></div>"`
     )
 
     expect(
index 9ae3cc7fd3ed72073675762f3640d8fadc4c0684..426257f51c5bdda7f961d7fbee3ccd272b641acd 100644 (file)
@@ -30,7 +30,7 @@ export function setupPuppeteer() {
 
   beforeAll(async () => {
     browser = await puppeteer.launch(puppeteerOptions)
-  })
+  }, 20000)
 
   beforeEach(async () => {
     page = await browser.newPage()
@@ -44,7 +44,7 @@ export function setupPuppeteer() {
         const err = e.args()[0]
         console.error(
           `Error from Puppeteer-loaded page:\n`,
-          err._remoteObject.description
+          err.remoteObject().description
         )
       }
     })
index 4c5bf9e4a345964a59ee2ff61f6f91e8e937e867..6754d63030c4ef1a77ce79328724c9cda422b697 100644 (file)
@@ -22,7 +22,7 @@ describe('e2e: svg', () => {
   async function assertPolygon(total: number) {
     expect(
       await page().evaluate(
-        total => {
+        ([total]) => {
           const points = globalStats
             .map((stat, i) => {
               const point = valueToPoint(stat.value, i, total)
@@ -41,7 +41,7 @@ describe('e2e: svg', () => {
   // assert the position of each label is correct
   async function assertLabels(total: number) {
     const positions = await page().evaluate(
-      total => {
+      ([total]) => {
         return globalStats.map((stat, i) => {
           const point = valueToPoint(+stat.value + 10, i, total)
           return [point.x, point.y]
index a007ee6139aede190e3c61fc5ef537403174bd49..9f669fe8797ce0a3e21dedaeeb2ae963afaa963d 100644 (file)
@@ -11,10 +11,10 @@ importers:
       '@rollup/plugin-json': ^5.0.1
       '@rollup/plugin-node-resolve': ^15.0.1
       '@rollup/plugin-replace': ^5.0.1
+      '@rollup/plugin-terser': ^0.1.0
       '@types/hash-sum': ^1.0.0
-      '@types/jest': ^27.0.1
+      '@types/jest': ^29.2.2
       '@types/node': ^16.4.7
-      '@types/puppeteer': ^5.0.0
       '@typescript-eslint/parser': ^5.23.0
       '@vue/consolidate': 0.17.3
       '@vue/reactivity': workspace:*
@@ -30,7 +30,8 @@ importers:
       eslint-plugin-jest: 26.1.5
       execa: ^4.0.2
       fs-extra: ^9.0.1
-      jest: ^27.1.0
+      jest: ^29.3.1
+      jest-environment-jsdom: ^29.3.1
       lint-staged: ^10.2.10
       lodash: ^4.17.15
       marked: ^4.0.10
@@ -38,19 +39,18 @@ importers:
       npm-run-all: ^4.1.5
       prettier: ^2.7.1
       pug: ^3.0.1
-      puppeteer: ^10.4.0
+      puppeteer: ^19.2.2
       rollup: ~3.2.3
       rollup-plugin-node-builtins: ^2.1.2
       rollup-plugin-node-globals: ^1.4.0
       rollup-plugin-polyfill-node: ^0.11.0
-      rollup-plugin-terser: ^7.0.2
       rollup-plugin-typescript2: ^0.34.1
       semver: ^7.3.2
       serve: ^12.0.0
       simple-git-hooks: ^2.8.1
       terser: ^5.15.1
       todomvc-app-css: ^2.3.0
-      ts-jest: ^27.0.5
+      ts-jest: ^29.0.3
       tslib: ^2.4.0
       typescript: ^4.8.0
       vite: ^3.0.0
@@ -63,10 +63,10 @@ importers:
       '@rollup/plugin-json': 5.0.1_rollup@3.2.3
       '@rollup/plugin-node-resolve': 15.0.1_rollup@3.2.3
       '@rollup/plugin-replace': 5.0.1_rollup@3.2.3
+      '@rollup/plugin-terser': 0.1.0_rollup@3.2.3
       '@types/hash-sum': 1.0.0
-      '@types/jest': 27.0.3
+      '@types/jest': 29.2.2
       '@types/node': 16.11.12
-      '@types/puppeteer': 5.4.4
       '@typescript-eslint/parser': 5.23.0_td6yqss6ra3qoebludh4ctrhym
       '@vue/consolidate': 0.17.3
       '@vue/reactivity': link:packages/reactivity
@@ -79,10 +79,11 @@ importers:
       enquirer: 2.3.6
       esbuild: 0.14.35
       eslint: 7.32.0
-      eslint-plugin-jest: 26.1.5_yellyki4o6lslbxkde5d7blgjm
+      eslint-plugin-jest: 26.1.5_h6y6ce27mgasm6fmt6a3uqj6ne
       execa: 4.1.0
       fs-extra: 9.1.0
-      jest: 27.4.4
+      jest: 29.3.1_@types+node@16.11.12
+      jest-environment-jsdom: 29.3.1
       lint-staged: 10.5.4
       lodash: 4.17.21
       marked: 4.0.10
@@ -90,19 +91,18 @@ importers:
       npm-run-all: 4.1.5
       prettier: 2.7.1
       pug: 3.0.2
-      puppeteer: 10.4.0
+      puppeteer: 19.2.2
       rollup: 3.2.3
       rollup-plugin-node-builtins: 2.1.2
       rollup-plugin-node-globals: 1.4.0
       rollup-plugin-polyfill-node: 0.11.0_rollup@3.2.3
-      rollup-plugin-terser: 7.0.2_rollup@3.2.3
       rollup-plugin-typescript2: 0.34.1_6q6ezahorvzz2ktdwmpggsjixa
       semver: 7.3.5
       serve: 12.0.1
       simple-git-hooks: 2.8.1
       terser: 5.15.1
       todomvc-app-css: 2.4.1
-      ts-jest: 27.1.1_by43bc54xkygl7pua4gfvniboa
+      ts-jest: 29.0.3_itu5tgydyzkfaev2mma5r5wj3q
       tslib: 2.4.0
       typescript: 4.8.2
       vite: 3.0.9_terser@5.15.1
@@ -437,6 +437,11 @@ packages:
     engines: {node: '>=6.9.0'}
     dev: true
 
+  /@babel/helper-plugin-utils/7.20.2:
+    resolution: {integrity: sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==}
+    engines: {node: '>=6.9.0'}
+    dev: true
+
   /@babel/helper-replace-supers/7.16.0:
     resolution: {integrity: sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA==}
     engines: {node: '>=6.9.0'}
@@ -519,7 +524,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-bigint/7.8.3_@babel+core@7.16.0:
@@ -528,7 +533,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-class-properties/7.12.13_@babel+core@7.16.0:
@@ -537,7 +542,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-import-meta/7.10.4_@babel+core@7.16.0:
@@ -546,7 +551,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-json-strings/7.8.3_@babel+core@7.16.0:
@@ -555,7 +560,17 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
+    dev: true
+
+  /@babel/plugin-syntax-jsx/7.18.6_@babel+core@7.16.0:
+    resolution: {integrity: sha512-6mmljtAedFGTWu2p/8WIORGwy+61PLgOMPOdazc7YoJ9ZCWUyFy3A6CpPkRKLKD1ToAesxX8KGEViAiLo9N+7Q==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+    dependencies:
+      '@babel/core': 7.16.0
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-logical-assignment-operators/7.10.4_@babel+core@7.16.0:
@@ -564,7 +579,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-nullish-coalescing-operator/7.8.3_@babel+core@7.16.0:
@@ -573,7 +588,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-numeric-separator/7.10.4_@babel+core@7.16.0:
@@ -582,7 +597,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-object-rest-spread/7.8.3_@babel+core@7.16.0:
@@ -591,7 +606,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-optional-catch-binding/7.8.3_@babel+core@7.16.0:
@@ -600,7 +615,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-optional-chaining/7.8.3_@babel+core@7.16.0:
@@ -609,7 +624,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-top-level-await/7.14.5_@babel+core@7.16.0:
@@ -619,7 +634,7 @@ packages:
       '@babel/core': ^7.0.0-0
     dependencies:
       '@babel/core': 7.16.0
-      '@babel/helper-plugin-utils': 7.14.5
+      '@babel/helper-plugin-utils': 7.20.2
     dev: true
 
   /@babel/plugin-syntax-typescript/7.16.0_@babel+core@7.16.0:
@@ -741,97 +756,114 @@ packages:
     engines: {node: '>=8'}
     dev: true
 
-  /@jest/console/27.4.2:
-    resolution: {integrity: sha512-xknHThRsPB/To1FUbi6pCe43y58qFC03zfb6R7fDb/FfC7k2R3i1l+izRBJf8DI46KhYGRaF14Eo9A3qbBoixg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/console/29.3.1:
+    resolution: {integrity: sha512-IRE6GD47KwcqA09RIWrabKdHPiKDGgtAL31xDxbi/RjQMsr+lY+ppxmHwY0dUEV3qvvxZzoe5Hl0RXZJOjQNUg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
       chalk: 4.1.2
-      jest-message-util: 27.4.2
-      jest-util: 27.4.2
+      jest-message-util: 29.3.1
+      jest-util: 29.3.1
       slash: 3.0.0
     dev: true
 
-  /@jest/core/27.4.4:
-    resolution: {integrity: sha512-xBNPVqYAdAiAMXnb4ugx9Cdmr0S52lBsLbQMR/sGBRO0810VSPKiuSDtuup6qdkK1e9vxbv3KK3IAP1QFAp8mw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/core/29.3.1:
+    resolution: {integrity: sha512-0ohVjjRex985w5MmO5L3u5GR1O30DexhBSpuwx2P+9ftyqHdJXnk7IUWiP80oHMvt7ubHCJHxV0a0vlKVuZirw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     peerDependencies:
       node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
     peerDependenciesMeta:
       node-notifier:
         optional: true
     dependencies:
-      '@jest/console': 27.4.2
-      '@jest/reporters': 27.4.4
-      '@jest/test-result': 27.4.2
-      '@jest/transform': 27.4.4
-      '@jest/types': 27.4.2
-      '@types/node': 16.11.12
+      '@jest/console': 29.3.1
+      '@jest/reporters': 29.3.1
+      '@jest/test-result': 29.3.1
+      '@jest/transform': 29.3.1
+      '@jest/types': 29.3.1
+      '@types/node': 16.18.2
       ansi-escapes: 4.3.2
       chalk: 4.1.2
-      emittery: 0.8.1
+      ci-info: 3.3.0
       exit: 0.1.2
-      graceful-fs: 4.2.8
-      jest-changed-files: 27.4.2
-      jest-config: 27.4.4
-      jest-haste-map: 27.4.4
-      jest-message-util: 27.4.2
-      jest-regex-util: 27.4.0
-      jest-resolve: 27.4.4
-      jest-resolve-dependencies: 27.4.4
-      jest-runner: 27.4.4
-      jest-runtime: 27.4.4
-      jest-snapshot: 27.4.4
-      jest-util: 27.4.2
-      jest-validate: 27.4.2
-      jest-watcher: 27.4.2
+      graceful-fs: 4.2.10
+      jest-changed-files: 29.2.0
+      jest-config: 29.3.1_@types+node@16.18.2
+      jest-haste-map: 29.3.1
+      jest-message-util: 29.3.1
+      jest-regex-util: 29.2.0
+      jest-resolve: 29.3.1
+      jest-resolve-dependencies: 29.3.1
+      jest-runner: 29.3.1
+      jest-runtime: 29.3.1
+      jest-snapshot: 29.3.1
+      jest-util: 29.3.1
+      jest-validate: 29.3.1
+      jest-watcher: 29.3.1
       micromatch: 4.0.4
-      rimraf: 3.0.2
+      pretty-format: 29.3.1
       slash: 3.0.0
       strip-ansi: 6.0.1
     transitivePeerDependencies:
-      - bufferutil
-      - canvas
       - supports-color
       - ts-node
-      - utf-8-validate
     dev: true
 
-  /@jest/environment/27.4.4:
-    resolution: {integrity: sha512-q+niMx7cJgt/t/b6dzLOh4W8Ef/8VyKG7hxASK39jakijJzbFBGpptx3RXz13FFV7OishQ9lTbv+dQ5K3EhfDQ==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/environment/29.3.1:
+    resolution: {integrity: sha512-pMmvfOPmoa1c1QpfFW0nXYtNLpofqo4BrCIk6f2kW4JFeNlHV2t3vd+3iDLf31e2ot2Mec0uqZfmI+U0K2CFag==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/fake-timers': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/fake-timers': 29.3.1
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
-      jest-mock: 27.4.2
+      jest-mock: 29.3.1
+    dev: true
+
+  /@jest/expect-utils/29.3.1:
+    resolution: {integrity: sha512-wlrznINZI5sMjwvUoLVk617ll/UYfGIZNxmbU+Pa7wmkL4vYzhV9R2pwVqUh4NWWuLQWkI8+8mOkxs//prKQ3g==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+    dependencies:
+      jest-get-type: 29.2.0
     dev: true
 
-  /@jest/fake-timers/27.4.2:
-    resolution: {integrity: sha512-f/Xpzn5YQk5adtqBgvw1V6bF8Nx3hY0OIRRpCvWcfPl0EAjdqWPdhH3t/3XpiWZqtjIEHDyMKP9ajpva1l4Zmg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/expect/29.3.1:
+    resolution: {integrity: sha512-QivM7GlSHSsIAWzgfyP8dgeExPRZ9BIe2LsdPyEhCGkZkoyA+kGsoIzbKAfZCvvRzfZioKwPtCZIt5SaoxYCvg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
-      '@sinonjs/fake-timers': 8.1.0
+      expect: 29.3.1
+      jest-snapshot: 29.3.1
+    transitivePeerDependencies:
+      - supports-color
+    dev: true
+
+  /@jest/fake-timers/29.3.1:
+    resolution: {integrity: sha512-iHTL/XpnDlFki9Tq0Q1GGuVeQ8BHZGIYsvCO5eN/O/oJaRzofG9Xndd9HuSDBI/0ZS79pg0iwn07OMTQ7ngF2A==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+    dependencies:
+      '@jest/types': 29.3.1
+      '@sinonjs/fake-timers': 9.1.2
       '@types/node': 16.18.2
-      jest-message-util: 27.4.2
-      jest-mock: 27.4.2
-      jest-util: 27.4.2
+      jest-message-util: 29.3.1
+      jest-mock: 29.3.1
+      jest-util: 29.3.1
     dev: true
 
-  /@jest/globals/27.4.4:
-    resolution: {integrity: sha512-bqpqQhW30BOreXM8bA8t8JbOQzsq/WnPTnBl+It3UxAD9J8yxEAaBEylHx1dtBapAr/UBk8GidXbzmqnee8tYQ==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/globals/29.3.1:
+    resolution: {integrity: sha512-cTicd134vOcwO59OPaB6AmdHQMCtWOe+/DitpTZVxWgMJ+YvXL1HNAmPyiGbSHmF/mXVBkvlm8YYtQhyHPnV6Q==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/environment': 27.4.4
-      '@jest/types': 27.4.2
-      expect: 27.4.2
+      '@jest/environment': 29.3.1
+      '@jest/expect': 29.3.1
+      '@jest/types': 29.3.1
+      jest-mock: 29.3.1
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /@jest/reporters/27.4.4:
-    resolution: {integrity: sha512-ssyJSw9B9Awb1QaxDhIPSs4de1b7SE2kv7tqFehQL13xpn5HUkMYZK/ufTOXiCAnXFOZS+XDl1GaQ/LmJAzI1A==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/reporters/29.3.1:
+    resolution: {integrity: sha512-GhBu3YFuDrcAYW/UESz1JphEAbvUjaY2vShRZRoRY1mxpCMB3yGSJ4j9n0GxVlEOdCf7qjvUfBCrTUUqhVfbRA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     peerDependencies:
       node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
     peerDependenciesMeta:
@@ -839,10 +871,11 @@ packages:
         optional: true
     dependencies:
       '@bcoe/v8-coverage': 0.2.3
-      '@jest/console': 27.4.2
-      '@jest/test-result': 27.4.2
-      '@jest/transform': 27.4.4
-      '@jest/types': 27.4.2
+      '@jest/console': 29.3.1
+      '@jest/test-result': 29.3.1
+      '@jest/transform': 29.3.1
+      '@jest/types': 29.3.1
+      '@jridgewell/trace-mapping': 0.3.17
       '@types/node': 16.18.2
       chalk: 4.1.2
       collect-v8-coverage: 1.0.1
@@ -850,85 +883,89 @@ packages:
       glob: 7.2.3
       graceful-fs: 4.2.10
       istanbul-lib-coverage: 3.2.0
-      istanbul-lib-instrument: 4.0.3
+      istanbul-lib-instrument: 5.1.0
       istanbul-lib-report: 3.0.0
       istanbul-lib-source-maps: 4.0.1
-      istanbul-reports: 3.1.1
-      jest-haste-map: 27.4.4
-      jest-resolve: 27.4.4
-      jest-util: 27.4.2
-      jest-worker: 27.4.4
+      istanbul-reports: 3.1.5
+      jest-message-util: 29.3.1
+      jest-util: 29.3.1
+      jest-worker: 29.3.1
       slash: 3.0.0
-      source-map: 0.6.1
       string-length: 4.0.2
-      terminal-link: 2.1.1
-      v8-to-istanbul: 8.1.0
+      strip-ansi: 6.0.1
+      v8-to-istanbul: 9.0.1
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /@jest/source-map/27.4.0:
-    resolution: {integrity: sha512-Ntjx9jzP26Bvhbm93z/AKcPRj/9wrkI88/gK60glXDx1q+IeI0rf7Lw2c89Ch6ofonB0On/iRDreQuQ6te9pgQ==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/schemas/29.0.0:
+    resolution: {integrity: sha512-3Ab5HgYIIAnS0HjqJHQYZS+zXc4tUmTmBH3z83ajI6afXp8X3ZtdLX+nXx+I7LNkJD7uN9LAVhgnjDgZa2z0kA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+    dependencies:
+      '@sinclair/typebox': 0.24.51
+    dev: true
+
+  /@jest/source-map/29.2.0:
+    resolution: {integrity: sha512-1NX9/7zzI0nqa6+kgpSdKPK+WU1p+SJk3TloWZf5MzPbxri9UEeXX5bWZAPCzbQcyuAzubcdUHA7hcNznmRqWQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
+      '@jridgewell/trace-mapping': 0.3.17
       callsites: 3.1.0
       graceful-fs: 4.2.10
-      source-map: 0.6.1
     dev: true
 
-  /@jest/test-result/27.4.2:
-    resolution: {integrity: sha512-kr+bCrra9jfTgxHXHa2UwoQjxvQk3Am6QbpAiJ5x/50LW8llOYrxILkqY0lZRW/hu8FXesnudbql263+EW9iNA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/test-result/29.3.1:
+    resolution: {integrity: sha512-qeLa6qc0ddB0kuOZyZIhfN5q0e2htngokyTWsGriedsDhItisW7SDYZ7ceOe57Ii03sL988/03wAcBh3TChMGw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/console': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/console': 29.3.1
+      '@jest/types': 29.3.1
       '@types/istanbul-lib-coverage': 2.0.3
       collect-v8-coverage: 1.0.1
     dev: true
 
-  /@jest/test-sequencer/27.4.4:
-    resolution: {integrity: sha512-mCh+d4JTGTtX7vr13d7q2GHJy33nAobEwtEJ8X3u7R8+0ImVO2eAsQzsLfX8lyvdYHBxYABhqbYuaUNo42/pQw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/test-sequencer/29.3.1:
+    resolution: {integrity: sha512-IqYvLbieTv20ArgKoAMyhLHNrVHJfzO6ARZAbQRlY4UGWfdDnLlZEF0BvKOMd77uIiIjSZRwq3Jb3Fa3I8+2UA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/test-result': 27.4.2
+      '@jest/test-result': 29.3.1
       graceful-fs: 4.2.10
-      jest-haste-map: 27.4.4
-      jest-runtime: 27.4.4
-    transitivePeerDependencies:
-      - supports-color
+      jest-haste-map: 29.3.1
+      slash: 3.0.0
     dev: true
 
-  /@jest/transform/27.4.4:
-    resolution: {integrity: sha512-7U/nDSrGsGzL7+X8ScNFV71w8u8knJQWSa9C2xsrrKLMOgb+rWuCG4VAyWke/53BU96GnT+Ka81xCAHA5gk6zA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/transform/29.3.1:
+    resolution: {integrity: sha512-8wmCFBTVGYqFNLWfcOWoVuMuKYPUBTnTMDkdvFtAYELwDOl9RGwOsvQWGPFxDJ8AWY9xM/8xCXdqmPK3+Q5Lug==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
       '@babel/core': 7.16.0
-      '@jest/types': 27.4.2
+      '@jest/types': 29.3.1
+      '@jridgewell/trace-mapping': 0.3.17
       babel-plugin-istanbul: 6.1.1
       chalk: 4.1.2
-      convert-source-map: 1.8.0
+      convert-source-map: 2.0.0
       fast-json-stable-stringify: 2.1.0
       graceful-fs: 4.2.10
-      jest-haste-map: 27.4.4
-      jest-regex-util: 27.4.0
-      jest-util: 27.4.2
+      jest-haste-map: 29.3.1
+      jest-regex-util: 29.2.0
+      jest-util: 29.3.1
       micromatch: 4.0.4
       pirates: 4.0.4
       slash: 3.0.0
-      source-map: 0.6.1
-      write-file-atomic: 3.0.3
+      write-file-atomic: 4.0.2
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /@jest/types/27.4.2:
-    resolution: {integrity: sha512-j35yw0PMTPpZsUoOBiuHzr1zTYoad1cVIE0ajEjcrJONxxrko/IRGKkXx3os0Nsi4Hu3+5VmDbVfq5WhG/pWAg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /@jest/types/29.3.1:
+    resolution: {integrity: sha512-d0S0jmmTpjnhCmNpApgX3jrUZgZ22ivKJRvL2lli5hpCRoNnp1f85r2/wpKfXuYu8E7Jjh1hGfhPyup1NM5AmA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
+      '@jest/schemas': 29.0.0
       '@types/istanbul-lib-coverage': 2.0.3
       '@types/istanbul-reports': 3.0.1
-      '@types/node': 16.11.12
-      '@types/yargs': 16.0.4
+      '@types/node': 16.18.2
+      '@types/yargs': 17.0.13
       chalk: 4.1.2
     dev: true
 
@@ -1107,6 +1144,19 @@ packages:
       rollup: 3.2.3
     dev: true
 
+  /@rollup/plugin-terser/0.1.0_rollup@3.2.3:
+    resolution: {integrity: sha512-N2KK+qUfHX2hBzVzM41UWGLrEmcjVC37spC8R3c9mt3oEDFKh3N2e12/lLp9aVSt86veR0TQiCNQXrm8C6aiUQ==}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      rollup: ^2.x || ^3.x
+    peerDependenciesMeta:
+      rollup:
+        optional: true
+    dependencies:
+      rollup: 3.2.3
+      terser: 5.15.1
+    dev: true
+
   /@rollup/pluginutils/4.2.1:
     resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==}
     engines: {node: '>= 8.0.0'}
@@ -1160,21 +1210,25 @@ packages:
       string-argv: 0.3.1
     dev: true
 
+  /@sinclair/typebox/0.24.51:
+    resolution: {integrity: sha512-1P1OROm/rdubP5aFDSZQILU0vrLCJ4fvHt6EoqHEM+2D/G5MK3bIaymUKLit8Js9gbns5UyJnkP/TZROLw4tUA==}
+    dev: true
+
   /@sinonjs/commons/1.8.3:
     resolution: {integrity: sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ==}
     dependencies:
       type-detect: 4.0.8
     dev: true
 
-  /@sinonjs/fake-timers/8.1.0:
-    resolution: {integrity: sha512-OAPJUAtgeINhh/TAlUID4QTs53Njm7xzddaVlEs/SXwgtiD1tW22zAB/W1wdqfrpmikgaWQ9Fw6Ws+hsiRm5Vg==}
+  /@sinonjs/fake-timers/9.1.2:
+    resolution: {integrity: sha512-BPS4ynJW/o92PUR4wgriz2Ud5gpST5vz6GQfMixEDK0Z8ZCUv2M7SkBLykH56T++Xs+8ln9zTGbOvNGIe02/jw==}
     dependencies:
       '@sinonjs/commons': 1.8.3
     dev: true
 
-  /@tootallnate/once/1.1.2:
-    resolution: {integrity: sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==}
-    engines: {node: '>= 6'}
+  /@tootallnate/once/2.0.0:
+    resolution: {integrity: sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==}
+    engines: {node: '>= 10'}
     dev: true
 
   /@types/argparse/1.0.38:
@@ -1244,11 +1298,19 @@ packages:
       '@types/istanbul-lib-report': 3.0.0
     dev: true
 
-  /@types/jest/27.0.3:
-    resolution: {integrity: sha512-cmmwv9t7gBYt7hNKH5Spu7Kuu/DotGa+Ff+JGRKZ4db5eh8PnKS4LuebJ3YLUoyOyIHraTGyULn23YtEAm0VSg==}
+  /@types/jest/29.2.2:
+    resolution: {integrity: sha512-og1wAmdxKoS71K2ZwSVqWPX6OVn3ihZ6ZT2qvZvZQm90lJVDyXIjYcu4Khx2CNIeaFv12rOU/YObOsI3VOkzog==}
     dependencies:
-      jest-diff: 27.4.2
-      pretty-format: 27.4.2
+      expect: 29.3.1
+      pretty-format: 29.3.1
+    dev: true
+
+  /@types/jsdom/20.0.1:
+    resolution: {integrity: sha512-d0r18sZPmMQr1eG35u12FZfhIXNrnsPU/g5wvRKCUf/tOGilKKwYMYGqh33BNR6ba+2gkHw1EUiHoN3mn7E5IQ==}
+    dependencies:
+      '@types/node': 16.18.2
+      '@types/tough-cookie': 4.0.2
+      parse5: 7.1.1
     dev: true
 
   /@types/json-schema/7.0.11:
@@ -1287,12 +1349,6 @@ packages:
     resolution: {integrity: sha512-ekoj4qOQYp7CvjX8ZDBgN86w3MqQhLE1hczEJbEIjgFEumDy+na/4AJAbLXfgEWFNB2pKadM5rPFtuSGMWK7xA==}
     dev: true
 
-  /@types/puppeteer/5.4.4:
-    resolution: {integrity: sha512-3Nau+qi69CN55VwZb0ATtdUAlYlqOOQ3OfQfq0Hqgc4JMFXiQT/XInlwQ9g6LbicDslE6loIFsXFklGh5XmI6Q==}
-    dependencies:
-      '@types/node': 16.11.12
-    dev: true
-
   /@types/resolve/1.20.2:
     resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
     dev: true
@@ -1301,12 +1357,16 @@ packages:
     resolution: {integrity: sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==}
     dev: true
 
+  /@types/tough-cookie/4.0.2:
+    resolution: {integrity: sha512-Q5vtl1W5ue16D+nIaW8JWebSSraJVlK+EthKn7e7UcD4KWsaSJ8BqGPXNaPghgtcn/fhvrN17Tv8ksUsQpiplw==}
+    dev: true
+
   /@types/yargs-parser/20.2.1:
     resolution: {integrity: sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==}
     dev: true
 
-  /@types/yargs/16.0.4:
-    resolution: {integrity: sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==}
+  /@types/yargs/17.0.13:
+    resolution: {integrity: sha512-9sWaruZk2JGxIQU+IhI1fhPYRcQ0UuTNuKuCW9bR5fp7qi2Llf7WDzNa17Cy7TKnh3cdxDOiyTu6gaLS0eDatg==}
     dependencies:
       '@types/yargs-parser': 20.2.1
     dev: true
@@ -1477,8 +1537,8 @@ packages:
       through: 2.3.8
     dev: true
 
-  /abab/2.0.5:
-    resolution: {integrity: sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==}
+  /abab/2.0.6:
+    resolution: {integrity: sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA==}
     dev: true
 
   /abstract-leveldown/0.12.4:
@@ -1495,11 +1555,11 @@ packages:
       negotiator: 0.6.2
     dev: true
 
-  /acorn-globals/6.0.0:
-    resolution: {integrity: sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==}
+  /acorn-globals/7.0.1:
+    resolution: {integrity: sha512-umOSDSDrfHbTNPuNpC2NSnnA3LUrqpevPb4T9jRx4MagXNS0rs+gwiTcAvqCRmsD6utzsrzNt+ebm00SNWiC3Q==}
     dependencies:
-      acorn: 7.4.1
-      acorn-walk: 7.2.0
+      acorn: 8.8.1
+      acorn-walk: 8.2.0
     dev: true
 
   /acorn-jsx/5.3.2_acorn@7.4.1:
@@ -1510,8 +1570,8 @@ packages:
       acorn: 7.4.1
     dev: true
 
-  /acorn-walk/7.2.0:
-    resolution: {integrity: sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==}
+  /acorn-walk/8.2.0:
+    resolution: {integrity: sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA==}
     engines: {node: '>=0.4.0'}
     dev: true
 
@@ -1541,7 +1601,7 @@ packages:
     resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
     engines: {node: '>= 6.0.0'}
     dependencies:
-      debug: 4.3.3
+      debug: 4.3.4
     transitivePeerDependencies:
       - supports-color
     dev: true
@@ -1678,7 +1738,7 @@ packages:
     dev: true
 
   /asynckit/0.4.0:
-    resolution: {integrity: sha1-x57Zf380y48robyXkLzDZkdLS3k=}
+    resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==}
     dev: true
 
   /at-least-node/1.0.0:
@@ -1686,18 +1746,17 @@ packages:
     engines: {node: '>= 4.0.0'}
     dev: true
 
-  /babel-jest/27.4.4_@babel+core@7.16.0:
-    resolution: {integrity: sha512-+6RVutZxOQgJkt4svgTHPFtOQlVe9dUg3wrimIAM38pY6hL/nsL8glfFSUjD9jNVjaVjzkCzj6loFFecrjr9Qw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /babel-jest/29.3.1_@babel+core@7.16.0:
+    resolution: {integrity: sha512-aard+xnMoxgjwV70t0L6wkW/3HQQtV+O0PEimxKgzNqCJnbYmroPojdP2tqKSOAt8QAKV/uSZU8851M7B5+fcA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     peerDependencies:
       '@babel/core': ^7.8.0
     dependencies:
       '@babel/core': 7.16.0
-      '@jest/transform': 27.4.4
-      '@jest/types': 27.4.2
+      '@jest/transform': 29.3.1
       '@types/babel__core': 7.1.17
       babel-plugin-istanbul: 6.1.1
-      babel-preset-jest: 27.4.0_@babel+core@7.16.0
+      babel-preset-jest: 29.2.0_@babel+core@7.16.0
       chalk: 4.1.2
       graceful-fs: 4.2.10
       slash: 3.0.0
@@ -1718,9 +1777,9 @@ packages:
       - supports-color
     dev: true
 
-  /babel-plugin-jest-hoist/27.4.0:
-    resolution: {integrity: sha512-Jcu7qS4OX5kTWBc45Hz7BMmgXuJqRnhatqpUhnzGC3OBYpOmf2tv6jFNwZpwM7wU7MUuv2r9IPS/ZlYOuburVw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /babel-plugin-jest-hoist/29.2.0:
+    resolution: {integrity: sha512-TnspP2WNiR3GLfCsUNHqeXw0RoQ2f9U5hQ5L3XFpwuO8htQmSrhh8qsB6vi5Yi8+kuynN1yjDjQsPfkebmB6ZA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
       '@babel/template': 7.16.0
       '@babel/types': 7.16.0
@@ -1748,14 +1807,14 @@ packages:
       '@babel/plugin-syntax-top-level-await': 7.14.5_@babel+core@7.16.0
     dev: true
 
-  /babel-preset-jest/27.4.0_@babel+core@7.16.0:
-    resolution: {integrity: sha512-NK4jGYpnBvNxcGo7/ZpZJr51jCGT+3bwwpVIDY2oNfTxJJldRtB4VAcYdgp1loDE50ODuTu+yBjpMAswv5tlpg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /babel-preset-jest/29.2.0_@babel+core@7.16.0:
+    resolution: {integrity: sha512-z9JmMJppMxNv8N7fNRHvhMg9cvIkMxQBXgFkane3yKVEvEOP+kB50lk8DFRvF9PGqbyXxlmebKWhuDORO8RgdA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     peerDependencies:
       '@babel/core': ^7.0.0
     dependencies:
       '@babel/core': 7.16.0
-      babel-plugin-jest-hoist: 27.4.0
+      babel-plugin-jest-hoist: 29.2.0
       babel-preset-current-node-syntax: 1.0.1_@babel+core@7.16.0
     dev: true
 
@@ -1848,10 +1907,6 @@ packages:
       base64-js: 1.5.1
     dev: true
 
-  /browser-process-hrtime/1.0.0:
-    resolution: {integrity: sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==}
-    dev: true
-
   /browserify-aes/1.2.0:
     resolution: {integrity: sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==}
     dependencies:
@@ -2120,12 +2175,21 @@ packages:
       wrap-ansi: 7.0.0
     dev: true
 
+  /cliui/8.0.1:
+    resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==}
+    engines: {node: '>=12'}
+    dependencies:
+      string-width: 4.2.3
+      strip-ansi: 6.0.1
+      wrap-ansi: 7.0.0
+    dev: true
+
   /clone/0.1.19:
     resolution: {integrity: sha512-IO78I0y6JcSpEPHzK4obKdsL7E7oLdRVDVOLwr2Hkbjsb+Eoz0dxW6tef0WizoKu0gLC4oZSZuEF4U2K6w1WQw==}
     dev: true
 
   /co/4.6.0:
-    resolution: {integrity: sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=}
+    resolution: {integrity: sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==}
     engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'}
     dev: true
 
@@ -2402,6 +2466,10 @@ packages:
       safe-buffer: 5.1.2
     dev: true
 
+  /convert-source-map/2.0.0:
+    resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==}
+    dev: true
+
   /core-util-is/1.0.3:
     resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
 
@@ -2444,6 +2512,14 @@ packages:
       sha.js: 2.4.11
     dev: true
 
+  /cross-fetch/3.1.5:
+    resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==}
+    dependencies:
+      node-fetch: 2.6.7
+    transitivePeerDependencies:
+      - encoding
+    dev: true
+
   /cross-spawn/5.1.0:
     resolution: {integrity: sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=}
     dependencies:
@@ -2498,8 +2574,8 @@ packages:
     resolution: {integrity: sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==}
     dev: true
 
-  /cssom/0.4.4:
-    resolution: {integrity: sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==}
+  /cssom/0.5.0:
+    resolution: {integrity: sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==}
     dev: true
 
   /cssstyle/2.3.0:
@@ -2522,13 +2598,13 @@ packages:
     engines: {node: '>=8'}
     dev: true
 
-  /data-urls/2.0.0:
-    resolution: {integrity: sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==}
-    engines: {node: '>=10'}
+  /data-urls/3.0.2:
+    resolution: {integrity: sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ==}
+    engines: {node: '>=12'}
     dependencies:
-      abab: 2.0.5
-      whatwg-mimetype: 2.3.0
-      whatwg-url: 8.7.0
+      abab: 2.0.6
+      whatwg-mimetype: 3.0.0
+      whatwg-url: 11.0.0
     dev: true
 
   /dateformat/3.0.3:
@@ -2546,8 +2622,8 @@ packages:
       ms: 2.0.0
     dev: true
 
-  /debug/4.3.1:
-    resolution: {integrity: sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==}
+  /debug/4.3.3:
+    resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==}
     engines: {node: '>=6.0'}
     peerDependencies:
       supports-color: '*'
@@ -2558,8 +2634,8 @@ packages:
       ms: 2.1.2
     dev: true
 
-  /debug/4.3.3:
-    resolution: {integrity: sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==}
+  /debug/4.3.4:
+    resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==}
     engines: {node: '>=6.0'}
     peerDependencies:
       supports-color: '*'
@@ -2583,8 +2659,8 @@ packages:
     engines: {node: '>=0.10.0'}
     dev: true
 
-  /decimal.js/10.3.1:
-    resolution: {integrity: sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ==}
+  /decimal.js/10.4.2:
+    resolution: {integrity: sha512-ic1yEvwT6GuvaYwBLLY6/aFFgjZdySKTE8en/fkU3QICTmRtgtSlFn0u0BXN06InZwtfCelR7j8LRiDI/02iGA==}
     dev: true
 
   /dedent/0.7.0:
@@ -2619,7 +2695,7 @@ packages:
     dev: true
 
   /delayed-stream/1.0.0:
-    resolution: {integrity: sha1-3zrhmayt+31ECqrgsp4icrJOxhk=}
+    resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==}
     engines: {node: '>=0.4.0'}
     dev: true
 
@@ -2635,13 +2711,13 @@ packages:
     engines: {node: '>=8'}
     dev: true
 
-  /devtools-protocol/0.0.901419:
-    resolution: {integrity: sha512-4INMPwNm9XRpBukhNbF7OB6fNTTCaI8pzy/fXg0xQzAy5h3zL1P8xT3QazgKqBrb/hAYwIBizqDBZ7GtJE74QQ==}
+  /devtools-protocol/0.0.1056733:
+    resolution: {integrity: sha512-CmTu6SQx2g3TbZzDCAV58+LTxVdKplS7xip0g5oDXpZ+isr0rv5dDP8ToyVRywzPHkCCPKgKgScEcwz4uPWDIA==}
     dev: true
 
-  /diff-sequences/27.4.0:
-    resolution: {integrity: sha512-YqiQzkrsmHMH5uuh8OdQFU9/ZpADnwzml8z0O5HvRNda+5UZsaX/xN+AAxfR2hWq1Y7HZnAzO9J5lJXOuDz2Ww==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /diff-sequences/29.3.1:
+    resolution: {integrity: sha512-hlM3QR272NXCi4pq+N4Kok4kOp6EsgOM3ZSpJI7Da3UAs+Ttsi8MRmB6trM/lhyzUxGfOgnpkHtgqm5Q/CTcfQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dev: true
 
   /diffie-hellman/5.0.3:
@@ -2670,11 +2746,11 @@ packages:
     resolution: {integrity: sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==}
     dev: true
 
-  /domexception/2.0.1:
-    resolution: {integrity: sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==}
-    engines: {node: '>=8'}
+  /domexception/4.0.0:
+    resolution: {integrity: sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw==}
+    engines: {node: '>=12'}
     dependencies:
-      webidl-conversions: 5.0.0
+      webidl-conversions: 7.0.0
     dev: true
 
   /dot-prop/5.3.0:
@@ -2700,9 +2776,9 @@ packages:
       minimalistic-crypto-utils: 1.0.1
     dev: true
 
-  /emittery/0.8.1:
-    resolution: {integrity: sha512-uDfvUjVrfGJJhymx/kz6prltenw1u7WrCg1oa94zYY8xxVpLLUu045LAT0dhDZdXG58/EpPL/5kA180fQ/qudg==}
-    engines: {node: '>=10'}
+  /emittery/0.13.1:
+    resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==}
+    engines: {node: '>=12'}
     dev: true
 
   /emoji-regex/8.0.0:
@@ -2727,6 +2803,11 @@ packages:
       ansi-colors: 4.1.1
     dev: true
 
+  /entities/4.4.0:
+    resolution: {integrity: sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA==}
+    engines: {node: '>=0.12'}
+    dev: true
+
   /errno/0.1.8:
     resolution: {integrity: sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==}
     hasBin: true
@@ -3225,7 +3306,7 @@ packages:
       source-map: 0.6.1
     dev: true
 
-  /eslint-plugin-jest/26.1.5_yellyki4o6lslbxkde5d7blgjm:
+  /eslint-plugin-jest/26.1.5_h6y6ce27mgasm6fmt6a3uqj6ne:
     resolution: {integrity: sha512-su89aDuljL9bTjEufTXmKUMSFe2kZUL9bi7+woq+C2ukHZordhtfPm4Vg+tdioHBaKf8v3/FXW9uV0ksqhYGFw==}
     engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
     peerDependencies:
@@ -3240,7 +3321,7 @@ packages:
     dependencies:
       '@typescript-eslint/utils': 5.19.0_td6yqss6ra3qoebludh4ctrhym
       eslint: 7.32.0
-      jest: 27.4.4
+      jest: 29.3.1_@types+node@16.11.12
     transitivePeerDependencies:
       - supports-color
       - typescript
@@ -3454,20 +3535,19 @@ packages:
     dev: true
 
   /exit/0.1.2:
-    resolution: {integrity: sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=}
+    resolution: {integrity: sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==}
     engines: {node: '>= 0.8.0'}
     dev: true
 
-  /expect/27.4.2:
-    resolution: {integrity: sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /expect/29.3.1:
+    resolution: {integrity: sha512-gGb1yTgU30Q0O/tQq+z30KBWv24ApkMgFUpvKBkyLUBL68Wv8dHdJxTBZFl/iT8K/bqDHvUYRH6IIN3rToopPA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
-      ansi-styles: 5.2.0
-      jest-get-type: 27.4.0
-      jest-matcher-utils: 27.4.2
-      jest-message-util: 27.4.2
-      jest-regex-util: 27.4.0
+      '@jest/expect-utils': 29.3.1
+      jest-get-type: 29.2.0
+      jest-matcher-utils: 29.3.1
+      jest-message-util: 29.3.1
+      jest-util: 29.3.1
     dev: true
 
   /extract-zip/2.0.1:
@@ -3475,7 +3555,7 @@ packages:
     engines: {node: '>= 10.17.0'}
     hasBin: true
     dependencies:
-      debug: 4.3.3
+      debug: 4.3.4
       get-stream: 5.2.0
       yauzl: 2.10.0
     optionalDependencies:
@@ -3589,8 +3669,8 @@ packages:
     resolution: {integrity: sha512-k6GAGDyqLe9JaebCsFCoudPPWfihKu8pylYXRlqP1J7ms39iPoTtk2fviNglIeQEwdh0bQeKJ01ZPyuyQvKzwg==}
     dev: true
 
-  /form-data/3.0.1:
-    resolution: {integrity: sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==}
+  /form-data/4.0.0:
+    resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
     engines: {node: '>= 6'}
     dependencies:
       asynckit: 0.4.0
@@ -3918,34 +3998,34 @@ packages:
       lru-cache: 6.0.0
     dev: true
 
-  /html-encoding-sniffer/2.0.1:
-    resolution: {integrity: sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==}
-    engines: {node: '>=10'}
+  /html-encoding-sniffer/3.0.0:
+    resolution: {integrity: sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA==}
+    engines: {node: '>=12'}
     dependencies:
-      whatwg-encoding: 1.0.5
+      whatwg-encoding: 2.0.0
     dev: true
 
   /html-escaper/2.0.2:
     resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==}
     dev: true
 
-  /http-proxy-agent/4.0.1:
-    resolution: {integrity: sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==}
+  /http-proxy-agent/5.0.0:
+    resolution: {integrity: sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==}
     engines: {node: '>= 6'}
     dependencies:
-      '@tootallnate/once': 1.1.2
+      '@tootallnate/once': 2.0.0
       agent-base: 6.0.2
-      debug: 4.3.3
+      debug: 4.3.4
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /https-proxy-agent/5.0.0:
-    resolution: {integrity: sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==}
+  /https-proxy-agent/5.0.1:
+    resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
     engines: {node: '>= 6'}
     dependencies:
       agent-base: 6.0.2
-      debug: 4.3.3
+      debug: 4.3.4
     transitivePeerDependencies:
       - supports-color
     dev: true
@@ -3960,8 +4040,8 @@ packages:
     engines: {node: '>=10.17.0'}
     dev: true
 
-  /iconv-lite/0.4.24:
-    resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==}
+  /iconv-lite/0.6.3:
+    resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==}
     engines: {node: '>=0.10.0'}
     dependencies:
       safer-buffer: 2.1.2
@@ -4269,10 +4349,6 @@ packages:
       text-extensions: 1.9.0
     dev: true
 
-  /is-typedarray/1.0.0:
-    resolution: {integrity: sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=}
-    dev: true
-
   /is-unicode-supported/0.1.0:
     resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==}
     engines: {node: '>=10'}
@@ -4315,18 +4391,6 @@ packages:
     engines: {node: '>=8'}
     dev: true
 
-  /istanbul-lib-instrument/4.0.3:
-    resolution: {integrity: sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==}
-    engines: {node: '>=8'}
-    dependencies:
-      '@babel/core': 7.16.0
-      '@istanbuljs/schema': 0.1.3
-      istanbul-lib-coverage: 3.2.0
-      semver: 6.3.0
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
-
   /istanbul-lib-instrument/5.1.0:
     resolution: {integrity: sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q==}
     engines: {node: '>=8'}
@@ -4353,60 +4417,59 @@ packages:
     resolution: {integrity: sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==}
     engines: {node: '>=10'}
     dependencies:
-      debug: 4.3.3
+      debug: 4.3.4
       istanbul-lib-coverage: 3.2.0
       source-map: 0.6.1
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /istanbul-reports/3.1.1:
-    resolution: {integrity: sha512-q1kvhAXWSsXfMjCdNHNPKZZv94OlspKnoGv+R9RGbnqOOQ0VbNfLFgQDVgi7hHenKsndGq3/o0OBdzDXthWcNw==}
+  /istanbul-reports/3.1.5:
+    resolution: {integrity: sha512-nUsEMa9pBt/NOHqbcbeJEgqIlY/K7rVWUX6Lql2orY5e9roQOthbR3vtY4zzf2orPELg80fnxxk9zUyPlgwD1w==}
     engines: {node: '>=8'}
     dependencies:
       html-escaper: 2.0.2
       istanbul-lib-report: 3.0.0
     dev: true
 
-  /jest-changed-files/27.4.2:
-    resolution: {integrity: sha512-/9x8MjekuzUQoPjDHbBiXbNEBauhrPU2ct7m8TfCg69ywt1y/N+yYwGh3gCpnqUS3klYWDU/lSNgv+JhoD2k1A==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-changed-files/29.2.0:
+    resolution: {integrity: sha512-qPVmLLyBmvF5HJrY7krDisx6Voi8DmlV3GZYX0aFNbaQsZeoz1hfxcCMbqDGuQCxU1dJy9eYc2xscE8QrCCYaA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
       execa: 5.1.1
-      throat: 6.0.1
+      p-limit: 3.1.0
     dev: true
 
-  /jest-circus/27.4.4:
-    resolution: {integrity: sha512-4DWhvQerDq5X4GaqhEUoZiBhuNdKDGr0geW0iJwarbDljAmGaGOErKQG+z2PBr0vgN05z7tsGSY51mdWr8E4xg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-circus/29.3.1:
+    resolution: {integrity: sha512-wpr26sEvwb3qQQbdlmei+gzp6yoSSoSL6GsLPxnuayZSMrSd5Ka7IjAvatpIernBvT2+Ic6RLTg+jSebScmasg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/environment': 27.4.4
-      '@jest/test-result': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/environment': 29.3.1
+      '@jest/expect': 29.3.1
+      '@jest/test-result': 29.3.1
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
       chalk: 4.1.2
       co: 4.6.0
       dedent: 0.7.0
-      expect: 27.4.2
       is-generator-fn: 2.1.0
-      jest-each: 27.4.2
-      jest-matcher-utils: 27.4.2
-      jest-message-util: 27.4.2
-      jest-runtime: 27.4.4
-      jest-snapshot: 27.4.4
-      jest-util: 27.4.2
-      pretty-format: 27.4.2
+      jest-each: 29.3.1
+      jest-matcher-utils: 29.3.1
+      jest-message-util: 29.3.1
+      jest-runtime: 29.3.1
+      jest-snapshot: 29.3.1
+      jest-util: 29.3.1
+      p-limit: 3.1.0
+      pretty-format: 29.3.1
       slash: 3.0.0
       stack-utils: 2.0.5
-      throat: 6.0.1
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /jest-cli/27.4.4:
-    resolution: {integrity: sha512-+MfsHnZPUOBigCBURuQFRpgYoPCgmIFkICkqt4SrramZCUp/UAuWcst4pMZb84O3VU8JyKJmnpGG4qH8ClQloA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-cli/29.3.1_@types+node@16.11.12:
+    resolution: {integrity: sha512-TO/ewvwyvPOiBBuWZ0gm04z3WWP8TIK8acgPzE4IxgsLKQgb377NYGrQLc3Wl/7ndWzIH2CDNNsUjGxwLL43VQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     hasBin: true
     peerDependencies:
       node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -4414,215 +4477,232 @@ packages:
       node-notifier:
         optional: true
     dependencies:
-      '@jest/core': 27.4.4
-      '@jest/test-result': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/core': 29.3.1
+      '@jest/test-result': 29.3.1
+      '@jest/types': 29.3.1
       chalk: 4.1.2
       exit: 0.1.2
-      graceful-fs: 4.2.8
+      graceful-fs: 4.2.10
       import-local: 3.0.3
-      jest-config: 27.4.4
-      jest-util: 27.4.2
-      jest-validate: 27.4.2
+      jest-config: 29.3.1_@types+node@16.11.12
+      jest-util: 29.3.1
+      jest-validate: 29.3.1
       prompts: 2.4.2
-      yargs: 16.2.0
+      yargs: 17.6.2
     transitivePeerDependencies:
-      - bufferutil
-      - canvas
+      - '@types/node'
       - supports-color
       - ts-node
-      - utf-8-validate
     dev: true
 
-  /jest-config/27.4.4:
-    resolution: {integrity: sha512-6lxg0ugO6KS2zKEbpdDwBzu1IT0Xg4/VhxXMuBu+z/5FvBjLCEMTaWQm3bCaGCZUR9j9FK4DzUIxyhIgn6kVEg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-config/29.3.1_@types+node@16.11.12:
+    resolution: {integrity: sha512-y0tFHdj2WnTEhxmGUK1T7fgLen7YK4RtfvpLFBXfQkh2eMJAQq24Vx9472lvn5wg0MAO6B+iPfJfzdR9hJYalg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     peerDependencies:
+      '@types/node': '*'
       ts-node: '>=9.0.0'
     peerDependenciesMeta:
+      '@types/node':
+        optional: true
       ts-node:
         optional: true
     dependencies:
       '@babel/core': 7.16.0
-      '@jest/test-sequencer': 27.4.4
-      '@jest/types': 27.4.2
-      babel-jest: 27.4.4_@babel+core@7.16.0
+      '@jest/test-sequencer': 29.3.1
+      '@jest/types': 29.3.1
+      '@types/node': 16.11.12
+      babel-jest: 29.3.1_@babel+core@7.16.0
       chalk: 4.1.2
       ci-info: 3.3.0
       deepmerge: 4.2.2
       glob: 7.2.3
       graceful-fs: 4.2.10
-      jest-circus: 27.4.4
-      jest-environment-jsdom: 27.4.4
-      jest-environment-node: 27.4.4
-      jest-get-type: 27.4.0
-      jest-jasmine2: 27.4.4
-      jest-regex-util: 27.4.0
-      jest-resolve: 27.4.4
-      jest-runner: 27.4.4
-      jest-util: 27.4.2
-      jest-validate: 27.4.2
+      jest-circus: 29.3.1
+      jest-environment-node: 29.3.1
+      jest-get-type: 29.2.0
+      jest-regex-util: 29.2.0
+      jest-resolve: 29.3.1
+      jest-runner: 29.3.1
+      jest-util: 29.3.1
+      jest-validate: 29.3.1
       micromatch: 4.0.4
-      pretty-format: 27.4.2
+      parse-json: 5.2.0
+      pretty-format: 29.3.1
       slash: 3.0.0
+      strip-json-comments: 3.1.1
     transitivePeerDependencies:
-      - bufferutil
-      - canvas
       - supports-color
-      - utf-8-validate
     dev: true
 
-  /jest-diff/27.4.2:
-    resolution: {integrity: sha512-ujc9ToyUZDh9KcqvQDkk/gkbf6zSaeEg9AiBxtttXW59H/AcqEYp1ciXAtJp+jXWva5nAf/ePtSsgWwE5mqp4Q==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-config/29.3.1_@types+node@16.18.2:
+    resolution: {integrity: sha512-y0tFHdj2WnTEhxmGUK1T7fgLen7YK4RtfvpLFBXfQkh2eMJAQq24Vx9472lvn5wg0MAO6B+iPfJfzdR9hJYalg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+    peerDependencies:
+      '@types/node': '*'
+      ts-node: '>=9.0.0'
+    peerDependenciesMeta:
+      '@types/node':
+        optional: true
+      ts-node:
+        optional: true
     dependencies:
+      '@babel/core': 7.16.0
+      '@jest/test-sequencer': 29.3.1
+      '@jest/types': 29.3.1
+      '@types/node': 16.18.2
+      babel-jest: 29.3.1_@babel+core@7.16.0
       chalk: 4.1.2
-      diff-sequences: 27.4.0
-      jest-get-type: 27.4.0
-      pretty-format: 27.4.2
+      ci-info: 3.3.0
+      deepmerge: 4.2.2
+      glob: 7.2.3
+      graceful-fs: 4.2.10
+      jest-circus: 29.3.1
+      jest-environment-node: 29.3.1
+      jest-get-type: 29.2.0
+      jest-regex-util: 29.2.0
+      jest-resolve: 29.3.1
+      jest-runner: 29.3.1
+      jest-util: 29.3.1
+      jest-validate: 29.3.1
+      micromatch: 4.0.4
+      parse-json: 5.2.0
+      pretty-format: 29.3.1
+      slash: 3.0.0
+      strip-json-comments: 3.1.1
+    transitivePeerDependencies:
+      - supports-color
     dev: true
 
-  /jest-docblock/27.4.0:
-    resolution: {integrity: sha512-7TBazUdCKGV7svZ+gh7C8esAnweJoG+SvcF6Cjqj4l17zA2q1cMwx2JObSioubk317H+cjcHgP+7fTs60paulg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-diff/29.3.1:
+    resolution: {integrity: sha512-vU8vyiO7568tmin2lA3r2DP8oRvzhvRcD4DjpXc6uGveQodyk7CKLhQlCSiwgx3g0pFaE88/KLZ0yaTWMc4Uiw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+    dependencies:
+      chalk: 4.1.2
+      diff-sequences: 29.3.1
+      jest-get-type: 29.2.0
+      pretty-format: 29.3.1
+    dev: true
+
+  /jest-docblock/29.2.0:
+    resolution: {integrity: sha512-bkxUsxTgWQGbXV5IENmfiIuqZhJcyvF7tU4zJ/7ioTutdz4ToB5Yx6JOFBpgI+TphRY4lhOyCWGNH/QFQh5T6A==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
       detect-newline: 3.1.0
     dev: true
 
-  /jest-each/27.4.2:
-    resolution: {integrity: sha512-53V2MNyW28CTruB3lXaHNk6PkiIFuzdOC9gR3C6j8YE/ACfrPnz+slB0s17AgU1TtxNzLuHyvNlLJ+8QYw9nBg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-each/29.3.1:
+    resolution: {integrity: sha512-qrZH7PmFB9rEzCSl00BWjZYuS1BSOH8lLuC0azQE9lQrAx3PWGKHTDudQiOSwIy5dGAJh7KA0ScYlCP7JxvFYA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
+      '@jest/types': 29.3.1
       chalk: 4.1.2
-      jest-get-type: 27.4.0
-      jest-util: 27.4.2
-      pretty-format: 27.4.2
+      jest-get-type: 29.2.0
+      jest-util: 29.3.1
+      pretty-format: 29.3.1
     dev: true
 
-  /jest-environment-jsdom/27.4.4:
-    resolution: {integrity: sha512-cYR3ndNfHBqQgFvS1RL7dNqSvD//K56j/q1s2ygNHcfTCAp12zfIromO1w3COmXrxS8hWAh7+CmZmGCIoqGcGA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-environment-jsdom/29.3.1:
+    resolution: {integrity: sha512-G46nKgiez2Gy4zvYNhayfMEAFlVHhWfncqvqS6yCd0i+a4NsSUD2WtrKSaYQrYiLQaupHXxCRi8xxVL2M9PbhA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
+    peerDependencies:
+      canvas: ^2.5.0
+    peerDependenciesMeta:
+      canvas:
+        optional: true
     dependencies:
-      '@jest/environment': 27.4.4
-      '@jest/fake-timers': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/environment': 29.3.1
+      '@jest/fake-timers': 29.3.1
+      '@jest/types': 29.3.1
+      '@types/jsdom': 20.0.1
       '@types/node': 16.18.2
-      jest-mock: 27.4.2
-      jest-util: 27.4.2
-      jsdom: 16.7.0
+      jest-mock: 29.3.1
+      jest-util: 29.3.1
+      jsdom: 20.0.2
     transitivePeerDependencies:
       - bufferutil
-      - canvas
       - supports-color
       - utf-8-validate
     dev: true
 
-  /jest-environment-node/27.4.4:
-    resolution: {integrity: sha512-D+v3lbJ2GjQTQR23TK0kY3vFVmSeea05giInI41HHOaJnAwOnmUHTZgUaZL+VxUB43pIzoa7PMwWtCVlIUoVoA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-environment-node/29.3.1:
+    resolution: {integrity: sha512-xm2THL18Xf5sIHoU7OThBPtuH6Lerd+Y1NLYiZJlkE3hbE+7N7r8uvHIl/FkZ5ymKXJe/11SQuf3fv4v6rUMag==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/environment': 27.4.4
-      '@jest/fake-timers': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/environment': 29.3.1
+      '@jest/fake-timers': 29.3.1
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
-      jest-mock: 27.4.2
-      jest-util: 27.4.2
+      jest-mock: 29.3.1
+      jest-util: 29.3.1
     dev: true
 
-  /jest-get-type/27.4.0:
-    resolution: {integrity: sha512-tk9o+ld5TWq41DkK14L4wox4s2D9MtTpKaAVzXfr5CUKm5ZK2ExcaFE0qls2W71zE/6R2TxxrK9w2r6svAFDBQ==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-get-type/29.2.0:
+    resolution: {integrity: sha512-uXNJlg8hKFEnDgFsrCjznB+sTxdkuqiCL6zMgA75qEbAJjJYTs9XPrvDctrEig2GDow22T/LvHgO57iJhXB/UA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dev: true
 
-  /jest-haste-map/27.4.4:
-    resolution: {integrity: sha512-kvspmHmgPIZoDaqUsvsJFTaspuxhATvdO6wsFNGNSi8kfdiOCEEvECNbht8xG+eE5Ol88JyJmp2D7RF4dYo85Q==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-haste-map/29.3.1:
+    resolution: {integrity: sha512-/FFtvoG1xjbbPXQLFef+WSU4yrc0fc0Dds6aRPBojUid7qlPqZvxdUBA03HW0fnVHXVCnCdkuoghYItKNzc/0A==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
+      '@jest/types': 29.3.1
       '@types/graceful-fs': 4.1.5
       '@types/node': 16.18.2
       anymatch: 3.1.2
       fb-watchman: 2.0.1
       graceful-fs: 4.2.10
-      jest-regex-util: 27.4.0
-      jest-serializer: 27.4.0
-      jest-util: 27.4.2
-      jest-worker: 27.4.4
+      jest-regex-util: 29.2.0
+      jest-util: 29.3.1
+      jest-worker: 29.3.1
       micromatch: 4.0.4
       walker: 1.0.8
     optionalDependencies:
       fsevents: 2.3.2
     dev: true
 
-  /jest-jasmine2/27.4.4:
-    resolution: {integrity: sha512-ygk2tUgtLeN3ouj4KEYw9p81GLI1EKrnvourPULN5gdgB482PH5op9gqaRG0IenbJhBbbRwiSvh5NoBoQZSqdA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
-    dependencies:
-      '@babel/traverse': 7.16.3
-      '@jest/environment': 27.4.4
-      '@jest/source-map': 27.4.0
-      '@jest/test-result': 27.4.2
-      '@jest/types': 27.4.2
-      '@types/node': 16.18.2
-      chalk: 4.1.2
-      co: 4.6.0
-      expect: 27.4.2
-      is-generator-fn: 2.1.0
-      jest-each: 27.4.2
-      jest-matcher-utils: 27.4.2
-      jest-message-util: 27.4.2
-      jest-runtime: 27.4.4
-      jest-snapshot: 27.4.4
-      jest-util: 27.4.2
-      pretty-format: 27.4.2
-      throat: 6.0.1
-    transitivePeerDependencies:
-      - supports-color
-    dev: true
-
-  /jest-leak-detector/27.4.2:
-    resolution: {integrity: sha512-ml0KvFYZllzPBJWDei3mDzUhyp/M4ubKebX++fPaudpe8OsxUE+m+P6ciVLboQsrzOCWDjE20/eXew9QMx/VGw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-leak-detector/29.3.1:
+    resolution: {integrity: sha512-3DA/VVXj4zFOPagGkuqHnSQf1GZBmmlagpguxEERO6Pla2g84Q1MaVIB3YMxgUaFIaYag8ZnTyQgiZ35YEqAQA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      jest-get-type: 27.4.0
-      pretty-format: 27.4.2
+      jest-get-type: 29.2.0
+      pretty-format: 29.3.1
     dev: true
 
-  /jest-matcher-utils/27.4.2:
-    resolution: {integrity: sha512-jyP28er3RRtMv+fmYC/PKG8wvAmfGcSNproVTW2Y0P/OY7/hWUOmsPfxN1jOhM+0u2xU984u2yEagGivz9OBGQ==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-matcher-utils/29.3.1:
+    resolution: {integrity: sha512-fkRMZUAScup3txIKfMe3AIZZmPEjWEdsPJFK3AIy5qRohWqQFg1qrmKfYXR9qEkNc7OdAu2N4KPHibEmy4HPeQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
       chalk: 4.1.2
-      jest-diff: 27.4.2
-      jest-get-type: 27.4.0
-      pretty-format: 27.4.2
+      jest-diff: 29.3.1
+      jest-get-type: 29.2.0
+      pretty-format: 29.3.1
     dev: true
 
-  /jest-message-util/27.4.2:
-    resolution: {integrity: sha512-OMRqRNd9E0DkBLZpFtZkAGYOXl6ZpoMtQJWTAREJKDOFa0M6ptB7L67tp+cszMBkvSgKOhNtQp2Vbcz3ZZKo/w==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-message-util/29.3.1:
+    resolution: {integrity: sha512-lMJTbgNcDm5z+6KDxWtqOFWlGQxD6XaYwBqHR8kmpkP+WWWG90I35kdtQHY67Ay5CSuydkTBbJG+tH9JShFCyA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@babel/code-frame': 7.16.0
-      '@jest/types': 27.4.2
+      '@babel/code-frame': 7.18.6
+      '@jest/types': 29.3.1
       '@types/stack-utils': 2.0.1
       chalk: 4.1.2
       graceful-fs: 4.2.10
       micromatch: 4.0.4
-      pretty-format: 27.4.2
+      pretty-format: 29.3.1
       slash: 3.0.0
       stack-utils: 2.0.5
     dev: true
 
-  /jest-mock/27.4.2:
-    resolution: {integrity: sha512-PDDPuyhoukk20JrQKeofK12hqtSka7mWH0QQuxSNgrdiPsrnYYLS6wbzu/HDlxZRzji5ylLRULeuI/vmZZDrYA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-mock/29.3.1:
+    resolution: {integrity: sha512-H8/qFDtDVMFvFP4X8NuOT3XRDzOUTz+FeACjufHzsOIBAxivLqkB1PoLCaJx9iPPQ8dZThHPp/G3WRWyMgA3JA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
+      jest-util: 29.3.1
     dev: true
 
-  /jest-pnp-resolver/1.2.2_jest-resolve@27.4.4:
+  /jest-pnp-resolver/1.2.2_jest-resolve@29.3.1:
     resolution: {integrity: sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w==}
     engines: {node: '>=6'}
     peerDependencies:
@@ -4631,206 +4711,181 @@ packages:
       jest-resolve:
         optional: true
     dependencies:
-      jest-resolve: 27.4.4
+      jest-resolve: 29.3.1
     dev: true
 
-  /jest-regex-util/27.4.0:
-    resolution: {integrity: sha512-WeCpMpNnqJYMQoOjm1nTtsgbR4XHAk1u00qDoNBQoykM280+/TmgA5Qh5giC1ecy6a5d4hbSsHzpBtu5yvlbEg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-regex-util/29.2.0:
+    resolution: {integrity: sha512-6yXn0kg2JXzH30cr2NlThF+70iuO/3irbaB4mh5WyqNIvLLP+B6sFdluO1/1RJmslyh/f9osnefECflHvTbwVA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dev: true
 
-  /jest-resolve-dependencies/27.4.4:
-    resolution: {integrity: sha512-iAnpCXh81sd9nbyqySvm5/aV9X6JZKE0dQyFXTC8tptXcdrgS0vjPFy+mEgzPHxXw+tq4TQupuTa0n8OXwRIxw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-resolve-dependencies/29.3.1:
+    resolution: {integrity: sha512-Vk0cYq0byRw2WluNmNWGqPeRnZ3p3hHmjJMp2dyyZeYIfiBskwq4rpiuGFR6QGAdbj58WC7HN4hQHjf2mpvrLA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
-      jest-regex-util: 27.4.0
-      jest-snapshot: 27.4.4
+      jest-regex-util: 29.2.0
+      jest-snapshot: 29.3.1
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /jest-resolve/27.4.4:
-    resolution: {integrity: sha512-Yh5jK3PBmDbm01Rc8pT0XqpBlTPEGwWp7cN61ijJuwony/tR2Taof3TLy6yfNiuRS8ucUOPO7NBYm3ei38kkcg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-resolve/29.3.1:
+    resolution: {integrity: sha512-amXJgH/Ng712w3Uz5gqzFBBjxV8WFLSmNjoreBGMqxgCz5cH7swmBZzgBaCIOsvb0NbpJ0vgaSFdJqMdT+rADw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
       chalk: 4.1.2
       graceful-fs: 4.2.10
-      jest-haste-map: 27.4.4
-      jest-pnp-resolver: 1.2.2_jest-resolve@27.4.4
-      jest-util: 27.4.2
-      jest-validate: 27.4.2
+      jest-haste-map: 29.3.1
+      jest-pnp-resolver: 1.2.2_jest-resolve@29.3.1
+      jest-util: 29.3.1
+      jest-validate: 29.3.1
       resolve: 1.22.1
       resolve.exports: 1.1.0
       slash: 3.0.0
     dev: true
 
-  /jest-runner/27.4.4:
-    resolution: {integrity: sha512-AXv/8Q0Xf1puWnDf52m7oLrK7sXcv6re0V/kItwTSVHJbX7Oebm07oGFQqGmq0R0mhO1zpmB3OpqRuaCN2elPA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-runner/29.3.1:
+    resolution: {integrity: sha512-oFvcwRNrKMtE6u9+AQPMATxFcTySyKfLhvso7Sdk/rNpbhg4g2GAGCopiInk1OP4q6gz3n6MajW4+fnHWlU3bA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/console': 27.4.2
-      '@jest/environment': 27.4.4
-      '@jest/test-result': 27.4.2
-      '@jest/transform': 27.4.4
-      '@jest/types': 27.4.2
+      '@jest/console': 29.3.1
+      '@jest/environment': 29.3.1
+      '@jest/test-result': 29.3.1
+      '@jest/transform': 29.3.1
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
       chalk: 4.1.2
-      emittery: 0.8.1
-      exit: 0.1.2
+      emittery: 0.13.1
       graceful-fs: 4.2.10
-      jest-docblock: 27.4.0
-      jest-environment-jsdom: 27.4.4
-      jest-environment-node: 27.4.4
-      jest-haste-map: 27.4.4
-      jest-leak-detector: 27.4.2
-      jest-message-util: 27.4.2
-      jest-resolve: 27.4.4
-      jest-runtime: 27.4.4
-      jest-util: 27.4.2
-      jest-worker: 27.4.4
-      source-map-support: 0.5.21
-      throat: 6.0.1
+      jest-docblock: 29.2.0
+      jest-environment-node: 29.3.1
+      jest-haste-map: 29.3.1
+      jest-leak-detector: 29.3.1
+      jest-message-util: 29.3.1
+      jest-resolve: 29.3.1
+      jest-runtime: 29.3.1
+      jest-util: 29.3.1
+      jest-watcher: 29.3.1
+      jest-worker: 29.3.1
+      p-limit: 3.1.0
+      source-map-support: 0.5.13
     transitivePeerDependencies:
-      - bufferutil
-      - canvas
       - supports-color
-      - utf-8-validate
     dev: true
 
-  /jest-runtime/27.4.4:
-    resolution: {integrity: sha512-tZGay6P6vXJq8t4jVFAUzYHx+lzIHXjz+rj1XBk6mAR1Lwtf5kz0Uun7qNuU+oqpZu4+hhuxpUfXb6j30bEPqA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-runtime/29.3.1:
+    resolution: {integrity: sha512-jLzkIxIqXwBEOZx7wx9OO9sxoZmgT2NhmQKzHQm1xwR1kNW/dn0OjxR424VwHHf1SPN6Qwlb5pp1oGCeFTQ62A==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/console': 27.4.2
-      '@jest/environment': 27.4.4
-      '@jest/globals': 27.4.4
-      '@jest/source-map': 27.4.0
-      '@jest/test-result': 27.4.2
-      '@jest/transform': 27.4.4
-      '@jest/types': 27.4.2
-      '@types/yargs': 16.0.4
+      '@jest/environment': 29.3.1
+      '@jest/fake-timers': 29.3.1
+      '@jest/globals': 29.3.1
+      '@jest/source-map': 29.2.0
+      '@jest/test-result': 29.3.1
+      '@jest/transform': 29.3.1
+      '@jest/types': 29.3.1
+      '@types/node': 16.18.2
       chalk: 4.1.2
       cjs-module-lexer: 1.2.2
       collect-v8-coverage: 1.0.1
-      execa: 5.1.1
-      exit: 0.1.2
       glob: 7.2.3
       graceful-fs: 4.2.10
-      jest-haste-map: 27.4.4
-      jest-message-util: 27.4.2
-      jest-mock: 27.4.2
-      jest-regex-util: 27.4.0
-      jest-resolve: 27.4.4
-      jest-snapshot: 27.4.4
-      jest-util: 27.4.2
-      jest-validate: 27.4.2
+      jest-haste-map: 29.3.1
+      jest-message-util: 29.3.1
+      jest-mock: 29.3.1
+      jest-regex-util: 29.2.0
+      jest-resolve: 29.3.1
+      jest-snapshot: 29.3.1
+      jest-util: 29.3.1
       slash: 3.0.0
       strip-bom: 4.0.0
-      yargs: 16.2.0
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /jest-serializer/27.4.0:
-    resolution: {integrity: sha512-RDhpcn5f1JYTX2pvJAGDcnsNTnsV9bjYPU8xcV+xPwOXnUPOQwf4ZEuiU6G9H1UztH+OapMgu/ckEVwO87PwnQ==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
-    dependencies:
-      '@types/node': 16.18.2
-      graceful-fs: 4.2.10
-    dev: true
-
-  /jest-snapshot/27.4.4:
-    resolution: {integrity: sha512-yy+rpCvYMOjTl7IMuaMI9OP9WT229zi8BhdNHm6e6mttAOIzvIiCxFoZ6yRxaV3HDPPgMryi+ReX2b8+IQJdPA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-snapshot/29.3.1:
+    resolution: {integrity: sha512-+3JOc+s28upYLI2OJM4PWRGK9AgpsMs/ekNryUV0yMBClT9B1DF2u2qay8YxcQd338PPYSFNb0lsar1B49sLDA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
       '@babel/core': 7.16.0
       '@babel/generator': 7.16.0
-      '@babel/parser': 7.16.4
+      '@babel/plugin-syntax-jsx': 7.18.6_@babel+core@7.16.0
       '@babel/plugin-syntax-typescript': 7.16.0_@babel+core@7.16.0
       '@babel/traverse': 7.16.3
       '@babel/types': 7.16.0
-      '@jest/transform': 27.4.4
-      '@jest/types': 27.4.2
+      '@jest/expect-utils': 29.3.1
+      '@jest/transform': 29.3.1
+      '@jest/types': 29.3.1
       '@types/babel__traverse': 7.14.2
       '@types/prettier': 2.4.2
       babel-preset-current-node-syntax: 1.0.1_@babel+core@7.16.0
       chalk: 4.1.2
-      expect: 27.4.2
+      expect: 29.3.1
       graceful-fs: 4.2.10
-      jest-diff: 27.4.2
-      jest-get-type: 27.4.0
-      jest-haste-map: 27.4.4
-      jest-matcher-utils: 27.4.2
-      jest-message-util: 27.4.2
-      jest-resolve: 27.4.4
-      jest-util: 27.4.2
+      jest-diff: 29.3.1
+      jest-get-type: 29.2.0
+      jest-haste-map: 29.3.1
+      jest-matcher-utils: 29.3.1
+      jest-message-util: 29.3.1
+      jest-util: 29.3.1
       natural-compare: 1.4.0
-      pretty-format: 27.4.2
-      semver: 7.3.5
+      pretty-format: 29.3.1
+      semver: 7.3.8
     transitivePeerDependencies:
       - supports-color
     dev: true
 
-  /jest-util/27.4.2:
-    resolution: {integrity: sha512-YuxxpXU6nlMan9qyLuxHaMMOzXAl5aGZWCSzben5DhLHemYQxCc4YK+4L3ZrCutT8GPQ+ui9k5D8rUJoDioMnA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-util/29.3.1:
+    resolution: {integrity: sha512-7YOVZaiX7RJLv76ZfHt4nbNEzzTRiMW/IiOG7ZOKmTXmoGBxUDefgMAxQubu6WPVqP5zSzAdZG0FfLcC7HOIFQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
-      '@types/node': 16.11.12
+      '@jest/types': 29.3.1
+      '@types/node': 16.18.2
       chalk: 4.1.2
       ci-info: 3.3.0
       graceful-fs: 4.2.10
-      picomatch: 2.3.0
+      picomatch: 2.3.1
     dev: true
 
-  /jest-validate/27.4.2:
-    resolution: {integrity: sha512-hWYsSUej+Fs8ZhOm5vhWzwSLmVaPAxRy+Mr+z5MzeaHm9AxUpXdoVMEW4R86y5gOobVfBsMFLk4Rb+QkiEpx1A==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-validate/29.3.1:
+    resolution: {integrity: sha512-N9Lr3oYR2Mpzuelp1F8negJR3YE+L1ebk1rYA5qYo9TTY3f9OWdptLoNSPP9itOCBIRBqjt/S5XHlzYglLN67g==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
+      '@jest/types': 29.3.1
       camelcase: 6.2.1
       chalk: 4.1.2
-      jest-get-type: 27.4.0
+      jest-get-type: 29.2.0
       leven: 3.1.0
-      pretty-format: 27.4.2
+      pretty-format: 29.3.1
     dev: true
 
-  /jest-watcher/27.4.2:
-    resolution: {integrity: sha512-NJvMVyyBeXfDezhWzUOCOYZrUmkSCiatpjpm+nFUid74OZEHk6aMLrZAukIiFDwdbqp6mTM6Ui1w4oc+8EobQg==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest-watcher/29.3.1:
+    resolution: {integrity: sha512-RspXG2BQFDsZSRKGCT/NiNa8RkQ1iKAjrO0//soTMWx/QUt+OcxMqMSBxz23PYGqUuWm2+m2mNNsmj0eIoOaFg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/test-result': 27.4.2
-      '@jest/types': 27.4.2
+      '@jest/test-result': 29.3.1
+      '@jest/types': 29.3.1
       '@types/node': 16.18.2
       ansi-escapes: 4.3.2
       chalk: 4.1.2
-      jest-util: 27.4.2
+      emittery: 0.13.1
+      jest-util: 29.3.1
       string-length: 4.0.2
     dev: true
 
-  /jest-worker/26.6.2:
-    resolution: {integrity: sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==}
-    engines: {node: '>= 10.13.0'}
-    dependencies:
-      '@types/node': 16.18.2
-      merge-stream: 2.0.0
-      supports-color: 7.2.0
-    dev: true
-
-  /jest-worker/27.4.4:
-    resolution: {integrity: sha512-jfwxYJvfua1b1XkyuyPh01ATmgg4e5fPM/muLmhy9Qc6dmiwacQB0MLHaU6IjEsv/+nAixHGxTn8WllA27Pn0w==}
-    engines: {node: '>= 10.13.0'}
+  /jest-worker/29.3.1:
+    resolution: {integrity: sha512-lY4AnnmsEWeiXirAIA0c9SDPbuCBq8IYuDVL8PMm0MZ2PEs2yPvRA/J64QBXuZp7CYKrDM/rmNrc9/i3KJQncw==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
       '@types/node': 16.18.2
+      jest-util: 29.3.1
       merge-stream: 2.0.0
       supports-color: 8.1.1
     dev: true
 
-  /jest/27.4.4:
-    resolution: {integrity: sha512-AXwEIFa58Uf1Jno3/KSo5HZZ0/2Xwqvfrz0/3bmTwImkFlbOvz5vARAW9nTrxRLkojjkitaZ1KNKAtw3JRFAaA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /jest/29.3.1_@types+node@16.11.12:
+    resolution: {integrity: sha512-6iWfL5DTT0Np6UYs/y5Niu7WIfNv/wRTtN5RSXt2DIEft3dx3zPuw/3WJQBCJfmEzvDiEKwoqMbGD9n49+qLSA==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     hasBin: true
     peerDependencies:
       node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0
@@ -4838,15 +4893,14 @@ packages:
       node-notifier:
         optional: true
     dependencies:
-      '@jest/core': 27.4.4
+      '@jest/core': 29.3.1
+      '@jest/types': 29.3.1
       import-local: 3.0.3
-      jest-cli: 27.4.4
+      jest-cli: 29.3.1_@types+node@16.11.12
     transitivePeerDependencies:
-      - bufferutil
-      - canvas
+      - '@types/node'
       - supports-color
       - ts-node
-      - utf-8-validate
     dev: true
 
   /jju/1.4.0:
@@ -4869,42 +4923,41 @@ packages:
       esprima: 4.0.1
     dev: true
 
-  /jsdom/16.7.0:
-    resolution: {integrity: sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==}
-    engines: {node: '>=10'}
+  /jsdom/20.0.2:
+    resolution: {integrity: sha512-AHWa+QO/cgRg4N+DsmHg1Y7xnz+8KU3EflM0LVDTdmrYOc1WWTSkOjtpUveQH+1Bqd5rtcVnb/DuxV/UjDO4rA==}
+    engines: {node: '>=14'}
     peerDependencies:
       canvas: ^2.5.0
     peerDependenciesMeta:
       canvas:
         optional: true
     dependencies:
-      abab: 2.0.5
+      abab: 2.0.6
       acorn: 8.8.1
-      acorn-globals: 6.0.0
-      cssom: 0.4.4
+      acorn-globals: 7.0.1
+      cssom: 0.5.0
       cssstyle: 2.3.0
-      data-urls: 2.0.0
-      decimal.js: 10.3.1
-      domexception: 2.0.1
+      data-urls: 3.0.2
+      decimal.js: 10.4.2
+      domexception: 4.0.0
       escodegen: 2.0.0
-      form-data: 3.0.1
-      html-encoding-sniffer: 2.0.1
-      http-proxy-agent: 4.0.1
-      https-proxy-agent: 5.0.0
+      form-data: 4.0.0
+      html-encoding-sniffer: 3.0.0
+      http-proxy-agent: 5.0.0
+      https-proxy-agent: 5.0.1
       is-potential-custom-element-name: 1.0.1
-      nwsapi: 2.2.0
-      parse5: 6.0.1
-      saxes: 5.0.1
+      nwsapi: 2.2.2
+      parse5: 7.1.1
+      saxes: 6.0.0
       symbol-tree: 3.2.4
-      tough-cookie: 4.0.0
-      w3c-hr-time: 1.0.2
-      w3c-xmlserializer: 2.0.0
-      webidl-conversions: 6.1.0
-      whatwg-encoding: 1.0.5
-      whatwg-mimetype: 2.3.0
-      whatwg-url: 8.7.0
-      ws: 7.5.6
-      xml-name-validator: 3.0.0
+      tough-cookie: 4.1.2
+      w3c-xmlserializer: 3.0.0
+      webidl-conversions: 7.0.0
+      whatwg-encoding: 2.0.0
+      whatwg-mimetype: 3.0.0
+      whatwg-url: 11.0.0
+      ws: 8.10.0
+      xml-name-validator: 4.0.0
     transitivePeerDependencies:
       - bufferutil
       - supports-color
@@ -4956,6 +5009,12 @@ packages:
       minimist: 1.2.5
     dev: true
 
+  /json5/2.2.1:
+    resolution: {integrity: sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA==}
+    engines: {node: '>=6'}
+    hasBin: true
+    dev: true
+
   /jsonfile/4.0.0:
     resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==}
     optionalDependencies:
@@ -5083,7 +5142,7 @@ packages:
     dev: true
 
   /levn/0.3.0:
-    resolution: {integrity: sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=}
+    resolution: {integrity: sha512-0OO4y2iOHix2W6ujICbKIaEQXvFQHue65vUG3pb5EUomzPI90z9hsA1VsO/dbIIpC53J8gxM9Q4Oho0jrCM/yA==}
     engines: {node: '>= 0.8.0'}
     dependencies:
       prelude-ls: 1.1.2
@@ -5202,7 +5261,7 @@ packages:
     dev: true
 
   /lodash.memoize/4.1.2:
-    resolution: {integrity: sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=}
+    resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==}
     dev: true
 
   /lodash.merge/4.6.2:
@@ -5445,11 +5504,8 @@ packages:
     resolution: {integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==}
     dev: true
 
-  /mkdirp/0.5.5:
-    resolution: {integrity: sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==}
-    hasBin: true
-    dependencies:
-      minimist: 1.2.5
+  /mkdirp-classic/0.5.3:
+    resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==}
     dev: true
 
   /modify-values/1.0.1:
@@ -5497,13 +5553,20 @@ packages:
     resolution: {integrity: sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==}
     dev: true
 
-  /node-fetch/2.6.1:
-    resolution: {integrity: sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw==}
+  /node-fetch/2.6.7:
+    resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==}
     engines: {node: 4.x || >=6.0.0}
+    peerDependencies:
+      encoding: ^0.1.0
+    peerDependenciesMeta:
+      encoding:
+        optional: true
+    dependencies:
+      whatwg-url: 5.0.0
     dev: true
 
   /node-int64/0.4.0:
-    resolution: {integrity: sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=}
+    resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==}
     dev: true
 
   /node-releases/2.0.1:
@@ -5564,8 +5627,8 @@ packages:
       path-key: 3.1.1
     dev: true
 
-  /nwsapi/2.2.0:
-    resolution: {integrity: sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==}
+  /nwsapi/2.2.2:
+    resolution: {integrity: sha512-90yv+6538zuvUMnN+zCr8LuV6bPFdq50304114vJYJ8RDyK8D5O9Phpbd6SZWgI7PwzmmfN1upeOJlvybDSgCw==}
     dev: true
 
   /object-assign/4.1.1:
@@ -5670,6 +5733,13 @@ packages:
       p-try: 2.2.0
     dev: true
 
+  /p-limit/3.1.0:
+    resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==}
+    engines: {node: '>=10'}
+    dependencies:
+      yocto-queue: 0.1.0
+    dev: true
+
   /p-locate/2.0.0:
     resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==}
     engines: {node: '>=4'}
@@ -5740,8 +5810,10 @@ packages:
       lines-and-columns: 1.2.4
     dev: true
 
-  /parse5/6.0.1:
-    resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
+  /parse5/7.1.1:
+    resolution: {integrity: sha512-kwpuwzB+px5WUg9pyK0IcK/shltJN5/OVhQagxhCQNtT9Y9QRZqNY2e1cmbu/paRh5LMnz/oVTVLBpjFmMZhSg==}
+    dependencies:
+      entities: 4.4.0
     dev: true
 
   /path-exists/3.0.0:
@@ -5942,7 +6014,7 @@ packages:
       source-map-js: 1.0.1
 
   /prelude-ls/1.1.2:
-    resolution: {integrity: sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=}
+    resolution: {integrity: sha512-ESF23V4SKG6lVSGZgYNpbsiaAkdab6ZgOxe52p7+Kid3W3u3bxR4Vfd/o21dmN7jSt0IwgZ4v5MUd26FEtXE9w==}
     engines: {node: '>= 0.8.0'}
     dev: true
 
@@ -5957,14 +6029,13 @@ packages:
     hasBin: true
     dev: true
 
-  /pretty-format/27.4.2:
-    resolution: {integrity: sha512-p0wNtJ9oLuvgOQDEIZ9zQjZffK7KtyR6Si0jnXULIDwrlNF8Cuir3AZP0hHv0jmKuNN/edOnbMjnzd4uTcmWiw==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /pretty-format/29.3.1:
+    resolution: {integrity: sha512-FyLnmb1cYJV8biEIiRyzRFvs2lry7PPIvOqKVe1GCUEYg4YGmlx1qG9EJNMxArYm7piII4qb8UV1Pncq5dxmcg==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     dependencies:
-      '@jest/types': 27.4.2
-      ansi-regex: 5.0.1
+      '@jest/schemas': 29.0.0
       ansi-styles: 5.2.0
-      react-is: 17.0.2
+      react-is: 18.2.0
     dev: true
 
   /process-es6/0.11.6:
@@ -5974,11 +6045,6 @@ packages:
   /process-nextick-args/2.0.1:
     resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
 
-  /progress/2.0.1:
-    resolution: {integrity: sha512-OE+a6vzqazc+K6LxJrX5UPyKFvGnL5CYmq2jFGNIBWHpc4QyE49/YOumcrpQFJpfejmvRtbJzgO1zPmMCqlbBg==}
-    engines: {node: '>=0.4.0'}
-    dev: true
-
   /progress/2.0.3:
     resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==}
     engines: {node: '>=0.4.0'}
@@ -6014,8 +6080,8 @@ packages:
     resolution: {integrity: sha1-8FKijacOYYkX7wqKw0wa5aaChrM=}
     dev: true
 
-  /psl/1.8.0:
-    resolution: {integrity: sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==}
+  /psl/1.9.0:
+    resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==}
     dev: true
 
   /public-encrypt/4.0.3:
@@ -6136,26 +6202,41 @@ packages:
     engines: {node: '>=6'}
     dev: true
 
-  /puppeteer/10.4.0:
-    resolution: {integrity: sha512-2cP8mBoqnu5gzAVpbZ0fRaobBWZM8GEUF4I1F6WbgHrKV/rz7SX8PG2wMymZgD0wo0UBlg2FBPNxlF/xlqW6+w==}
-    engines: {node: '>=10.18.1'}
-    deprecated: Version no longer supported. Upgrade to @latest
-    requiresBuild: true
+  /puppeteer-core/19.2.2:
+    resolution: {integrity: sha512-faojf+1pZ/tHXSr4x1q+9MVd9FrL3rpdbC0w7qN7MNClMoLuCvMbpR4vzcjoiJYgclt1n+SOPUOmHQViTw6frw==}
+    engines: {node: '>=14.1.0'}
     dependencies:
-      debug: 4.3.1
-      devtools-protocol: 0.0.901419
+      cross-fetch: 3.1.5
+      debug: 4.3.4
+      devtools-protocol: 0.0.1056733
       extract-zip: 2.0.1
-      https-proxy-agent: 5.0.0
-      node-fetch: 2.6.1
-      pkg-dir: 4.2.0
-      progress: 2.0.1
+      https-proxy-agent: 5.0.1
       proxy-from-env: 1.1.0
       rimraf: 3.0.2
-      tar-fs: 2.0.0
-      unbzip2-stream: 1.3.3
-      ws: 7.4.6
+      tar-fs: 2.1.1
+      unbzip2-stream: 1.4.3
+      ws: 8.10.0
     transitivePeerDependencies:
       - bufferutil
+      - encoding
+      - supports-color
+      - utf-8-validate
+    dev: true
+
+  /puppeteer/19.2.2:
+    resolution: {integrity: sha512-m1T5Mog5qu5+dMBptWYTn6pXRdnFbydbVUCthqwbfd8/kOiMlzZBR9ywjX79LpvI1Sj+/z8+FKeIsjnMul8ZYA==}
+    engines: {node: '>=14.1.0'}
+    requiresBuild: true
+    dependencies:
+      cosmiconfig: 7.0.1
+      devtools-protocol: 0.0.1056733
+      https-proxy-agent: 5.0.1
+      progress: 2.0.3
+      proxy-from-env: 1.1.0
+      puppeteer-core: 19.2.2
+    transitivePeerDependencies:
+      - bufferutil
+      - encoding
       - supports-color
       - utf-8-validate
     dev: true
@@ -6165,6 +6246,10 @@ packages:
     engines: {node: '>=0.6.0', teleport: '>=0.2.0'}
     dev: true
 
+  /querystringify/2.2.0:
+    resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==}
+    dev: true
+
   /queue-microtask/1.2.3:
     resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==}
     dev: true
@@ -6202,8 +6287,8 @@ packages:
       strip-json-comments: 2.0.1
     dev: true
 
-  /react-is/17.0.2:
-    resolution: {integrity: sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==}
+  /react-is/18.2.0:
+    resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
     dev: true
 
   /read-pkg-up/3.0.0:
@@ -6324,6 +6409,10 @@ packages:
     engines: {node: '>=0.10.0'}
     dev: true
 
+  /requires-port/1.0.0:
+    resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==}
+    dev: true
+
   /resolve-cwd/3.0.0:
     resolution: {integrity: sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==}
     engines: {node: '>=8'}
@@ -6443,18 +6532,6 @@ packages:
       rollup: 3.2.3
     dev: true
 
-  /rollup-plugin-terser/7.0.2_rollup@3.2.3:
-    resolution: {integrity: sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==}
-    peerDependencies:
-      rollup: ^2.0.0
-    dependencies:
-      '@babel/code-frame': 7.18.6
-      jest-worker: 26.6.2
-      rollup: 3.2.3
-      serialize-javascript: 4.0.0
-      terser: 5.15.1
-    dev: true
-
   /rollup-plugin-typescript2/0.34.1_6q6ezahorvzz2ktdwmpggsjixa:
     resolution: {integrity: sha512-P4cHLtGikESmqi1CA+tdMDUv8WbQV48mzPYt77TSTOPJpERyZ9TXdDgjSDix8Fkqce6soYz3+fa4lrC93IEkcw==}
     peerDependencies:
@@ -6525,9 +6602,9 @@ packages:
       source-map-js: 1.0.1
     dev: true
 
-  /saxes/5.0.1:
-    resolution: {integrity: sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==}
-    engines: {node: '>=10'}
+  /saxes/6.0.0:
+    resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==}
+    engines: {node: '>=v12.22.7'}
     dependencies:
       xmlchars: 2.2.0
     dev: true
@@ -6567,12 +6644,6 @@ packages:
       lru-cache: 6.0.0
     dev: true
 
-  /serialize-javascript/4.0.0:
-    resolution: {integrity: sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==}
-    dependencies:
-      randombytes: 2.1.0
-    dev: true
-
   /serve-handler/6.1.3:
     resolution: {integrity: sha512-FosMqFBNrLyeiIDvP1zgO6YoTzFYHxLDEIavhlmQ+knB2Z7l1t+kGLHkZIDN7UVWqQAmKI3D20A6F6jo3nDd4w==}
     dependencies:
@@ -6656,6 +6727,10 @@ packages:
     resolution: {integrity: sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==}
     dev: true
 
+  /signal-exit/3.0.7:
+    resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==}
+    dev: true
+
   /simple-git-hooks/2.8.1:
     resolution: {integrity: sha512-DYpcVR1AGtSfFUNzlBdHrQGPsOhuuEJ/FkmPOOlFysP60AHd3nsEpkGq/QEOdtUyT1Qhk7w9oLmFoMG+75BDog==}
     hasBin: true
@@ -6698,6 +6773,13 @@ packages:
     engines: {node: '>=0.10.0'}
     dev: true
 
+  /source-map-support/0.5.13:
+    resolution: {integrity: sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==}
+    dependencies:
+      buffer-from: 1.1.2
+      source-map: 0.6.1
+    dev: true
+
   /source-map-support/0.5.21:
     resolution: {integrity: sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==}
     dependencies:
@@ -6714,11 +6796,6 @@ packages:
     resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==}
     engines: {node: '>=0.10.0'}
 
-  /source-map/0.7.3:
-    resolution: {integrity: sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==}
-    engines: {node: '>= 8'}
-    dev: true
-
   /sourcemap-codec/1.4.8:
     resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==}
 
@@ -6924,14 +7001,6 @@ packages:
       has-flag: 4.0.0
     dev: true
 
-  /supports-hyperlinks/2.2.0:
-    resolution: {integrity: sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==}
-    engines: {node: '>=8'}
-    dependencies:
-      has-flag: 4.0.0
-      supports-color: 7.2.0
-    dev: true
-
   /supports-preserve-symlinks-flag/1.0.0:
     resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==}
     engines: {node: '>= 0.4'}
@@ -6952,11 +7021,11 @@ packages:
       strip-ansi: 6.0.1
     dev: true
 
-  /tar-fs/2.0.0:
-    resolution: {integrity: sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA==}
+  /tar-fs/2.1.1:
+    resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==}
     dependencies:
       chownr: 1.1.4
-      mkdirp: 0.5.5
+      mkdirp-classic: 0.5.3
       pump: 3.0.0
       tar-stream: 2.2.0
     dev: true
@@ -6992,14 +7061,6 @@ packages:
       execa: 0.7.0
     dev: true
 
-  /terminal-link/2.1.1:
-    resolution: {integrity: sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==}
-    engines: {node: '>=8'}
-    dependencies:
-      ansi-escapes: 4.3.2
-      supports-hyperlinks: 2.2.0
-    dev: true
-
   /terser/5.15.1:
     resolution: {integrity: sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==}
     engines: {node: '>=10'}
@@ -7029,10 +7090,6 @@ packages:
     resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=}
     dev: true
 
-  /throat/6.0.1:
-    resolution: {integrity: sha512-8hmiGIJMDlwjg7dlJ4yKGLK8EsYqKgPWbG3b4wjJddKNwc7N7Dpn08Df4szr/sZdMVeOstrdYSsqzX6BYbcB+w==}
-    dev: true
-
   /through/2.3.8:
     resolution: {integrity: sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=}
     dev: true
@@ -7077,18 +7134,23 @@ packages:
     resolution: {integrity: sha512-VSsyNPPW74RpHwR8Fc21uubwHY7wMDeJLys2IX5zJNih+OnAnaifKHo+1LHT7DAdloQ7apeaaWg8l7qnf/TnEg==}
     dev: true
 
-  /tough-cookie/4.0.0:
-    resolution: {integrity: sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==}
+  /tough-cookie/4.1.2:
+    resolution: {integrity: sha512-G9fqXWoYFZgTc2z8Q5zaHy/vJMjm+WV0AkAeHxVCQiEB1b+dGvWzFW6QV07cY5jQ5gRkeid2qIkzkxUnmoQZUQ==}
     engines: {node: '>=6'}
     dependencies:
-      psl: 1.8.0
+      psl: 1.9.0
       punycode: 2.1.1
-      universalify: 0.1.2
+      universalify: 0.2.0
+      url-parse: 1.5.10
     dev: true
 
-  /tr46/2.1.0:
-    resolution: {integrity: sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==}
-    engines: {node: '>=8'}
+  /tr46/0.0.3:
+    resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==}
+    dev: true
+
+  /tr46/3.0.0:
+    resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==}
+    engines: {node: '>=12'}
     dependencies:
       punycode: 2.1.1
     dev: true
@@ -7098,39 +7160,38 @@ packages:
     engines: {node: '>=8'}
     dev: true
 
-  /ts-jest/27.1.1_by43bc54xkygl7pua4gfvniboa:
-    resolution: {integrity: sha512-Ds0VkB+cB+8g2JUmP/GKWndeZcCKrbe6jzolGrVWdqVUFByY/2KDHqxJ7yBSon7hDB1TA4PXxjfZ+JjzJisvgA==}
-    engines: {node: ^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0}
+  /ts-jest/29.0.3_itu5tgydyzkfaev2mma5r5wj3q:
+    resolution: {integrity: sha512-Ibygvmuyq1qp/z3yTh9QTwVVAbFdDy/+4BtIQR2sp6baF2SJU/8CKK/hhnGIDY2L90Az2jIqTwZPnN2p+BweiQ==}
+    engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
     hasBin: true
     peerDependencies:
       '@babel/core': '>=7.0.0-beta.0 <8'
-      '@types/jest': ^27.0.0
-      babel-jest: '>=27.0.0 <28'
-      esbuild: ~0.14.0
-      jest: ^27.0.0
-      typescript: '>=3.8 <5.0'
+      '@jest/types': ^29.0.0
+      babel-jest: ^29.0.0
+      esbuild: '*'
+      jest: ^29.0.0
+      typescript: '>=4.3'
     peerDependenciesMeta:
       '@babel/core':
         optional: true
-      '@types/jest':
+      '@jest/types':
         optional: true
       babel-jest:
         optional: true
       esbuild:
         optional: true
     dependencies:
-      '@types/jest': 27.0.3
       bs-logger: 0.2.6
       esbuild: 0.14.35
       fast-json-stable-stringify: 2.1.0
-      jest: 27.4.4
-      jest-util: 27.4.2
-      json5: 2.2.0
+      jest: 29.3.1_@types+node@16.11.12
+      jest-util: 29.3.1
+      json5: 2.2.1
       lodash.memoize: 4.1.2
       make-error: 1.3.6
-      semver: 7.3.5
+      semver: 7.3.8
       typescript: 4.8.2
-      yargs-parser: 20.2.9
+      yargs-parser: 21.1.1
     dev: true
 
   /tslib/1.14.1:
@@ -7156,7 +7217,7 @@ packages:
     dev: true
 
   /type-check/0.3.2:
-    resolution: {integrity: sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=}
+    resolution: {integrity: sha512-ZCmOJdvOWDBYJlzAoFkC+Q0+bUyEOS1ltgp1MGU03fqHG+dbi9tBFU2Rd9QKiDZFAYrhPh2JUf7rZRIuHRKtOg==}
     engines: {node: '>= 0.8.0'}
     dependencies:
       prelude-ls: 1.1.2
@@ -7203,12 +7264,6 @@ packages:
     resolution: {integrity: sha512-vjMKrfSoUDN8/Vnqitw2FmstOfuJ73G6CrSEKnf11A6RmasVxHqfeBcnTb6RsL4pTMuV5Zsv9IiHRphMZyckUw==}
     dev: true
 
-  /typedarray-to-buffer/3.1.5:
-    resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==}
-    dependencies:
-      is-typedarray: 1.0.0
-    dev: true
-
   /typedarray/0.0.6:
     resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
     dev: true
@@ -7242,8 +7297,8 @@ packages:
       which-boxed-primitive: 1.0.2
     dev: true
 
-  /unbzip2-stream/1.3.3:
-    resolution: {integrity: sha512-fUlAF7U9Ah1Q6EieQ4x4zLNejrRvDWUYmxXUpN3uziFYCHapjWFaCAnreY9bGgxzaMCFAPPpYNng57CypwJVhg==}
+  /unbzip2-stream/1.4.3:
+    resolution: {integrity: sha512-mlExGW4w71ebDJviH16lQLtZS32VKqsSfk80GCfUlwT/4/hNRFsoscrF/c++9xinkMzECL1uL9DDwXqFWkruPg==}
     dependencies:
       buffer: 5.7.1
       through: 2.3.8
@@ -7254,6 +7309,11 @@ packages:
     engines: {node: '>= 4.0.0'}
     dev: true
 
+  /universalify/0.2.0:
+    resolution: {integrity: sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==}
+    engines: {node: '>= 4.0.0'}
+    dev: true
+
   /universalify/2.0.0:
     resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
     engines: {node: '>= 10.0.0'}
@@ -7272,6 +7332,13 @@ packages:
       punycode: 2.1.1
     dev: true
 
+  /url-parse/1.5.10:
+    resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==}
+    dependencies:
+      querystringify: 2.2.0
+      requires-port: 1.0.0
+    dev: true
+
   /util-deprecate/1.0.2:
     resolution: {integrity: sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=}
 
@@ -7285,13 +7352,13 @@ packages:
     resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==}
     dev: true
 
-  /v8-to-istanbul/8.1.0:
-    resolution: {integrity: sha512-/PRhfd8aTNp9Ggr62HPzXg2XasNFGy5PBt0Rp04du7/8GNNSgxFL6WBTkgMKSL9bFjH+8kKEG3f37FmxiTqUUA==}
+  /v8-to-istanbul/9.0.1:
+    resolution: {integrity: sha512-74Y4LqY74kLE6IFyIjPtkSTWzUZmj8tdHT9Ii/26dvQ6K9Dl2NbEfj0XgU2sHCtKgt5VupqhlO/5aWuqS+IY1w==}
     engines: {node: '>=10.12.0'}
     dependencies:
+      '@jridgewell/trace-mapping': 0.3.17
       '@types/istanbul-lib-coverage': 2.0.3
       convert-source-map: 1.8.0
-      source-map: 0.7.3
     dev: true
 
   /validate-npm-package-license/3.0.4:
@@ -7375,17 +7442,11 @@ packages:
     engines: {node: '>=0.10.0'}
     dev: true
 
-  /w3c-hr-time/1.0.2:
-    resolution: {integrity: sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==}
-    dependencies:
-      browser-process-hrtime: 1.0.0
-    dev: true
-
-  /w3c-xmlserializer/2.0.0:
-    resolution: {integrity: sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==}
-    engines: {node: '>=10'}
+  /w3c-xmlserializer/3.0.0:
+    resolution: {integrity: sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg==}
+    engines: {node: '>=12'}
     dependencies:
-      xml-name-validator: 3.0.0
+      xml-name-validator: 4.0.0
     dev: true
 
   /walker/1.0.8:
@@ -7394,33 +7455,40 @@ packages:
       makeerror: 1.0.12
     dev: true
 
-  /webidl-conversions/5.0.0:
-    resolution: {integrity: sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==}
-    engines: {node: '>=8'}
+  /webidl-conversions/3.0.1:
+    resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==}
     dev: true
 
-  /webidl-conversions/6.1.0:
-    resolution: {integrity: sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==}
-    engines: {node: '>=10.4'}
+  /webidl-conversions/7.0.0:
+    resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==}
+    engines: {node: '>=12'}
     dev: true
 
-  /whatwg-encoding/1.0.5:
-    resolution: {integrity: sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==}
+  /whatwg-encoding/2.0.0:
+    resolution: {integrity: sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg==}
+    engines: {node: '>=12'}
     dependencies:
-      iconv-lite: 0.4.24
+      iconv-lite: 0.6.3
     dev: true
 
-  /whatwg-mimetype/2.3.0:
-    resolution: {integrity: sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==}
+  /whatwg-mimetype/3.0.0:
+    resolution: {integrity: sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q==}
+    engines: {node: '>=12'}
     dev: true
 
-  /whatwg-url/8.7.0:
-    resolution: {integrity: sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==}
-    engines: {node: '>=10'}
+  /whatwg-url/11.0.0:
+    resolution: {integrity: sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ==}
+    engines: {node: '>=12'}
     dependencies:
-      lodash: 4.17.21
-      tr46: 2.1.0
-      webidl-conversions: 6.1.0
+      tr46: 3.0.0
+      webidl-conversions: 7.0.0
+    dev: true
+
+  /whatwg-url/5.0.0:
+    resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==}
+    dependencies:
+      tr46: 0.0.3
+      webidl-conversions: 3.0.1
     dev: true
 
   /which-boxed-primitive/1.0.2:
@@ -7496,31 +7564,17 @@ packages:
     resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=}
     dev: true
 
-  /write-file-atomic/3.0.3:
-    resolution: {integrity: sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==}
+  /write-file-atomic/4.0.2:
+    resolution: {integrity: sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==}
+    engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
     dependencies:
       imurmurhash: 0.1.4
-      is-typedarray: 1.0.0
-      signal-exit: 3.0.6
-      typedarray-to-buffer: 3.1.5
+      signal-exit: 3.0.7
     dev: true
 
-  /ws/7.4.6:
-    resolution: {integrity: sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==}
-    engines: {node: '>=8.3.0'}
-    peerDependencies:
-      bufferutil: ^4.0.1
-      utf-8-validate: ^5.0.2
-    peerDependenciesMeta:
-      bufferutil:
-        optional: true
-      utf-8-validate:
-        optional: true
-    dev: true
-
-  /ws/7.5.6:
-    resolution: {integrity: sha512-6GLgCqo2cy2A2rjCNFlxQS6ZljG/coZfZXclldI8FB/1G3CCI36Zd8xy2HrFVACi8tfk5XrgLQEk+P0Tnz9UcA==}
-    engines: {node: '>=8.3.0'}
+  /ws/8.10.0:
+    resolution: {integrity: sha512-+s49uSmZpvtAsd2h37vIPy1RBusaLawVe8of+GyEPsaJTCMpj/2v8NpeK1SHXjBlQ95lQTmQofOJnFiLoaN3yw==}
+    engines: {node: '>=10.0.0'}
     peerDependencies:
       bufferutil: ^4.0.1
       utf-8-validate: ^5.0.2
@@ -7531,8 +7585,9 @@ packages:
         optional: true
     dev: true
 
-  /xml-name-validator/3.0.0:
-    resolution: {integrity: sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==}
+  /xml-name-validator/4.0.0:
+    resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==}
+    engines: {node: '>=12'}
     dev: true
 
   /xmlchars/2.2.0:
@@ -7596,6 +7651,11 @@ packages:
     engines: {node: '>=10'}
     dev: true
 
+  /yargs-parser/21.1.1:
+    resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==}
+    engines: {node: '>=12'}
+    dev: true
+
   /yargs/16.2.0:
     resolution: {integrity: sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==}
     engines: {node: '>=10'}
@@ -7609,6 +7669,19 @@ packages:
       yargs-parser: 20.2.9
     dev: true
 
+  /yargs/17.6.2:
+    resolution: {integrity: sha512-1/9UrdHjDZc0eOU0HxOHoS78C69UD3JRMvzlJ7S79S2nTaWRA/whGCTV8o9e/N/1Va9YIV7Q4sOxD8VV4pCWOw==}
+    engines: {node: '>=12'}
+    dependencies:
+      cliui: 8.0.1
+      escalade: 3.1.1
+      get-caller-file: 2.0.5
+      require-directory: 2.1.1
+      string-width: 4.2.3
+      y18n: 5.0.8
+      yargs-parser: 21.1.1
+    dev: true
+
   /yauzl/2.10.0:
     resolution: {integrity: sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==}
     dependencies:
@@ -7616,6 +7689,11 @@ packages:
       fd-slicer: 1.1.0
     dev: true
 
+  /yocto-queue/0.1.0:
+    resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}
+    engines: {node: '>=10'}
+    dev: true
+
   /z-schema/5.0.4:
     resolution: {integrity: sha512-gm/lx3hDzJNcLwseIeQVm1UcwhWIKpSB4NqH89pTBtFns4k/HDHudsICtvG05Bvw/Mv3jMyk700y5dadueLHdA==}
     engines: {node: '>=8.0.0'}
index 3aa07737b9d7750b00021d63e3262bbe0c214506..aeb5d3f5975d85d543fbdcc51ab279713de976ff 100644 (file)
@@ -9,7 +9,7 @@ import chalk from 'chalk'
 import commonJS from '@rollup/plugin-commonjs'
 import polyfillNode from 'rollup-plugin-polyfill-node'
 import { nodeResolve } from '@rollup/plugin-node-resolve'
-import { terser } from 'rollup-plugin-terser'
+import terser from '@rollup/plugin-terser'
 
 if (!process.env.TARGET) {
   throw new Error('TARGET package must be specified via --environment flag.')