##// END OF EJS Templates
switched back to dojo-typings module...
cin -
r4:fc9f82c082ef v1.0.0-rc2 default
parent child
Show More
@@ -0,0 +1,22
1 Copyright 2017-2019 Implab team
2
3 Redistribution and use in source and binary forms, with or without
4 modification, are permitted provided that the following conditions are met:
5
6 1. Redistributions of source code must retain the above copyright notice, this
7 list of conditions and the following disclaimer.
8
9 2. Redistributions in binary form must reproduce the above copyright notice,
10 this list of conditions and the following disclaimer in the documentation
11 and/or other materials provided with the distribution.
12
13 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
14 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
16 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
17 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
19 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
20 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
21 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
22 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. No newline at end of file
@@ -0,0 +1,3
1 # @implab/djx
2
3 TODO No newline at end of file
@@ -0,0 +1,33
1 import { Constructor } from "@implab/core-amd/interfaces";
2 import { HtmlElementContext } from "./djx/HtmlElementContext";
3 import { WidgetContext } from "./djx/WidgetContext";
4 import { isWidgetConstructor, BuildContext } from "./djx/traits";
5
6 export function createElement<T extends Constructor>(elementType: string | T, ...args: any[]): BuildContext {
7 if (typeof elementType === "string") {
8 const ctx = new HtmlElementContext(elementType);
9 if (args)
10 args.forEach(x => ctx.visitNext(x));
11
12 return ctx;
13 } else if (isWidgetConstructor(elementType)) {
14 const ctx = new WidgetContext(elementType);
15 if (args)
16 args.forEach(x => ctx.visitNext(x));
17
18 return ctx;
19 } else {
20 throw new Error(`The element type '${elementType}' is unsupported`);
21 }
22 }
23
24 export interface EventDetails<T = any> {
25 detail: T;
26 }
27
28 export interface EventSelector {
29 selectorTarget: HTMLElement;
30 target: HTMLElement;
31 }
32
33 export type DojoMouseEvent<T = any> = MouseEvent & EventSelector & EventDetails<T>;
@@ -1,60 +1,62
1 plugins {
1 plugins {
2 id "org.implab.gradle-typescript" version "1.3.1"
2 id "org.implab.gradle-typescript" version "1.3.1"
3 id "ivy-publish"
3 id "ivy-publish"
4 }
4 }
5
5
6 typescript {
6 typescript {
7 compilerOptions {
7 compilerOptions {
8 lib = ["es5", "dom", "scripthost", "es2015.promise", "es2015.symbol", "es2015.iterable"]
8 lib = ["es5", "dom", "scripthost", "es2015.promise", "es2015.symbol", "es2015.iterable"]
9 //listFiles = true
9 //listFiles = true
10 declaration = true
10 declaration = true
11 strict = true
11 strict = true
12 types = []
12 types = []
13 module = "amd"
13 module = "amd"
14 it.target = "es5"
14 it.target = "es5"
15 experimentalDecorators = true
15 experimentalDecorators = true
16 jsx = "react"
16 jsx = "react"
17 jsxFactory = "createElement"
17 jsxFactory = "createElement"
18 moduleResolution = "node"
18 moduleResolution = "node"
19 // dojo-typings are sick
20 skipLibCheck = true
19 // traceResolution = true
21 // traceResolution = true
20 // baseUrl = "./"
22 // baseUrl = "./"
21 // paths = [ "*": [ "$projectDir/src/typings/*" ] ]
23 // paths = [ "*": [ "$projectDir/src/typings/*" ] ]
22 // baseUrl = "$projectDir/src/typings"
24 // baseUrl = "$projectDir/src/typings"
23 // typeRoots = ["$projectDir/src/typings"]
25 // typeRoots = ["$projectDir/src/typings"]
24 }
26 }
25
27
26 tscCmd = "$projectDir/node_modules/.bin/tsc"
28 tscCmd = "$projectDir/node_modules/.bin/tsc"
27 tsLintCmd = "$projectDir/node_modules/.bin/tslint"
29 tsLintCmd = "$projectDir/node_modules/.bin/tslint"
28 esLintCmd = "$projectDir/node_modules/.bin/eslint"
30 esLintCmd = "$projectDir/node_modules/.bin/eslint"
29 }
31 }
30
32
31 configureTsMain {
33 configureTsMain {
32 compilerOptions {
34 compilerOptions {
33 types = ["requirejs"]
35 types = ["requirejs", "dojo-typings"]
34 }
36 }
35 }
37 }
36
38
37 npmPackMeta {
39 npmPackMeta {
38 meta {
40 meta {
39 name = "@$npmScope/$project.name"
41 name = "@$npmScope/$project.name"
40 }
42 }
41 }
43 }
42
44
43 task npmPackTypings(type: Copy) {
45 task npmPackTypings(type: Copy) {
44 dependsOn sources.main.output
46 dependsOn sources.main.output
45
47
46 npmPack.dependsOn it
48 npmPack.dependsOn it
47
49
48 from sources.main.output.typingsDir
50 from sources.main.output.typingsDir
49 into npm.packageDir
51 into npm.packageDir
50 }
52 }
51
53
52 task printVersion {
54 task printVersion {
53 doLast {
55 doLast {
54 println "packageName: ${npmPackMeta.metadata.get().name}";
56 println "packageName: ${npmPackMeta.metadata.get().name}";
55 println "version: $version";
57 println "version: $version";
56 println "target: $typescript.compilerOptions.target";
58 println "target: $typescript.compilerOptions.target";
57 println "module: $typescript.compilerOptions.module";
59 println "module: $typescript.compilerOptions.module";
58 println "symbols: $symbols";
60 println "symbols: $symbols";
59 }
61 }
60 } No newline at end of file
62 }
@@ -1,1207 +1,1208
1 {
1 {
2 "name": "@implab/djx",
2 "name": "@implab/djx",
3 "version": "0.0.1-dev",
3 "version": "0.0.1-dev",
4 "lockfileVersion": 1,
4 "lockfileVersion": 1,
5 "requires": true,
5 "requires": true,
6 "dependencies": {
6 "dependencies": {
7 "@babel/code-frame": {
7 "@babel/code-frame": {
8 "version": "7.8.3",
8 "version": "7.8.3",
9 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
9 "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz",
10 "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==",
10 "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==",
11 "dev": true,
11 "dev": true,
12 "requires": {
12 "requires": {
13 "@babel/highlight": "^7.8.3"
13 "@babel/highlight": "^7.8.3"
14 }
14 }
15 },
15 },
16 "@babel/highlight": {
16 "@babel/highlight": {
17 "version": "7.8.3",
17 "version": "7.8.3",
18 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz",
18 "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz",
19 "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==",
19 "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==",
20 "dev": true,
20 "dev": true,
21 "requires": {
21 "requires": {
22 "chalk": "^2.0.0",
22 "chalk": "^2.0.0",
23 "esutils": "^2.0.2",
23 "esutils": "^2.0.2",
24 "js-tokens": "^4.0.0"
24 "js-tokens": "^4.0.0"
25 }
25 }
26 },
26 },
27 "@babel/runtime": {
27 "@babel/runtime": {
28 "version": "7.8.3",
28 "version": "7.8.3",
29 "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.3.tgz",
29 "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.3.tgz",
30 "integrity": "sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==",
30 "integrity": "sha512-fVHx1rzEmwB130VTkLnxR+HmxcTjGzH12LYQcFFoBwakMd3aOMD4OsRN7tGG/UOYE2ektgFrS8uACAoRk1CY0w==",
31 "dev": true,
31 "dev": true,
32 "requires": {
32 "requires": {
33 "regenerator-runtime": "^0.13.2"
33 "regenerator-runtime": "^0.13.2"
34 }
34 }
35 },
35 },
36 "@implab/core-amd": {
36 "@implab/core-amd": {
37 "version": "1.3.2",
37 "version": "1.3.2",
38 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.3.2.tgz",
38 "resolved": "https://registry.npmjs.org/@implab/core-amd/-/core-amd-1.3.2.tgz",
39 "integrity": "sha512-OPx02obqz60FiOzDqEFuPfag/0ugl1tuQouI+52Op0k+fcmuBK4QACJy7o3fzOYvejdjF1DG4aRXuCm6+vgMYQ==",
39 "integrity": "sha512-OPx02obqz60FiOzDqEFuPfag/0ugl1tuQouI+52Op0k+fcmuBK4QACJy7o3fzOYvejdjF1DG4aRXuCm6+vgMYQ==",
40 "dev": true
40 "dev": true
41 },
41 },
42 "@types/chai": {
42 "@types/chai": {
43 "version": "4.1.3",
43 "version": "4.1.3",
44 "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.3.tgz",
44 "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.1.3.tgz",
45 "integrity": "sha512-f5dXGzOJycyzSMdaXVhiBhauL4dYydXwVpavfQ1mVCaGjR56a9QfklXObUxlIY9bGTmCPHEEZ04I16BZ/8w5ww==",
45 "integrity": "sha512-f5dXGzOJycyzSMdaXVhiBhauL4dYydXwVpavfQ1mVCaGjR56a9QfklXObUxlIY9bGTmCPHEEZ04I16BZ/8w5ww==",
46 "dev": true
46 "dev": true
47 },
47 },
48 "@types/dijit": {
49 "version": "file:src/typings/dijit",
50 "dev": true
51 },
52 "@types/dojo": {
53 "version": "file:src/typings/dojo",
54 "dev": true
55 },
56 "@types/requirejs": {
48 "@types/requirejs": {
57 "version": "2.1.31",
49 "version": "2.1.31",
58 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.31.tgz",
50 "resolved": "https://registry.npmjs.org/@types/requirejs/-/requirejs-2.1.31.tgz",
59 "integrity": "sha512-b2soeyuU76rMbcRJ4e0hEl0tbMhFwZeTC0VZnfuWlfGlk6BwWNsev6kFu/twKABPX29wkX84wU2o+cEJoXsiTw==",
51 "integrity": "sha512-b2soeyuU76rMbcRJ4e0hEl0tbMhFwZeTC0VZnfuWlfGlk6BwWNsev6kFu/twKABPX29wkX84wU2o+cEJoXsiTw==",
60 "dev": true
52 "dev": true
61 },
53 },
62 "@types/yaml": {
54 "@types/yaml": {
63 "version": "1.2.0",
55 "version": "1.2.0",
64 "resolved": "https://registry.npmjs.org/@types/yaml/-/yaml-1.2.0.tgz",
56 "resolved": "https://registry.npmjs.org/@types/yaml/-/yaml-1.2.0.tgz",
65 "integrity": "sha512-GW8b9qM+ebgW3/zjzPm0I1NxMvLaz/YKT9Ph6tTb+Fkeyzd9yLTvQ6ciQ2MorTRmb/qXmfjMerRpG4LviixaqQ==",
57 "integrity": "sha512-GW8b9qM+ebgW3/zjzPm0I1NxMvLaz/YKT9Ph6tTb+Fkeyzd9yLTvQ6ciQ2MorTRmb/qXmfjMerRpG4LviixaqQ==",
66 "dev": true
58 "dev": true
67 },
59 },
68 "acorn": {
60 "acorn": {
69 "version": "7.1.0",
61 "version": "7.1.0",
70 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.0.tgz",
62 "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.0.tgz",
71 "integrity": "sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ==",
63 "integrity": "sha512-kL5CuoXA/dgxlBbVrflsflzQ3PAas7RYZB52NOm/6839iVYJgKMJ3cQJD+t2i5+qFa8h3MDpEOJiS64E8JLnSQ==",
72 "dev": true
64 "dev": true
73 },
65 },
74 "acorn-jsx": {
66 "acorn-jsx": {
75 "version": "5.1.0",
67 "version": "5.1.0",
76 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
68 "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.1.0.tgz",
77 "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
69 "integrity": "sha512-tMUqwBWfLFbJbizRmEcWSLw6HnFzfdJs2sOJEOwwtVPMoH/0Ay+E703oZz78VSXZiiDcZrQ5XKjPIUQixhmgVw==",
78 "dev": true
70 "dev": true
79 },
71 },
80 "ajv": {
72 "ajv": {
81 "version": "6.11.0",
73 "version": "6.11.0",
82 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz",
74 "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.11.0.tgz",
83 "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==",
75 "integrity": "sha512-nCprB/0syFYy9fVYU1ox1l2KN8S9I+tziH8D4zdZuLT3N6RMlGSGt5FSTpAiHB/Whv8Qs1cWHma1aMKZyaHRKA==",
84 "dev": true,
76 "dev": true,
85 "requires": {
77 "requires": {
86 "fast-deep-equal": "^3.1.1",
78 "fast-deep-equal": "^3.1.1",
87 "fast-json-stable-stringify": "^2.0.0",
79 "fast-json-stable-stringify": "^2.0.0",
88 "json-schema-traverse": "^0.4.1",
80 "json-schema-traverse": "^0.4.1",
89 "uri-js": "^4.2.2"
81 "uri-js": "^4.2.2"
90 }
82 }
91 },
83 },
92 "ansi-escapes": {
84 "ansi-escapes": {
93 "version": "4.3.0",
85 "version": "4.3.0",
94 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
86 "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.0.tgz",
95 "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
87 "integrity": "sha512-EiYhwo0v255HUL6eDyuLrXEkTi7WwVCLAw+SeOQ7M7qdun1z1pum4DEm/nuqIVbPvi9RPPc9k9LbyBv6H0DwVg==",
96 "dev": true,
88 "dev": true,
97 "requires": {
89 "requires": {
98 "type-fest": "^0.8.1"
90 "type-fest": "^0.8.1"
99 }
91 }
100 },
92 },
101 "ansi-regex": {
93 "ansi-regex": {
102 "version": "5.0.0",
94 "version": "5.0.0",
103 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
95 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
104 "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
96 "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
105 "dev": true
97 "dev": true
106 },
98 },
107 "ansi-styles": {
99 "ansi-styles": {
108 "version": "3.2.1",
100 "version": "3.2.1",
109 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
101 "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
110 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
102 "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
111 "dev": true,
103 "dev": true,
112 "requires": {
104 "requires": {
113 "color-convert": "^1.9.0"
105 "color-convert": "^1.9.0"
114 }
106 }
115 },
107 },
116 "argparse": {
108 "argparse": {
117 "version": "1.0.10",
109 "version": "1.0.10",
118 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
110 "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
119 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
111 "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
120 "dev": true,
112 "dev": true,
121 "requires": {
113 "requires": {
122 "sprintf-js": "~1.0.2"
114 "sprintf-js": "~1.0.2"
123 }
115 }
124 },
116 },
125 "assertion-error": {
117 "assertion-error": {
126 "version": "1.1.0",
118 "version": "1.1.0",
127 "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
119 "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
128 "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
120 "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
129 "dev": true
121 "dev": true
130 },
122 },
131 "astral-regex": {
123 "astral-regex": {
132 "version": "1.0.0",
124 "version": "1.0.0",
133 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
125 "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
134 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
126 "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
135 "dev": true
127 "dev": true
136 },
128 },
137 "balanced-match": {
129 "balanced-match": {
138 "version": "1.0.0",
130 "version": "1.0.0",
139 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
131 "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
140 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
132 "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
141 "dev": true
133 "dev": true
142 },
134 },
143 "brace-expansion": {
135 "brace-expansion": {
144 "version": "1.1.11",
136 "version": "1.1.11",
145 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
137 "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
146 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
138 "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
147 "dev": true,
139 "dev": true,
148 "requires": {
140 "requires": {
149 "balanced-match": "^1.0.0",
141 "balanced-match": "^1.0.0",
150 "concat-map": "0.0.1"
142 "concat-map": "0.0.1"
151 }
143 }
152 },
144 },
153 "builtin-modules": {
145 "builtin-modules": {
154 "version": "1.1.1",
146 "version": "1.1.1",
155 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
147 "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
156 "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
148 "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
157 "dev": true
149 "dev": true
158 },
150 },
159 "callsites": {
151 "callsites": {
160 "version": "3.1.0",
152 "version": "3.1.0",
161 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
153 "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
162 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
154 "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
163 "dev": true
155 "dev": true
164 },
156 },
165 "chai": {
157 "chai": {
166 "version": "4.2.0",
158 "version": "4.2.0",
167 "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz",
159 "resolved": "https://registry.npmjs.org/chai/-/chai-4.2.0.tgz",
168 "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==",
160 "integrity": "sha512-XQU3bhBukrOsQCuwZndwGcCVQHyZi53fQ6Ys1Fym7E4olpIqqZZhhoFJoaKVvV17lWQoXYwgWN2nF5crA8J2jw==",
169 "dev": true,
161 "dev": true,
170 "requires": {
162 "requires": {
171 "assertion-error": "^1.1.0",
163 "assertion-error": "^1.1.0",
172 "check-error": "^1.0.2",
164 "check-error": "^1.0.2",
173 "deep-eql": "^3.0.1",
165 "deep-eql": "^3.0.1",
174 "get-func-name": "^2.0.0",
166 "get-func-name": "^2.0.0",
175 "pathval": "^1.1.0",
167 "pathval": "^1.1.0",
176 "type-detect": "^4.0.5"
168 "type-detect": "^4.0.5"
177 }
169 }
178 },
170 },
179 "chalk": {
171 "chalk": {
180 "version": "2.4.2",
172 "version": "2.4.2",
181 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
173 "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
182 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
174 "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
183 "dev": true,
175 "dev": true,
184 "requires": {
176 "requires": {
185 "ansi-styles": "^3.2.1",
177 "ansi-styles": "^3.2.1",
186 "escape-string-regexp": "^1.0.5",
178 "escape-string-regexp": "^1.0.5",
187 "supports-color": "^5.3.0"
179 "supports-color": "^5.3.0"
188 }
180 }
189 },
181 },
190 "chardet": {
182 "chardet": {
191 "version": "0.7.0",
183 "version": "0.7.0",
192 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
184 "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
193 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
185 "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
194 "dev": true
186 "dev": true
195 },
187 },
196 "check-error": {
188 "check-error": {
197 "version": "1.0.2",
189 "version": "1.0.2",
198 "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz",
190 "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz",
199 "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=",
191 "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=",
200 "dev": true
192 "dev": true
201 },
193 },
202 "cli-cursor": {
194 "cli-cursor": {
203 "version": "3.1.0",
195 "version": "3.1.0",
204 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
196 "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
205 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
197 "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
206 "dev": true,
198 "dev": true,
207 "requires": {
199 "requires": {
208 "restore-cursor": "^3.1.0"
200 "restore-cursor": "^3.1.0"
209 }
201 }
210 },
202 },
211 "cli-width": {
203 "cli-width": {
212 "version": "2.2.0",
204 "version": "2.2.0",
213 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
205 "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
214 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
206 "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
215 "dev": true
207 "dev": true
216 },
208 },
217 "color-convert": {
209 "color-convert": {
218 "version": "1.9.3",
210 "version": "1.9.3",
219 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
211 "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
220 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
212 "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
221 "dev": true,
213 "dev": true,
222 "requires": {
214 "requires": {
223 "color-name": "1.1.3"
215 "color-name": "1.1.3"
224 }
216 }
225 },
217 },
226 "color-name": {
218 "color-name": {
227 "version": "1.1.3",
219 "version": "1.1.3",
228 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
220 "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
229 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
221 "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
230 "dev": true
222 "dev": true
231 },
223 },
232 "commander": {
224 "commander": {
233 "version": "2.20.3",
225 "version": "2.20.3",
234 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
226 "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
235 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
227 "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
236 "dev": true
228 "dev": true
237 },
229 },
238 "concat-map": {
230 "concat-map": {
239 "version": "0.0.1",
231 "version": "0.0.1",
240 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
232 "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
241 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
233 "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
242 "dev": true
234 "dev": true
243 },
235 },
244 "cross-spawn": {
236 "cross-spawn": {
245 "version": "6.0.5",
237 "version": "6.0.5",
246 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
238 "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
247 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
239 "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
248 "dev": true,
240 "dev": true,
249 "requires": {
241 "requires": {
250 "nice-try": "^1.0.4",
242 "nice-try": "^1.0.4",
251 "path-key": "^2.0.1",
243 "path-key": "^2.0.1",
252 "semver": "^5.5.0",
244 "semver": "^5.5.0",
253 "shebang-command": "^1.2.0",
245 "shebang-command": "^1.2.0",
254 "which": "^1.2.9"
246 "which": "^1.2.9"
255 },
247 },
256 "dependencies": {
248 "dependencies": {
257 "semver": {
249 "semver": {
258 "version": "5.7.1",
250 "version": "5.7.1",
259 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
251 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
260 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
252 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
261 "dev": true
253 "dev": true
262 }
254 }
263 }
255 }
264 },
256 },
265 "debug": {
257 "debug": {
266 "version": "4.1.1",
258 "version": "4.1.1",
267 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
259 "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
268 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
260 "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
269 "dev": true,
261 "dev": true,
270 "requires": {
262 "requires": {
271 "ms": "^2.1.1"
263 "ms": "^2.1.1"
272 }
264 }
273 },
265 },
274 "deep-eql": {
266 "deep-eql": {
275 "version": "3.0.1",
267 "version": "3.0.1",
276 "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz",
268 "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz",
277 "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==",
269 "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==",
278 "dev": true,
270 "dev": true,
279 "requires": {
271 "requires": {
280 "type-detect": "^4.0.0"
272 "type-detect": "^4.0.0"
281 }
273 }
282 },
274 },
283 "deep-is": {
275 "deep-is": {
284 "version": "0.1.3",
276 "version": "0.1.3",
285 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
277 "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
286 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
278 "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
287 "dev": true
279 "dev": true
288 },
280 },
289 "diff": {
281 "diff": {
290 "version": "4.0.2",
282 "version": "4.0.2",
291 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
283 "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
292 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
284 "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
293 "dev": true
285 "dev": true
294 },
286 },
295 "doctrine": {
287 "doctrine": {
296 "version": "3.0.0",
288 "version": "3.0.0",
297 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
289 "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
298 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
290 "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
299 "dev": true,
291 "dev": true,
300 "requires": {
292 "requires": {
301 "esutils": "^2.0.2"
293 "esutils": "^2.0.2"
302 }
294 }
303 },
295 },
304 "dojo": {
296 "dojo": {
305 "version": "1.16.0",
297 "version": "1.16.0",
306 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.16.0.tgz",
298 "resolved": "https://registry.npmjs.org/dojo/-/dojo-1.16.0.tgz",
307 "integrity": "sha512-DUiXyoLK6vMF5BPr/qiMLTxDMfiM9qlzN1jxfDsVfuvB/CwhYpNxA/M4mbqKN8PCVGLmccXBJbfmFJPP5+zmzw==",
299 "integrity": "sha512-DUiXyoLK6vMF5BPr/qiMLTxDMfiM9qlzN1jxfDsVfuvB/CwhYpNxA/M4mbqKN8PCVGLmccXBJbfmFJPP5+zmzw==",
308 "dev": true
300 "dev": true
309 },
301 },
302 "dojo-typings": {
303 "version": "1.11.9",
304 "resolved": "https://registry.npmjs.org/dojo-typings/-/dojo-typings-1.11.9.tgz",
305 "integrity": "sha512-mh8w+Mau2Y1QfTEszEAdO7j6ycNhYxF/Ing6nAk1eUg6NxjeT0viVHjICMd9sU3U463vM2G+KfBBK5grk3/Mlw==",
306 "dev": true,
307 "requires": {
308 "@types/chai": "^4.0.4"
309 }
310 },
310 "emoji-regex": {
311 "emoji-regex": {
311 "version": "8.0.0",
312 "version": "8.0.0",
312 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
313 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
313 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
314 "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
314 "dev": true
315 "dev": true
315 },
316 },
316 "escape-string-regexp": {
317 "escape-string-regexp": {
317 "version": "1.0.5",
318 "version": "1.0.5",
318 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
319 "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
319 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
320 "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
320 "dev": true
321 "dev": true
321 },
322 },
322 "eslint": {
323 "eslint": {
323 "version": "6.8.0",
324 "version": "6.8.0",
324 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
325 "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
325 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
326 "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
326 "dev": true,
327 "dev": true,
327 "requires": {
328 "requires": {
328 "@babel/code-frame": "^7.0.0",
329 "@babel/code-frame": "^7.0.0",
329 "ajv": "^6.10.0",
330 "ajv": "^6.10.0",
330 "chalk": "^2.1.0",
331 "chalk": "^2.1.0",
331 "cross-spawn": "^6.0.5",
332 "cross-spawn": "^6.0.5",
332 "debug": "^4.0.1",
333 "debug": "^4.0.1",
333 "doctrine": "^3.0.0",
334 "doctrine": "^3.0.0",
334 "eslint-scope": "^5.0.0",
335 "eslint-scope": "^5.0.0",
335 "eslint-utils": "^1.4.3",
336 "eslint-utils": "^1.4.3",
336 "eslint-visitor-keys": "^1.1.0",
337 "eslint-visitor-keys": "^1.1.0",
337 "espree": "^6.1.2",
338 "espree": "^6.1.2",
338 "esquery": "^1.0.1",
339 "esquery": "^1.0.1",
339 "esutils": "^2.0.2",
340 "esutils": "^2.0.2",
340 "file-entry-cache": "^5.0.1",
341 "file-entry-cache": "^5.0.1",
341 "functional-red-black-tree": "^1.0.1",
342 "functional-red-black-tree": "^1.0.1",
342 "glob-parent": "^5.0.0",
343 "glob-parent": "^5.0.0",
343 "globals": "^12.1.0",
344 "globals": "^12.1.0",
344 "ignore": "^4.0.6",
345 "ignore": "^4.0.6",
345 "import-fresh": "^3.0.0",
346 "import-fresh": "^3.0.0",
346 "imurmurhash": "^0.1.4",
347 "imurmurhash": "^0.1.4",
347 "inquirer": "^7.0.0",
348 "inquirer": "^7.0.0",
348 "is-glob": "^4.0.0",
349 "is-glob": "^4.0.0",
349 "js-yaml": "^3.13.1",
350 "js-yaml": "^3.13.1",
350 "json-stable-stringify-without-jsonify": "^1.0.1",
351 "json-stable-stringify-without-jsonify": "^1.0.1",
351 "levn": "^0.3.0",
352 "levn": "^0.3.0",
352 "lodash": "^4.17.14",
353 "lodash": "^4.17.14",
353 "minimatch": "^3.0.4",
354 "minimatch": "^3.0.4",
354 "mkdirp": "^0.5.1",
355 "mkdirp": "^0.5.1",
355 "natural-compare": "^1.4.0",
356 "natural-compare": "^1.4.0",
356 "optionator": "^0.8.3",
357 "optionator": "^0.8.3",
357 "progress": "^2.0.0",
358 "progress": "^2.0.0",
358 "regexpp": "^2.0.1",
359 "regexpp": "^2.0.1",
359 "semver": "^6.1.2",
360 "semver": "^6.1.2",
360 "strip-ansi": "^5.2.0",
361 "strip-ansi": "^5.2.0",
361 "strip-json-comments": "^3.0.1",
362 "strip-json-comments": "^3.0.1",
362 "table": "^5.2.3",
363 "table": "^5.2.3",
363 "text-table": "^0.2.0",
364 "text-table": "^0.2.0",
364 "v8-compile-cache": "^2.0.3"
365 "v8-compile-cache": "^2.0.3"
365 }
366 }
366 },
367 },
367 "eslint-scope": {
368 "eslint-scope": {
368 "version": "5.0.0",
369 "version": "5.0.0",
369 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
370 "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz",
370 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
371 "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==",
371 "dev": true,
372 "dev": true,
372 "requires": {
373 "requires": {
373 "esrecurse": "^4.1.0",
374 "esrecurse": "^4.1.0",
374 "estraverse": "^4.1.1"
375 "estraverse": "^4.1.1"
375 }
376 }
376 },
377 },
377 "eslint-utils": {
378 "eslint-utils": {
378 "version": "1.4.3",
379 "version": "1.4.3",
379 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
380 "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
380 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
381 "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
381 "dev": true,
382 "dev": true,
382 "requires": {
383 "requires": {
383 "eslint-visitor-keys": "^1.1.0"
384 "eslint-visitor-keys": "^1.1.0"
384 }
385 }
385 },
386 },
386 "eslint-visitor-keys": {
387 "eslint-visitor-keys": {
387 "version": "1.1.0",
388 "version": "1.1.0",
388 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
389 "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz",
389 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
390 "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==",
390 "dev": true
391 "dev": true
391 },
392 },
392 "espree": {
393 "espree": {
393 "version": "6.1.2",
394 "version": "6.1.2",
394 "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
395 "resolved": "https://registry.npmjs.org/espree/-/espree-6.1.2.tgz",
395 "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
396 "integrity": "sha512-2iUPuuPP+yW1PZaMSDM9eyVf8D5P0Hi8h83YtZ5bPc/zHYjII5khoixIUTMO794NOY8F/ThF1Bo8ncZILarUTA==",
396 "dev": true,
397 "dev": true,
397 "requires": {
398 "requires": {
398 "acorn": "^7.1.0",
399 "acorn": "^7.1.0",
399 "acorn-jsx": "^5.1.0",
400 "acorn-jsx": "^5.1.0",
400 "eslint-visitor-keys": "^1.1.0"
401 "eslint-visitor-keys": "^1.1.0"
401 }
402 }
402 },
403 },
403 "esprima": {
404 "esprima": {
404 "version": "4.0.1",
405 "version": "4.0.1",
405 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
406 "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
406 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
407 "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
407 "dev": true
408 "dev": true
408 },
409 },
409 "esquery": {
410 "esquery": {
410 "version": "1.0.1",
411 "version": "1.0.1",
411 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
412 "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
412 "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
413 "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
413 "dev": true,
414 "dev": true,
414 "requires": {
415 "requires": {
415 "estraverse": "^4.0.0"
416 "estraverse": "^4.0.0"
416 }
417 }
417 },
418 },
418 "esrecurse": {
419 "esrecurse": {
419 "version": "4.2.1",
420 "version": "4.2.1",
420 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
421 "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
421 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
422 "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
422 "dev": true,
423 "dev": true,
423 "requires": {
424 "requires": {
424 "estraverse": "^4.1.0"
425 "estraverse": "^4.1.0"
425 }
426 }
426 },
427 },
427 "estraverse": {
428 "estraverse": {
428 "version": "4.3.0",
429 "version": "4.3.0",
429 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
430 "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
430 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
431 "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
431 "dev": true
432 "dev": true
432 },
433 },
433 "esutils": {
434 "esutils": {
434 "version": "2.0.3",
435 "version": "2.0.3",
435 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
436 "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
436 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
437 "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
437 "dev": true
438 "dev": true
438 },
439 },
439 "external-editor": {
440 "external-editor": {
440 "version": "3.1.0",
441 "version": "3.1.0",
441 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
442 "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
442 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
443 "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
443 "dev": true,
444 "dev": true,
444 "requires": {
445 "requires": {
445 "chardet": "^0.7.0",
446 "chardet": "^0.7.0",
446 "iconv-lite": "^0.4.24",
447 "iconv-lite": "^0.4.24",
447 "tmp": "^0.0.33"
448 "tmp": "^0.0.33"
448 }
449 }
449 },
450 },
450 "fast-deep-equal": {
451 "fast-deep-equal": {
451 "version": "3.1.1",
452 "version": "3.1.1",
452 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
453 "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz",
453 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
454 "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==",
454 "dev": true
455 "dev": true
455 },
456 },
456 "fast-json-stable-stringify": {
457 "fast-json-stable-stringify": {
457 "version": "2.1.0",
458 "version": "2.1.0",
458 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
459 "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
459 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
460 "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
460 "dev": true
461 "dev": true
461 },
462 },
462 "fast-levenshtein": {
463 "fast-levenshtein": {
463 "version": "2.0.6",
464 "version": "2.0.6",
464 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
465 "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
465 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
466 "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
466 "dev": true
467 "dev": true
467 },
468 },
468 "figures": {
469 "figures": {
469 "version": "3.1.0",
470 "version": "3.1.0",
470 "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
471 "resolved": "https://registry.npmjs.org/figures/-/figures-3.1.0.tgz",
471 "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
472 "integrity": "sha512-ravh8VRXqHuMvZt/d8GblBeqDMkdJMBdv/2KntFH+ra5MXkO7nxNKpzQ3n6QD/2da1kH0aWmNISdvhM7gl2gVg==",
472 "dev": true,
473 "dev": true,
473 "requires": {
474 "requires": {
474 "escape-string-regexp": "^1.0.5"
475 "escape-string-regexp": "^1.0.5"
475 }
476 }
476 },
477 },
477 "file-entry-cache": {
478 "file-entry-cache": {
478 "version": "5.0.1",
479 "version": "5.0.1",
479 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
480 "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
480 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
481 "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
481 "dev": true,
482 "dev": true,
482 "requires": {
483 "requires": {
483 "flat-cache": "^2.0.1"
484 "flat-cache": "^2.0.1"
484 }
485 }
485 },
486 },
486 "flat-cache": {
487 "flat-cache": {
487 "version": "2.0.1",
488 "version": "2.0.1",
488 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
489 "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
489 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
490 "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
490 "dev": true,
491 "dev": true,
491 "requires": {
492 "requires": {
492 "flatted": "^2.0.0",
493 "flatted": "^2.0.0",
493 "rimraf": "2.6.3",
494 "rimraf": "2.6.3",
494 "write": "1.0.3"
495 "write": "1.0.3"
495 }
496 }
496 },
497 },
497 "flatted": {
498 "flatted": {
498 "version": "2.0.1",
499 "version": "2.0.1",
499 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
500 "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz",
500 "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
501 "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==",
501 "dev": true
502 "dev": true
502 },
503 },
503 "fs.realpath": {
504 "fs.realpath": {
504 "version": "1.0.0",
505 "version": "1.0.0",
505 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
506 "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
506 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
507 "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
507 "dev": true
508 "dev": true
508 },
509 },
509 "functional-red-black-tree": {
510 "functional-red-black-tree": {
510 "version": "1.0.1",
511 "version": "1.0.1",
511 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
512 "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
512 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
513 "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
513 "dev": true
514 "dev": true
514 },
515 },
515 "get-func-name": {
516 "get-func-name": {
516 "version": "2.0.0",
517 "version": "2.0.0",
517 "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
518 "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz",
518 "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
519 "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=",
519 "dev": true
520 "dev": true
520 },
521 },
521 "glob": {
522 "glob": {
522 "version": "7.1.6",
523 "version": "7.1.6",
523 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
524 "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
524 "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
525 "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
525 "dev": true,
526 "dev": true,
526 "requires": {
527 "requires": {
527 "fs.realpath": "^1.0.0",
528 "fs.realpath": "^1.0.0",
528 "inflight": "^1.0.4",
529 "inflight": "^1.0.4",
529 "inherits": "2",
530 "inherits": "2",
530 "minimatch": "^3.0.4",
531 "minimatch": "^3.0.4",
531 "once": "^1.3.0",
532 "once": "^1.3.0",
532 "path-is-absolute": "^1.0.0"
533 "path-is-absolute": "^1.0.0"
533 }
534 }
534 },
535 },
535 "glob-parent": {
536 "glob-parent": {
536 "version": "5.1.0",
537 "version": "5.1.0",
537 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz",
538 "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz",
538 "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==",
539 "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==",
539 "dev": true,
540 "dev": true,
540 "requires": {
541 "requires": {
541 "is-glob": "^4.0.1"
542 "is-glob": "^4.0.1"
542 }
543 }
543 },
544 },
544 "globals": {
545 "globals": {
545 "version": "12.3.0",
546 "version": "12.3.0",
546 "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
547 "resolved": "https://registry.npmjs.org/globals/-/globals-12.3.0.tgz",
547 "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
548 "integrity": "sha512-wAfjdLgFsPZsklLJvOBUBmzYE8/CwhEqSBEMRXA3qxIiNtyqvjYurAtIfDh6chlEPUfmTY3MnZh5Hfh4q0UlIw==",
548 "dev": true,
549 "dev": true,
549 "requires": {
550 "requires": {
550 "type-fest": "^0.8.1"
551 "type-fest": "^0.8.1"
551 }
552 }
552 },
553 },
553 "has-flag": {
554 "has-flag": {
554 "version": "3.0.0",
555 "version": "3.0.0",
555 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
556 "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
556 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
557 "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
557 "dev": true
558 "dev": true
558 },
559 },
559 "iconv-lite": {
560 "iconv-lite": {
560 "version": "0.4.24",
561 "version": "0.4.24",
561 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
562 "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
562 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
563 "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
563 "dev": true,
564 "dev": true,
564 "requires": {
565 "requires": {
565 "safer-buffer": ">= 2.1.2 < 3"
566 "safer-buffer": ">= 2.1.2 < 3"
566 }
567 }
567 },
568 },
568 "ignore": {
569 "ignore": {
569 "version": "4.0.6",
570 "version": "4.0.6",
570 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
571 "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
571 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
572 "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
572 "dev": true
573 "dev": true
573 },
574 },
574 "import-fresh": {
575 "import-fresh": {
575 "version": "3.2.1",
576 "version": "3.2.1",
576 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
577 "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
577 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
578 "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
578 "dev": true,
579 "dev": true,
579 "requires": {
580 "requires": {
580 "parent-module": "^1.0.0",
581 "parent-module": "^1.0.0",
581 "resolve-from": "^4.0.0"
582 "resolve-from": "^4.0.0"
582 }
583 }
583 },
584 },
584 "imurmurhash": {
585 "imurmurhash": {
585 "version": "0.1.4",
586 "version": "0.1.4",
586 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
587 "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
587 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
588 "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
588 "dev": true
589 "dev": true
589 },
590 },
590 "inflight": {
591 "inflight": {
591 "version": "1.0.6",
592 "version": "1.0.6",
592 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
593 "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
593 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
594 "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
594 "dev": true,
595 "dev": true,
595 "requires": {
596 "requires": {
596 "once": "^1.3.0",
597 "once": "^1.3.0",
597 "wrappy": "1"
598 "wrappy": "1"
598 }
599 }
599 },
600 },
600 "inherits": {
601 "inherits": {
601 "version": "2.0.4",
602 "version": "2.0.4",
602 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
603 "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
603 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
604 "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
604 "dev": true
605 "dev": true
605 },
606 },
606 "inquirer": {
607 "inquirer": {
607 "version": "7.0.3",
608 "version": "7.0.3",
608 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
609 "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.3.tgz",
609 "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
610 "integrity": "sha512-+OiOVeVydu4hnCGLCSX+wedovR/Yzskv9BFqUNNKq9uU2qg7LCcCo3R86S2E7WLo0y/x2pnEZfZe1CoYnORUAw==",
610 "dev": true,
611 "dev": true,
611 "requires": {
612 "requires": {
612 "ansi-escapes": "^4.2.1",
613 "ansi-escapes": "^4.2.1",
613 "chalk": "^2.4.2",
614 "chalk": "^2.4.2",
614 "cli-cursor": "^3.1.0",
615 "cli-cursor": "^3.1.0",
615 "cli-width": "^2.0.0",
616 "cli-width": "^2.0.0",
616 "external-editor": "^3.0.3",
617 "external-editor": "^3.0.3",
617 "figures": "^3.0.0",
618 "figures": "^3.0.0",
618 "lodash": "^4.17.15",
619 "lodash": "^4.17.15",
619 "mute-stream": "0.0.8",
620 "mute-stream": "0.0.8",
620 "run-async": "^2.2.0",
621 "run-async": "^2.2.0",
621 "rxjs": "^6.5.3",
622 "rxjs": "^6.5.3",
622 "string-width": "^4.1.0",
623 "string-width": "^4.1.0",
623 "strip-ansi": "^5.1.0",
624 "strip-ansi": "^5.1.0",
624 "through": "^2.3.6"
625 "through": "^2.3.6"
625 }
626 }
626 },
627 },
627 "is-extglob": {
628 "is-extglob": {
628 "version": "2.1.1",
629 "version": "2.1.1",
629 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
630 "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
630 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
631 "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
631 "dev": true
632 "dev": true
632 },
633 },
633 "is-fullwidth-code-point": {
634 "is-fullwidth-code-point": {
634 "version": "3.0.0",
635 "version": "3.0.0",
635 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
636 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
636 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
637 "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
637 "dev": true
638 "dev": true
638 },
639 },
639 "is-glob": {
640 "is-glob": {
640 "version": "4.0.1",
641 "version": "4.0.1",
641 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
642 "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
642 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
643 "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
643 "dev": true,
644 "dev": true,
644 "requires": {
645 "requires": {
645 "is-extglob": "^2.1.1"
646 "is-extglob": "^2.1.1"
646 }
647 }
647 },
648 },
648 "is-promise": {
649 "is-promise": {
649 "version": "2.1.0",
650 "version": "2.1.0",
650 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
651 "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz",
651 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
652 "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=",
652 "dev": true
653 "dev": true
653 },
654 },
654 "isexe": {
655 "isexe": {
655 "version": "2.0.0",
656 "version": "2.0.0",
656 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
657 "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
657 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
658 "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
658 "dev": true
659 "dev": true
659 },
660 },
660 "js-tokens": {
661 "js-tokens": {
661 "version": "4.0.0",
662 "version": "4.0.0",
662 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
663 "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
663 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
664 "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
664 "dev": true
665 "dev": true
665 },
666 },
666 "js-yaml": {
667 "js-yaml": {
667 "version": "3.13.1",
668 "version": "3.13.1",
668 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
669 "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
669 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
670 "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
670 "dev": true,
671 "dev": true,
671 "requires": {
672 "requires": {
672 "argparse": "^1.0.7",
673 "argparse": "^1.0.7",
673 "esprima": "^4.0.0"
674 "esprima": "^4.0.0"
674 }
675 }
675 },
676 },
676 "json-schema-traverse": {
677 "json-schema-traverse": {
677 "version": "0.4.1",
678 "version": "0.4.1",
678 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
679 "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
679 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
680 "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
680 "dev": true
681 "dev": true
681 },
682 },
682 "json-stable-stringify-without-jsonify": {
683 "json-stable-stringify-without-jsonify": {
683 "version": "1.0.1",
684 "version": "1.0.1",
684 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
685 "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
685 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
686 "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
686 "dev": true
687 "dev": true
687 },
688 },
688 "levn": {
689 "levn": {
689 "version": "0.3.0",
690 "version": "0.3.0",
690 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
691 "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
691 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
692 "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
692 "dev": true,
693 "dev": true,
693 "requires": {
694 "requires": {
694 "prelude-ls": "~1.1.2",
695 "prelude-ls": "~1.1.2",
695 "type-check": "~0.3.2"
696 "type-check": "~0.3.2"
696 }
697 }
697 },
698 },
698 "lodash": {
699 "lodash": {
699 "version": "4.17.15",
700 "version": "4.17.15",
700 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
701 "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz",
701 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
702 "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==",
702 "dev": true
703 "dev": true
703 },
704 },
704 "mimic-fn": {
705 "mimic-fn": {
705 "version": "2.1.0",
706 "version": "2.1.0",
706 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
707 "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
707 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
708 "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
708 "dev": true
709 "dev": true
709 },
710 },
710 "minimatch": {
711 "minimatch": {
711 "version": "3.0.4",
712 "version": "3.0.4",
712 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
713 "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
713 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
714 "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
714 "dev": true,
715 "dev": true,
715 "requires": {
716 "requires": {
716 "brace-expansion": "^1.1.7"
717 "brace-expansion": "^1.1.7"
717 }
718 }
718 },
719 },
719 "minimist": {
720 "minimist": {
720 "version": "0.0.8",
721 "version": "0.0.8",
721 "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
722 "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
722 "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
723 "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
723 "dev": true
724 "dev": true
724 },
725 },
725 "mkdirp": {
726 "mkdirp": {
726 "version": "0.5.1",
727 "version": "0.5.1",
727 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
728 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
728 "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
729 "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
729 "dev": true,
730 "dev": true,
730 "requires": {
731 "requires": {
731 "minimist": "0.0.8"
732 "minimist": "0.0.8"
732 }
733 }
733 },
734 },
734 "ms": {
735 "ms": {
735 "version": "2.1.2",
736 "version": "2.1.2",
736 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
737 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
737 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
738 "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
738 "dev": true
739 "dev": true
739 },
740 },
740 "mute-stream": {
741 "mute-stream": {
741 "version": "0.0.8",
742 "version": "0.0.8",
742 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
743 "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
743 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
744 "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
744 "dev": true
745 "dev": true
745 },
746 },
746 "natural-compare": {
747 "natural-compare": {
747 "version": "1.4.0",
748 "version": "1.4.0",
748 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
749 "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
749 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
750 "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
750 "dev": true
751 "dev": true
751 },
752 },
752 "nice-try": {
753 "nice-try": {
753 "version": "1.0.5",
754 "version": "1.0.5",
754 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
755 "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
755 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
756 "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
756 "dev": true
757 "dev": true
757 },
758 },
758 "once": {
759 "once": {
759 "version": "1.4.0",
760 "version": "1.4.0",
760 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
761 "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
761 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
762 "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
762 "dev": true,
763 "dev": true,
763 "requires": {
764 "requires": {
764 "wrappy": "1"
765 "wrappy": "1"
765 }
766 }
766 },
767 },
767 "onetime": {
768 "onetime": {
768 "version": "5.1.0",
769 "version": "5.1.0",
769 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
770 "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
770 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
771 "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
771 "dev": true,
772 "dev": true,
772 "requires": {
773 "requires": {
773 "mimic-fn": "^2.1.0"
774 "mimic-fn": "^2.1.0"
774 }
775 }
775 },
776 },
776 "optionator": {
777 "optionator": {
777 "version": "0.8.3",
778 "version": "0.8.3",
778 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
779 "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
779 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
780 "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
780 "dev": true,
781 "dev": true,
781 "requires": {
782 "requires": {
782 "deep-is": "~0.1.3",
783 "deep-is": "~0.1.3",
783 "fast-levenshtein": "~2.0.6",
784 "fast-levenshtein": "~2.0.6",
784 "levn": "~0.3.0",
785 "levn": "~0.3.0",
785 "prelude-ls": "~1.1.2",
786 "prelude-ls": "~1.1.2",
786 "type-check": "~0.3.2",
787 "type-check": "~0.3.2",
787 "word-wrap": "~1.2.3"
788 "word-wrap": "~1.2.3"
788 }
789 }
789 },
790 },
790 "os-tmpdir": {
791 "os-tmpdir": {
791 "version": "1.0.2",
792 "version": "1.0.2",
792 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
793 "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
793 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
794 "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
794 "dev": true
795 "dev": true
795 },
796 },
796 "parent-module": {
797 "parent-module": {
797 "version": "1.0.1",
798 "version": "1.0.1",
798 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
799 "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
799 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
800 "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
800 "dev": true,
801 "dev": true,
801 "requires": {
802 "requires": {
802 "callsites": "^3.0.0"
803 "callsites": "^3.0.0"
803 }
804 }
804 },
805 },
805 "path-is-absolute": {
806 "path-is-absolute": {
806 "version": "1.0.1",
807 "version": "1.0.1",
807 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
808 "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
808 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
809 "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
809 "dev": true
810 "dev": true
810 },
811 },
811 "path-key": {
812 "path-key": {
812 "version": "2.0.1",
813 "version": "2.0.1",
813 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
814 "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
814 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
815 "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
815 "dev": true
816 "dev": true
816 },
817 },
817 "path-parse": {
818 "path-parse": {
818 "version": "1.0.6",
819 "version": "1.0.6",
819 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
820 "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
820 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
821 "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
821 "dev": true
822 "dev": true
822 },
823 },
823 "pathval": {
824 "pathval": {
824 "version": "1.1.0",
825 "version": "1.1.0",
825 "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz",
826 "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz",
826 "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=",
827 "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=",
827 "dev": true
828 "dev": true
828 },
829 },
829 "prelude-ls": {
830 "prelude-ls": {
830 "version": "1.1.2",
831 "version": "1.1.2",
831 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
832 "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
832 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
833 "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
833 "dev": true
834 "dev": true
834 },
835 },
835 "progress": {
836 "progress": {
836 "version": "2.0.3",
837 "version": "2.0.3",
837 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
838 "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
838 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
839 "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
839 "dev": true
840 "dev": true
840 },
841 },
841 "punycode": {
842 "punycode": {
842 "version": "2.1.1",
843 "version": "2.1.1",
843 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
844 "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
844 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
845 "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
845 "dev": true
846 "dev": true
846 },
847 },
847 "regenerator-runtime": {
848 "regenerator-runtime": {
848 "version": "0.13.3",
849 "version": "0.13.3",
849 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
850 "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.3.tgz",
850 "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
851 "integrity": "sha512-naKIZz2GQ8JWh///G7L3X6LaQUAMp2lvb1rvwwsURe/VXwD6VMfr+/1NuNw3ag8v2kY1aQ/go5SNn79O9JU7yw==",
851 "dev": true
852 "dev": true
852 },
853 },
853 "regexpp": {
854 "regexpp": {
854 "version": "2.0.1",
855 "version": "2.0.1",
855 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
856 "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
856 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
857 "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
857 "dev": true
858 "dev": true
858 },
859 },
859 "resolve": {
860 "resolve": {
860 "version": "1.15.0",
861 "version": "1.15.0",
861 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.0.tgz",
862 "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.0.tgz",
862 "integrity": "sha512-+hTmAldEGE80U2wJJDC1lebb5jWqvTYAfm3YZ1ckk1gBr0MnCqUKlwK1e+anaFljIl+F5tR5IoZcm4ZDA1zMQw==",
863 "integrity": "sha512-+hTmAldEGE80U2wJJDC1lebb5jWqvTYAfm3YZ1ckk1gBr0MnCqUKlwK1e+anaFljIl+F5tR5IoZcm4ZDA1zMQw==",
863 "dev": true,
864 "dev": true,
864 "requires": {
865 "requires": {
865 "path-parse": "^1.0.6"
866 "path-parse": "^1.0.6"
866 }
867 }
867 },
868 },
868 "resolve-from": {
869 "resolve-from": {
869 "version": "4.0.0",
870 "version": "4.0.0",
870 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
871 "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
871 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
872 "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
872 "dev": true
873 "dev": true
873 },
874 },
874 "restore-cursor": {
875 "restore-cursor": {
875 "version": "3.1.0",
876 "version": "3.1.0",
876 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
877 "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
877 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
878 "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
878 "dev": true,
879 "dev": true,
879 "requires": {
880 "requires": {
880 "onetime": "^5.1.0",
881 "onetime": "^5.1.0",
881 "signal-exit": "^3.0.2"
882 "signal-exit": "^3.0.2"
882 }
883 }
883 },
884 },
884 "rimraf": {
885 "rimraf": {
885 "version": "2.6.3",
886 "version": "2.6.3",
886 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
887 "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
887 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
888 "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
888 "dev": true,
889 "dev": true,
889 "requires": {
890 "requires": {
890 "glob": "^7.1.3"
891 "glob": "^7.1.3"
891 }
892 }
892 },
893 },
893 "run-async": {
894 "run-async": {
894 "version": "2.3.0",
895 "version": "2.3.0",
895 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
896 "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz",
896 "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
897 "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=",
897 "dev": true,
898 "dev": true,
898 "requires": {
899 "requires": {
899 "is-promise": "^2.1.0"
900 "is-promise": "^2.1.0"
900 }
901 }
901 },
902 },
902 "rxjs": {
903 "rxjs": {
903 "version": "6.5.4",
904 "version": "6.5.4",
904 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
905 "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz",
905 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
906 "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==",
906 "dev": true,
907 "dev": true,
907 "requires": {
908 "requires": {
908 "tslib": "^1.9.0"
909 "tslib": "^1.9.0"
909 }
910 }
910 },
911 },
911 "safer-buffer": {
912 "safer-buffer": {
912 "version": "2.1.2",
913 "version": "2.1.2",
913 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
914 "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
914 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
915 "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
915 "dev": true
916 "dev": true
916 },
917 },
917 "semver": {
918 "semver": {
918 "version": "6.3.0",
919 "version": "6.3.0",
919 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
920 "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
920 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
921 "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
921 "dev": true
922 "dev": true
922 },
923 },
923 "shebang-command": {
924 "shebang-command": {
924 "version": "1.2.0",
925 "version": "1.2.0",
925 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
926 "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
926 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
927 "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
927 "dev": true,
928 "dev": true,
928 "requires": {
929 "requires": {
929 "shebang-regex": "^1.0.0"
930 "shebang-regex": "^1.0.0"
930 }
931 }
931 },
932 },
932 "shebang-regex": {
933 "shebang-regex": {
933 "version": "1.0.0",
934 "version": "1.0.0",
934 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
935 "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
935 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
936 "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
936 "dev": true
937 "dev": true
937 },
938 },
938 "signal-exit": {
939 "signal-exit": {
939 "version": "3.0.2",
940 "version": "3.0.2",
940 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
941 "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz",
941 "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
942 "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=",
942 "dev": true
943 "dev": true
943 },
944 },
944 "slice-ansi": {
945 "slice-ansi": {
945 "version": "2.1.0",
946 "version": "2.1.0",
946 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
947 "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
947 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
948 "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
948 "dev": true,
949 "dev": true,
949 "requires": {
950 "requires": {
950 "ansi-styles": "^3.2.0",
951 "ansi-styles": "^3.2.0",
951 "astral-regex": "^1.0.0",
952 "astral-regex": "^1.0.0",
952 "is-fullwidth-code-point": "^2.0.0"
953 "is-fullwidth-code-point": "^2.0.0"
953 },
954 },
954 "dependencies": {
955 "dependencies": {
955 "is-fullwidth-code-point": {
956 "is-fullwidth-code-point": {
956 "version": "2.0.0",
957 "version": "2.0.0",
957 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
958 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
958 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
959 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
959 "dev": true
960 "dev": true
960 }
961 }
961 }
962 }
962 },
963 },
963 "sprintf-js": {
964 "sprintf-js": {
964 "version": "1.0.3",
965 "version": "1.0.3",
965 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
966 "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
966 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
967 "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
967 "dev": true
968 "dev": true
968 },
969 },
969 "string-width": {
970 "string-width": {
970 "version": "4.2.0",
971 "version": "4.2.0",
971 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
972 "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
972 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
973 "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
973 "dev": true,
974 "dev": true,
974 "requires": {
975 "requires": {
975 "emoji-regex": "^8.0.0",
976 "emoji-regex": "^8.0.0",
976 "is-fullwidth-code-point": "^3.0.0",
977 "is-fullwidth-code-point": "^3.0.0",
977 "strip-ansi": "^6.0.0"
978 "strip-ansi": "^6.0.0"
978 },
979 },
979 "dependencies": {
980 "dependencies": {
980 "strip-ansi": {
981 "strip-ansi": {
981 "version": "6.0.0",
982 "version": "6.0.0",
982 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
983 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
983 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
984 "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
984 "dev": true,
985 "dev": true,
985 "requires": {
986 "requires": {
986 "ansi-regex": "^5.0.0"
987 "ansi-regex": "^5.0.0"
987 }
988 }
988 }
989 }
989 }
990 }
990 },
991 },
991 "strip-ansi": {
992 "strip-ansi": {
992 "version": "5.2.0",
993 "version": "5.2.0",
993 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
994 "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
994 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
995 "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
995 "dev": true,
996 "dev": true,
996 "requires": {
997 "requires": {
997 "ansi-regex": "^4.1.0"
998 "ansi-regex": "^4.1.0"
998 },
999 },
999 "dependencies": {
1000 "dependencies": {
1000 "ansi-regex": {
1001 "ansi-regex": {
1001 "version": "4.1.0",
1002 "version": "4.1.0",
1002 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
1003 "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
1003 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
1004 "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
1004 "dev": true
1005 "dev": true
1005 }
1006 }
1006 }
1007 }
1007 },
1008 },
1008 "strip-json-comments": {
1009 "strip-json-comments": {
1009 "version": "3.0.1",
1010 "version": "3.0.1",
1010 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
1011 "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz",
1011 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
1012 "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==",
1012 "dev": true
1013 "dev": true
1013 },
1014 },
1014 "supports-color": {
1015 "supports-color": {
1015 "version": "5.5.0",
1016 "version": "5.5.0",
1016 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
1017 "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
1017 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
1018 "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
1018 "dev": true,
1019 "dev": true,
1019 "requires": {
1020 "requires": {
1020 "has-flag": "^3.0.0"
1021 "has-flag": "^3.0.0"
1021 }
1022 }
1022 },
1023 },
1023 "table": {
1024 "table": {
1024 "version": "5.4.6",
1025 "version": "5.4.6",
1025 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
1026 "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
1026 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
1027 "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
1027 "dev": true,
1028 "dev": true,
1028 "requires": {
1029 "requires": {
1029 "ajv": "^6.10.2",
1030 "ajv": "^6.10.2",
1030 "lodash": "^4.17.14",
1031 "lodash": "^4.17.14",
1031 "slice-ansi": "^2.1.0",
1032 "slice-ansi": "^2.1.0",
1032 "string-width": "^3.0.0"
1033 "string-width": "^3.0.0"
1033 },
1034 },
1034 "dependencies": {
1035 "dependencies": {
1035 "emoji-regex": {
1036 "emoji-regex": {
1036 "version": "7.0.3",
1037 "version": "7.0.3",
1037 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
1038 "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
1038 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
1039 "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
1039 "dev": true
1040 "dev": true
1040 },
1041 },
1041 "is-fullwidth-code-point": {
1042 "is-fullwidth-code-point": {
1042 "version": "2.0.0",
1043 "version": "2.0.0",
1043 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1044 "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1044 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1045 "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1045 "dev": true
1046 "dev": true
1046 },
1047 },
1047 "string-width": {
1048 "string-width": {
1048 "version": "3.1.0",
1049 "version": "3.1.0",
1049 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
1050 "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
1050 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
1051 "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
1051 "dev": true,
1052 "dev": true,
1052 "requires": {
1053 "requires": {
1053 "emoji-regex": "^7.0.1",
1054 "emoji-regex": "^7.0.1",
1054 "is-fullwidth-code-point": "^2.0.0",
1055 "is-fullwidth-code-point": "^2.0.0",
1055 "strip-ansi": "^5.1.0"
1056 "strip-ansi": "^5.1.0"
1056 }
1057 }
1057 }
1058 }
1058 }
1059 }
1059 },
1060 },
1060 "text-table": {
1061 "text-table": {
1061 "version": "0.2.0",
1062 "version": "0.2.0",
1062 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1063 "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1063 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
1064 "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
1064 "dev": true
1065 "dev": true
1065 },
1066 },
1066 "through": {
1067 "through": {
1067 "version": "2.3.8",
1068 "version": "2.3.8",
1068 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
1069 "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
1069 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
1070 "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
1070 "dev": true
1071 "dev": true
1071 },
1072 },
1072 "tmp": {
1073 "tmp": {
1073 "version": "0.0.33",
1074 "version": "0.0.33",
1074 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
1075 "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
1075 "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
1076 "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
1076 "dev": true,
1077 "dev": true,
1077 "requires": {
1078 "requires": {
1078 "os-tmpdir": "~1.0.2"
1079 "os-tmpdir": "~1.0.2"
1079 }
1080 }
1080 },
1081 },
1081 "tslib": {
1082 "tslib": {
1082 "version": "1.10.0",
1083 "version": "1.10.0",
1083 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
1084 "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz",
1084 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
1085 "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==",
1085 "dev": true
1086 "dev": true
1086 },
1087 },
1087 "tslint": {
1088 "tslint": {
1088 "version": "6.0.0",
1089 "version": "6.0.0",
1089 "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.0.0.tgz",
1090 "resolved": "https://registry.npmjs.org/tslint/-/tslint-6.0.0.tgz",
1090 "integrity": "sha512-9nLya8GBtlFmmFMW7oXXwoXS1NkrccqTqAtwXzdPV9e2mqSEvCki6iHL/Fbzi5oqbugshzgGPk7KBb2qNP1DSA==",
1091 "integrity": "sha512-9nLya8GBtlFmmFMW7oXXwoXS1NkrccqTqAtwXzdPV9e2mqSEvCki6iHL/Fbzi5oqbugshzgGPk7KBb2qNP1DSA==",
1091 "dev": true,
1092 "dev": true,
1092 "requires": {
1093 "requires": {
1093 "@babel/code-frame": "^7.0.0",
1094 "@babel/code-frame": "^7.0.0",
1094 "builtin-modules": "^1.1.1",
1095 "builtin-modules": "^1.1.1",
1095 "chalk": "^2.3.0",
1096 "chalk": "^2.3.0",
1096 "commander": "^2.12.1",
1097 "commander": "^2.12.1",
1097 "diff": "^4.0.1",
1098 "diff": "^4.0.1",
1098 "glob": "^7.1.1",
1099 "glob": "^7.1.1",
1099 "js-yaml": "^3.13.1",
1100 "js-yaml": "^3.13.1",
1100 "minimatch": "^3.0.4",
1101 "minimatch": "^3.0.4",
1101 "mkdirp": "^0.5.1",
1102 "mkdirp": "^0.5.1",
1102 "resolve": "^1.3.2",
1103 "resolve": "^1.3.2",
1103 "semver": "^5.3.0",
1104 "semver": "^5.3.0",
1104 "tslib": "^1.10.0",
1105 "tslib": "^1.10.0",
1105 "tsutils": "^2.29.0"
1106 "tsutils": "^2.29.0"
1106 },
1107 },
1107 "dependencies": {
1108 "dependencies": {
1108 "semver": {
1109 "semver": {
1109 "version": "5.7.1",
1110 "version": "5.7.1",
1110 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
1111 "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
1111 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
1112 "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
1112 "dev": true
1113 "dev": true
1113 }
1114 }
1114 }
1115 }
1115 },
1116 },
1116 "tsutils": {
1117 "tsutils": {
1117 "version": "2.29.0",
1118 "version": "2.29.0",
1118 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
1119 "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz",
1119 "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
1120 "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==",
1120 "dev": true,
1121 "dev": true,
1121 "requires": {
1122 "requires": {
1122 "tslib": "^1.8.1"
1123 "tslib": "^1.8.1"
1123 }
1124 }
1124 },
1125 },
1125 "type-check": {
1126 "type-check": {
1126 "version": "0.3.2",
1127 "version": "0.3.2",
1127 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
1128 "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
1128 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
1129 "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
1129 "dev": true,
1130 "dev": true,
1130 "requires": {
1131 "requires": {
1131 "prelude-ls": "~1.1.2"
1132 "prelude-ls": "~1.1.2"
1132 }
1133 }
1133 },
1134 },
1134 "type-detect": {
1135 "type-detect": {
1135 "version": "4.0.8",
1136 "version": "4.0.8",
1136 "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
1137 "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz",
1137 "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
1138 "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==",
1138 "dev": true
1139 "dev": true
1139 },
1140 },
1140 "type-fest": {
1141 "type-fest": {
1141 "version": "0.8.1",
1142 "version": "0.8.1",
1142 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
1143 "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
1143 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
1144 "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
1144 "dev": true
1145 "dev": true
1145 },
1146 },
1146 "typescript": {
1147 "typescript": {
1147 "version": "3.7.5",
1148 "version": "3.7.5",
1148 "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.5.tgz",
1149 "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.7.5.tgz",
1149 "integrity": "sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw==",
1150 "integrity": "sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw==",
1150 "dev": true
1151 "dev": true
1151 },
1152 },
1152 "uri-js": {
1153 "uri-js": {
1153 "version": "4.2.2",
1154 "version": "4.2.2",
1154 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
1155 "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
1155 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
1156 "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
1156 "dev": true,
1157 "dev": true,
1157 "requires": {
1158 "requires": {
1158 "punycode": "^2.1.0"
1159 "punycode": "^2.1.0"
1159 }
1160 }
1160 },
1161 },
1161 "v8-compile-cache": {
1162 "v8-compile-cache": {
1162 "version": "2.1.0",
1163 "version": "2.1.0",
1163 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
1164 "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz",
1164 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
1165 "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==",
1165 "dev": true
1166 "dev": true
1166 },
1167 },
1167 "which": {
1168 "which": {
1168 "version": "1.3.1",
1169 "version": "1.3.1",
1169 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
1170 "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
1170 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
1171 "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
1171 "dev": true,
1172 "dev": true,
1172 "requires": {
1173 "requires": {
1173 "isexe": "^2.0.0"
1174 "isexe": "^2.0.0"
1174 }
1175 }
1175 },
1176 },
1176 "word-wrap": {
1177 "word-wrap": {
1177 "version": "1.2.3",
1178 "version": "1.2.3",
1178 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
1179 "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
1179 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
1180 "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
1180 "dev": true
1181 "dev": true
1181 },
1182 },
1182 "wrappy": {
1183 "wrappy": {
1183 "version": "1.0.2",
1184 "version": "1.0.2",
1184 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1185 "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1185 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
1186 "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
1186 "dev": true
1187 "dev": true
1187 },
1188 },
1188 "write": {
1189 "write": {
1189 "version": "1.0.3",
1190 "version": "1.0.3",
1190 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
1191 "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
1191 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
1192 "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
1192 "dev": true,
1193 "dev": true,
1193 "requires": {
1194 "requires": {
1194 "mkdirp": "^0.5.1"
1195 "mkdirp": "^0.5.1"
1195 }
1196 }
1196 },
1197 },
1197 "yaml": {
1198 "yaml": {
1198 "version": "1.7.2",
1199 "version": "1.7.2",
1199 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz",
1200 "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.7.2.tgz",
1200 "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
1201 "integrity": "sha512-qXROVp90sb83XtAoqE8bP9RwAkTTZbugRUTm5YeFCBfNRPEp2YzTeqWiz7m5OORHzEvrA/qcGS8hp/E+MMROYw==",
1201 "dev": true,
1202 "dev": true,
1202 "requires": {
1203 "requires": {
1203 "@babel/runtime": "^7.6.3"
1204 "@babel/runtime": "^7.6.3"
1204 }
1205 }
1205 }
1206 }
1206 }
1207 }
1207 }
1208 }
@@ -1,30 +1,34
1 {
1 {
2 "name": "@implab/djx",
2 "name": "@implab/djx",
3 "version": "0.0.1-dev",
3 "version": "0.0.1-dev",
4 "description": "Supports using dojo version 1 with typescript and .tsx files",
4 "description": "Supports using dojo version 1 with typescript and .tsx files",
5 "keywords": [
5 "keywords": [
6 "dojo",
6 "dojo",
7 "tsx",
7 "tsx",
8 "typescript",
8 "typescript",
9 "widgets"
9 "widgets"
10 ],
10 ],
11 "repository": "",
11 "author": "Implab team",
12 "license": "BSD-2-Clause",
13 "repository": "https://hg.code.sf.net/p/implabjs/djx",
14 "publishConfig": {
15 "access": "public"
16 },
12 "peerDependencies": {
17 "peerDependencies": {
13 "dojo": "1.16.0",
18 "dojo": "1.16.0",
14 "@implab/core-amd": "^1.3.2"
19 "@implab/core-amd": "^1.3.2"
15 },
20 },
16 "devDependencies": {
21 "devDependencies": {
17 "@types/requirejs": "2.1.31",
22 "@types/requirejs": "2.1.31",
18 "dojo": "1.16.0",
23 "dojo": "1.16.0",
19 "typescript": "~3.7.5",
24 "typescript": "~3.7.5",
20 "eslint": "6.8.0",
25 "eslint": "6.8.0",
21 "tslint": "6.0.0",
26 "tslint": "6.0.0",
22 "@implab/core-amd": "^1.3.2",
27 "@implab/core-amd": "^1.3.2",
23 "yaml": "~1.7.2",
28 "yaml": "~1.7.2",
24 "@types/yaml": "1.2.0",
29 "@types/yaml": "1.2.0",
25 "chai": "4.2.0",
30 "chai": "4.2.0",
26 "@types/chai": "4.1.3",
31 "@types/chai": "4.1.3",
27 "@types/dojo": "./src/typings/dojo",
32 "dojo-typings": "~1.11.9"
28 "@types/dijit": "./src/typings/dijit"
29 }
33 }
30 }
34 }
@@ -1,234 +1,236
1 import declare = require("dojo/_base/declare");
1 import declare = require("dojo/_base/declare");
2 import { each } from "@implab/core-amd/safe";
2 import { each } from "@implab/core-amd/safe";
3 import { Constructor } from "@implab/core-amd/interfaces";
3 import { Constructor } from "@implab/core-amd/interfaces";
4 import { DeclareConstructor } from "dojo/_base/declare";
4 // import { DeclareConstructor } from "dojo/_base/declare";
5
6 type DeclareConstructor<T> = dojo._base.DeclareConstructor<T>;
5
7
6 export interface AbstractConstructor<T = {}> {
8 export interface AbstractConstructor<T = {}> {
7 prototype: T;
9 prototype: T;
8 }
10 }
9
11
10 interface DjMockConstructor<T = {}> {
12 interface DjMockConstructor<T = {}> {
11 new(...args: any[]): T;
13 new(...args: any[]): T;
12 mock: boolean;
14 mock: boolean;
13 base: AbstractConstructor;
15 base: AbstractConstructor;
14 }
16 }
15
17
16 export function djbase<T>(
18 export function djbase<T>(
17 b0: AbstractConstructor<T>
19 b0: AbstractConstructor<T>
18 ): DeclareConstructor<T>;
20 ): DeclareConstructor<T>;
19
21
20 export function djbase<T0, T1>(
22 export function djbase<T0, T1>(
21 b0: AbstractConstructor<T0>,
23 b0: AbstractConstructor<T0>,
22 b1: AbstractConstructor<T1>
24 b1: AbstractConstructor<T1>
23 ): DeclareConstructor<T0 & T1>;
25 ): DeclareConstructor<T0 & T1>;
24
26
25 export function djbase<T0, T1, T2>(
27 export function djbase<T0, T1, T2>(
26 b0: AbstractConstructor<T0>,
28 b0: AbstractConstructor<T0>,
27 b1: AbstractConstructor<T1>,
29 b1: AbstractConstructor<T1>,
28 b2: AbstractConstructor<T2>
30 b2: AbstractConstructor<T2>
29 ): DeclareConstructor<T0 & T1 & T2>;
31 ): DeclareConstructor<T0 & T1 & T2>;
30
32
31 export function djbase<T0, T1, T2, T3>(
33 export function djbase<T0, T1, T2, T3>(
32 b0: AbstractConstructor<T0>,
34 b0: AbstractConstructor<T0>,
33 b1: AbstractConstructor<T1>,
35 b1: AbstractConstructor<T1>,
34 b2: AbstractConstructor<T2>,
36 b2: AbstractConstructor<T2>,
35 b3: AbstractConstructor<T3>
37 b3: AbstractConstructor<T3>
36 ): DeclareConstructor<T0 & T1 & T2 & T3>;
38 ): DeclareConstructor<T0 & T1 & T2 & T3>;
37
39
38 export function djbase<T0, T1, T2, T3, T4>(
40 export function djbase<T0, T1, T2, T3, T4>(
39 b0: AbstractConstructor<T0>,
41 b0: AbstractConstructor<T0>,
40 b1: AbstractConstructor<T1>,
42 b1: AbstractConstructor<T1>,
41 b2: AbstractConstructor<T2>,
43 b2: AbstractConstructor<T2>,
42 b3: AbstractConstructor<T3>,
44 b3: AbstractConstructor<T3>,
43 b4: AbstractConstructor<T4>
45 b4: AbstractConstructor<T4>
44 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4>;
46 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4>;
45
47
46 export function djbase<T0, T1, T2, T3, T4, T5>(
48 export function djbase<T0, T1, T2, T3, T4, T5>(
47 b0: AbstractConstructor<T0>,
49 b0: AbstractConstructor<T0>,
48 b1: AbstractConstructor<T1>,
50 b1: AbstractConstructor<T1>,
49 b2: AbstractConstructor<T2>,
51 b2: AbstractConstructor<T2>,
50 b3: AbstractConstructor<T3>,
52 b3: AbstractConstructor<T3>,
51 b4: AbstractConstructor<T4>,
53 b4: AbstractConstructor<T4>,
52 b5: AbstractConstructor<T5>
54 b5: AbstractConstructor<T5>
53 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4 & T5>;
55 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4 & T5>;
54
56
55 export function djbase<T0, T1, T2, T3, T4, T5, T6>(
57 export function djbase<T0, T1, T2, T3, T4, T5, T6>(
56 b0: AbstractConstructor<T0>,
58 b0: AbstractConstructor<T0>,
57 b1: AbstractConstructor<T1>,
59 b1: AbstractConstructor<T1>,
58 b2: AbstractConstructor<T2>,
60 b2: AbstractConstructor<T2>,
59 b3: AbstractConstructor<T3>,
61 b3: AbstractConstructor<T3>,
60 b4: AbstractConstructor<T4>,
62 b4: AbstractConstructor<T4>,
61 b5: AbstractConstructor<T5>,
63 b5: AbstractConstructor<T5>,
62 b6: AbstractConstructor<T6>
64 b6: AbstractConstructor<T6>
63 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4 & T5 & T6>;
65 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4 & T5 & T6>;
64
66
65 export function djbase<T0, T1, T2, T3, T4, T5, T6, T7>(
67 export function djbase<T0, T1, T2, T3, T4, T5, T6, T7>(
66 b0: AbstractConstructor<T0>,
68 b0: AbstractConstructor<T0>,
67 b1: AbstractConstructor<T1>,
69 b1: AbstractConstructor<T1>,
68 b2: AbstractConstructor<T2>,
70 b2: AbstractConstructor<T2>,
69 b3: AbstractConstructor<T3>,
71 b3: AbstractConstructor<T3>,
70 b4: AbstractConstructor<T4>,
72 b4: AbstractConstructor<T4>,
71 b5: AbstractConstructor<T5>,
73 b5: AbstractConstructor<T5>,
72 b6: AbstractConstructor<T6>,
74 b6: AbstractConstructor<T6>,
73 b7: AbstractConstructor<T7>
75 b7: AbstractConstructor<T7>
74 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4 & T5 & T6 & T7>;
76 ): DeclareConstructor<T0 & T1 & T2 & T3 & T4 & T5 & T6 & T7>;
75
77
76 /** Создает конструктор-заглушку из списка базовых классов, используется
78 /** Создает конструктор-заглушку из списка базовых классов, используется
77 * для объявления классов при помощи `dojo/_base/declare`.
79 * для объявления классов при помощи `dojo/_base/declare`.
78 *
80 *
79 * Создает пустой конструтор, с пустым стандартным прототипом, это нужно,
81 * Создает пустой конструтор, с пустым стандартным прототипом, это нужно,
80 * поскольку в унаследованном классе конструктор обязательно должен вызвать
82 * поскольку в унаследованном классе конструктор обязательно должен вызвать
81 * `super(...)`, таким образом он вызовет пустую функцию.
83 * `super(...)`, таким образом он вызовет пустую функцию.
82 *
84 *
83 * Созданный конструтор хранит в себе список базовых классов, который будет
85 * Созданный конструтор хранит в себе список базовых классов, который будет
84 * использован декоратором `djclass`, который вернет класс, объявленный при
86 * использован декоратором `djclass`, который вернет класс, объявленный при
85 * помощи `dojo/_base/declare`.
87 * помощи `dojo/_base/declare`.
86 *
88 *
87 * @param bases список базовых классов, от которых требуется унаследовать
89 * @param bases список базовых классов, от которых требуется унаследовать
88 * новый класс.
90 * новый класс.
89 *
91 *
90 */
92 */
91 export function djbase(...bases: any[]): Constructor {
93 export function djbase(...bases: any[]): Constructor {
92
94
93 const t = class {
95 const t = class {
94 static mock: boolean;
96 static mock: boolean;
95 static base: AbstractConstructor;
97 static base: AbstractConstructor;
96 };
98 };
97
99
98 t.mock = true;
100 t.mock = true;
99 t.base = declare(bases);
101 t.base = declare(bases);
100
102
101 return t as any;
103 return t as any;
102 }
104 }
103
105
104 function isMockConstructor<T extends {}>(v: AbstractConstructor<T>): v is DjMockConstructor<T> {
106 function isMockConstructor<T extends {}>(v: AbstractConstructor<T>): v is DjMockConstructor<T> {
105 return v && "mock" in v;
107 return v && "mock" in v;
106 }
108 }
107
109
108 /** Создает класс при помощи `dojo/_base/declare`. Для этого исходный класс
110 /** Создает класс при помощи `dojo/_base/declare`. Для этого исходный класс
109 * должен быть унаследован от `djbase(...)`.
111 * должен быть унаследован от `djbase(...)`.
110 *
112 *
111 * @param target Класс, который нужно объявить при помощи `dojo/_base/declare`
113 * @param target Класс, который нужно объявить при помощи `dojo/_base/declare`
112 */
114 */
113 export function djclass<T extends AbstractConstructor>(target: T): T {
115 export function djclass<T extends AbstractConstructor>(target: T): T {
114 // получаем базовый конструктор и его прототип
116 // получаем базовый конструктор и его прототип
115 let bp = target && target.prototype && Object.getPrototypeOf(target.prototype);
117 let bp = target && target.prototype && Object.getPrototypeOf(target.prototype);
116 const bc = bp && bp.constructor;
118 const bc = bp && bp.constructor;
117
119
118 // проверка того, что класс унаследован от специальной заглушки
120 // проверка того, что класс унаследован от специальной заглушки
119 if (isMockConstructor(bc)) {
121 if (isMockConstructor(bc)) {
120 // t - базовый класс, объявленный при помощи dojo/_base/declare
122 // t - базовый класс, объявленный при помощи dojo/_base/declare
121 const t = bc.base;
123 const t = bc.base;
122
124
123 // bc - базовый класс, bc.prototype используется как super
125 // bc - базовый класс, bc.prototype используется как super
124 // при вызове базовых методов. Нужно создать bc.prototype
126 // при вызове базовых методов. Нужно создать bc.prototype
125 // таким образом, чтобы он вызывал this.inherited().
127 // таким образом, чтобы он вызывал this.inherited().
126
128
127 // создаем новый порототип, он не в цепочке прототипов у текущего
129 // создаем новый порототип, он не в цепочке прототипов у текущего
128 // класса, но super.some_method будет использовать именно его.
130 // класса, но super.some_method будет использовать именно его.
129 // в этом объекте будут размещены прокси для переопределенных
131 // в этом объекте будут размещены прокси для переопределенных
130 // методов.
132 // методов.
131 bp = bc.prototype = Object.create(t.prototype);
133 bp = bc.prototype = Object.create(t.prototype);
132 bp.constructor = bc;
134 bp.constructor = bc;
133
135
134 // proxy - фабрика для создания прокси-методов, которые внутри
136 // proxy - фабрика для создания прокси-методов, которые внутри
135 // себя вызовут this.inherited с правильными параметрами.
137 // себя вызовут this.inherited с правильными параметрами.
136 const proxy = (m: (...args: any[]) => any) => function (this: any) {
138 const proxy = (m: (...args: any[]) => any) => function (this: any) {
137 return this.inherited(m, arguments);
139 return this.inherited(m, arguments);
138 };
140 };
139
141
140 // у текущего класса прототип содержит методы, объявленные в этом
142 // у текущего класса прототип содержит методы, объявленные в этом
141 // классе и его конструктор. Нужно пройти по всем методам и
143 // классе и его конструктор. Нужно пройти по всем методам и
142 // создать для них прокси.
144 // создать для них прокси.
143 // При этом только те, методы, которые есть в базовых классах
145 // При этом только те, методы, которые есть в базовых классах
144 // могут быть переопределены.
146 // могут быть переопределены.
145 each(target.prototype, (m: any, p: string | number | symbol) => {
147 each(target.prototype, (m: any, p: string | number | symbol) => {
146 if (typeof m === "function" &&
148 if (typeof m === "function" &&
147 p !== "constructor" &&
149 p !== "constructor" &&
148 target.prototype.hasOwnProperty(p) &&
150 target.prototype.hasOwnProperty(p) &&
149 p in t.prototype
151 p in t.prototype
150 ) {
152 ) {
151 bp[p] = proxy(m);
153 bp[p] = proxy(m);
152 }
154 }
153 });
155 });
154
156
155 const cls = declare(t, target.prototype);
157 const cls = declare(t, target.prototype);
156 // TODO mixin static members
158 // TODO mixin static members
157 return cls as any;
159 return cls as any;
158 } else {
160 } else {
159 return target as any;
161 return target as any;
160 }
162 }
161 }
163 }
162
164
163 function makeSetterName(prop: string) {
165 function makeSetterName(prop: string) {
164 return [
166 return [
165 "_set",
167 "_set",
166 prop.replace(/^./, x => x.toUpperCase()),
168 prop.replace(/^./, x => x.toUpperCase()),
167 "Attr"
169 "Attr"
168 ].join("");
170 ].join("");
169 }
171 }
170
172
171 function makeGetterName(prop: string) {
173 function makeGetterName(prop: string) {
172 return [
174 return [
173 "_get",
175 "_get",
174 prop.replace(/^./, x => x.toUpperCase()),
176 prop.replace(/^./, x => x.toUpperCase()),
175 "Attr"
177 "Attr"
176 ].join("");
178 ].join("");
177 }
179 }
178
180
179 interface NodeBindSpec {
181 interface NodeBindSpec {
180 node: string;
182 node: string;
181 type: string;
183 type: string;
182 }
184 }
183
185
184 /**
186 /**
185 * Описание привязки свойства виджета к свойству внутреннего объекта.
187 * Описание привязки свойства виджета к свойству внутреннего объекта.
186 */
188 */
187 interface MemberBindSpec {
189 interface MemberBindSpec {
188 /**
190 /**
189 * Имя свойства со ссылкой на объект, к которому .
191 * Имя свойства со ссылкой на объект, к которому .
190 */
192 */
191 member: string;
193 member: string;
192 /**
194 /**
193 * Свойство объекта к которому нужно осуществить привязку.
195 * Свойство объекта к которому нужно осуществить привязку.
194 */
196 */
195 property: string;
197 property: string;
196
198
197 /**
199 /**
198 * Привязка осуществляется не только на запись но и на чтение свойства.
200 * Привязка осуществляется не только на запись но и на чтение свойства.
199 */
201 */
200 getter?: boolean;
202 getter?: boolean;
201 }
203 }
202
204
203 function isNodeBindSpec(v: any): v is NodeBindSpec {
205 function isNodeBindSpec(v: any): v is NodeBindSpec {
204 return "node" in v;
206 return "node" in v;
205 }
207 }
206
208
207 function isMemberBindSpec(v: any): v is MemberBindSpec {
209 function isMemberBindSpec(v: any): v is MemberBindSpec {
208 return "member" in v;
210 return "member" in v;
209 }
211 }
210
212
211 /** Декорирует свойства виджета для привязки их к внутренним членам, либо DOM
213 /** Декорирует свойства виджета для привязки их к внутренним членам, либо DOM
212 * элементам, либо свойству внутреннего объекта.
214 * элементам, либо свойству внутреннего объекта.
213 *
215 *
214 * @param {NodeBindSpec | MemberBindSpec} params Параметры связывания.
216 * @param {NodeBindSpec | MemberBindSpec} params Параметры связывания.
215 */
217 */
216 export function bind(params: NodeBindSpec | MemberBindSpec) {
218 export function bind(params: NodeBindSpec | MemberBindSpec) {
217 if (isNodeBindSpec(params))
219 if (isNodeBindSpec(params))
218 return (target: any, name: string) => {
220 return (target: any, name: string) => {
219 target[makeSetterName(name)] = params;
221 target[makeSetterName(name)] = params;
220 };
222 };
221 else if (isMemberBindSpec(params)) {
223 else if (isMemberBindSpec(params)) {
222 return (target: any, name: string) => {
224 return (target: any, name: string) => {
223 target[name] = null;
225 target[name] = null;
224 target[makeSetterName(name)] = function (v: any) {
226 target[makeSetterName(name)] = function (v: any) {
225 this._set(name, v);
227 this._set(name, v);
226 this[params.member].set(params.property, v);
228 this[params.member].set(params.property, v);
227 };
229 };
228 if (params.getter)
230 if (params.getter)
229 target[makeGetterName(name)] = function () {
231 target[makeGetterName(name)] = function () {
230 return this[params.member].get(params.property);
232 return this[params.member].get(params.property);
231 };
233 };
232 };
234 };
233 }
235 }
234 }
236 }
@@ -1,50 +1,51
1 import { djbase, djclass } from "../declare";
1 import { djbase, djclass } from "../declare";
2 import _WidgetBase = require("dijit/_WidgetBase");
2 import _WidgetBase = require("dijit/_WidgetBase");
3 import _AttachMixin = require("dijit/_AttachMixin");
3 import _AttachMixin = require("dijit/_AttachMixin");
4 import { BuildContext, isNode } from "./traits";
4 import { BuildContext, isNode } from "./traits";
5 import registry = require("dijit/registry");
5 import registry = require("dijit/registry");
6 import { Handle } from "dojo/interfaces";
6 // import { Handle } from "dojo/interfaces";
7 type Handle = dojo.Handle;
7
8
8 @djclass
9 @djclass
9 export abstract class DjxWidgetBase extends djbase(_WidgetBase, _AttachMixin) {
10 export abstract class DjxWidgetBase extends djbase(_WidgetBase, _AttachMixin) {
10
11
11 buildRendering() {
12 buildRendering() {
12 this.domNode = this.render().getDomElement();
13 this.domNode = this.render().getDomElement();
13 super.buildRendering();
14 super.buildRendering();
14 }
15 }
15
16
16 abstract render(): BuildContext;
17 abstract render(): BuildContext;
17
18
18 _processTemplateNode<T extends (Element | Node | _WidgetBase)>(
19 _processTemplateNode<T extends (Element | Node | _WidgetBase)>(
19 baseNode: T,
20 baseNode: T,
20 getAttrFunc: (baseNode: T, attr: string) => string,
21 getAttrFunc: (baseNode: T, attr: string) => string,
21 // tslint:disable-next-line: ban-types
22 // tslint:disable-next-line: ban-types
22 attachFunc: (node: T, type: string, func?: Function) => Handle
23 attachFunc: (node: T, type: string, func?: Function) => Handle
23 ): boolean {
24 ): boolean {
24 if (isNode(baseNode)) {
25 if (isNode(baseNode)) {
25 const w = registry.byNode(baseNode);
26 const w = registry.byNode(baseNode);
26 if (w) {
27 if (w) {
27 // from dijit/_WidgetsInTemplateMixin
28 // from dijit/_WidgetsInTemplateMixin
28 this._processTemplateNode(w,
29 this._processTemplateNode(w,
29 (n, p) => n.get(p), // callback to get a property of a widget
30 (n, p) => n.get(p), // callback to get a property of a widget
30 (widget, type, callback) => {
31 (widget, type, callback) => {
31 if (!callback)
32 if (!callback)
32 throw new Error("The callback must be specified");
33 throw new Error("The callback must be specified");
33
34
34 // callback to do data-dojo-attach-event to a widget
35 // callback to do data-dojo-attach-event to a widget
35 if (type in widget) {
36 if (type in widget) {
36 // back-compat, remove for 2.0
37 // back-compat, remove for 2.0
37 return widget.connect(widget, type, callback as EventListener);
38 return widget.connect(widget, type, callback as EventListener);
38 } else {
39 } else {
39 // 1.x may never hit this branch, but it's the default for 2.0
40 // 1.x may never hit this branch, but it's the default for 2.0
40 return widget.on(type, callback);
41 return widget.on(type, callback);
41 }
42 }
42
43
43 });
44 });
44 // don't process widgets internals
45 // don't process widgets internals
45 return false;
46 return false;
46 }
47 }
47 }
48 }
48 return super._processTemplateNode(baseNode, getAttrFunc, attachFunc);
49 return super._processTemplateNode(baseNode, getAttrFunc, attachFunc);
49 }
50 }
50 }
51 }
@@ -1,30 +1,32
1 import _WidgetBase = require("dijit/_WidgetBase");
1 import _WidgetBase = require("dijit/_WidgetBase");
2 import { _WidgetBaseConstructor } from "dijit/_WidgetBase";
2
3 type _WidgetBaseConstructor = typeof _WidgetBase;
4
3
5
4 export interface BuildContext {
6 export interface BuildContext {
5 getDomElement(): HTMLElement;
7 getDomElement(): HTMLElement;
6 }
8 }
7
9
8 export function isNode(el: any): el is HTMLElement {
10 export function isNode(el: any): el is HTMLElement {
9 return el && el.nodeName && el.nodeType;
11 return el && el.nodeName && el.nodeType;
10 }
12 }
11
13
12 export function isWidget(v: any): v is _WidgetBase {
14 export function isWidget(v: any): v is _WidgetBase {
13 return v && "domNode" in v;
15 return v && "domNode" in v;
14 }
16 }
15
17
16 export function isBuildContext(v: any): v is BuildContext {
18 export function isBuildContext(v: any): v is BuildContext {
17 return typeof v === "object" && typeof v.getDomElement === "function";
19 return typeof v === "object" && typeof v.getDomElement === "function";
18 }
20 }
19
21
20 export function isPlainObject(v: object) {
22 export function isPlainObject(v: object) {
21 if (typeof v !== "object")
23 if (typeof v !== "object")
22 return false;
24 return false;
23
25
24 const vp = Object.getPrototypeOf(v);
26 const vp = Object.getPrototypeOf(v);
25 return !vp || vp === Object.prototype;
27 return !vp || vp === Object.prototype;
26 }
28 }
27
29
28 export function isWidgetConstructor(v: any): v is _WidgetBaseConstructor {
30 export function isWidgetConstructor(v: any): v is _WidgetBaseConstructor {
29 return typeof v === "function" && v.prototype && "domNode" in v.prototype;
31 return typeof v === "function" && v.prototype && "domNode" in v.prototype;
30 }
32 }
@@ -1,9 +1,9
1 {
1 {
2 "extends": "../tsconfig",
2 "extends": "../tsconfig",
3 "compilerOptions": {
3 "compilerOptions": {
4 "rootDir": "ts",
4 "rootDir": "ts",
5 "types": [
5 "types": [
6 "requirejs"
6 "requirejs", "dojo-typings"
7 ]
7 ]
8 }
8 }
9 } No newline at end of file
9 }
@@ -1,12 +1,13
1 {
1 {
2 "compilerOptions": {
2 "compilerOptions": {
3 "moduleResolution": "node",
3 "moduleResolution": "node",
4 "noEmitOnError": true,
4 "noEmitOnError": true,
5 "strict": true,
5 "strict": true,
6 "types": [],
6 "types": [],
7 "experimentalDecorators": true,
7 "experimentalDecorators": true,
8 "jsxFactory": "createElement",
8 "jsxFactory": "createElement",
9 "skipLibCheck": true,
9 "jsx": "react",
10 "jsx": "react",
10 "lib": ["es5", "es2015.promise", "es2015.symbol", "es2015.iterable", "dom", "scripthost"]
11 "lib": ["es5", "es2015.promise", "es2015.symbol", "es2015.iterable", "dom", "scripthost"]
11 }
12 }
12 } No newline at end of file
13 }
General Comments 0
You need to be logged in to leave comments. Login now