├── .eslintrc.json
├── .forceignore
├── .gitignore
├── .prettierignore
├── .prettierrc
├── .vscode
├── extensions.json
├── launch.json
└── settings.json
├── LICENSE
├── README.md
├── config
└── project-scratch-def.json
├── force-app
└── main
│ └── default
│ ├── aura
│ └── anyLocalAction
│ │ ├── anyLocalAction.cmp
│ │ ├── anyLocalAction.cmp-meta.xml
│ │ ├── anyLocalAction.design
│ │ └── anyLocalActionController.js
│ ├── classes
│ ├── DeserializeInvocable.cls
│ ├── DeserializeInvocable.cls-meta.xml
│ ├── DeserializeInvocableTest.cls
│ ├── DeserializeInvocableTest.cls-meta.xml
│ ├── SerializeInvocable.cls
│ ├── SerializeInvocable.cls-meta.xml
│ ├── SerializeInvocableTest.cls
│ └── SerializeInvocableTest.cls-meta.xml
│ └── flows
│ └── Test_Any_flow_Local_Action.flow-meta.xml
├── media
├── flow-anyaction-2.gif
└── flow-anyaction-3.gif
├── package-lock.json
├── package.json
└── sfdx-project.json
/.eslintrc.json:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "browser": true,
4 | "es6": true
5 | },
6 | "extends": "eslint:recommended",
7 | "globals": {
8 | "Atomics": "readonly",
9 | "SharedArrayBuffer": "readonly"
10 | },
11 | "parserOptions": {
12 | "ecmaVersion": 2018,
13 | "sourceType": "module"
14 | },
15 | "rules": {
16 | }
17 | }
--------------------------------------------------------------------------------
/.forceignore:
--------------------------------------------------------------------------------
1 | # List files or directories below to ignore them when running force:source:push, force:source:pull, and force:source:status
2 | # More information: https://developer.salesforce.com/docs/atlas.en-us.sfdx_dev.meta/sfdx_dev/sfdx_dev_exclude_source.htm
3 | #
4 |
5 | package.xml
6 |
7 | # LWC configuration files
8 | **/jsconfig.json
9 | **/.eslintrc.json
10 |
11 | # LWC Jest
12 | **/__tests__/**
13 |
14 | # Profiles
15 | **/profiles/**
16 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # This file is used for Git repositories to specify intentionally untracked files that Git should ignore.
2 | # If you are not using git, you can delete this file. For more information see: https://git-scm.com/docs/gitignore
3 | # For useful gitignore templates see: https://github.com/github/gitignore
4 |
5 | # Salesforce cache
6 | .sfdx/
7 | .localdevserver/
8 |
9 | # LWC VSCode autocomplete
10 | **/lwc/jsconfig.json
11 |
12 | # Logs
13 | logs
14 | *.log
15 | npm-debug.log*
16 | yarn-debug.log*
17 | yarn-error.log*
18 |
19 | # Dependency directories
20 | node_modules/
21 |
22 | # Eslint cache
23 | .eslintcache
24 |
25 | # MacOS system files
26 | .DS_Store
27 |
28 | # Windows system files
29 | Thumbs.db
30 | ehthumbs.db
31 | [Dd]esktop.ini
32 | $RECYCLE.BIN/
33 |
--------------------------------------------------------------------------------
/.prettierignore:
--------------------------------------------------------------------------------
1 | # List files or directories below to ignore them when running prettier
2 | # More information: https://prettier.io/docs/en/ignore.html
3 | #
4 |
5 | .sfdx
6 | .localdevserver
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "trailingComma": "none",
3 | "overrides": [
4 | {
5 | "files": "**/lwc/**/*.html",
6 | "options": { "parser": "lwc" }
7 | },
8 | {
9 | "files": "*.{cmp,page,component}",
10 | "options": { "parser": "html" }
11 | }
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": [
3 | "salesforce.salesforcedx-vscode",
4 | "redhat.vscode-xml",
5 | "dbaeumer.vscode-eslint",
6 | "esbenp.prettier-vscode"
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 | {
8 | "name": "Launch Apex Replay Debugger",
9 | "type": "apex-replay",
10 | "request": "launch",
11 | "logFile": "${command:AskForLogFileName}",
12 | "stopOnEntry": true,
13 | "trace": true
14 | }
15 | ]
16 | }
17 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "search.exclude": {
3 | "**/node_modules": true,
4 | "**/bower_components": true,
5 | "**/.sfdx": true
6 | }
7 | }
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2020 Suraj Pillai
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Execute any JS in Screen Flows. Work around the limitations of flows using JS
2 |
3 | Convert strings in flows to arrays/collections, concat, use map, reduce, filters, and more..!.
4 |
5 | Use Invocable Actions to serialize record collections and deserialize them back after processing. So flows can now be as simple as `Get Records -> Serialize -> Process using JS -> Deserialize -> Update Records`. Avoid loops and make your flows more linear. A sample flow is included.
6 |
7 | Example 1: JS Only (No Record interactions)
8 |
9 | 
10 |
11 | Example 2: Get Records -> Serialize -> Add Phone and Type using JS -> Deserialize -> Update Records
12 |
13 | 
14 |
--------------------------------------------------------------------------------
/config/project-scratch-def.json:
--------------------------------------------------------------------------------
1 | {
2 | "orgName": "suraj company",
3 | "edition": "Developer",
4 | "features": []
5 | }
6 |
--------------------------------------------------------------------------------
/force-app/main/default/aura/anyLocalAction/anyLocalAction.cmp:
--------------------------------------------------------------------------------
1 |
2 |
9 |
15 |
21 |
27 |
33 |
34 |
--------------------------------------------------------------------------------
/force-app/main/default/aura/anyLocalAction/anyLocalAction.cmp-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 48.0
4 | A Lightning Component Bundle
5 |
--------------------------------------------------------------------------------
/force-app/main/default/aura/anyLocalAction/anyLocalAction.design:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/force-app/main/default/aura/anyLocalAction/anyLocalActionController.js:
--------------------------------------------------------------------------------
1 | ({
2 | invoke: function (component) {
3 | let js = component.get("v.js");
4 | let showError = component.get("v.showErrorToast");
5 | try {
6 | let args = JSON.parse(component.get("v.args") || "{}");
7 | let op = Function("args", `${js}`)(args);
8 | if (Array.isArray(op)) component.set("v.outputArray", op);
9 | else component.set("v.output", op);
10 | } catch (err) {
11 | console.error(err);
12 | if (showError) {
13 | //eslint-disable-next-line
14 | let toastEvent = $A.get("e.force:showToast");
15 | toastEvent.setParams({ title: "Error!", message: err.message });
16 | toastEvent.fire();
17 | }
18 | throw err;
19 | }
20 | }
21 | });
22 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/DeserializeInvocable.cls:
--------------------------------------------------------------------------------
1 | /**
2 | Deserialize collection of records
3 | @author Suraj Pillai
4 | **/
5 | public with sharing class DeserializeInvocable {
6 | @InvocableMethod(
7 | label='Deserialize'
8 | description='Deserialize SObject Collection'
9 | )
10 | public static List deserialize(List recordsArrayStr) {
11 | List opArray = new List();
12 | for (String record : recordsArrayStr) {
13 | opArray.add((SObject[]) JSON.deserialize(record, List.class));
14 | }
15 | return opArray;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/DeserializeInvocable.cls-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 48.0
4 | Active
5 |
6 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/DeserializeInvocableTest.cls:
--------------------------------------------------------------------------------
1 | @isTest
2 | public with sharing class DeserializeInvocableTest {
3 | @isTest
4 | public static void testDeserialize() {
5 | String[] acctStringArray = new List{
6 | '[{"attributes":{"type":"Account"},"Name":"Sample 1","Rating":"Hot","Industry":"Agriculture"},{"attributes":{"type":"Account"},"Name":"Sample 2","Rating":"Warm","Industry":"Healthcare"}]'
7 | };
8 | List sobjectListArray = DeserializeInvocable.deserialize(
9 | acctStringArray
10 | );
11 | Account[] acctsList = (Account[]) sobjectListArray[0];
12 | system.assertEquals(2, acctsList.size());
13 | system.assertEquals('Sample 1', acctsList[0].Name);
14 | system.assertEquals('Agriculture', acctsList[0].Industry);
15 | system.assertEquals('Healthcare', acctsList[1].Industry);
16 | system.assertEquals('Sample 2', acctsList[1].Name);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/DeserializeInvocableTest.cls-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 48.0
4 | Active
5 |
6 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/SerializeInvocable.cls:
--------------------------------------------------------------------------------
1 | /**
2 | Serialize Record Collection
3 | @author Suraj Pillai
4 | **/
5 | public with sharing class SerializeInvocable {
6 | @InvocableMethod(label='Serialize' description='Serialize SObjec')
7 | public static List doSerialize(List sobjectArrays) {
8 | String[] arraysList = new List{};
9 | for (SObject[] recArr : sobjectArrays) {
10 | arraysList.add(JSON.serialize(recArr));
11 | }
12 | return arraysList;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/SerializeInvocable.cls-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 48.0
4 | Active
5 |
6 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/SerializeInvocableTest.cls:
--------------------------------------------------------------------------------
1 | @isTest
2 | public with sharing class SerializeInvocableTest {
3 | @isTest
4 | public static void testSerialize() {
5 | Account[] acctsList = new List{};
6 | acctsList.add(
7 | new Account(name = 'Sample 1', Rating = 'Hot', Industry = 'Agriculture')
8 | );
9 | acctsList.add(
10 | new Account(name = 'Sample 2', Rating = 'Warm', Industry = 'Healthcare`')
11 | );
12 | String[] acctsListString = SerializeInvocable.doSerialize(
13 | new List{ acctsList }
14 | );
15 | system.assertEquals('[{"attributes":{"type":"Account"},"Name":"Sample 1","Rating":"Hot","Industry":"Agriculture"},{"attributes":{"type":"Account"},"Name":"Sample 2","Rating":"Warm","Industry":"Healthcare`"}]',acctsListString[0]);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/force-app/main/default/classes/SerializeInvocableTest.cls-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | 48.0
4 | Active
5 |
6 |
--------------------------------------------------------------------------------
/force-app/main/default/flows/Test_Any_flow_Local_Action.flow-meta.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Add_Account_Phone
5 |
6 | 286
7 | 265
8 | c:anyLocalAction
9 | component
10 |
11 | Deserialize_Accounts
12 |
13 |
14 | args
15 |
16 | {"names":{!vAccountsCollStr}}
17 |
18 |
19 |
20 | js
21 |
22 | return JSON.stringify(args.names.map(row=>{row.Phone='33243242';row.Type='Customer - Direct';return row}))
23 |
24 |
25 |
26 | vActionOpString
27 | output
28 |
29 |
30 | vActionOpArray
31 | outputArray
32 |
33 |
34 |
35 | Deserialize_Accounts
36 |
37 | 457
38 | 125
39 | DeserializeInvocable
40 | apex
41 |
42 | UpdateAccountRecords
43 |
44 |
45 | U__output
46 | Account
47 |
48 |
49 | recordsArrayStr
50 |
51 | vActionOpString
52 |
53 |
54 |
55 | AccountsColl
56 | output
57 |
58 |
59 |
60 | Serialize_Accounts_Coll
61 |
62 | 138
63 | 228
64 | SerializeInvocable
65 | apex
66 |
67 | Add_Account_Phone
68 |
69 |
70 | T__sobjectArrays
71 | Account
72 |
73 |
74 | sobjectArrays
75 |
76 | AccountsColl
77 |
78 |
79 |
80 | vAccountsCollStr
81 | output
82 |
83 |
84 | Test Any flow Local Action {!$Flow.CurrentDateTime}
85 |
86 |
87 | BuilderType
88 |
89 | LightningFlowBuilder
90 |
91 |
92 |
93 | OriginBuilderType
94 |
95 | LightningFlowBuilder
96 |
97 |
98 | Flow
99 |
100 | Get_Accounts
101 |
102 | 233
103 | 92
104 | true
105 |
106 | Serialize_Accounts_Coll
107 |
108 |
109 | AccountsColl
110 | Id
111 | Name
112 | Industry
113 |
114 |
115 | UpdateAccountRecords
116 |
117 | 658
118 | 107
119 | AccountsColl
120 |
121 |
122 | 50
123 | 50
124 |
125 | Get_Accounts
126 |
127 |
128 | Draft
129 |
130 | AccountsColl
131 | SObject
132 | true
133 | false
134 | false
135 | Account
136 |
137 |
138 | vAccountsCollStr
139 | String
140 | false
141 | false
142 | false
143 |
144 |
145 | vActionOpArray
146 | String
147 | true
148 | false
149 | false
150 |
151 |
152 | vActionOpString
153 | String
154 | false
155 | false
156 | false
157 |
158 |
159 | vLoopVar
160 | String
161 | false
162 | false
163 | false
164 |
165 |
166 |
--------------------------------------------------------------------------------
/media/flow-anyaction-2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/surajp/any-js-local-action/225d6e387f9bdd8acf53a44de9ab22c2fb04fb3b/media/flow-anyaction-2.gif
--------------------------------------------------------------------------------
/media/flow-anyaction-3.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/surajp/any-js-local-action/225d6e387f9bdd8acf53a44de9ab22c2fb04fb3b/media/flow-anyaction-3.gif
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "any-js-local-action",
3 | "version": "1.0.0",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "@babel/code-frame": {
8 | "version": "7.10.1",
9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.10.1.tgz",
10 | "integrity": "sha512-IGhtTmpjGbYzcEDOw7DcQtbQSXcG9ftmAXtWTu9V936vDye4xjjekktFAtgZsWpzTj/X01jocB46mTywm/4SZw==",
11 | "dev": true,
12 | "requires": {
13 | "@babel/highlight": "^7.10.1"
14 | }
15 | },
16 | "@babel/helper-validator-identifier": {
17 | "version": "7.10.1",
18 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.1.tgz",
19 | "integrity": "sha512-5vW/JXLALhczRCWP0PnFDMCJAchlBvM7f4uk/jXritBnIa6E1KmqmtrS3yn1LAnxFBypQ3eneLuXjsnfQsgILw==",
20 | "dev": true
21 | },
22 | "@babel/highlight": {
23 | "version": "7.10.1",
24 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.1.tgz",
25 | "integrity": "sha512-8rMof+gVP8mxYZApLF/JgNDAkdKa+aJt3ZYxF8z6+j/hpeXL7iMsKCPHa2jNMHu/qqBwzQF4OHNoYi8dMA/rYg==",
26 | "dev": true,
27 | "requires": {
28 | "@babel/helper-validator-identifier": "^7.10.1",
29 | "chalk": "^2.0.0",
30 | "js-tokens": "^4.0.0"
31 | },
32 | "dependencies": {
33 | "chalk": {
34 | "version": "2.4.2",
35 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
36 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
37 | "dev": true,
38 | "requires": {
39 | "ansi-styles": "^3.2.1",
40 | "escape-string-regexp": "^1.0.5",
41 | "supports-color": "^5.3.0"
42 | }
43 | }
44 | }
45 | },
46 | "@types/color-name": {
47 | "version": "1.1.1",
48 | "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz",
49 | "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==",
50 | "dev": true
51 | },
52 | "acorn": {
53 | "version": "7.3.1",
54 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.3.1.tgz",
55 | "integrity": "sha512-tLc0wSnatxAQHVHUapaHdz72pi9KUyHjq5KyHjGg9Y8Ifdc79pTh2XvI6I1/chZbnM7QtNKzh66ooDogPZSleA==",
56 | "dev": true
57 | },
58 | "acorn-jsx": {
59 | "version": "5.2.0",
60 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz",
61 | "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==",
62 | "dev": true
63 | },
64 | "ajv": {
65 | "version": "6.12.2",
66 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz",
67 | "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==",
68 | "dev": true,
69 | "requires": {
70 | "fast-deep-equal": "^3.1.1",
71 | "fast-json-stable-stringify": "^2.0.0",
72 | "json-schema-traverse": "^0.4.1",
73 | "uri-js": "^4.2.2"
74 | }
75 | },
76 | "ansi-escapes": {
77 | "version": "4.3.1",
78 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz",
79 | "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==",
80 | "dev": true,
81 | "requires": {
82 | "type-fest": "^0.11.0"
83 | },
84 | "dependencies": {
85 | "type-fest": {
86 | "version": "0.11.0",
87 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz",
88 | "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==",
89 | "dev": true
90 | }
91 | }
92 | },
93 | "ansi-regex": {
94 | "version": "5.0.0",
95 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz",
96 | "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==",
97 | "dev": true
98 | },
99 | "ansi-styles": {
100 | "version": "3.2.1",
101 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
102 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
103 | "dev": true,
104 | "requires": {
105 | "color-convert": "^1.9.0"
106 | }
107 | },
108 | "argparse": {
109 | "version": "1.0.10",
110 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
111 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
112 | "dev": true,
113 | "requires": {
114 | "sprintf-js": "~1.0.2"
115 | }
116 | },
117 | "astral-regex": {
118 | "version": "1.0.0",
119 | "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
120 | "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
121 | "dev": true
122 | },
123 | "balanced-match": {
124 | "version": "1.0.0",
125 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
126 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
127 | "dev": true
128 | },
129 | "brace-expansion": {
130 | "version": "1.1.11",
131 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
132 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
133 | "dev": true,
134 | "requires": {
135 | "balanced-match": "^1.0.0",
136 | "concat-map": "0.0.1"
137 | }
138 | },
139 | "callsites": {
140 | "version": "3.1.0",
141 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
142 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
143 | "dev": true
144 | },
145 | "chalk": {
146 | "version": "4.1.0",
147 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
148 | "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
149 | "dev": true,
150 | "requires": {
151 | "ansi-styles": "^4.1.0",
152 | "supports-color": "^7.1.0"
153 | },
154 | "dependencies": {
155 | "ansi-styles": {
156 | "version": "4.2.1",
157 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
158 | "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
159 | "dev": true,
160 | "requires": {
161 | "@types/color-name": "^1.1.1",
162 | "color-convert": "^2.0.1"
163 | }
164 | },
165 | "color-convert": {
166 | "version": "2.0.1",
167 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
168 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
169 | "dev": true,
170 | "requires": {
171 | "color-name": "~1.1.4"
172 | }
173 | },
174 | "color-name": {
175 | "version": "1.1.4",
176 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
177 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
178 | "dev": true
179 | },
180 | "has-flag": {
181 | "version": "4.0.0",
182 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
183 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
184 | "dev": true
185 | },
186 | "supports-color": {
187 | "version": "7.1.0",
188 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
189 | "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
190 | "dev": true,
191 | "requires": {
192 | "has-flag": "^4.0.0"
193 | }
194 | }
195 | }
196 | },
197 | "chardet": {
198 | "version": "0.7.0",
199 | "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
200 | "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
201 | "dev": true
202 | },
203 | "cli-cursor": {
204 | "version": "3.1.0",
205 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
206 | "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
207 | "dev": true,
208 | "requires": {
209 | "restore-cursor": "^3.1.0"
210 | }
211 | },
212 | "cli-width": {
213 | "version": "2.2.1",
214 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz",
215 | "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==",
216 | "dev": true
217 | },
218 | "color-convert": {
219 | "version": "1.9.3",
220 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
221 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
222 | "dev": true,
223 | "requires": {
224 | "color-name": "1.1.3"
225 | }
226 | },
227 | "color-name": {
228 | "version": "1.1.3",
229 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
230 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
231 | "dev": true
232 | },
233 | "concat-map": {
234 | "version": "0.0.1",
235 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
236 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
237 | "dev": true
238 | },
239 | "cross-spawn": {
240 | "version": "7.0.3",
241 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
242 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
243 | "dev": true,
244 | "requires": {
245 | "path-key": "^3.1.0",
246 | "shebang-command": "^2.0.0",
247 | "which": "^2.0.1"
248 | }
249 | },
250 | "debug": {
251 | "version": "4.1.1",
252 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz",
253 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==",
254 | "dev": true,
255 | "requires": {
256 | "ms": "^2.1.1"
257 | }
258 | },
259 | "deep-is": {
260 | "version": "0.1.3",
261 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
262 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
263 | "dev": true
264 | },
265 | "doctrine": {
266 | "version": "3.0.0",
267 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
268 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
269 | "dev": true,
270 | "requires": {
271 | "esutils": "^2.0.2"
272 | }
273 | },
274 | "emoji-regex": {
275 | "version": "8.0.0",
276 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
277 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
278 | "dev": true
279 | },
280 | "escape-string-regexp": {
281 | "version": "1.0.5",
282 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
283 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
284 | "dev": true
285 | },
286 | "eslint": {
287 | "version": "7.2.0",
288 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.2.0.tgz",
289 | "integrity": "sha512-B3BtEyaDKC5MlfDa2Ha8/D6DsS4fju95zs0hjS3HdGazw+LNayai38A25qMppK37wWGWNYSPOR6oYzlz5MHsRQ==",
290 | "dev": true,
291 | "requires": {
292 | "@babel/code-frame": "^7.0.0",
293 | "ajv": "^6.10.0",
294 | "chalk": "^4.0.0",
295 | "cross-spawn": "^7.0.2",
296 | "debug": "^4.0.1",
297 | "doctrine": "^3.0.0",
298 | "eslint-scope": "^5.1.0",
299 | "eslint-utils": "^2.0.0",
300 | "eslint-visitor-keys": "^1.2.0",
301 | "espree": "^7.1.0",
302 | "esquery": "^1.2.0",
303 | "esutils": "^2.0.2",
304 | "file-entry-cache": "^5.0.1",
305 | "functional-red-black-tree": "^1.0.1",
306 | "glob-parent": "^5.0.0",
307 | "globals": "^12.1.0",
308 | "ignore": "^4.0.6",
309 | "import-fresh": "^3.0.0",
310 | "imurmurhash": "^0.1.4",
311 | "inquirer": "^7.0.0",
312 | "is-glob": "^4.0.0",
313 | "js-yaml": "^3.13.1",
314 | "json-stable-stringify-without-jsonify": "^1.0.1",
315 | "levn": "^0.4.1",
316 | "lodash": "^4.17.14",
317 | "minimatch": "^3.0.4",
318 | "natural-compare": "^1.4.0",
319 | "optionator": "^0.9.1",
320 | "progress": "^2.0.0",
321 | "regexpp": "^3.1.0",
322 | "semver": "^7.2.1",
323 | "strip-ansi": "^6.0.0",
324 | "strip-json-comments": "^3.1.0",
325 | "table": "^5.2.3",
326 | "text-table": "^0.2.0",
327 | "v8-compile-cache": "^2.0.3"
328 | }
329 | },
330 | "eslint-scope": {
331 | "version": "5.1.0",
332 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz",
333 | "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==",
334 | "dev": true,
335 | "requires": {
336 | "esrecurse": "^4.1.0",
337 | "estraverse": "^4.1.1"
338 | }
339 | },
340 | "eslint-utils": {
341 | "version": "2.0.0",
342 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz",
343 | "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==",
344 | "dev": true,
345 | "requires": {
346 | "eslint-visitor-keys": "^1.1.0"
347 | }
348 | },
349 | "eslint-visitor-keys": {
350 | "version": "1.2.0",
351 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.2.0.tgz",
352 | "integrity": "sha512-WFb4ihckKil6hu3Dp798xdzSfddwKKU3+nGniKF6HfeW6OLd2OUDEPP7TcHtB5+QXOKg2s6B2DaMPE1Nn/kxKQ==",
353 | "dev": true
354 | },
355 | "espree": {
356 | "version": "7.1.0",
357 | "resolved": "https://registry.npmjs.org/espree/-/espree-7.1.0.tgz",
358 | "integrity": "sha512-dcorZSyfmm4WTuTnE5Y7MEN1DyoPYy1ZR783QW1FJoenn7RailyWFsq/UL6ZAAA7uXurN9FIpYyUs3OfiIW+Qw==",
359 | "dev": true,
360 | "requires": {
361 | "acorn": "^7.2.0",
362 | "acorn-jsx": "^5.2.0",
363 | "eslint-visitor-keys": "^1.2.0"
364 | }
365 | },
366 | "esprima": {
367 | "version": "4.0.1",
368 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
369 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
370 | "dev": true
371 | },
372 | "esquery": {
373 | "version": "1.3.1",
374 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz",
375 | "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==",
376 | "dev": true,
377 | "requires": {
378 | "estraverse": "^5.1.0"
379 | },
380 | "dependencies": {
381 | "estraverse": {
382 | "version": "5.1.0",
383 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz",
384 | "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==",
385 | "dev": true
386 | }
387 | }
388 | },
389 | "esrecurse": {
390 | "version": "4.2.1",
391 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
392 | "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
393 | "dev": true,
394 | "requires": {
395 | "estraverse": "^4.1.0"
396 | }
397 | },
398 | "estraverse": {
399 | "version": "4.3.0",
400 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
401 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
402 | "dev": true
403 | },
404 | "esutils": {
405 | "version": "2.0.3",
406 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
407 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
408 | "dev": true
409 | },
410 | "external-editor": {
411 | "version": "3.1.0",
412 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
413 | "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
414 | "dev": true,
415 | "requires": {
416 | "chardet": "^0.7.0",
417 | "iconv-lite": "^0.4.24",
418 | "tmp": "^0.0.33"
419 | }
420 | },
421 | "fast-deep-equal": {
422 | "version": "3.1.3",
423 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
424 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
425 | "dev": true
426 | },
427 | "fast-json-stable-stringify": {
428 | "version": "2.1.0",
429 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
430 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
431 | "dev": true
432 | },
433 | "fast-levenshtein": {
434 | "version": "2.0.6",
435 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
436 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
437 | "dev": true
438 | },
439 | "figures": {
440 | "version": "3.2.0",
441 | "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
442 | "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
443 | "dev": true,
444 | "requires": {
445 | "escape-string-regexp": "^1.0.5"
446 | }
447 | },
448 | "file-entry-cache": {
449 | "version": "5.0.1",
450 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
451 | "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
452 | "dev": true,
453 | "requires": {
454 | "flat-cache": "^2.0.1"
455 | }
456 | },
457 | "flat-cache": {
458 | "version": "2.0.1",
459 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
460 | "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
461 | "dev": true,
462 | "requires": {
463 | "flatted": "^2.0.0",
464 | "rimraf": "2.6.3",
465 | "write": "1.0.3"
466 | }
467 | },
468 | "flatted": {
469 | "version": "2.0.2",
470 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz",
471 | "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==",
472 | "dev": true
473 | },
474 | "fs.realpath": {
475 | "version": "1.0.0",
476 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
477 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
478 | "dev": true
479 | },
480 | "functional-red-black-tree": {
481 | "version": "1.0.1",
482 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
483 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
484 | "dev": true
485 | },
486 | "glob": {
487 | "version": "7.1.6",
488 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
489 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==",
490 | "dev": true,
491 | "requires": {
492 | "fs.realpath": "^1.0.0",
493 | "inflight": "^1.0.4",
494 | "inherits": "2",
495 | "minimatch": "^3.0.4",
496 | "once": "^1.3.0",
497 | "path-is-absolute": "^1.0.0"
498 | }
499 | },
500 | "glob-parent": {
501 | "version": "5.1.2",
502 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
503 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
504 | "dev": true,
505 | "requires": {
506 | "is-glob": "^4.0.1"
507 | }
508 | },
509 | "globals": {
510 | "version": "12.4.0",
511 | "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
512 | "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
513 | "dev": true,
514 | "requires": {
515 | "type-fest": "^0.8.1"
516 | }
517 | },
518 | "has-flag": {
519 | "version": "3.0.0",
520 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
521 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
522 | "dev": true
523 | },
524 | "iconv-lite": {
525 | "version": "0.4.24",
526 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
527 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
528 | "dev": true,
529 | "requires": {
530 | "safer-buffer": ">= 2.1.2 < 3"
531 | }
532 | },
533 | "ignore": {
534 | "version": "4.0.6",
535 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
536 | "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
537 | "dev": true
538 | },
539 | "import-fresh": {
540 | "version": "3.2.1",
541 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz",
542 | "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==",
543 | "dev": true,
544 | "requires": {
545 | "parent-module": "^1.0.0",
546 | "resolve-from": "^4.0.0"
547 | }
548 | },
549 | "imurmurhash": {
550 | "version": "0.1.4",
551 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
552 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
553 | "dev": true
554 | },
555 | "inflight": {
556 | "version": "1.0.6",
557 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
558 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
559 | "dev": true,
560 | "requires": {
561 | "once": "^1.3.0",
562 | "wrappy": "1"
563 | }
564 | },
565 | "inherits": {
566 | "version": "2.0.4",
567 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
568 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
569 | "dev": true
570 | },
571 | "inquirer": {
572 | "version": "7.1.0",
573 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz",
574 | "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==",
575 | "dev": true,
576 | "requires": {
577 | "ansi-escapes": "^4.2.1",
578 | "chalk": "^3.0.0",
579 | "cli-cursor": "^3.1.0",
580 | "cli-width": "^2.0.0",
581 | "external-editor": "^3.0.3",
582 | "figures": "^3.0.0",
583 | "lodash": "^4.17.15",
584 | "mute-stream": "0.0.8",
585 | "run-async": "^2.4.0",
586 | "rxjs": "^6.5.3",
587 | "string-width": "^4.1.0",
588 | "strip-ansi": "^6.0.0",
589 | "through": "^2.3.6"
590 | },
591 | "dependencies": {
592 | "ansi-styles": {
593 | "version": "4.2.1",
594 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz",
595 | "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==",
596 | "dev": true,
597 | "requires": {
598 | "@types/color-name": "^1.1.1",
599 | "color-convert": "^2.0.1"
600 | }
601 | },
602 | "chalk": {
603 | "version": "3.0.0",
604 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
605 | "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
606 | "dev": true,
607 | "requires": {
608 | "ansi-styles": "^4.1.0",
609 | "supports-color": "^7.1.0"
610 | }
611 | },
612 | "color-convert": {
613 | "version": "2.0.1",
614 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
615 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
616 | "dev": true,
617 | "requires": {
618 | "color-name": "~1.1.4"
619 | }
620 | },
621 | "color-name": {
622 | "version": "1.1.4",
623 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
624 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
625 | "dev": true
626 | },
627 | "has-flag": {
628 | "version": "4.0.0",
629 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
630 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
631 | "dev": true
632 | },
633 | "supports-color": {
634 | "version": "7.1.0",
635 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz",
636 | "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==",
637 | "dev": true,
638 | "requires": {
639 | "has-flag": "^4.0.0"
640 | }
641 | }
642 | }
643 | },
644 | "is-extglob": {
645 | "version": "2.1.1",
646 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
647 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
648 | "dev": true
649 | },
650 | "is-fullwidth-code-point": {
651 | "version": "3.0.0",
652 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
653 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
654 | "dev": true
655 | },
656 | "is-glob": {
657 | "version": "4.0.1",
658 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
659 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==",
660 | "dev": true,
661 | "requires": {
662 | "is-extglob": "^2.1.1"
663 | }
664 | },
665 | "isexe": {
666 | "version": "2.0.0",
667 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
668 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
669 | "dev": true
670 | },
671 | "js-tokens": {
672 | "version": "4.0.0",
673 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
674 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
675 | "dev": true
676 | },
677 | "js-yaml": {
678 | "version": "3.14.0",
679 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz",
680 | "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==",
681 | "dev": true,
682 | "requires": {
683 | "argparse": "^1.0.7",
684 | "esprima": "^4.0.0"
685 | }
686 | },
687 | "json-schema-traverse": {
688 | "version": "0.4.1",
689 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
690 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
691 | "dev": true
692 | },
693 | "json-stable-stringify-without-jsonify": {
694 | "version": "1.0.1",
695 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
696 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
697 | "dev": true
698 | },
699 | "levn": {
700 | "version": "0.4.1",
701 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
702 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
703 | "dev": true,
704 | "requires": {
705 | "prelude-ls": "^1.2.1",
706 | "type-check": "~0.4.0"
707 | }
708 | },
709 | "lodash": {
710 | "version": "4.17.21",
711 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
712 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
713 | "dev": true
714 | },
715 | "mimic-fn": {
716 | "version": "2.1.0",
717 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
718 | "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
719 | "dev": true
720 | },
721 | "minimatch": {
722 | "version": "3.0.4",
723 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
724 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
725 | "dev": true,
726 | "requires": {
727 | "brace-expansion": "^1.1.7"
728 | }
729 | },
730 | "minimist": {
731 | "version": "1.2.5",
732 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
733 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
734 | "dev": true
735 | },
736 | "mkdirp": {
737 | "version": "0.5.5",
738 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
739 | "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
740 | "dev": true,
741 | "requires": {
742 | "minimist": "^1.2.5"
743 | }
744 | },
745 | "ms": {
746 | "version": "2.1.2",
747 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
748 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
749 | "dev": true
750 | },
751 | "mute-stream": {
752 | "version": "0.0.8",
753 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
754 | "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
755 | "dev": true
756 | },
757 | "natural-compare": {
758 | "version": "1.4.0",
759 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
760 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
761 | "dev": true
762 | },
763 | "once": {
764 | "version": "1.4.0",
765 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
766 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
767 | "dev": true,
768 | "requires": {
769 | "wrappy": "1"
770 | }
771 | },
772 | "onetime": {
773 | "version": "5.1.0",
774 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz",
775 | "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==",
776 | "dev": true,
777 | "requires": {
778 | "mimic-fn": "^2.1.0"
779 | }
780 | },
781 | "optionator": {
782 | "version": "0.9.1",
783 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz",
784 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==",
785 | "dev": true,
786 | "requires": {
787 | "deep-is": "^0.1.3",
788 | "fast-levenshtein": "^2.0.6",
789 | "levn": "^0.4.1",
790 | "prelude-ls": "^1.2.1",
791 | "type-check": "^0.4.0",
792 | "word-wrap": "^1.2.3"
793 | }
794 | },
795 | "os-tmpdir": {
796 | "version": "1.0.2",
797 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
798 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
799 | "dev": true
800 | },
801 | "parent-module": {
802 | "version": "1.0.1",
803 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
804 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
805 | "dev": true,
806 | "requires": {
807 | "callsites": "^3.0.0"
808 | }
809 | },
810 | "path-is-absolute": {
811 | "version": "1.0.1",
812 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
813 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
814 | "dev": true
815 | },
816 | "path-key": {
817 | "version": "3.1.1",
818 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
819 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
820 | "dev": true
821 | },
822 | "prelude-ls": {
823 | "version": "1.2.1",
824 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
825 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
826 | "dev": true
827 | },
828 | "progress": {
829 | "version": "2.0.3",
830 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
831 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
832 | "dev": true
833 | },
834 | "punycode": {
835 | "version": "2.1.1",
836 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
837 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
838 | "dev": true
839 | },
840 | "regexpp": {
841 | "version": "3.1.0",
842 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz",
843 | "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==",
844 | "dev": true
845 | },
846 | "resolve-from": {
847 | "version": "4.0.0",
848 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
849 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
850 | "dev": true
851 | },
852 | "restore-cursor": {
853 | "version": "3.1.0",
854 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
855 | "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
856 | "dev": true,
857 | "requires": {
858 | "onetime": "^5.1.0",
859 | "signal-exit": "^3.0.2"
860 | }
861 | },
862 | "rimraf": {
863 | "version": "2.6.3",
864 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
865 | "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
866 | "dev": true,
867 | "requires": {
868 | "glob": "^7.1.3"
869 | }
870 | },
871 | "run-async": {
872 | "version": "2.4.1",
873 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
874 | "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
875 | "dev": true
876 | },
877 | "rxjs": {
878 | "version": "6.5.5",
879 | "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz",
880 | "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==",
881 | "dev": true,
882 | "requires": {
883 | "tslib": "^1.9.0"
884 | }
885 | },
886 | "safer-buffer": {
887 | "version": "2.1.2",
888 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
889 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
890 | "dev": true
891 | },
892 | "semver": {
893 | "version": "7.3.2",
894 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz",
895 | "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==",
896 | "dev": true
897 | },
898 | "shebang-command": {
899 | "version": "2.0.0",
900 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
901 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
902 | "dev": true,
903 | "requires": {
904 | "shebang-regex": "^3.0.0"
905 | }
906 | },
907 | "shebang-regex": {
908 | "version": "3.0.0",
909 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
910 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
911 | "dev": true
912 | },
913 | "signal-exit": {
914 | "version": "3.0.3",
915 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz",
916 | "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==",
917 | "dev": true
918 | },
919 | "slice-ansi": {
920 | "version": "2.1.0",
921 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
922 | "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
923 | "dev": true,
924 | "requires": {
925 | "ansi-styles": "^3.2.0",
926 | "astral-regex": "^1.0.0",
927 | "is-fullwidth-code-point": "^2.0.0"
928 | },
929 | "dependencies": {
930 | "is-fullwidth-code-point": {
931 | "version": "2.0.0",
932 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
933 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
934 | "dev": true
935 | }
936 | }
937 | },
938 | "sprintf-js": {
939 | "version": "1.0.3",
940 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
941 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
942 | "dev": true
943 | },
944 | "string-width": {
945 | "version": "4.2.0",
946 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
947 | "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
948 | "dev": true,
949 | "requires": {
950 | "emoji-regex": "^8.0.0",
951 | "is-fullwidth-code-point": "^3.0.0",
952 | "strip-ansi": "^6.0.0"
953 | }
954 | },
955 | "strip-ansi": {
956 | "version": "6.0.0",
957 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
958 | "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
959 | "dev": true,
960 | "requires": {
961 | "ansi-regex": "^5.0.0"
962 | }
963 | },
964 | "strip-json-comments": {
965 | "version": "3.1.0",
966 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz",
967 | "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==",
968 | "dev": true
969 | },
970 | "supports-color": {
971 | "version": "5.5.0",
972 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
973 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
974 | "dev": true,
975 | "requires": {
976 | "has-flag": "^3.0.0"
977 | }
978 | },
979 | "table": {
980 | "version": "5.4.6",
981 | "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
982 | "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
983 | "dev": true,
984 | "requires": {
985 | "ajv": "^6.10.2",
986 | "lodash": "^4.17.14",
987 | "slice-ansi": "^2.1.0",
988 | "string-width": "^3.0.0"
989 | },
990 | "dependencies": {
991 | "ansi-regex": {
992 | "version": "4.1.0",
993 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
994 | "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
995 | "dev": true
996 | },
997 | "emoji-regex": {
998 | "version": "7.0.3",
999 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
1000 | "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
1001 | "dev": true
1002 | },
1003 | "is-fullwidth-code-point": {
1004 | "version": "2.0.0",
1005 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1006 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1007 | "dev": true
1008 | },
1009 | "string-width": {
1010 | "version": "3.1.0",
1011 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
1012 | "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
1013 | "dev": true,
1014 | "requires": {
1015 | "emoji-regex": "^7.0.1",
1016 | "is-fullwidth-code-point": "^2.0.0",
1017 | "strip-ansi": "^5.1.0"
1018 | }
1019 | },
1020 | "strip-ansi": {
1021 | "version": "5.2.0",
1022 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
1023 | "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
1024 | "dev": true,
1025 | "requires": {
1026 | "ansi-regex": "^4.1.0"
1027 | }
1028 | }
1029 | }
1030 | },
1031 | "text-table": {
1032 | "version": "0.2.0",
1033 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1034 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
1035 | "dev": true
1036 | },
1037 | "through": {
1038 | "version": "2.3.8",
1039 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
1040 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
1041 | "dev": true
1042 | },
1043 | "tmp": {
1044 | "version": "0.0.33",
1045 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
1046 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
1047 | "dev": true,
1048 | "requires": {
1049 | "os-tmpdir": "~1.0.2"
1050 | }
1051 | },
1052 | "tslib": {
1053 | "version": "1.13.0",
1054 | "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz",
1055 | "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==",
1056 | "dev": true
1057 | },
1058 | "type-check": {
1059 | "version": "0.4.0",
1060 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
1061 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
1062 | "dev": true,
1063 | "requires": {
1064 | "prelude-ls": "^1.2.1"
1065 | }
1066 | },
1067 | "type-fest": {
1068 | "version": "0.8.1",
1069 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
1070 | "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
1071 | "dev": true
1072 | },
1073 | "uri-js": {
1074 | "version": "4.2.2",
1075 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz",
1076 | "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==",
1077 | "dev": true,
1078 | "requires": {
1079 | "punycode": "^2.1.0"
1080 | }
1081 | },
1082 | "v8-compile-cache": {
1083 | "version": "2.1.1",
1084 | "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz",
1085 | "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==",
1086 | "dev": true
1087 | },
1088 | "which": {
1089 | "version": "2.0.2",
1090 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
1091 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
1092 | "dev": true,
1093 | "requires": {
1094 | "isexe": "^2.0.0"
1095 | }
1096 | },
1097 | "word-wrap": {
1098 | "version": "1.2.3",
1099 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
1100 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
1101 | "dev": true
1102 | },
1103 | "wrappy": {
1104 | "version": "1.0.2",
1105 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1106 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
1107 | "dev": true
1108 | },
1109 | "write": {
1110 | "version": "1.0.3",
1111 | "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
1112 | "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
1113 | "dev": true,
1114 | "requires": {
1115 | "mkdirp": "^0.5.1"
1116 | }
1117 | }
1118 | }
1119 | }
1120 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "any-js-local-action",
3 | "version": "1.0.0",
4 | "description": "Convert strings in flows to arrays/collections, concat, use map, reduce, filters, and more..!.",
5 | "main": "index.js",
6 | "dependencies": {},
7 | "devDependencies": {
8 | "eslint": "^7.2.0"
9 | },
10 | "scripts": {
11 | "test": "echo \"Error: no test specified\" && exit 1"
12 | },
13 | "repository": {
14 | "type": "git",
15 | "url": "git@suraj.github.com:surajp/any-js-local-action.git"
16 | },
17 | "keywords": [],
18 | "author": "",
19 | "license": "ISC"
20 | }
21 |
--------------------------------------------------------------------------------
/sfdx-project.json:
--------------------------------------------------------------------------------
1 | {
2 | "packageDirectories": [
3 | {
4 | "path": "force-app",
5 | "default": true
6 | }
7 | ],
8 | "namespace": "",
9 | "sfdcLoginUrl": "https://login.salesforce.com",
10 | "sourceApiVersion": "48.0"
11 | }
--------------------------------------------------------------------------------