@qodalis/cli-core 0.0.10 → 0.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +108 -19
- package/esm2022/lib/interfaces/command-processor.mjs +2 -0
- package/esm2022/lib/interfaces/execution-context.mjs +2 -0
- package/esm2022/lib/interfaces/index.mjs +4 -2
- package/esm2022/lib/interfaces/progress-bars.mjs +2 -0
- package/esm2022/lib/models/index.mjs +2 -1
- package/esm2022/lib/models/services.mjs +2 -0
- package/fesm2022/qodalis-cli-core.mjs.map +1 -1
- package/lib/interfaces/command-processor.d.ts +126 -0
- package/lib/interfaces/execution-context.d.ts +71 -0
- package/lib/interfaces/index.d.ts +22 -241
- package/lib/interfaces/progress-bars.d.ts +52 -0
- package/lib/models/index.d.ts +2 -1
- package/lib/models/services.d.ts +20 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,19 +4,26 @@
|
|
|
4
4
|
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
## Docs
|
|
8
|
-
|
|
9
|
-
Cli docs [link](https://cli-docs.qodalis.com/)
|
|
10
|
-
|
|
11
7
|
## Features
|
|
12
8
|
|
|
13
9
|
- **Web-Based Terminal**: A terminal interface integrated into your Angular applications.
|
|
14
10
|
- **Custom Command Processors**: Easily extend functionality by creating custom command processors.
|
|
15
11
|
- **Lightweight and Flexible**: Designed to work seamlessly with your existing Angular project.
|
|
16
12
|
- **Interactive Interface**: Enables command execution and response handling in a terminal-like UI.
|
|
13
|
+
- **Extensibility**: The CLI is designed with extensibility in mind, allowing you to enhance its functionality through custom extensions. These extensions can be installed directly from npm and seamlessly integrated into your Angular project by adding them to the imports array in your Angular module.
|
|
14
|
+
- **Package Installation Support**: The CLI allows you to install packages directly from the terminal using the packages add <package> command. This streamlined approach enables you to quickly add dependencies without leaving your terminal, enhancing productivity and simplifying package management.
|
|
15
|
+
- **Logical operators**: Our CLI supports the use of logical operators `&&` and `||`, allowing you to combine multiple commands in a single execution, similar to how they work in Unix-like shells or scripting environments. This feature enhances productivity by chaining commands with conditional logic.
|
|
17
16
|
|
|
18
17
|
---
|
|
19
18
|
|
|
19
|
+
## Live Example
|
|
20
|
+
|
|
21
|
+
Check out a live example of the Qodalis Angular CLI on StackBlitz: [Live Example on StackBlitz](https://stackblitz.com/~/github.com/qodalis-nicolae-lupei/stackblitz-qodalis-cli-example)
|
|
22
|
+
|
|
23
|
+
## Docs
|
|
24
|
+
|
|
25
|
+
Cli docs [link](https://cli-docs.qodalis.com/)
|
|
26
|
+
|
|
20
27
|
## Installation
|
|
21
28
|
|
|
22
29
|
Install the package using npm:
|
|
@@ -27,7 +34,7 @@ npm install @qodalis/angular-cli
|
|
|
27
34
|
|
|
28
35
|
## Usage
|
|
29
36
|
|
|
30
|
-

|
|
31
38
|
|
|
32
39
|
After installing, you can integrate the CLI component into your Angular application:
|
|
33
40
|
|
|
@@ -78,8 +85,13 @@ export class AppModule {}
|
|
|
78
85
|
|
|
79
86
|
```typescript
|
|
80
87
|
cliOptions = {
|
|
81
|
-
welcomeMessage:
|
|
82
|
-
|
|
88
|
+
welcomeMessage: {
|
|
89
|
+
message: "-- your custom welcome message --",
|
|
90
|
+
show: "daily", //never, once
|
|
91
|
+
},
|
|
92
|
+
usersModule: {
|
|
93
|
+
enabled: true,
|
|
94
|
+
},
|
|
83
95
|
};
|
|
84
96
|
```
|
|
85
97
|
|
|
@@ -106,22 +118,28 @@ cliOptions = {
|
|
|
106
118
|
- **adduser**: Add a new user
|
|
107
119
|
- **listusers**: List all users
|
|
108
120
|
|
|
109
|
-
|
|
121
|
+
### Custom
|
|
122
|
+
|
|
123
|
+
See the available packages section.
|
|
110
124
|
|
|
111
|
-
|
|
112
|
-
|
|
125
|
+
## Package Installation Support
|
|
126
|
+
|
|
127
|
+
The CLI allows you to install packages directly from the terminal using the packages add <package> command. This streamlined approach enables you to quickly add dependencies without leaving your terminal, enhancing productivity and simplifying package management.
|
|
128
|
+
|
|
129
|
+
- Installs the specified package seamlessly.
|
|
130
|
+
- Automatically resolves dependencies and integrates the package into cli.
|
|
113
131
|
- Display results in a structured format.
|
|
114
132
|
|
|
115
133
|
### Usage
|
|
116
134
|
|
|
117
|
-

|
|
118
136
|
|
|
119
|
-
### Add a
|
|
137
|
+
### Add a package
|
|
120
138
|
|
|
121
139
|
To add a package, use the packages add command:
|
|
122
140
|
|
|
123
141
|
```bash
|
|
124
|
-
root:~$ packages add <package-
|
|
142
|
+
root:~$ packages add <package-name1> <package-name2> <package-namen>
|
|
125
143
|
```
|
|
126
144
|
|
|
127
145
|
Example:
|
|
@@ -130,20 +148,42 @@ Example:
|
|
|
130
148
|
root:~$ packages add guid
|
|
131
149
|
root:~$ packages add regex
|
|
132
150
|
root:~$ packages add string
|
|
133
|
-
root:~$ packages add
|
|
151
|
+
root:~$ packages add curl
|
|
152
|
+
root:~$ packages add <any npm package that support umd>
|
|
134
153
|
```
|
|
135
154
|
|
|
136
155
|
This command downloads and makes the package available for evaluation.
|
|
137
156
|
|
|
138
|
-
### Remove a
|
|
157
|
+
### Remove a package
|
|
139
158
|
|
|
140
159
|
Remove a package using the `packages remove` command:
|
|
141
160
|
|
|
142
161
|
```bash
|
|
143
|
-
root:~$ packages remove
|
|
162
|
+
root:~$ packages remove guid
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Update a package
|
|
166
|
+
|
|
167
|
+
Update a package using the `packages update` command:
|
|
168
|
+
|
|
169
|
+
```bash
|
|
170
|
+
root:~$ packages update guid # update 1 package
|
|
171
|
+
|
|
172
|
+
root:~$ packages update guid todo # update 2 packages
|
|
173
|
+
|
|
174
|
+
root:~$ packages update # update all packages
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### Example with guid package
|
|
178
|
+
|
|
179
|
+
```bash
|
|
180
|
+
packages add guid
|
|
181
|
+
guid new # output a19a7be4-8818-41b2-b0c2-1c82f8c21826
|
|
182
|
+
guid new -c # copy to the clipboard
|
|
183
|
+
guid new --count=3 # output 3 guid's
|
|
144
184
|
```
|
|
145
185
|
|
|
146
|
-
### Example
|
|
186
|
+
### Example with a npm package
|
|
147
187
|
|
|
148
188
|
```bash
|
|
149
189
|
root:~$ packages add lodash
|
|
@@ -168,6 +208,7 @@ root:~$
|
|
|
168
208
|
- [@qodalis/cli-speed-test](https://www.npmjs.com/package/@qodalis/cli-speed-test) - run the internet speed test
|
|
169
209
|
- [@qodalis/cli-browser-storage](https://www.npmjs.com/package/@qodalis/cli-browser-storage) - provide commands to operate with browser storage like cookie, localStorage etc.
|
|
170
210
|
- [@qodalis/cli-string](https://www.npmjs.com/package/@qodalis/cli-browser-storage) - provide commands to operate with strings.
|
|
211
|
+
- [@qodalis/cli-curl](https://www.npmjs.com/package/@qodalis/cli-curl) - A command-line tool to execute HTTP requests on your server. Supports GET, POST, PUT, DELETE, headers, and body data.
|
|
171
212
|
- [@qodalis/cli-todo](https://www.npmjs.com/package/@qodalis/cli-todo) - A command-line tool for managing your tasks efficiently. Add, list, complete, and remove TODO items with simple commands.
|
|
172
213
|
- More will be implemented ...
|
|
173
214
|
|
|
@@ -221,9 +262,57 @@ Output:
|
|
|
221
262
|
Hello, John!
|
|
222
263
|
```
|
|
223
264
|
|
|
224
|
-
##
|
|
265
|
+
## Extensibility
|
|
225
266
|
|
|
226
|
-
|
|
267
|
+
The CLI is designed with extensibility in mind, allowing you to enhance its functionality through custom extensions. These extensions can be installed directly from npm and seamlessly integrated into your Angular project by adding them to the imports array in your Angular module.
|
|
268
|
+
|
|
269
|
+
How It Works:
|
|
270
|
+
|
|
271
|
+
1. Install the extension from npm:
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
npm install @qodalis/cli-extension-name
|
|
275
|
+
```
|
|
276
|
+
|
|
277
|
+
2. Import and add it to your Angular module:
|
|
278
|
+
|
|
279
|
+
```typescript
|
|
280
|
+
import { ExtensionModule } from "@qodalis/cli-extension-name";
|
|
281
|
+
|
|
282
|
+
@NgModule({
|
|
283
|
+
imports: [
|
|
284
|
+
CliModule,
|
|
285
|
+
ExtensionModule,
|
|
286
|
+
// other imports
|
|
287
|
+
],
|
|
288
|
+
})
|
|
289
|
+
export class AppModule {}
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
Benefits:
|
|
293
|
+
|
|
294
|
+
- Easily extend the CLI with new commands or features.
|
|
295
|
+
- Leverage the rich ecosystem of npm packages to customize your workflow.
|
|
296
|
+
- Keep your CLI lightweight while enabling project-specific functionality through extensions.
|
|
297
|
+
- This flexibility ensures the CLI adapts to your project's needs, fostering scalability and customization.
|
|
298
|
+
|
|
299
|
+
## Logical operators
|
|
300
|
+
|
|
301
|
+
- These logical operators rely on the exit codes of commands:
|
|
302
|
+
|
|
303
|
+
- `0` indicates success.
|
|
304
|
+
- Non-zero values indicate failure.
|
|
305
|
+
|
|
306
|
+
- Commands are executed sequentially in the order specified.
|
|
307
|
+
- Logical operators provide flexibility to handle conditional execution efficiently in automation scripts or complex workflows.
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
# Example with &&
|
|
311
|
+
packages add guid && echo Package installed
|
|
312
|
+
|
|
313
|
+
# Example with ||
|
|
314
|
+
packages add invalid-package || echo Package not installed
|
|
315
|
+
```
|
|
227
316
|
|
|
228
317
|
## Contributing
|
|
229
318
|
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1wcm9jZXNzb3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvaW50ZXJmYWNlcy9jb21tYW5kLXByb2Nlc3Nvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2xpUHJvY2Vzc0NvbW1hbmQsIENsaVByb2Nlc3Nvck1ldGFkYXRhIH0gZnJvbSAnLi4vbW9kZWxzJztcbmltcG9ydCB7IElDbGlFeGVjdXRpb25Db250ZXh0IH0gZnJvbSAnLi9leGVjdXRpb24tY29udGV4dCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNvbW1hbmRBdXRob3Ige1xuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoZSBhdXRob3JcbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZW1haWwgb2YgdGhlIGF1dGhvclxuICAgICAqL1xuICAgIGVtYWlsOiBzdHJpbmc7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNvbW1hbmQgcGFyYW1ldGVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNvbW1hbmRQYXJhbWV0ZXJEZXNjcmlwdG9yIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgcGFyYW1ldGVyXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQWxpYXNlcyBmb3IgdGhlIHBhcmFtZXRlclxuICAgICAqL1xuICAgIGFsaWFzZXM/OiBzdHJpbmdbXTtcblxuICAgIC8qKlxuICAgICAqIEEgZGVzY3JpcHRpb24gb2YgdGhlIHBhcmFtZXRlclxuICAgICAqL1xuICAgIGRlc2NyaXB0aW9uOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCB0aGUgcGFyYW1ldGVyIGlzIHJlcXVpcmVkXG4gICAgICovXG4gICAgcmVxdWlyZWQ6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdHlwZSBvZiB0aGUgcGFyYW1ldGVyXG4gICAgICovXG4gICAgdHlwZTogJ3N0cmluZycgfCAnbnVtYmVyJyB8ICdib29sZWFuJyB8ICdhcnJheScgfCAnb2JqZWN0JyB8IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSBwYXJhbWV0ZXJcbiAgICAgKi9cbiAgICBkZWZhdWx0VmFsdWU/OiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBBIHZhbGlkYXRvciBmdW5jdGlvbiB0aGF0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2YgdGhlIHBhcmFtZXRlclxuICAgICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gdmFsaWRhdGVcbiAgICAgKiBAcmV0dXJucyBBbiBvYmplY3Qgd2l0aCBhIHZhbGlkIHByb3BlcnR5IHRoYXQgaW5kaWNhdGVzIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZCBhbmQgYW4gb3B0aW9uYWwgbWVzc2FnZSBwcm9wZXJ0eSB0aGF0IGNvbnRhaW5zIGEgbWVzc2FnZSB0byBkaXNwbGF5IGlmIHRoZSB2YWx1ZSBpcyBub3QgdmFsaWRcbiAgICAgKi9cbiAgICB2YWxpZGF0b3I/OiAodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICAvKipcbiAgICAgICAgICogSW5kaWNhdGVzIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZFxuICAgICAgICAgKi9cbiAgICAgICAgdmFsaWQ6IGJvb2xlYW47XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEFuIG9wdGlvbmFsIG1lc3NhZ2UgdG8gZGlzcGxheSBpZiB0aGUgdmFsdWUgaXMgbm90IHZhbGlkXG4gICAgICAgICAqL1xuICAgICAgICBtZXNzYWdlPzogc3RyaW5nO1xuICAgIH07XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGNvbW1hbmQgcHJvY2Vzc29yXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNvbW1hbmRQcm9jZXNzb3Ige1xuICAgIC8qKlxuICAgICAqIFRoZSBjb21tYW5kIHRoYXQgdGhpcyBwcm9jZXNzb3IgaGFuZGxlc1xuICAgICAqL1xuICAgIGNvbW1hbmQ6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEEgZGVzY3JpcHRpb24gb2YgdGhlIGNvbW1hbmRcbiAgICAgKi9cbiAgICBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBhdXRob3Igb2YgdGhlIGNvbW1hbmRcbiAgICAgKi9cbiAgICBhdXRob3I/OiBJQ2xpQ29tbWFuZEF1dGhvcjtcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoZSBwcm9jZXNzb3IgY2FuIGhhbmRsZSB1bmxpc3RlZCBjb21tYW5kc1xuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICogQHJlbWFya3MgSWYgdHJ1ZSwgdGhlIHByb2Nlc3NvciBjYW4gaGFuZGxlIHVubGlzdGVkIGNvbW1hbmRzLiBJZiBmYWxzZSwgdGhlIHByb2Nlc3NvciB3aWxsIG9ubHkgaGFuZGxlIGNvbW1hbmRzIHRoYXQgYXJlIGV4cGxpY2l0bHkgbGlzdGVkIGluIHRoZSBwcm9jZXNzb3JzIHByb3BlcnR5XG4gICAgICogQHJlbWFya3MgT3B0aW9uYWwgaWYgdmFsdWVSZXF1aXJlZCBpcyB0cnVlXG4gICAgICovXG4gICAgYWxsb3dVbmxpc3RlZENvbW1hbmRzPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoZSB2YWx1ZSBpcyByZXF1aXJlZFxuICAgICAqL1xuICAgIHZhbHVlUmVxdWlyZWQ/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZlcnNpb24gb2YgdGhlIGNvbW1hbmQgcHJvY2Vzc29yXG4gICAgICogQGRlZmF1bHQgJzEuMC4wJ1xuICAgICAqL1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbWV0YWRhdGEgZm9yIHRoZSBjb21tYW5kIHByb2Nlc3NvclxuICAgICAqL1xuICAgIG1ldGFkYXRhPzogQ2xpUHJvY2Vzc29yTWV0YWRhdGE7XG5cbiAgICAvKipcbiAgICAgKiBQcm9jZXNzb3JzIHRoYXQgYXJlIG5lc3RlZCB1bmRlciB0aGlzIHByb2Nlc3NvclxuICAgICAqL1xuICAgIHByb2Nlc3NvcnM/OiBJQ2xpQ29tbWFuZFByb2Nlc3NvcltdO1xuXG4gICAgLyoqXG4gICAgICogUGFyYW1ldGVycyB0aGF0IHRoZSBjb21tYW5kIGFjY2VwdHNcbiAgICAgKi9cbiAgICBwYXJhbWV0ZXJzPzogSUNsaUNvbW1hbmRQYXJhbWV0ZXJEZXNjcmlwdG9yW107XG5cbiAgICAvKipcbiAgICAgKiBQcm9jZXNzIHRoZSBjb21tYW5kXG4gICAgICogQHBhcmFtIGNvbW1hbmQgVGhlIGNvbW1hbmQgdG8gcHJvY2Vzc1xuICAgICAqIEBwYXJhbSBjb250ZXh0IFRoZSBjb250ZXh0IGluIHdoaWNoIHRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkXG4gICAgICovXG4gICAgcHJvY2Vzc0NvbW1hbmQoXG4gICAgICAgIGNvbW1hbmQ6IENsaVByb2Nlc3NDb21tYW5kLFxuICAgICAgICBjb250ZXh0OiBJQ2xpRXhlY3V0aW9uQ29udGV4dCxcbiAgICApOiBQcm9taXNlPHZvaWQ+O1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgdGhlIGRlc2NyaXB0aW9uIG9mIHRoZSBjb21tYW5kXG4gICAgICogQHBhcmFtIGNvbnRleHQgVGhlIGNvbnRleHQgaW4gd2hpY2ggdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWRcbiAgICAgKi9cbiAgICB3cml0ZURlc2NyaXB0aW9uPyhjb250ZXh0OiBJQ2xpRXhlY3V0aW9uQ29udGV4dCk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBBIGZ1bmN0aW9uIHRoYXQgdmFsaWRhdGVzIHRoZSBjb21tYW5kIGJlZm9yZSBleGVjdXRpb25cbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIHRvIHZhbGlkYXRlXG4gICAgICogQHJldHVybnMgQW4gb2JqZWN0IHdpdGggYSB2YWxpZCBwcm9wZXJ0eSB0aGF0IGluZGljYXRlcyBpZiB0aGUgdmFsdWUgaXMgdmFsaWQgYW5kIGFuIG9wdGlvbmFsIG1lc3NhZ2UgcHJvcGVydHkgdGhhdCBjb250YWlucyBhIG1lc3NhZ2UgdG8gZGlzcGxheSBpZiB0aGUgdmFsdWUgaXMgbm90IHZhbGlkXG4gICAgICovXG4gICAgdmFsaWRhdGVCZWZvcmVFeGVjdXRpb24/OiAoXG4gICAgICAgIGNvbW1hbmQ6IENsaVByb2Nlc3NDb21tYW5kLFxuICAgICAgICBjb250ZXh0OiBJQ2xpRXhlY3V0aW9uQ29udGV4dCxcbiAgICApID0+IHtcbiAgICAgICAgdmFsaWQ6IGJvb2xlYW47XG4gICAgICAgIG1lc3NhZ2U/OiBzdHJpbmc7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIEluaXRpYWxpemUgdGhlIGNvbW1hbmQgcHJvY2Vzc29yXG4gICAgICogQHBhcmFtIGNvbnRleHQgVGhlIGNvbnRleHQgaW4gd2hpY2ggdGhlIGNvbW1hbmQgaXMgZXhlY3V0ZWRcbiAgICAgKi9cbiAgICBpbml0aWFsaXplPyhjb250ZXh0OiBJQ2xpRXhlY3V0aW9uQ29udGV4dCk6IFByb21pc2U8dm9pZD47XG59XG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9uLWNvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvaW50ZXJmYWNlcy9leGVjdXRpb24tY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVybWluYWwgfSBmcm9tICdAeHRlcm0veHRlcm0nO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBJQ2xpQ2xpcGJvYXJkLFxuICAgIElDbGlDb21tYW5kRGF0YVN0b3JlLFxuICAgIElDbGlDb21tYW5kRXhlY3V0b3JTZXJ2aWNlLFxuICAgIElDbGlDb21tYW5kUHJvY2Vzc29yLFxuICAgIElDbGlDb250ZXh0U2VydmljZXMsXG4gICAgSUNsaUV4ZWN1dGlvblByb2Nlc3MsXG4gICAgSUNsaUxvZ2dlcixcbiAgICBJQ2xpUGVyY2VudGFnZVByb2dyZXNzQmFyLFxuICAgIElDbGlTcGlubmVyLFxuICAgIElDbGlUZXJtaW5hbFdyaXRlcixcbn0gZnJvbSAnLic7XG5pbXBvcnQgeyBDbGlPcHRpb25zLCBJQ2xpVXNlclNlc3Npb24gfSBmcm9tICcuLi9tb2RlbHMnO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGNvbnRleHQgaW4gd2hpY2ggYSBjb21tYW5kIGlzIGV4ZWN1dGVkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUV4ZWN1dGlvbkNvbnRleHQge1xuICAgIC8qKlxuICAgICAqIFRoZSBjdXJyZW50IHVzZXIgc2Vzc2lvblxuICAgICAqL1xuICAgIHVzZXJTZXNzaW9uPzogSUNsaVVzZXJTZXNzaW9uO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHNwaW5uZXIgdG8gdXNlIGZvciBzaG93aW5nL2hpZGluZyB0aGUgbG9hZGVyXG4gICAgICovXG4gICAgc3Bpbm5lcj86IElDbGlTcGlubmVyO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHByb2dyZXNzIGJhciB0byB1c2UgZm9yIHNob3dpbmcgcHJvZ3Jlc3NcbiAgICAgKi9cbiAgICBwcm9ncmVzc0JhcjogSUNsaVBlcmNlbnRhZ2VQcm9ncmVzc0JhcjtcblxuICAgIC8qKlxuICAgICAqIEEgc3ViamVjdCB0aGF0IGVtaXRzIHdoZW4gdGhlIGNvbW1hbmQgaXMgYWJvcnRlZFxuICAgICAqL1xuICAgIG9uQWJvcnQ6IFN1YmplY3Q8dm9pZD47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdGVybWluYWwgdG8gdXNlIGZvciB3cml0aW5nXG4gICAgICovXG4gICAgdGVybWluYWw6IFRlcm1pbmFsO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHdyaXRlciB0byB1c2UgZm9yIHdyaXRpbmcgdG8gdGhlIHRlcm1pbmFsXG4gICAgICovXG4gICAgd3JpdGVyOiBJQ2xpVGVybWluYWxXcml0ZXI7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY29tbWFuZCBleGVjdXRvciB0byB1c2UgZm9yIGV4ZWN1dGluZyBjb21tYW5kc1xuICAgICAqL1xuICAgIGV4ZWN1dG9yOiBJQ2xpQ29tbWFuZEV4ZWN1dG9yU2VydmljZTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBjbGlwYm9hcmQgdG8gdXNlIGZvciBjb3B5aW5nL3Bhc3RpbmdcbiAgICAgKi9cbiAgICBjbGlwYm9hcmQ6IElDbGlDbGlwYm9hcmQ7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSBzdG9yZSB0byB1c2UgZm9yIHN0b3JpbmcgZGF0YVxuICAgICAqL1xuICAgIGRhdGFTdG9yZTogSUNsaUNvbW1hbmREYXRhU3RvcmU7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgb3B0aW9ucyBmb3IgdGhlIENMSVxuICAgICAqL1xuICAgIG9wdGlvbnM/OiBDbGlPcHRpb25zO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHByb21wdCB0byB1c2UgZm9yIHByb21wdGluZyB0aGUgdXNlciBmb3IgaW5wdXRcbiAgICAgKi9cbiAgICBzaG93UHJvbXB0OiAoKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogU2V0IHRoZSBjdXJyZW50IHByb2Nlc3NvciBhcyB0aGUgY29udGV4dCBwcm9jZXNzb3IsIGkuZS4gdGhlIHByb2Nlc3NvciB0aGF0IHdpbGwgaGFuZGxlIHRoZSBjb21tYW5kXG4gICAgICogQHBhcmFtIHByb2Nlc3NvciBUaGUgcHJvY2Vzc29yIHRvIHNldFxuICAgICAqIEBwYXJhbSBzaWxlbnQgSW5kaWNhdGVzIGlmIHRoZSBzZXR0aW5nIHNob3VsZCBiZSBzaWxlbnQsIGkuZS4gbm90IHdyaXRlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqL1xuICAgIHNldENvbnRleHRQcm9jZXNzb3IoXG4gICAgICAgIHByb2Nlc3NvcjogSUNsaUNvbW1hbmRQcm9jZXNzb3IsXG4gICAgICAgIHNpbGVudD86IGJvb2xlYW4sXG4gICAgKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBwcm9jZXNzIHRvIHVzZSBmb3IgZXhpdGluZyB0aGUgQ0xJXG4gICAgICovXG4gICAgcHJvY2VzczogSUNsaUV4ZWN1dGlvblByb2Nlc3M7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbG9nZ2VyIHRvIHVzZSBmb3IgbG9nZ2luZ1xuICAgICAqL1xuICAgIGxvZ2dlcjogSUNsaUxvZ2dlcjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBzZXJ2aWNlcyB0byB1c2UgZm9yIHRoZSBDTEkgY29udGV4dFxuICAgICAqL1xuICAgIHNlcnZpY2VzOiBJQ2xpQ29udGV4dFNlcnZpY2VzO1xufVxuIl19
|
|
@@ -1,2 +1,4 @@
|
|
|
1
|
-
export
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvaW50ZXJmYWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGVybWluYWwgfSBmcm9tICdAeHRlcm0veHRlcm0nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgICBDbGlCYWNrZ3JvdW5kQ29sb3IsXG4gICAgQ2xpRm9yZWdyb3VuZENvbG9yLFxuICAgIENsaUxvZ0xldmVsLFxuICAgIENsaU9wdGlvbnMsXG4gICAgQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgQ2xpUHJvY2Vzc29yTWV0YWRhdGEsXG4gICAgSUNsaVVzZXIsXG4gICAgSUNsaVVzZXJTZXNzaW9uLFxufSBmcm9tICcuLi9tb2RlbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIElDbGlDb21tYW5kQXV0aG9yIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgYXV0aG9yXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGVtYWlsIG9mIHRoZSBhdXRob3JcbiAgICAgKi9cbiAgICBlbWFpbDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb21tYW5kIHByb2Nlc3NvclxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlDb21tYW5kUHJvY2Vzc29yIHtcbiAgICAvKipcbiAgICAgKiBUaGUgY29tbWFuZCB0aGF0IHRoaXMgcHJvY2Vzc29yIGhhbmRsZXNcbiAgICAgKi9cbiAgICBjb21tYW5kOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBBIGRlc2NyaXB0aW9uIG9mIHRoZSBjb21tYW5kXG4gICAgICovXG4gICAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgYXV0aG9yIG9mIHRoZSBjb21tYW5kXG4gICAgICovXG4gICAgYXV0aG9yPzogSUNsaUNvbW1hbmRBdXRob3I7XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCB0aGUgcHJvY2Vzc29yIGNhbiBoYW5kbGUgdW5saXN0ZWQgY29tbWFuZHNcbiAgICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgICAqIEByZW1hcmtzIElmIHRydWUsIHRoZSBwcm9jZXNzb3IgY2FuIGhhbmRsZSB1bmxpc3RlZCBjb21tYW5kcy4gSWYgZmFsc2UsIHRoZSBwcm9jZXNzb3Igd2lsbCBvbmx5IGhhbmRsZSBjb21tYW5kcyB0aGF0IGFyZSBleHBsaWNpdGx5IGxpc3RlZCBpbiB0aGUgcHJvY2Vzc29ycyBwcm9wZXJ0eVxuICAgICAqIEByZW1hcmtzIE9wdGlvbmFsIGlmIHZhbHVlUmVxdWlyZWQgaXMgdHJ1ZVxuICAgICAqL1xuICAgIGFsbG93VW5saXN0ZWRDb21tYW5kcz86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCB0aGUgdmFsdWUgaXMgcmVxdWlyZWRcbiAgICAgKi9cbiAgICB2YWx1ZVJlcXVpcmVkPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBjb21tYW5kIHByb2Nlc3NvclxuICAgICAqIEBkZWZhdWx0ICcxLjAuMCdcbiAgICAgKi9cbiAgICB2ZXJzaW9uPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG1ldGFkYXRhIGZvciB0aGUgY29tbWFuZCBwcm9jZXNzb3JcbiAgICAgKi9cbiAgICBtZXRhZGF0YT86IENsaVByb2Nlc3Nvck1ldGFkYXRhO1xuXG4gICAgLyoqXG4gICAgICogUHJvY2Vzc29ycyB0aGF0IGFyZSBuZXN0ZWQgdW5kZXIgdGhpcyBwcm9jZXNzb3JcbiAgICAgKi9cbiAgICBwcm9jZXNzb3JzPzogSUNsaUNvbW1hbmRQcm9jZXNzb3JbXTtcblxuICAgIC8qKlxuICAgICAqIFBhcmFtZXRlcnMgdGhhdCB0aGUgY29tbWFuZCBhY2NlcHRzXG4gICAgICovXG4gICAgcGFyYW1ldGVycz86IElDbGlDb21tYW5kUGFyYW1ldGVyRGVzY3JpcHRvcltdO1xuXG4gICAgLyoqXG4gICAgICogUHJvY2VzcyB0aGUgY29tbWFuZFxuICAgICAqIEBwYXJhbSBjb21tYW5kIFRoZSBjb21tYW5kIHRvIHByb2Nlc3NcbiAgICAgKiBAcGFyYW0gY29udGV4dCBUaGUgY29udGV4dCBpbiB3aGljaCB0aGUgY29tbWFuZCBpcyBleGVjdXRlZFxuICAgICAqL1xuICAgIHByb2Nlc3NDb21tYW5kKFxuICAgICAgICBjb21tYW5kOiBDbGlQcm9jZXNzQ29tbWFuZCxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIHRoZSBkZXNjcmlwdGlvbiBvZiB0aGUgY29tbWFuZFxuICAgICAqIEBwYXJhbSBjb250ZXh0IFRoZSBjb250ZXh0IGluIHdoaWNoIHRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkXG4gICAgICovXG4gICAgd3JpdGVEZXNjcmlwdGlvbj8oY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQpOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogQSBmdW5jdGlvbiB0aGF0IHZhbGlkYXRlcyB0aGUgY29tbWFuZCBiZWZvcmUgZXhlY3V0aW9uXG4gICAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSB0byB2YWxpZGF0ZVxuICAgICAqIEByZXR1cm5zIEFuIG9iamVjdCB3aXRoIGEgdmFsaWQgcHJvcGVydHkgdGhhdCBpbmRpY2F0ZXMgaWYgdGhlIHZhbHVlIGlzIHZhbGlkIGFuZCBhbiBvcHRpb25hbCBtZXNzYWdlIHByb3BlcnR5IHRoYXQgY29udGFpbnMgYSBtZXNzYWdlIHRvIGRpc3BsYXkgaWYgdGhlIHZhbHVlIGlzIG5vdCB2YWxpZFxuICAgICAqL1xuICAgIHZhbGlkYXRlQmVmb3JlRXhlY3V0aW9uPzogKFxuICAgICAgICBjb21tYW5kOiBDbGlQcm9jZXNzQ29tbWFuZCxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKSA9PiB7XG4gICAgICAgIHZhbGlkOiBib29sZWFuO1xuICAgICAgICBtZXNzYWdlPzogc3RyaW5nO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBJbml0aWFsaXplIHRoZSBjb21tYW5kIHByb2Nlc3NvclxuICAgICAqIEBwYXJhbSBjb250ZXh0IFRoZSBjb250ZXh0IGluIHdoaWNoIHRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkXG4gICAgICovXG4gICAgaW5pdGlhbGl6ZT8oY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBjb21tYW5kIHBhcmFtZXRlclxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlDb21tYW5kUGFyYW1ldGVyRGVzY3JpcHRvciB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIHBhcmFtZXRlclxuICAgICAqL1xuICAgIG5hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEFsaWFzZXMgZm9yIHRoZSBwYXJhbWV0ZXJcbiAgICAgKi9cbiAgICBhbGlhc2VzPzogc3RyaW5nW107XG5cbiAgICAvKipcbiAgICAgKiBBIGRlc2NyaXB0aW9uIG9mIHRoZSBwYXJhbWV0ZXJcbiAgICAgKi9cbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgdGhlIHBhcmFtZXRlciBpcyByZXF1aXJlZFxuICAgICAqL1xuICAgIHJlcXVpcmVkOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHR5cGUgb2YgdGhlIHBhcmFtZXRlclxuICAgICAqL1xuICAgIHR5cGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBkZWZhdWx0IHZhbHVlIG9mIHRoZSBwYXJhbWV0ZXJcbiAgICAgKi9cbiAgICBkZWZhdWx0VmFsdWU/OiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBBIHZhbGlkYXRvciBmdW5jdGlvbiB0aGF0IHZhbGlkYXRlcyB0aGUgdmFsdWUgb2YgdGhlIHBhcmFtZXRlclxuICAgICAqIEBwYXJhbSB2YWx1ZSBUaGUgdmFsdWUgdG8gdmFsaWRhdGVcbiAgICAgKiBAcmV0dXJucyBBbiBvYmplY3Qgd2l0aCBhIHZhbGlkIHByb3BlcnR5IHRoYXQgaW5kaWNhdGVzIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZCBhbmQgYW4gb3B0aW9uYWwgbWVzc2FnZSBwcm9wZXJ0eSB0aGF0IGNvbnRhaW5zIGEgbWVzc2FnZSB0byBkaXNwbGF5IGlmIHRoZSB2YWx1ZSBpcyBub3QgdmFsaWRcbiAgICAgKi9cbiAgICB2YWxpZGF0b3I/OiAodmFsdWU6IGFueSkgPT4ge1xuICAgICAgICAvKipcbiAgICAgICAgICogSW5kaWNhdGVzIGlmIHRoZSB2YWx1ZSBpcyB2YWxpZFxuICAgICAgICAgKi9cbiAgICAgICAgdmFsaWQ6IGJvb2xlYW47XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEFuIG9wdGlvbmFsIG1lc3NhZ2UgdG8gZGlzcGxheSBpZiB0aGUgdmFsdWUgaXMgbm90IHZhbGlkXG4gICAgICAgICAqL1xuICAgICAgICBtZXNzYWdlPzogc3RyaW5nO1xuICAgIH07XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaVRlcm1pbmFsV3JpdGVyIHtcbiAgICAvKipcbiAgICAgKiBXcml0ZSB0ZXh0IHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIHdyaXRlXG4gICAgICovXG4gICAgd3JpdGUodGV4dDogc3RyaW5nKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIHRleHQgdG8gdGhlIHRlcm1pbmFsIGZvbGxvd2VkIGJ5IGEgbmV3bGluZVxuICAgICAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIHdyaXRlXG4gICAgICovXG4gICAgd3JpdGVsbih0ZXh0Pzogc3RyaW5nKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIGEgc3VjY2VzcyBtZXNzYWdlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBtZXNzYWcgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVTdWNjZXNzOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYW4gaW5mbyBtZXNzYWdlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBtZXNzYWcgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVJbmZvOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYW4gZXJyb3IgbWVzc2FnZSB0byB0aGUgdGVybWluYWxcbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgbWVzc2FnZSB0byB3cml0ZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZUVycm9yOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSB3YXJuaW5nIG1lc3NhZ2UgdG8gdGhlIHRlcm1pbmFsXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVXYXJuaW5nOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSBtZXNzYWdlIHRvIHRoZSB0ZXJtaW5hbCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3JcbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgbWVzc2FnZSB0byB3cml0ZVxuICAgICAqIEBwYXJhbSBjb2xvciBUaGUgY29sb3IgdG8gdXNlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHdyYXBJbkNvbG9yOiAodGV4dDogc3RyaW5nLCBjb2xvcjogQ2xpRm9yZWdyb3VuZENvbG9yKSA9PiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBXcml0ZSBhIG1lc3NhZ2UgdG8gdGhlIHRlcm1pbmFsIHdpdGggdGhlIHNwZWNpZmllZCBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcGFyYW0gY29sb3IgVGhlIGJhY2tncm91bmQgY29sb3IgdG8gdXNlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHdyYXBJbkJhY2tncm91bmRDb2xvcjogKHRleHQ6IHN0cmluZywgY29sb3I6IENsaUJhY2tncm91bmRDb2xvcikgPT4gc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSBKU09OIG9iamVjdCB0byB0aGUgdGVybWluYWxcbiAgICAgKiBAcGFyYW0ganNvbiBUaGUgSlNPTiBvYmplY3QgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVKc29uOiAoanNvbjogYW55KSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgY29udGVudCB0byBhIGZpbGVcbiAgICAgKiBAcGFyYW0gZmlsZU5hbWUgVGhlIG5hbWUgb2YgdGhlIGZpbGUgdG8gd3JpdGUgdG9cbiAgICAgKiBAcGFyYW0gY29udGVudCBUaGUgY29udGVudCB0byB3cml0ZSB0byB0aGUgZmlsZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZVRvRmlsZTogKGZpbGVOYW1lOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZykgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIGFuIG9iamVjdCBhcnJheSBhcyBhIHRhYmxlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBvYmplY3RzIFRoZSBvYmplY3RzIHRvIHdyaXRlIHRvIHRoZSB0YWJsZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZU9iamVjdHNBc1RhYmxlKG9iamVjdHM6IGFueVtdKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIGEgdGFibGUgdG8gdGhlIHRlcm1pbmFsXG4gICAgICogQHBhcmFtIGhlYWRlcnMgVGhlIGhlYWRlcnMgb2YgdGhlIHRhYmxlXG4gICAgICogQHBhcmFtIHJvd3MgVGhlIHJvd3Mgb2YgdGhlIHRhYmxlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHdyaXRlVGFibGUoaGVhZGVyczogc3RyaW5nW10sIHJvd3M6IHN0cmluZ1tdW10pOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSBkaXZpZGVyIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgZGl2aWRlclxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZURpdmlkZXIob3B0aW9ucz86IHtcbiAgICAgICAgY29sb3I/OiBDbGlGb3JlZ3JvdW5kQ29sb3I7XG4gICAgICAgIGxlbmd0aD86IG51bWJlcjtcbiAgICAgICAgY2hhcj86IHN0cmluZztcbiAgICB9KTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2xpUHJvZ3Jlc3NCYXIge1xuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGUgcHJvZ3Jlc3MgYmFyIGlzIHJ1bm5pbmdcbiAgICAgKi9cbiAgICBpc1J1bm5pbmc6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBTaG93IHRoZSBwcm9ncmVzcyBiYXJcbiAgICAgKi9cbiAgICBzaG93OiAoKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogSGlkZSB0aGUgcHJvZ3Jlc3MgYmFyXG4gICAgICovXG4gICAgaGlkZTogKCkgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc3Bpbm5lciBmb3IgdGhlIENMSVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlTcGlubmVyIGV4dGVuZHMgSUNsaVByb2dyZXNzQmFyIHtcbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIHRleHQgb2YgdGhlIHNwaW5uZXJcbiAgICAgKiBAcGFyYW0gdGV4dCBUaGUgdGV4dCB0byBzZXRcbiAgICAgKi9cbiAgICBzZXRUZXh0OiAodGV4dDogc3RyaW5nKSA9PiB2b2lkO1xufVxuXG5leHBvcnQgdHlwZSBDbGlQZXJjZW50YWdlUHJvZ3Jlc3NCYXJVcGRhdGVWYWx1ZU9wdGlvbnMgPSB7XG4gICAgLyoqXG4gICAgICogVGhlIHR5cGUgb2YgdXBkYXRlIHRvIHBlcmZvcm1cbiAgICAgKiBAZGVmYXVsdCAncmVwbGFjZSdcbiAgICAgKi9cbiAgICB0eXBlPzogJ3JlcGxhY2UnIHwgJ2luY3JlbWVudCc7XG59O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwcm9ncmVzcyBiYXIgZm9yIHRoZSBDTElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpUGVyY2VudGFnZVByb2dyZXNzQmFyIGV4dGVuZHMgSUNsaVByb2dyZXNzQmFyIHtcbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIHByb2dyZXNzIG9mIHRoZSBwcm9ncmVzcyBiYXJcbiAgICAgKiBAcGFyYW0gcHJvZ3Jlc3MgVGhlIHByb2dyZXNzIHRvIHVwZGF0ZSB0b1xuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB1cGRhdGU6IChcbiAgICAgICAgcHJvZ3Jlc3M6IG51bWJlcixcbiAgICAgICAgb3B0aW9ucz86IENsaVBlcmNlbnRhZ2VQcm9ncmVzc0JhclVwZGF0ZVZhbHVlT3B0aW9ucyxcbiAgICApID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBDb21wbGV0ZSB0aGUgcHJvZ3Jlc3MgYmFyXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIGNvbXBsZXRlOiAoKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogU2V0IHRoZSB0ZXh0IG9mIHRoZSBzcGlubmVyXG4gICAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gc2V0XG4gICAgICovXG4gICAgc2V0VGV4dDogKHRleHQ6IHN0cmluZykgPT4gdm9pZDtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgY2xpcGJvYXJkIGZvciB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNsaXBib2FyZCB7XG4gICAgLyoqXG4gICAgICogV3JpdGUgdGV4dCB0byB0aGUgY2xpcGJvYXJkXG4gICAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gd3JpdGUgdG8gdGhlIGNsaXBib2FyZFxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZTogKHRleHQ6IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIFJlYWQgdGV4dCBmcm9tIHRoZSBjbGlwYm9hcmRcbiAgICAgKiBAcmV0dXJucyBUaGUgdGV4dCByZWFkIGZyb20gdGhlIGNsaXBib2FyZFxuICAgICAqL1xuICAgIHJlYWQ6ICgpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2VydmljZSB0aGF0IGV4ZWN1dGVzIGNvbW1hbmRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNvbW1hbmRFeGVjdXRvclNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbW1hbmRcbiAgICAgKiBAcGFyYW0gY29udGV4dFxuICAgICAqL1xuICAgIHNob3dIZWxwKFxuICAgICAgICBjb21tYW5kOiBDbGlQcm9jZXNzQ29tbWFuZCxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIEV4ZWN1dGUgYSBjb21tYW5kXG4gICAgICogQHBhcmFtIGNvbW1hbmQgVGhlIGNvbW1hbmQgdG8gZXhlY3V0ZVxuICAgICAqIEBwYXJhbSBjb250ZXh0IFRoZSBjb250ZXh0IGluIHdoaWNoIHRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkXG4gICAgICovXG4gICAgZXhlY3V0ZUNvbW1hbmQoXG4gICAgICAgIGNvbW1hbmQ6IHN0cmluZyxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcmVnaXN0cnkgZm9yIGNvbW1hbmQgcHJvY2Vzc29yc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlDb21tYW5kUHJvY2Vzc29yUmVnaXN0cnkge1xuICAgIC8qKlxuICAgICAqIEZpbmQgYSBwcm9jZXNzb3IgZm9yIGEgY29tbWFuZFxuICAgICAqIEBwYXJhbSBtYWluQ29tbWFuZFxuICAgICAqIEBwYXJhbSBjaGFpbkNvbW1hbmRzXG4gICAgICovXG4gICAgZmluZFByb2Nlc3NvcihcbiAgICAgICAgbWFpbkNvbW1hbmQ6IHN0cmluZyxcbiAgICAgICAgY2hhaW5Db21tYW5kczogc3RyaW5nW10sXG4gICAgKTogSUNsaUNvbW1hbmRQcm9jZXNzb3IgfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlciBhIHByb2Nlc3NvclxuICAgICAqIEBwYXJhbSBwcm9jZXNzb3JcbiAgICAgKi9cbiAgICByZWdpc3RlclByb2Nlc3Nvcihwcm9jZXNzb3I6IElDbGlDb21tYW5kUHJvY2Vzc29yKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFVucmVnaXN0ZXIgYSBwcm9jZXNzb3JcbiAgICAgKiBAcGFyYW0gcHJvY2Vzc29yXG4gICAgICovXG4gICAgdW5yZWdpc3RlclByb2Nlc3Nvcihwcm9jZXNzb3I6IElDbGlDb21tYW5kUHJvY2Vzc29yKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2xpRXhlY3V0aW9uUHJvY2VzcyB7XG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoZSBwcm9jZXNzIGhhcyBleGl0ZWRcbiAgICAgKi9cbiAgICBleGl0ZWQ/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGV4aXQgY29kZSBvZiB0aGUgcHJvY2Vzc1xuICAgICAqL1xuICAgIGV4aXRDb2RlPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoZSBwcm9jZXNzIGlzIHJ1bm5pbmdcbiAgICAgKi9cbiAgICBydW5uaW5nOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgb2YgdGhlIHByb2Nlc3NcbiAgICAgKi9cbiAgICBkYXRhOiBhbnkgfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBFeGl0IHRoZSBwcm9jZXNzXG4gICAgICogQHBhcmFtIGNvZGUgVGhlIGV4aXQgY29kZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICBleGl0OiAoXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUaGUgZXhpdCBjb2RlXG4gICAgICAgICAqL1xuICAgICAgICBjb2RlPzogbnVtYmVyLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBPcHRpb25zIGZvciBleGl0aW5nIHRoZSBwcm9jZXNzXG4gICAgICAgICAqL1xuICAgICAgICBvcHRpb25zPzoge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGV4aXQgc2hvdWxkIGJlIHNpbGVudCwgaS5lLiBub3QgdGhyb3cgYW4gZXJyb3JcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgc2lsZW50PzogYm9vbGVhbjtcbiAgICAgICAgfSxcbiAgICApID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBPdXRwdXQgZGF0YSBmcm9tIHRoZSBwcm9jZXNzXG4gICAgICogQHBhcmFtIGRhdGEgVGhlIGRhdGEgdG8gb3V0cHV0XG4gICAgICovXG4gICAgb3V0cHV0KGRhdGE6IGFueSk6IHZvaWQ7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyB0aGUgY29udGV4dCBpbiB3aGljaCBhIGNvbW1hbmQgaXMgZXhlY3V0ZWRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpRXhlY3V0aW9uQ29udGV4dCB7XG4gICAgLyoqXG4gICAgICogVGhlIGN1cnJlbnQgdXNlciBzZXNzaW9uXG4gICAgICovXG4gICAgdXNlclNlc3Npb24/OiBJQ2xpVXNlclNlc3Npb247XG5cbiAgICAvKipcbiAgICAgKiBUaGUgc3Bpbm5lciB0byB1c2UgZm9yIHNob3dpbmcvaGlkaW5nIHRoZSBsb2FkZXJcbiAgICAgKi9cbiAgICBzcGlubmVyPzogSUNsaVNwaW5uZXI7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcHJvZ3Jlc3MgYmFyIHRvIHVzZSBmb3Igc2hvd2luZyBwcm9ncmVzc1xuICAgICAqL1xuICAgIHByb2dyZXNzQmFyOiBJQ2xpUGVyY2VudGFnZVByb2dyZXNzQmFyO1xuXG4gICAgLyoqXG4gICAgICogQSBzdWJqZWN0IHRoYXQgZW1pdHMgd2hlbiB0aGUgY29tbWFuZCBpcyBhYm9ydGVkXG4gICAgICovXG4gICAgb25BYm9ydDogU3ViamVjdDx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIFRoZSB0ZXJtaW5hbCB0byB1c2UgZm9yIHdyaXRpbmdcbiAgICAgKi9cbiAgICB0ZXJtaW5hbDogVGVybWluYWw7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgd3JpdGVyIHRvIHVzZSBmb3Igd3JpdGluZyB0byB0aGUgdGVybWluYWxcbiAgICAgKi9cbiAgICB3cml0ZXI6IElDbGlUZXJtaW5hbFdyaXRlcjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBjb21tYW5kIGV4ZWN1dG9yIHRvIHVzZSBmb3IgZXhlY3V0aW5nIGNvbW1hbmRzXG4gICAgICovXG4gICAgZXhlY3V0b3I6IElDbGlDb21tYW5kRXhlY3V0b3JTZXJ2aWNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNsaXBib2FyZCB0byB1c2UgZm9yIGNvcHlpbmcvcGFzdGluZ1xuICAgICAqL1xuICAgIGNsaXBib2FyZDogSUNsaUNsaXBib2FyZDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBkYXRhIHN0b3JlIHRvIHVzZSBmb3Igc3RvcmluZyBkYXRhXG4gICAgICovXG4gICAgZGF0YVN0b3JlOiBJQ2xpQ29tbWFuZERhdGFTdG9yZTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBvcHRpb25zIGZvciB0aGUgQ0xJXG4gICAgICovXG4gICAgb3B0aW9ucz86IENsaU9wdGlvbnM7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcHJvbXB0IHRvIHVzZSBmb3IgcHJvbXB0aW5nIHRoZSB1c2VyIGZvciBpbnB1dFxuICAgICAqL1xuICAgIHNob3dQcm9tcHQ6ICgpID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIGN1cnJlbnQgbWFpbiBwcm9jZXNzb3JcbiAgICAgKiBAcGFyYW0gcHJvY2Vzc29yIFRoZSBwcm9jZXNzb3IgdG8gc2V0XG4gICAgICovXG4gICAgc2V0TWFpblByb2Nlc3Nvcihwcm9jZXNzb3I6IElDbGlDb21tYW5kUHJvY2Vzc29yKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFRoZSBwcm9jZXNzIHRvIHVzZSBmb3IgZXhpdGluZyB0aGUgQ0xJXG4gICAgICovXG4gICAgcHJvY2VzczogSUNsaUV4ZWN1dGlvblByb2Nlc3M7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbG9nZ2VyIHRvIHVzZSBmb3IgbG9nZ2luZ1xuICAgICAqL1xuICAgIGxvZ2dlcjogSUNsaUxvZ2dlcjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgZGF0YSBzdG9yZSBmb3Igc3RvcmluZyBkYXRhIGFzc29jaWF0ZWQgd2l0aCBjb21tYW5kc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlDb21tYW5kRGF0YVN0b3JlIHtcbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSBzdG9yZVxuICAgICAqL1xuICAgIGRhdGE6IFJlY29yZDxzdHJpbmcsIFJlY29yZDxzdHJpbmcsIGFueT4+O1xuXG4gICAgLyoqXG4gICAgICogQXBwZW5kIGRhdGEgdG8gdGhlIGRhdGEgc3RvcmVcbiAgICAgKiBAcGFyYW0gY29tbWFuZFxuICAgICAqIEBwYXJhbSBrZXlcbiAgICAgKiBAcGFyYW0gZGF0YVxuICAgICAqL1xuICAgIGFwcGVuZERhdGEoY29tbWFuZDogc3RyaW5nLCBrZXk6IHN0cmluZywgZGF0YTogYW55KTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIEdldCBkYXRhIGZyb20gdGhlIGRhdGEgc3RvcmVcbiAgICAgKiBAcGFyYW0gY29tbWFuZFxuICAgICAqIEBwYXJhbSBrZXlcbiAgICAgKi9cbiAgICBnZXREYXRhPFQgPSBhbnk+KGNvbW1hbmQ6IHN0cmluZywga2V5OiBzdHJpbmcpOiBUO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzZXJ2aWNlIHRoYXQgbWFuYWdlcyB1c2VyIHNlc3Npb25zIGluIHRoZSBDTElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpVXNlclNlc3Npb25TZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBjdXJyZW50IHVzZXIgc2Vzc2lvblxuICAgICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgY3VycmVudCB1c2VyIHNlc3Npb25cbiAgICAgKi9cbiAgICBnZXRVc2VyU2Vzc2lvbigpOiBPYnNlcnZhYmxlPElDbGlVc2VyU2Vzc2lvbiB8IHVuZGVmaW5lZD47XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSBjdXJyZW50IHVzZXIgc2Vzc2lvblxuICAgICAqIEBwYXJhbSBzZXNzaW9uIFRoZSBzZXNzaW9uIHRvIHNldFxuICAgICAqL1xuICAgIHNldFVzZXJTZXNzaW9uKHNlc3Npb246IElDbGlVc2VyU2Vzc2lvbik6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNlcnZpY2UgdGhhdCBtYW5hZ2VzIHVzZXJzIGluIHRoZSBDTElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpVXNlcnNTdG9yZVNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGN1cnJlbnQgdXNlcnNcbiAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGN1cnJlbnQgdXNlcnNcbiAgICAgKi9cbiAgICBnZXRVc2VycyhvcHRpb25zPzoge1xuICAgICAgICBxdWVyeT86IHN0cmluZztcbiAgICAgICAgc2tpcD86IG51bWJlcjtcbiAgICAgICAgdGFrZT86IG51bWJlcjtcbiAgICB9KTogT2JzZXJ2YWJsZTxJQ2xpVXNlcltdPjtcblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSB1c2VyXG4gICAgICogQHBhcmFtIHVzZXIgVGhlIHVzZXIgdG8gY3JlYXRlXG4gICAgICovXG4gICAgY3JlYXRlVXNlcih1c2VyOiBPbWl0PElDbGlVc2VyLCAnaWQnPik6IFByb21pc2U8SUNsaVVzZXI+O1xuXG4gICAgLyoqXG4gICAgICogR2V0cyBhIHVzZXIgYnkgaWRcbiAgICAgKiBAcGFyYW0gaWQgVGhlIGlkIG9mIHRoZSB1c2VyIHRvIGdldFxuICAgICAqIEByZXR1cm5zIEFuIG9ic2VydmFibGUgdGhhdCBlbWl0cyB0aGUgdXNlciB3aXRoIHRoZSBzcGVjaWZpZWQgaWRcbiAgICAgKi9cbiAgICBnZXRVc2VyKGlkOiBzdHJpbmcpOiBPYnNlcnZhYmxlPElDbGlVc2VyIHwgdW5kZWZpbmVkPjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2VydmljZSB0aGF0IHBpbmdzIHRoZSBzZXJ2ZXJcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpUGluZ1NlcnZlclNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqIFBpbmdzIHRoZSBzZXJ2ZXJcbiAgICAgKi9cbiAgICBwaW5nKCk6IFByb21pc2U8dm9pZD47XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIG1vZHVsZSBmb3IgdGhlIENMSVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlVbWRNb2R1bGUge1xuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoZSBtb2R1bGVcbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcHJvY2Vzc29ycyBmb3IgdGhlIG1vZHVsZVxuICAgICAqL1xuICAgIHByb2Nlc3NvcnM6IElDbGlDb21tYW5kUHJvY2Vzc29yW107XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGxvZ2dlciBmb3IgdGhlIENMSVxuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlMb2dnZXIge1xuICAgIC8qKlxuICAgICAqIFNldCB0aGUgbG9nIGxldmVsIG9mIHRoZSBsb2dnZXJcbiAgICAgKiBAcGFyYW0gbGV2ZWwgVGhlIGxvZyBsZXZlbCB0byBzZXRcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICogQGRlZmF1bHQgQ2xpTG9nTGV2ZWwuRVJST1JcbiAgICAgKi9cbiAgICBzZXRDbGlMb2dMZXZlbChsZXZlbDogQ2xpTG9nTGV2ZWwpOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogTG9nIGEgbWVzc2FnZVxuICAgICAqIEBwYXJhbSBhcmdzIFRoZSBhcmd1bWVudHMgdG8gbG9nXG4gICAgICovXG4gICAgbG9nKC4uLmFyZ3M6IGFueVtdKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIExvZyBhIG1lc3NhZ2VcbiAgICAgKiBAcGFyYW0gYXJncyBUaGUgYXJndW1lbnRzIHRvIGxvZ1xuICAgICAqL1xuICAgIGluZm8oLi4uYXJnczogYW55W10pOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogTG9nIGEgbWVzc2FnZVxuICAgICAqIEBwYXJhbSBhcmdzIFRoZSBhcmd1bWVudHMgdG8gbG9nXG4gICAgICovXG4gICAgd2FybiguLi5hcmdzOiBhbnlbXSk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBMb2cgYSBtZXNzYWdlXG4gICAgICogQHBhcmFtIGFyZ3MgVGhlIGFyZ3VtZW50cyB0byBsb2dcbiAgICAgKi9cbiAgICBlcnJvciguLi5hcmdzOiBhbnlbXSk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBMb2cgYSBtZXNzYWdlXG4gICAgICogQHBhcmFtIGFyZ3MgVGhlIGFyZ3VtZW50cyB0byBsb2dcbiAgICAgKi9cbiAgICBkZWJ1ZyguLi5hcmdzOiBhbnlbXSk6IHZvaWQ7XG59XG4iXX0=
|
|
1
|
+
export * from './execution-context';
|
|
2
|
+
export * from './command-processor';
|
|
3
|
+
export * from './progress-bars';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvaW50ZXJmYWNlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFtWUEsY0FBYyxxQkFBcUIsQ0FBQztBQUVwQyxjQUFjLHFCQUFxQixDQUFDO0FBRXBDLGNBQWMsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICAgIENsaUJhY2tncm91bmRDb2xvcixcbiAgICBDbGlGb3JlZ3JvdW5kQ29sb3IsXG4gICAgQ2xpTG9nTGV2ZWwsXG4gICAgQ2xpUHJvY2Vzc0NvbW1hbmQsXG4gICAgQ2xpUHJvdmlkZXIsXG4gICAgSUNsaVVzZXIsXG4gICAgSUNsaVVzZXJTZXNzaW9uLFxufSBmcm9tICcuLi9tb2RlbHMnO1xuaW1wb3J0IHsgSUNsaUV4ZWN1dGlvbkNvbnRleHQgfSBmcm9tICcuL2V4ZWN1dGlvbi1jb250ZXh0JztcbmltcG9ydCB7IElDbGlDb21tYW5kUHJvY2Vzc29yIH0gZnJvbSAnLi9jb21tYW5kLXByb2Nlc3Nvcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaVRlcm1pbmFsV3JpdGVyIHtcbiAgICAvKipcbiAgICAgKiBXcml0ZSB0ZXh0IHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIHdyaXRlXG4gICAgICovXG4gICAgd3JpdGUodGV4dDogc3RyaW5nKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIHRleHQgdG8gdGhlIHRlcm1pbmFsIGZvbGxvd2VkIGJ5IGEgbmV3bGluZVxuICAgICAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIHdyaXRlXG4gICAgICovXG4gICAgd3JpdGVsbih0ZXh0Pzogc3RyaW5nKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIGEgc3VjY2VzcyBtZXNzYWdlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBtZXNzYWcgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVTdWNjZXNzOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYW4gaW5mbyBtZXNzYWdlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBtZXNzYWcgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVJbmZvOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYW4gZXJyb3IgbWVzc2FnZSB0byB0aGUgdGVybWluYWxcbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgbWVzc2FnZSB0byB3cml0ZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZUVycm9yOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSB3YXJuaW5nIG1lc3NhZ2UgdG8gdGhlIHRlcm1pbmFsXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVXYXJuaW5nOiAobWVzc2FnZTogc3RyaW5nKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSBtZXNzYWdlIHRvIHRoZSB0ZXJtaW5hbCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3JcbiAgICAgKiBAcGFyYW0gbWVzc2FnZSBUaGUgbWVzc2FnZSB0byB3cml0ZVxuICAgICAqIEBwYXJhbSBjb2xvciBUaGUgY29sb3IgdG8gdXNlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHdyYXBJbkNvbG9yOiAodGV4dDogc3RyaW5nLCBjb2xvcjogQ2xpRm9yZWdyb3VuZENvbG9yKSA9PiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBXcml0ZSBhIG1lc3NhZ2UgdG8gdGhlIHRlcm1pbmFsIHdpdGggdGhlIHNwZWNpZmllZCBiYWNrZ3JvdW5kIGNvbG9yXG4gICAgICogQHBhcmFtIG1lc3NhZ2UgVGhlIG1lc3NhZ2UgdG8gd3JpdGVcbiAgICAgKiBAcGFyYW0gY29sb3IgVGhlIGJhY2tncm91bmQgY29sb3IgdG8gdXNlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHdyYXBJbkJhY2tncm91bmRDb2xvcjogKHRleHQ6IHN0cmluZywgY29sb3I6IENsaUJhY2tncm91bmRDb2xvcikgPT4gc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSBKU09OIG9iamVjdCB0byB0aGUgdGVybWluYWxcbiAgICAgKiBAcGFyYW0ganNvbiBUaGUgSlNPTiBvYmplY3QgdG8gd3JpdGVcbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgd3JpdGVKc29uOiAoanNvbjogYW55KSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgY29udGVudCB0byBhIGZpbGVcbiAgICAgKiBAcGFyYW0gZmlsZU5hbWUgVGhlIG5hbWUgb2YgdGhlIGZpbGUgdG8gd3JpdGUgdG9cbiAgICAgKiBAcGFyYW0gY29udGVudCBUaGUgY29udGVudCB0byB3cml0ZSB0byB0aGUgZmlsZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZVRvRmlsZTogKGZpbGVOYW1lOiBzdHJpbmcsIGNvbnRlbnQ6IHN0cmluZykgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIGFuIG9iamVjdCBhcnJheSBhcyBhIHRhYmxlIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBvYmplY3RzIFRoZSBvYmplY3RzIHRvIHdyaXRlIHRvIHRoZSB0YWJsZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZU9iamVjdHNBc1RhYmxlKG9iamVjdHM6IGFueVtdKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFdyaXRlIGEgdGFibGUgdG8gdGhlIHRlcm1pbmFsXG4gICAgICogQHBhcmFtIGhlYWRlcnMgVGhlIGhlYWRlcnMgb2YgdGhlIHRhYmxlXG4gICAgICogQHBhcmFtIHJvd3MgVGhlIHJvd3Mgb2YgdGhlIHRhYmxlXG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqL1xuICAgIHdyaXRlVGFibGUoaGVhZGVyczogc3RyaW5nW10sIHJvd3M6IHN0cmluZ1tdW10pOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogV3JpdGUgYSBkaXZpZGVyIHRvIHRoZSB0ZXJtaW5hbFxuICAgICAqIEBwYXJhbSBvcHRpb25zIFRoZSBvcHRpb25zIGZvciB0aGUgZGl2aWRlclxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZURpdmlkZXIob3B0aW9ucz86IHtcbiAgICAgICAgY29sb3I/OiBDbGlGb3JlZ3JvdW5kQ29sb3I7XG4gICAgICAgIGxlbmd0aD86IG51bWJlcjtcbiAgICAgICAgY2hhcj86IHN0cmluZztcbiAgICB9KTogdm9pZDtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgY2xpcGJvYXJkIGZvciB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNsaXBib2FyZCB7XG4gICAgLyoqXG4gICAgICogV3JpdGUgdGV4dCB0byB0aGUgY2xpcGJvYXJkXG4gICAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gd3JpdGUgdG8gdGhlIGNsaXBib2FyZFxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICB3cml0ZTogKHRleHQ6IHN0cmluZykgPT4gUHJvbWlzZTx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIFJlYWQgdGV4dCBmcm9tIHRoZSBjbGlwYm9hcmRcbiAgICAgKiBAcmV0dXJucyBUaGUgdGV4dCByZWFkIGZyb20gdGhlIGNsaXBib2FyZFxuICAgICAqL1xuICAgIHJlYWQ6ICgpID0+IFByb21pc2U8c3RyaW5nPjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2VydmljZSB0aGF0IGV4ZWN1dGVzIGNvbW1hbmRzXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNvbW1hbmRFeGVjdXRvclNlcnZpY2Uge1xuICAgIC8qKlxuICAgICAqXG4gICAgICogQHBhcmFtIGNvbW1hbmRcbiAgICAgKiBAcGFyYW0gY29udGV4dFxuICAgICAqL1xuICAgIHNob3dIZWxwKFxuICAgICAgICBjb21tYW5kOiBDbGlQcm9jZXNzQ29tbWFuZCxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPjtcblxuICAgIC8qKlxuICAgICAqIEV4ZWN1dGUgYSBjb21tYW5kXG4gICAgICogQHBhcmFtIGNvbW1hbmQgVGhlIGNvbW1hbmQgdG8gZXhlY3V0ZVxuICAgICAqIEBwYXJhbSBjb250ZXh0IFRoZSBjb250ZXh0IGluIHdoaWNoIHRoZSBjb21tYW5kIGlzIGV4ZWN1dGVkXG4gICAgICovXG4gICAgZXhlY3V0ZUNvbW1hbmQoXG4gICAgICAgIGNvbW1hbmQ6IHN0cmluZyxcbiAgICAgICAgY29udGV4dDogSUNsaUV4ZWN1dGlvbkNvbnRleHQsXG4gICAgKTogUHJvbWlzZTx2b2lkPjtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcmVnaXN0cnkgZm9yIGNvbW1hbmQgcHJvY2Vzc29yc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElDbGlDb21tYW5kUHJvY2Vzc29yUmVnaXN0cnkge1xuICAgIC8qKlxuICAgICAqIEZpbmQgYSBwcm9jZXNzb3IgZm9yIGEgY29tbWFuZFxuICAgICAqIEBwYXJhbSBtYWluQ29tbWFuZFxuICAgICAqIEBwYXJhbSBjaGFpbkNvbW1hbmRzXG4gICAgICovXG4gICAgZmluZFByb2Nlc3NvcihcbiAgICAgICAgbWFpbkNvbW1hbmQ6IHN0cmluZyxcbiAgICAgICAgY2hhaW5Db21tYW5kczogc3RyaW5nW10sXG4gICAgKTogSUNsaUNvbW1hbmRQcm9jZXNzb3IgfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlciBhIHByb2Nlc3NvclxuICAgICAqIEBwYXJhbSBwcm9jZXNzb3JcbiAgICAgKi9cbiAgICByZWdpc3RlclByb2Nlc3Nvcihwcm9jZXNzb3I6IElDbGlDb21tYW5kUHJvY2Vzc29yKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFVucmVnaXN0ZXIgYSBwcm9jZXNzb3JcbiAgICAgKiBAcGFyYW0gcHJvY2Vzc29yXG4gICAgICovXG4gICAgdW5yZWdpc3RlclByb2Nlc3Nvcihwcm9jZXNzb3I6IElDbGlDb21tYW5kUHJvY2Vzc29yKTogdm9pZDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJQ2xpRXhlY3V0aW9uUHJvY2VzcyB7XG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoZSBwcm9jZXNzIGhhcyBleGl0ZWRcbiAgICAgKi9cbiAgICBleGl0ZWQ/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGV4aXQgY29kZSBvZiB0aGUgcHJvY2Vzc1xuICAgICAqL1xuICAgIGV4aXRDb2RlPzogbnVtYmVyO1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoZSBwcm9jZXNzIGlzIHJ1bm5pbmdcbiAgICAgKi9cbiAgICBydW5uaW5nOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgb2YgdGhlIHByb2Nlc3NcbiAgICAgKi9cbiAgICBkYXRhOiBhbnkgfCB1bmRlZmluZWQ7XG5cbiAgICAvKipcbiAgICAgKiBFeGl0IHRoZSBwcm9jZXNzXG4gICAgICogQHBhcmFtIGNvZGUgVGhlIGV4aXQgY29kZVxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICBleGl0OiAoXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUaGUgZXhpdCBjb2RlXG4gICAgICAgICAqL1xuICAgICAgICBjb2RlPzogbnVtYmVyLFxuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBPcHRpb25zIGZvciBleGl0aW5nIHRoZSBwcm9jZXNzXG4gICAgICAgICAqL1xuICAgICAgICBvcHRpb25zPzoge1xuICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGV4aXQgc2hvdWxkIGJlIHNpbGVudCwgaS5lLiBub3QgdGhyb3cgYW4gZXJyb3JcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgc2lsZW50PzogYm9vbGVhbjtcbiAgICAgICAgfSxcbiAgICApID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBPdXRwdXQgZGF0YSBmcm9tIHRoZSBwcm9jZXNzXG4gICAgICogQHBhcmFtIGRhdGEgVGhlIGRhdGEgdG8gb3V0cHV0XG4gICAgICovXG4gICAgb3V0cHV0KGRhdGE6IGFueSk6IHZvaWQ7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRhdGEgc3RvcmUgZm9yIHN0b3JpbmcgZGF0YSBhc3NvY2lhdGVkIHdpdGggY29tbWFuZHNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpQ29tbWFuZERhdGFTdG9yZSB7XG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgc3RvcmVcbiAgICAgKi9cbiAgICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBSZWNvcmQ8c3RyaW5nLCBhbnk+PjtcblxuICAgIC8qKlxuICAgICAqIEFwcGVuZCBkYXRhIHRvIHRoZSBkYXRhIHN0b3JlXG4gICAgICogQHBhcmFtIGNvbW1hbmRcbiAgICAgKiBAcGFyYW0ga2V5XG4gICAgICogQHBhcmFtIGRhdGFcbiAgICAgKi9cbiAgICBhcHBlbmREYXRhKGNvbW1hbmQ6IHN0cmluZywga2V5OiBzdHJpbmcsIGRhdGE6IGFueSk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBHZXQgZGF0YSBmcm9tIHRoZSBkYXRhIHN0b3JlXG4gICAgICogQHBhcmFtIGNvbW1hbmRcbiAgICAgKiBAcGFyYW0ga2V5XG4gICAgICovXG4gICAgZ2V0RGF0YTxUID0gYW55Pihjb21tYW5kOiBzdHJpbmcsIGtleTogc3RyaW5nKTogVDtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgc2VydmljZSB0aGF0IG1hbmFnZXMgdXNlciBzZXNzaW9ucyBpbiB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaVVzZXJTZXNzaW9uU2VydmljZSB7XG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgY3VycmVudCB1c2VyIHNlc3Npb25cbiAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIGN1cnJlbnQgdXNlciBzZXNzaW9uXG4gICAgICovXG4gICAgZ2V0VXNlclNlc3Npb24oKTogT2JzZXJ2YWJsZTxJQ2xpVXNlclNlc3Npb24gfCB1bmRlZmluZWQ+O1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgY3VycmVudCB1c2VyIHNlc3Npb25cbiAgICAgKiBAcGFyYW0gc2Vzc2lvbiBUaGUgc2Vzc2lvbiB0byBzZXRcbiAgICAgKi9cbiAgICBzZXRVc2VyU2Vzc2lvbihzZXNzaW9uOiBJQ2xpVXNlclNlc3Npb24pOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzZXJ2aWNlIHRoYXQgbWFuYWdlcyB1c2VycyBpbiB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaVVzZXJzU3RvcmVTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBjdXJyZW50IHVzZXJzXG4gICAgICogQHJldHVybnMgQW4gb2JzZXJ2YWJsZSB0aGF0IGVtaXRzIHRoZSBjdXJyZW50IHVzZXJzXG4gICAgICovXG4gICAgZ2V0VXNlcnMob3B0aW9ucz86IHtcbiAgICAgICAgcXVlcnk/OiBzdHJpbmc7XG4gICAgICAgIHNraXA/OiBudW1iZXI7XG4gICAgICAgIHRha2U/OiBudW1iZXI7XG4gICAgfSk6IE9ic2VydmFibGU8SUNsaVVzZXJbXT47XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgdXNlclxuICAgICAqIEBwYXJhbSB1c2VyIFRoZSB1c2VyIHRvIGNyZWF0ZVxuICAgICAqL1xuICAgIGNyZWF0ZVVzZXIodXNlcjogT21pdDxJQ2xpVXNlciwgJ2lkJz4pOiBQcm9taXNlPElDbGlVc2VyPjtcblxuICAgIC8qKlxuICAgICAqIEdldHMgYSB1c2VyIGJ5IGlkXG4gICAgICogQHBhcmFtIGlkIFRoZSBpZCBvZiB0aGUgdXNlciB0byBnZXRcbiAgICAgKiBAcmV0dXJucyBBbiBvYnNlcnZhYmxlIHRoYXQgZW1pdHMgdGhlIHVzZXIgd2l0aCB0aGUgc3BlY2lmaWVkIGlkXG4gICAgICovXG4gICAgZ2V0VXNlcihpZDogc3RyaW5nKTogT2JzZXJ2YWJsZTxJQ2xpVXNlciB8IHVuZGVmaW5lZD47XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNlcnZpY2UgdGhhdCBwaW5ncyB0aGUgc2VydmVyXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaVBpbmdTZXJ2ZXJTZXJ2aWNlIHtcbiAgICAvKipcbiAgICAgKiBQaW5ncyB0aGUgc2VydmVyXG4gICAgICovXG4gICAgcGluZygpOiBQcm9taXNlPHZvaWQ+O1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBtb2R1bGUgZm9yIHRoZSBDTElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpVW1kTW9kdWxlIHtcbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgbW9kdWxlXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHByb2Nlc3NvcnMgZm9yIHRoZSBtb2R1bGVcbiAgICAgKi9cbiAgICBwcm9jZXNzb3JzOiBJQ2xpQ29tbWFuZFByb2Nlc3NvcltdO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBsb2dnZXIgZm9yIHRoZSBDTElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpTG9nZ2VyIHtcbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIGxvZyBsZXZlbCBvZiB0aGUgbG9nZ2VyXG4gICAgICogQHBhcmFtIGxldmVsIFRoZSBsb2cgbGV2ZWwgdG8gc2V0XG4gICAgICogQHJldHVybnMgdm9pZFxuICAgICAqIEBkZWZhdWx0IENsaUxvZ0xldmVsLkVSUk9SXG4gICAgICovXG4gICAgc2V0Q2xpTG9nTGV2ZWwobGV2ZWw6IENsaUxvZ0xldmVsKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIExvZyBhIG1lc3NhZ2VcbiAgICAgKiBAcGFyYW0gYXJncyBUaGUgYXJndW1lbnRzIHRvIGxvZ1xuICAgICAqL1xuICAgIGxvZyguLi5hcmdzOiBhbnlbXSk6IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBMb2cgYSBtZXNzYWdlXG4gICAgICogQHBhcmFtIGFyZ3MgVGhlIGFyZ3VtZW50cyB0byBsb2dcbiAgICAgKi9cbiAgICBpbmZvKC4uLmFyZ3M6IGFueVtdKTogdm9pZDtcblxuICAgIC8qKlxuICAgICAqIExvZyBhIG1lc3NhZ2VcbiAgICAgKiBAcGFyYW0gYXJncyBUaGUgYXJndW1lbnRzIHRvIGxvZ1xuICAgICAqL1xuICAgIHdhcm4oLi4uYXJnczogYW55W10pOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogTG9nIGEgbWVzc2FnZVxuICAgICAqIEBwYXJhbSBhcmdzIFRoZSBhcmd1bWVudHMgdG8gbG9nXG4gICAgICovXG4gICAgZXJyb3IoLi4uYXJnczogYW55W10pOiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogTG9nIGEgbWVzc2FnZVxuICAgICAqIEBwYXJhbSBhcmdzIFRoZSBhcmd1bWVudHMgdG8gbG9nXG4gICAgICovXG4gICAgZGVidWcoLi4uYXJnczogYW55W10pOiB2b2lkO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBzZXJ2aWNlcyBmb3IgdGhlIENMSSBjb250ZXh0XG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaUNvbnRleHRTZXJ2aWNlcyB7XG4gICAgLyoqXG4gICAgICogR2V0IGEgc2VydmljZVxuICAgICAqIEBwYXJhbSBzZXJ2aWNlIFRoZSBzZXJ2aWNlIHRvIGdldFxuICAgICAqL1xuICAgIGdldDxUPihzZXJ2aWNlOiBhbnkpOiBUO1xuXG4gICAgLyoqXG4gICAgICogU2V0IGEgc2VydmljZVxuICAgICAqIEBwYXJhbSBkZWZpbml0aW9uIFRoZSBkZWZpbml0aW9uIG9mIHRoZSBzZXJ2aWNlXG4gICAgICovXG4gICAgc2V0KGRlZmluaXRpb246IENsaVByb3ZpZGVyIHwgQ2xpUHJvdmlkZXJbXSk6IHZvaWQ7XG59XG5cbmV4cG9ydCAqIGZyb20gJy4vZXhlY3V0aW9uLWNvbnRleHQnO1xuXG5leHBvcnQgKiBmcm9tICcuL2NvbW1hbmQtcHJvY2Vzc29yJztcblxuZXhwb3J0ICogZnJvbSAnLi9wcm9ncmVzcy1iYXJzJztcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9pbnRlcmZhY2VzL3Byb2dyZXNzLWJhcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSUNsaVByb2dyZXNzQmFyIHtcbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhlIHByb2dyZXNzIGJhciBpcyBydW5uaW5nXG4gICAgICovXG4gICAgaXNSdW5uaW5nOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogU2hvdyB0aGUgcHJvZ3Jlc3MgYmFyXG4gICAgICovXG4gICAgc2hvdzogKCkgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIEhpZGUgdGhlIHByb2dyZXNzIGJhclxuICAgICAqL1xuICAgIGhpZGU6ICgpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHNwaW5uZXIgZm9yIHRoZSBDTElcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQ2xpU3Bpbm5lciBleHRlbmRzIElDbGlQcm9ncmVzc0JhciB7XG4gICAgLyoqXG4gICAgICogU2V0IHRoZSB0ZXh0IG9mIHRoZSBzcGlubmVyXG4gICAgICogQHBhcmFtIHRleHQgVGhlIHRleHQgdG8gc2V0XG4gICAgICovXG4gICAgc2V0VGV4dDogKHRleHQ6IHN0cmluZykgPT4gdm9pZDtcbn1cblxuZXhwb3J0IHR5cGUgQ2xpUGVyY2VudGFnZVByb2dyZXNzQmFyVXBkYXRlVmFsdWVPcHRpb25zID0ge1xuICAgIC8qKlxuICAgICAqIFRoZSB0eXBlIG9mIHVwZGF0ZSB0byBwZXJmb3JtXG4gICAgICogQGRlZmF1bHQgJ3JlcGxhY2UnXG4gICAgICovXG4gICAgdHlwZT86ICdyZXBsYWNlJyB8ICdpbmNyZW1lbnQnO1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgcHJvZ3Jlc3MgYmFyIGZvciB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNsaVBlcmNlbnRhZ2VQcm9ncmVzc0JhciBleHRlbmRzIElDbGlQcm9ncmVzc0JhciB7XG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSBwcm9ncmVzcyBvZiB0aGUgcHJvZ3Jlc3MgYmFyXG4gICAgICogQHBhcmFtIHByb2dyZXNzIFRoZSBwcm9ncmVzcyB0byB1cGRhdGUgdG9cbiAgICAgKiBAcmV0dXJucyB2b2lkXG4gICAgICovXG4gICAgdXBkYXRlOiAoXG4gICAgICAgIHByb2dyZXNzOiBudW1iZXIsXG4gICAgICAgIG9wdGlvbnM/OiBDbGlQZXJjZW50YWdlUHJvZ3Jlc3NCYXJVcGRhdGVWYWx1ZU9wdGlvbnMsXG4gICAgKSA9PiB2b2lkO1xuXG4gICAgLyoqXG4gICAgICogQ29tcGxldGUgdGhlIHByb2dyZXNzIGJhclxuICAgICAqIEByZXR1cm5zIHZvaWRcbiAgICAgKi9cbiAgICBjb21wbGV0ZTogKCkgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgdGV4dCBvZiB0aGUgc3Bpbm5lclxuICAgICAqIEBwYXJhbSB0ZXh0IFRoZSB0ZXh0IHRvIHNldFxuICAgICAqL1xuICAgIHNldFRleHQ6ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG59XG4iXX0=
|
|
@@ -170,4 +170,5 @@ export const enums = {
|
|
|
170
170
|
CliIcon,
|
|
171
171
|
CliLogLevel,
|
|
172
172
|
};
|
|
173
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtDQSxNQUFNLENBQU4sSUFBWSxrQkFVWDtBQVZELFdBQVksa0JBQWtCO0lBQzFCLDBDQUFrQixDQUFBO0lBQ2xCLHdDQUFnQixDQUFBO0lBQ2hCLDBDQUFrQixDQUFBO0lBQ2xCLDJDQUFtQixDQUFBO0lBQ25CLHlDQUFpQixDQUFBO0lBQ2pCLDRDQUFvQixDQUFBO0lBQ3BCLHlDQUFpQixDQUFBO0lBQ2pCLDBDQUFrQixDQUFBO0lBQ2xCLHlDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFWVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBVTdCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBU1g7QUFURCxXQUFZLGtCQUFrQjtJQUMxQiwwQ0FBa0IsQ0FBQTtJQUNsQix3Q0FBZ0IsQ0FBQTtJQUNoQiwwQ0FBa0IsQ0FBQTtJQUNsQiwyQ0FBbUIsQ0FBQTtJQUNuQix5Q0FBaUIsQ0FBQTtJQUNqQiw0Q0FBb0IsQ0FBQTtJQUNwQix5Q0FBaUIsQ0FBQTtJQUNqQiwwQ0FBa0IsQ0FBQTtBQUN0QixDQUFDLEVBVFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQVM3QjtBQUVELE1BQU0sQ0FBTixJQUFZLE9BOElYO0FBOUlELFdBQVksT0FBTztJQUNmLGtCQUFrQjtJQUNsQiwrQkFBZSxDQUFBO0lBQ2YsK0JBQWUsQ0FBQTtJQUNmLDhCQUFjLENBQUE7SUFDZCxpQ0FBaUIsQ0FBQTtJQUNqQiw2QkFBa0IsQ0FBQTtJQUNsQixpQ0FBaUIsQ0FBQTtJQUNqQiw4QkFBYyxDQUFBO0lBQ2QseUJBQVMsQ0FBQTtJQUNULDRCQUFZLENBQUE7SUFFWixTQUFTO0lBQ1QsZ0NBQWdCLENBQUE7SUFDaEIsK0JBQWUsQ0FBQTtJQUNmLDZCQUFhLENBQUE7SUFDYiwrQkFBZSxDQUFBO0lBQ2Ys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QyxFQTlJVyxPQUFPLEtBQVAsT0FBTyxRQThJbEI7QUFxSkQ7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxXQU9YO0FBUEQsV0FBWSxXQUFXO0lBQ25CLDZDQUFRLENBQUE7SUFDUiwrQ0FBUyxDQUFBO0lBQ1QsMkNBQU8sQ0FBQTtJQUNQLDZDQUFRLENBQUE7SUFDUiw2Q0FBUSxDQUFBO0lBQ1IsK0NBQVMsQ0FBQTtBQUNiLENBQUMsRUFQVyxXQUFXLEtBQVgsV0FBVyxRQU90QjtBQUVELE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRztJQUNqQixrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLE9BQU87SUFDUCxXQUFXO0NBQ2QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElUZXJtaW5hbEluaXRPbmx5T3B0aW9ucywgSVRlcm1pbmFsT3B0aW9ucyB9IGZyb20gJ0B4dGVybS94dGVybSc7XG5cbmV4cG9ydCB0eXBlIENsaVByb2Nlc3NDb21tYW5kID0ge1xuICAgIC8qKlxuICAgICAqIFRoZSBjb21tYW5kIHRoYXQgd2FzIGVudGVyZWRcbiAgICAgKi9cbiAgICBjb21tYW5kOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSB0aGF0IHdhcyBlbnRlcmVkXG4gICAgICovXG4gICAgZGF0YT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBjaGFpbiBvZiBjb21tYW5kcyB0aGF0IHdlcmUgZW50ZXJlZFxuICAgICAqL1xuICAgIGNoYWluQ29tbWFuZHM6IHN0cmluZ1tdO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHJhdyBjb21tYW5kIHRoYXQgd2FzIGVudGVyZWRcbiAgICAgKi9cbiAgICByYXdDb21tYW5kOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdmFsdWUgb2YgdGhlIGNvbW1hbmRcbiAgICAgKi9cbiAgICB2YWx1ZT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBhcmd1bWVudHMgdGhhdCB3ZXJlIGVudGVyZWRcbiAgICAgKi9cbiAgICBhcmdzOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufTtcblxuZXhwb3J0IGVudW0gQ2xpRm9yZWdyb3VuZENvbG9yIHtcbiAgICBCbGFjayA9ICdcXHgxYlszMG0nLFxuICAgIFJlZCA9ICdcXHgxYlszMW0nLFxuICAgIEdyZWVuID0gJ1xceDFiWzMybScsXG4gICAgWWVsbG93ID0gJ1xceDFiWzMzbScsXG4gICAgQmx1ZSA9ICdcXHgxYlszNG0nLFxuICAgIE1hZ2VudGEgPSAnXFx4MWJbMzVtJyxcbiAgICBDeWFuID0gJ1xceDFiWzM2bScsXG4gICAgV2hpdGUgPSAnXFx4MWJbMzdtJyxcbiAgICBSZXNldCA9ICdcXHgxYlswbScsXG59XG5cbmV4cG9ydCBlbnVtIENsaUJhY2tncm91bmRDb2xvciB7XG4gICAgQmxhY2sgPSAnXFx4MWJbNDBtJyxcbiAgICBSZWQgPSAnXFx4MWJbNDFtJyxcbiAgICBHcmVlbiA9ICdcXHgxYls0Mm0nLFxuICAgIFllbGxvdyA9ICdcXHgxYls0M20nLFxuICAgIEJsdWUgPSAnXFx4MWJbNDRtJyxcbiAgICBNYWdlbnRhID0gJ1xceDFiWzQ1bScsXG4gICAgQ3lhbiA9ICdcXHgxYls0Nm0nLFxuICAgIFdoaXRlID0gJ1xceDFiWzQ3bScsXG59XG5cbmV4cG9ydCBlbnVtIENsaUljb24ge1xuICAgIC8vIEdlbmVyYWwgU3ltYm9sc1xuICAgIENoZWNrSWNvbiA9ICfinJQnLCAvLyBTdWNjZXNzLCBjb21wbGV0aW9uXG4gICAgQ3Jvc3NJY29uID0gJ+KcmCcsIC8vIEZhaWx1cmUsIGVycm9yXG4gICAgSW5mb0ljb24gPSAn4oS5JywgLy8gSW5mb3JtYXRpb25cbiAgICBXYXJuaW5nSWNvbiA9ICfimqAnLCAvLyBXYXJuaW5nXG4gICAgUXVlc3Rpb25NYXJrID0gJz8nLCAvLyBIZWxwIG9yIHVua25vd24gc3RhdGVcbiAgICBFeGNsYW1hdGlvbiA9ICfinZcnLCAvLyBFbXBoYXNpcyBvciBhbGVydFxuICAgIEVsbGlwc2lzID0gJ+KApicsIC8vIExvYWRpbmcgb3IgdHJ1bmNhdGVkIHRleHRcbiAgICBEb3QgPSAn4oCiJywgLy8gTGlzdCBpdGVtXG4gICAgQnVsbGV0ID0gJ+KAoycsIC8vIEFsdGVybmF0ZSBidWxsZXQgcG9pbnRcblxuICAgIC8vIEFycm93c1xuICAgIEFycm93UmlnaHQgPSAn4oaSJywgLy8gTmF2aWdhdGlvbiBvciBuZXh0IHN0ZXBcbiAgICBBcnJvd0xlZnQgPSAn4oaQJywgLy8gUHJldmlvdXMgc3RlcCBvciBuYXZpZ2F0aW9uXG4gICAgQXJyb3dVcCA9ICfihpEnLCAvLyBVcCBkaXJlY3Rpb25cbiAgICBBcnJvd0Rvd24gPSAn4oaTJywgLy8gRG93biBkaXJlY3Rpb25cbiAgICBBcnJvd1JpZ2h0RmlsbGVkID0gJ+KWticsIC8vIE5hdmlnYXRpb24gb3IgbmV4dCBzdGVwIChmaWxsZWQpXG4gICAgQXJyb3dMZWZ0RmlsbGVkID0gJ+KXgCcsIC8vIFByZXZpb3VzIHN0ZXAgb3IgbmF2aWdhdGlvbiAoZmlsbGVkKVxuICAgIEFycm93VXBGaWxsZWQgPSAn4payJywgLy8gVXAgZGlyZWN0aW9uIChmaWxsZWQpXG4gICAgQXJyb3dEb3duRmlsbGVkID0gJ+KWvCcsIC8vIERvd24gZGlyZWN0aW9uIChmaWxsZWQpXG4gICAgRG91YmxlQXJyb3dSaWdodCA9ICfCuycsIC8vIEZhc3QgZm9yd2FyZCBvciBuZXh0XG4gICAgRG91YmxlQXJyb3dMZWZ0ID0gJ8KrJywgLy8gUmV3aW5kIG9yIHByZXZpb3VzXG5cbiAgICAvLyBMaXN0cyBhbmQgUHJvZ3Jlc3NcbiAgICBTdGFyID0gJ+KYhScsIC8vIEhpZ2hsaWdodCBvciBmYXZvcml0ZSAoZmlsbGVkKVxuICAgIFN0YXJFbXB0eSA9ICfimIYnLCAvLyBIaWdobGlnaHQgb3IgZmF2b3JpdGUgKGVtcHR5KVxuICAgIFBsdXMgPSAnKycsIC8vIEFkZGl0aW9uIG9yIGluY3JlbWVudFxuICAgIE1pbnVzID0gJy0nLCAvLyBTdWJ0cmFjdGlvbiBvciBkZWNyZW1lbnRcbiAgICBQcm9ncmVzcyA9ICfij7MnLCAvLyBJbmRpY2F0aW5nIHByb2dyZXNzXG4gICAgU3VjY2VzcyA9ICfinIUnLCAvLyBTdWNjZXNzIChhbHRlcm5hdGl2ZSB0byBDaGVja0ljb24pXG4gICAgRmFpbHVyZSA9ICfinYwnLCAvLyBGYWlsdXJlIChhbHRlcm5hdGl2ZSB0byBDcm9zc0ljb24pXG5cbiAgICAvLyBUaW1lIGFuZCBDYWxlbmRhclxuICAgIENsb2NrID0gJ+KPsCcsIC8vIFRpbWUtcmVsYXRlZFxuICAgIFRpbWVyID0gJ+KPsScsIC8vIFN0b3B3YXRjaCBvciB0aW1lclxuICAgIEFsYXJtID0gJ/CflJQnLCAvLyBBbGFybSBvciBhbGVydFxuICAgIENhbGVuZGFyID0gJ/Cfk4UnLCAvLyBDYWxlbmRhciBvciBkYXRlXG5cbiAgICAvLyBOYXZpZ2F0aW9uIGFuZCBGb2xkZXJzXG4gICAgRm9sZGVyID0gJ/Cfk4EnLCAvLyBEaXJlY3Rvcnkgb3IgZmlsZSBncm91cGluZ1xuICAgIEZvbGRlck9wZW4gPSAn8J+TgicsIC8vIE9wZW4gZm9sZGVyXG4gICAgRmlsZSA9ICfwn5OEJywgLy8gRmlsZSBvciBkb2N1bWVudFxuICAgIEFyY2hpdmUgPSAn8J+XgycsIC8vIEFyY2hpdmUgb3IgZmlsZSBncm91cGluZ1xuICAgIExpbmsgPSAn8J+UlycsIC8vIEh5cGVybGluayBvciBjb25uZWN0aW9uXG4gICAgQ2hhaW4gPSAn4puTJywgLy8gQ2hhaW4gb3IgbGlua2VkXG4gICAgQm9va21hcmsgPSAn8J+UlicsIC8vIEJvb2ttYXJrIG9yIHNhdmVcblxuICAgIC8vIEFjdGlvbnNcbiAgICBFZGl0ID0gJ+KcjycsIC8vIEVkaXQgb3IgbW9kaWZ5XG4gICAgVHJhc2ggPSAn8J+XkScsIC8vIERlbGV0aW9uIG9yIHJlbW92YWxcbiAgICBBZGQgPSAn4p6VJywgLy8gQWRkIHVzZXIgb3IgaXRlbVxuICAgIFJlbW92ZSA9ICfinpYnLCAvLyBSZW1vdmUgdXNlciBvciBpdGVtXG4gICAgUmVsb2FkID0gJ/CflIQnLCAvLyBSZWZyZXNoIG9yIHJlbG9hZFxuICAgIFNhdmUgPSAn8J+SvicsIC8vIFNhdmUgb3Igc3RvcmVcbiAgICBVbmRvID0gJ+KGqScsIC8vIFVuZG8gYWN0aW9uXG4gICAgUmVkbyA9ICfihqonLCAvLyBSZWRvIGFjdGlvblxuICAgIFBsYXkgPSAn4pa2JywgLy8gU3RhcnQgb3IgcGxheVxuICAgIFBhdXNlID0gJ+KPuCcsIC8vIFBhdXNlIG9yIHN0b3AgdGVtcG9yYXJpbHlcbiAgICBTdG9wID0gJ+KPuScsIC8vIFN0b3Agb3IgZW5kXG4gICAgQ2FuY2VsID0gJ+KdjicsIC8vIENhbmNlbCBvciBjbG9zZVxuXG4gICAgLy8gVXNlciBhbmQgU2VjdXJpdHlcbiAgICBVc2VyID0gJ/CfkaQnLCAvLyBVc2VyIG9yIHByb2ZpbGVcbiAgICBHcm91cCA9ICfwn5GlJywgLy8gR3JvdXAgb3IgdGVhbVxuICAgIExvY2sgPSAn8J+UkicsIC8vIFNlY3VyZWQgb3IgbG9ja2VkXG4gICAgVW5sb2NrID0gJ/CflJMnLCAvLyBVbmxvY2tlZCBvciBhY2Nlc3NpYmxlXG4gICAgSGVscCA9ICfinZMnLCAvLyBIZWxwIG9yIHN1cHBvcnRcbiAgICBLZXkgPSAn8J+UkScsIC8vIEF1dGhlbnRpY2F0aW9uIG9yIGtleVxuICAgIFNoaWVsZCA9ICfwn5uhJywgLy8gU2VjdXJpdHkgb3IgcHJvdGVjdGlvblxuXG4gICAgLy8gVG9vbHMgYW5kIFNldHRpbmdzXG4gICAgR2VhciA9ICfimpknLCAvLyBTZXR0aW5ncyBvciBjb25maWd1cmF0aW9uXG4gICAgU2V0dGluZ3MgPSAn4pqZ77iPJywgLy8gU2V0dGluZ3MgKGFsdGVybmF0aXZlKVxuICAgIFRoZW1lID0gJ/CfjqgnLCAvLyBUaGVtZSBvciBhcHBlYXJhbmNlXG4gICAgTGlnaHQgPSAn8J+SoScsIC8vIExpZ2h0IG1vZGVcbiAgICBCdWcgPSAn8J+QnicsIC8vIEJ1ZyBvciBpc3N1ZVxuICAgIFdyZW5jaCA9ICfwn5SnJywgLy8gTWFpbnRlbmFuY2Ugb3IgdG9vbHNcbiAgICBIYW1tZXIgPSAn8J+UqCcsIC8vIEJ1aWxkIG9yIGZpeFxuXG4gICAgLy8gVGVjaG5vbG9neSBhbmQgRGV2aWNlc1xuICAgIFRlcm1pbmFsID0gJ/CfkrsnLCAvLyBUZXJtaW5hbCBvciBjb21tYW5kIGxpbmVcbiAgICBEYXRhYmFzZSA9ICfwn5eEJywgLy8gRGF0YWJhc2Ugb3Igc3RvcmFnZVxuICAgIFNlcnZlciA9ICfwn5alJywgLy8gU2VydmVyIG9yIGhvc3RcbiAgICBDbG91ZCA9ICfimIEnLCAvLyBDbG91ZCBvciByZW1vdGVcbiAgICBOZXR3b3JrID0gJ/CfjJAnLCAvLyBOZXR3b3JrIG9yIGNvbm5lY3Rpb25cbiAgICBNb25pdG9yID0gJ/CflqUnLCAvLyBNb25pdG9yIG9yIGRpc3BsYXlcbiAgICBQcmludGVyID0gJ/CflqgnLCAvLyBQcmludGVyIG9yIG91dHB1dFxuICAgIFVTQiA9ICfwn5SMJywgLy8gVVNCIG9yIGNvbm5lY3Rpb25cbiAgICBTcGVha2VyID0gJ/CflIonLCAvLyBTcGVha2VyIG9yIGF1ZGlvXG4gICAgTWljcm9waG9uZSA9ICfwn46ZJywgLy8gTWljcm9waG9uZSBvciBpbnB1dFxuICAgIENhbWVyYSA9ICfwn5O3JywgLy8gQ2FtZXJhIG9yIHZpZGVvXG4gICAgVmlkZW8gPSAn8J+OpScsIC8vIFZpZGVvIG9yIG1lZGlhXG4gICAgTXVzaWMgPSAn8J+OtScsIC8vIE11c2ljIG9yIGF1ZGlvXG4gICAgUGhvbmUgPSAn8J+TnicsIC8vIFBob25lIG9yIGNvbW11bmljYXRpb25cblxuICAgIC8vIERldmVsb3BtZW50IGFuZCBFdmFsdWF0aW9uXG4gICAgUGFja2FnZSA9ICfwn5OmJywgLy8gUGFja2FnZSBvciBidW5kbGVcbiAgICBQbHVnaW4gPSAn8J+UjCcsIC8vIFBsdWdpbiBvciBleHRlbnNpb25cbiAgICBFeHRlbnNpb24gPSAn8J+nqScsIC8vIEV4dGVuc2lvbiBvciBjb21wb25lbnRcbiAgICBNb2R1bGUgPSAn8J+TpicsIC8vIE1vZHVsZSBvciBwYWNrYWdlXG4gICAgRXZhbHVhdGUgPSAn8J+UjScsIC8vIEV2YWx1YXRlIG9yIHNlYXJjaFxuICAgIFZhcmlhYmxlID0gJ/CflKcnLCAvLyBWYXJpYWJsZSBvciBzZXR0aW5nXG4gICAgU2NyaXB0ID0gJ/Cfk5wnLCAvLyBTY3JpcHQgb3IgY29kZVxuICAgIENvZGUgPSAn8J+SvicsIC8vIENvZGUgb3IgZmlsZVxuXG4gICAgLy8gU3RhdHVzIGFuZCBDb21wbGV0aW9uXG4gICAgTG9ncyA9ICfwn5OcJywgLy8gTG9ncyBvciBoaXN0b3J5XG4gICAgUG93ZXIgPSAn4o+7JywgLy8gT24vT2ZmIHN0YXRlXG4gICAgSGVhcnQgPSAn4p2kJywgLy8gTG92ZSBvciBmYXZvcml0ZVxuICAgIEZsYW1lID0gJ/CflKUnLCAvLyBUcmVuZGluZyBvciBob3RcbiAgICBHcm93dGggPSAn8J+TiCcsIC8vIEdyb3d0aCBvciBpbmNyZWFzZVxuICAgIERlY2xpbmUgPSAn8J+TiScsIC8vIERlY2xpbmUgb3IgZGVjcmVhc2VcbiAgICBXYXJuaW5nRmlsbGVkID0gJ+KaoO+4jycsIC8vIFdhcm5pbmcgKGZpbGxlZClcblxuICAgIC8vIE5hdHVyZSBhbmQgV2VhdGhlclxuICAgIFN1biA9ICfimIAnLCAvLyBCcmlnaHRuZXNzIG9yIGRheVxuICAgIE1vb24gPSAn8J+MmScsIC8vIE5pZ2h0IG9yIGRhcmsgbW9kZVxuICAgIFJhaW4gPSAn8J+MpycsIC8vIFJhaW4gb3IgYmFkIHdlYXRoZXJcbiAgICBTbm93ID0gJ+KdhCcsIC8vIFNub3cgb3IgY29sZFxuICAgIExpZ2h0bmluZyA9ICfimqEnLCAvLyBMaWdodG5pbmcgb3IgZGFuZ2VyXG4gICAgVHJlZSA9ICfwn4yyJywgLy8gTmF0dXJlIG9yIGVudmlyb25tZW50XG5cbiAgICAvLyBFbW90aW9ucyBhbmQgRXhwcmVzc2lvbnNcbiAgICBTbWlsZSA9ICfwn5iKJywgLy8gSGFwcGluZXNzIG9yIHBvc2l0aXZlIHN0YXRlXG4gICAgU2FkID0gJ/CfmKInLCAvLyBTYWRuZXNzIG9yIG5lZ2F0aXZlIHN0YXRlXG4gICAgQW5ncnkgPSAn8J+YoScsIC8vIEFuZ2VyIG9yIGZydXN0cmF0aW9uXG4gICAgQ2xhcCA9ICfwn5GPJywgLy8gQXBwbGF1c2Ugb3IgY2VsZWJyYXRpb25cbiAgICBUaHVtYnNVcCA9ICfwn5GNJywgLy8gQXBwcm92YWwgb3Igc3VjY2Vzc1xuICAgIFRodW1ic0Rvd24gPSAn8J+RjicsIC8vIERpc2FwcHJvdmFsIG9yIGZhaWx1cmVcblxuICAgIC8vIE1pc2NlbGxhbmVvdXNcbiAgICBSb2NrZXQgPSAn8J+agCcsIC8vIExhdW5jaCBvciBkZXBsb3lcbiAgICBHbG9iZSA9ICfwn4yNJywgLy8gRWFydGggb3IgaW50ZXJuYXRpb25hbFxuICAgIE1lZGFsID0gJ/Cfj4UnLCAvLyBBY2hpZXZlbWVudCBvciBhd2FyZFxuICAgIFRyb3BoeSA9ICfwn4+GJywgLy8gV2lubmVyIG9yIGNoYW1waW9uXG4gICAgRmxhZyA9ICfwn5qpJywgLy8gTWFyayBvciBmbGFnXG4gICAgU3RhckZpbGxlZCA9ICfirZAnLCAvLyBIaWdobGlnaHQgb3IgZmF2b3JpdGVcbiAgICBTdGFyT3V0bGluZSA9ICfinKknLCAvLyBBbHRlcm5hdGUgc3RhciBpY29uXG4gICAgRmlyZXdvcmtzID0gJ/CfjoYnLCAvLyBDZWxlYnJhdGlvblxuICAgIEJhbGxvb24gPSAn8J+OiCcsIC8vIFBhcnR5IG9yIGZ1blxuICAgIEdpZnQgPSAn8J+OgScsIC8vIFJld2FyZCBvciBwcmVzZW50XG59XG5cbmV4cG9ydCB0eXBlIElDbGlVc2VyID0ge1xuICAgIC8qKlxuICAgICAqIFRoZSBpZCBvZiB0aGUgdXNlclxuICAgICAqL1xuICAgIGlkOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbmFtZSBvZiB0aGUgdXNlclxuICAgICAqL1xuICAgIG5hbWU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBlbWFpbCBvZiB0aGUgdXNlclxuICAgICAqL1xuICAgIGVtYWlsOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZ3JvdXBzIHRoZSB1c2VyIGJlbG9uZ3MgdG9cbiAgICAgKiBAZGVmYXVsdCBbXVxuICAgICAqL1xuICAgIGdyb3Vwcz86IHN0cmluZ1tdO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBJQ2xpVXNlclNlc3Npb24ge1xuICAgIC8qKlxuICAgICAqIFRoZSB1c2VyIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2Vzc2lvblxuICAgICAqL1xuICAgIHVzZXI6IElDbGlVc2VyO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSB1c2VyIHNlc3Npb25cbiAgICAgKi9cbiAgICBkYXRhPzogUmVjb3JkPHN0cmluZywgYW55Pjtcbn1cblxuLyoqXG4gKiBPcHRpb25zIGZvciB0aGUgQ0xJXG4gKi9cbmV4cG9ydCB0eXBlIENsaU9wdGlvbnMgPSBSZWNvcmQ8c3RyaW5nLCBhbnk+ICYge1xuICAgIC8qKlxuICAgICAqIFRoZSB3ZWxjb21lIG1lc3NhZ2Ugb3B0aW9uc1xuICAgICAqL1xuICAgIHdlbGNvbWVNZXNzYWdlPzoge1xuICAgICAgICAvKipcbiAgICAgICAgICogVGhlIG1lc3NhZ2UgdG8gZGlzcGxheVxuICAgICAgICAgKi9cbiAgICAgICAgbWVzc2FnZT86IHN0cmluZztcblxuICAgICAgICAvKipcbiAgICAgICAgICogV2hlbiB0byBzaG93IHRoZSB3ZWxjb21lIG1lc3NhZ2VcbiAgICAgICAgICogQGRlZmF1bHQgJ2Fsd2F5cydcbiAgICAgICAgICovXG4gICAgICAgIHNob3c/OiAnYWx3YXlzJyB8ICdvbmNlJyB8ICdkYWlseScgfCAnbmV2ZXInO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCB0aGUgd2VsY29tZSBtZXNzYWdlIGlzIGhpZGRlblxuICAgICAqIEBkZWZhdWx0IGZhbHNlXG4gICAgICovXG4gICAgaGlkZVdlbGNvbWVNZXNzYWdlPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFVzZXJzIG1vZHVsZSBvcHRpb25zXG4gICAgICovXG4gICAgdXNlcnNNb2R1bGU/OiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBJZiB0cnVlLCB0aGUgdXNlcnMgbW9kdWxlIGlzIGVuYWJsZWRcbiAgICAgICAgICovXG4gICAgICAgIGVuYWJsZWQ6IGJvb2xlYW47XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIEhpZGUgdGhlIHByb21wdCB0byBkaXNwbGF5IHdoZW4gdGhlIENMSSBpcyByZWFkeSB0byBhY2NlcHQgaW5wdXRcbiAgICAgICAgICovXG4gICAgICAgIGhpZGVVc2VyTmFtZT86IGJvb2xlYW47XG5cbiAgICAgICAgLyoqXG4gICAgICAgICAqIFJlbG9hZCB0aGUgcGFnZSB3aGVuIHRoZSB1c2VyIGNoYW5nZXNcbiAgICAgICAgICovXG4gICAgICAgIHJlbG9hZFBhZ2VPblVzZXJDaGFuZ2U/OiBib29sZWFuO1xuICAgIH07XG5cbiAgICAvKipcbiAgICAgKiBDdXN0b20gdGVybWluYWwgb3B0aW9uc1xuICAgICAqL1xuICAgIHRlcm1pbmFsT3B0aW9ucz86IElUZXJtaW5hbE9wdGlvbnMgJiBJVGVybWluYWxJbml0T25seU9wdGlvbnM7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbWluaW11bSBsb2cgbGV2ZWwgdG8gZGlzcGxheVxuICAgICAqL1xuICAgIGxvZ0xldmVsPzogQ2xpTG9nTGV2ZWw7XG59O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBwYWNrYWdlIHRoYXQgY2FuIGJlIGluc3RhbGxlZFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFBhY2thZ2Uge1xuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoZSBwYWNrYWdlXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGdsb2JhbCBuYW1lIHVzZWQgdG8gYWNjZXNzIHRoZSBwYWNrYWdlXG4gICAgICovXG4gICAgZ2xvYmFsTmFtZT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSB2ZXJzaW9uIG9mIHRoZSBwYWNrYWdlXG4gICAgICovXG4gICAgdmVyc2lvbjogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHVucGtnIHVybCB0byB0aGUgcGFja2FnZVxuICAgICAqL1xuICAgIHVybDogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRlcGVuZGVuY2llcyBmb3IgdGhlIG1vZHVsZVxuICAgICAqL1xuICAgIGRlcGVuZGVuY2llcz86IFBhY2thZ2VbXTtcbn1cblxuLyoqXG4gKiBSZXByZXNlbnRzIGNvbW1hbmQgcHJvY2Vzc29yIG1ldGFkYXRhXG4gKi9cbmV4cG9ydCB0eXBlIENsaVByb2Nlc3Nvck1ldGFkYXRhID0gUmVjb3JkPHN0cmluZywgYW55PiAmIHtcbiAgICAvKipcbiAgICAgKiBJZiB0cnVlLCB0aGUgcHJvY2Vzc29yIGlzIHNlYWxlZCBhbmQgY2Fubm90IGJlIGV4dGVuZGVkXG4gICAgICovXG4gICAgc2VhbGVkPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoZSBwcm9jZXNzb3IgcmVxdWlyZXMgdGhlIHNlcnZlciB0byBiZSBydW5uaW5nXG4gICAgICovXG4gICAgcmVxdWlyZVNlcnZlcj86IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBUaGUgbW9kdWxlIHRoZSBwcm9jZXNzb3IgYmVsb25ncyB0b1xuICAgICAqL1xuICAgIG1vZHVsZT86IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEFuIGljb24gdG8gZGlzcGxheSBmb3IgdGhlIHByb2Nlc3NvclxuICAgICAqL1xuICAgIGljb24/OiBDbGlJY29uIHwgc3RyaW5nO1xufTtcblxuLyoqXG4gKiBSZXByZXNlbnRzIGEgbG9nIGxldmVsIGZvciB0aGUgQ0xJXG4gKi9cbmV4cG9ydCBlbnVtIENsaUxvZ0xldmVsIHtcbiAgICBOb25lID0gMCxcbiAgICBERUJVRyA9IDEsXG4gICAgTE9HID0gMixcbiAgICBJTkZPID0gMyxcbiAgICBXQVJOID0gNCxcbiAgICBFUlJPUiA9IDUsXG59XG5cbmV4cG9ydCBjb25zdCBlbnVtcyA9IHtcbiAgICBDbGlGb3JlZ3JvdW5kQ29sb3IsXG4gICAgQ2xpQmFja2dyb3VuZENvbG9yLFxuICAgIENsaUljb24sXG4gICAgQ2xpTG9nTGV2ZWwsXG59O1xuIl19
|
|
173
|
+
export * from './services';
|
|
174
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvbW9kZWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWtDQSxNQUFNLENBQU4sSUFBWSxrQkFVWDtBQVZELFdBQVksa0JBQWtCO0lBQzFCLDBDQUFrQixDQUFBO0lBQ2xCLHdDQUFnQixDQUFBO0lBQ2hCLDBDQUFrQixDQUFBO0lBQ2xCLDJDQUFtQixDQUFBO0lBQ25CLHlDQUFpQixDQUFBO0lBQ2pCLDRDQUFvQixDQUFBO0lBQ3BCLHlDQUFpQixDQUFBO0lBQ2pCLDBDQUFrQixDQUFBO0lBQ2xCLHlDQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFWVyxrQkFBa0IsS0FBbEIsa0JBQWtCLFFBVTdCO0FBRUQsTUFBTSxDQUFOLElBQVksa0JBU1g7QUFURCxXQUFZLGtCQUFrQjtJQUMxQiwwQ0FBa0IsQ0FBQTtJQUNsQix3Q0FBZ0IsQ0FBQTtJQUNoQiwwQ0FBa0IsQ0FBQTtJQUNsQiwyQ0FBbUIsQ0FBQTtJQUNuQix5Q0FBaUIsQ0FBQTtJQUNqQiw0Q0FBb0IsQ0FBQTtJQUNwQix5Q0FBaUIsQ0FBQTtJQUNqQiwwQ0FBa0IsQ0FBQTtBQUN0QixDQUFDLEVBVFcsa0JBQWtCLEtBQWxCLGtCQUFrQixRQVM3QjtBQUVELE1BQU0sQ0FBTixJQUFZLE9BOElYO0FBOUlELFdBQVksT0FBTztJQUNmLGtCQUFrQjtJQUNsQiwrQkFBZSxDQUFBO0lBQ2YsK0JBQWUsQ0FBQTtJQUNmLDhCQUFjLENBQUE7SUFDZCxpQ0FBaUIsQ0FBQTtJQUNqQiw2QkFBa0IsQ0FBQTtJQUNsQixpQ0FBaUIsQ0FBQTtJQUNqQiw4QkFBYyxDQUFBO0lBQ2QseUJBQVMsQ0FBQTtJQUNULDRCQUFZLENBQUE7SUFFWixTQUFTO0lBQ1QsZ0NBQWdCLENBQUE7SUFDaEIsK0JBQWUsQ0FBQTtJQUNmLDZCQUFhLENBQUE7SUFDYiwrQkFBZSxDQUFBO0lBQ2Ys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QyxFQTlJVyxPQUFPLEtBQVAsT0FBTyxRQThJbEI7QUFxSkQ7O0dBRUc7QUFDSCxNQUFNLENBQU4sSUFBWSxXQU9YO0FBUEQsV0FBWSxXQUFXO0lBQ25CLDZDQUFRLENBQUE7SUFDUiwrQ0FBUyxDQUFBO0lBQ1QsMkNBQU8sQ0FBQTtJQUNQLDZDQUFRLENBQUE7SUFDUiw2Q0FBUSxDQUFBO0lBQ1IsK0NBQVMsQ0FBQTtBQUNiLENBQUMsRUFQVyxXQUFXLEtBQVgsV0FBVyxRQU90QjtBQUVELE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRztJQUNqQixrQkFBa0I7SUFDbEIsa0JBQWtCO0lBQ2xCLE9BQU87SUFDUCxXQUFXO0NBQ2QsQ0FBQztBQUVGLGNBQWMsWUFBWSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSVRlcm1pbmFsSW5pdE9ubHlPcHRpb25zLCBJVGVybWluYWxPcHRpb25zIH0gZnJvbSAnQHh0ZXJtL3h0ZXJtJztcblxuZXhwb3J0IHR5cGUgQ2xpUHJvY2Vzc0NvbW1hbmQgPSB7XG4gICAgLyoqXG4gICAgICogVGhlIGNvbW1hbmQgdGhhdCB3YXMgZW50ZXJlZFxuICAgICAqL1xuICAgIGNvbW1hbmQ6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBkYXRhIHRoYXQgd2FzIGVudGVyZWRcbiAgICAgKi9cbiAgICBkYXRhPzogYW55O1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNoYWluIG9mIGNvbW1hbmRzIHRoYXQgd2VyZSBlbnRlcmVkXG4gICAgICovXG4gICAgY2hhaW5Db21tYW5kczogc3RyaW5nW107XG5cbiAgICAvKipcbiAgICAgKiBUaGUgcmF3IGNvbW1hbmQgdGhhdCB3YXMgZW50ZXJlZFxuICAgICAqL1xuICAgIHJhd0NvbW1hbmQ6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSB2YWx1ZSBvZiB0aGUgY29tbWFuZFxuICAgICAqL1xuICAgIHZhbHVlPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGFyZ3VtZW50cyB0aGF0IHdlcmUgZW50ZXJlZFxuICAgICAqL1xuICAgIGFyZ3M6IFJlY29yZDxzdHJpbmcsIGFueT47XG59O1xuXG5leHBvcnQgZW51bSBDbGlGb3JlZ3JvdW5kQ29sb3Ige1xuICAgIEJsYWNrID0gJ1xceDFiWzMwbScsXG4gICAgUmVkID0gJ1xceDFiWzMxbScsXG4gICAgR3JlZW4gPSAnXFx4MWJbMzJtJyxcbiAgICBZZWxsb3cgPSAnXFx4MWJbMzNtJyxcbiAgICBCbHVlID0gJ1xceDFiWzM0bScsXG4gICAgTWFnZW50YSA9ICdcXHgxYlszNW0nLFxuICAgIEN5YW4gPSAnXFx4MWJbMzZtJyxcbiAgICBXaGl0ZSA9ICdcXHgxYlszN20nLFxuICAgIFJlc2V0ID0gJ1xceDFiWzBtJyxcbn1cblxuZXhwb3J0IGVudW0gQ2xpQmFja2dyb3VuZENvbG9yIHtcbiAgICBCbGFjayA9ICdcXHgxYls0MG0nLFxuICAgIFJlZCA9ICdcXHgxYls0MW0nLFxuICAgIEdyZWVuID0gJ1xceDFiWzQybScsXG4gICAgWWVsbG93ID0gJ1xceDFiWzQzbScsXG4gICAgQmx1ZSA9ICdcXHgxYls0NG0nLFxuICAgIE1hZ2VudGEgPSAnXFx4MWJbNDVtJyxcbiAgICBDeWFuID0gJ1xceDFiWzQ2bScsXG4gICAgV2hpdGUgPSAnXFx4MWJbNDdtJyxcbn1cblxuZXhwb3J0IGVudW0gQ2xpSWNvbiB7XG4gICAgLy8gR2VuZXJhbCBTeW1ib2xzXG4gICAgQ2hlY2tJY29uID0gJ+KclCcsIC8vIFN1Y2Nlc3MsIGNvbXBsZXRpb25cbiAgICBDcm9zc0ljb24gPSAn4pyYJywgLy8gRmFpbHVyZSwgZXJyb3JcbiAgICBJbmZvSWNvbiA9ICfihLknLCAvLyBJbmZvcm1hdGlvblxuICAgIFdhcm5pbmdJY29uID0gJ+KaoCcsIC8vIFdhcm5pbmdcbiAgICBRdWVzdGlvbk1hcmsgPSAnPycsIC8vIEhlbHAgb3IgdW5rbm93biBzdGF0ZVxuICAgIEV4Y2xhbWF0aW9uID0gJ+KdlycsIC8vIEVtcGhhc2lzIG9yIGFsZXJ0XG4gICAgRWxsaXBzaXMgPSAn4oCmJywgLy8gTG9hZGluZyBvciB0cnVuY2F0ZWQgdGV4dFxuICAgIERvdCA9ICfigKInLCAvLyBMaXN0IGl0ZW1cbiAgICBCdWxsZXQgPSAn4oCjJywgLy8gQWx0ZXJuYXRlIGJ1bGxldCBwb2ludFxuXG4gICAgLy8gQXJyb3dzXG4gICAgQXJyb3dSaWdodCA9ICfihpInLCAvLyBOYXZpZ2F0aW9uIG9yIG5leHQgc3RlcFxuICAgIEFycm93TGVmdCA9ICfihpAnLCAvLyBQcmV2aW91cyBzdGVwIG9yIG5hdmlnYXRpb25cbiAgICBBcnJvd1VwID0gJ+KGkScsIC8vIFVwIGRpcmVjdGlvblxuICAgIEFycm93RG93biA9ICfihpMnLCAvLyBEb3duIGRpcmVjdGlvblxuICAgIEFycm93UmlnaHRGaWxsZWQgPSAn4pa2JywgLy8gTmF2aWdhdGlvbiBvciBuZXh0IHN0ZXAgKGZpbGxlZClcbiAgICBBcnJvd0xlZnRGaWxsZWQgPSAn4peAJywgLy8gUHJldmlvdXMgc3RlcCBvciBuYXZpZ2F0aW9uIChmaWxsZWQpXG4gICAgQXJyb3dVcEZpbGxlZCA9ICfilrInLCAvLyBVcCBkaXJlY3Rpb24gKGZpbGxlZClcbiAgICBBcnJvd0Rvd25GaWxsZWQgPSAn4pa8JywgLy8gRG93biBkaXJlY3Rpb24gKGZpbGxlZClcbiAgICBEb3VibGVBcnJvd1JpZ2h0ID0gJ8K7JywgLy8gRmFzdCBmb3J3YXJkIG9yIG5leHRcbiAgICBEb3VibGVBcnJvd0xlZnQgPSAnwqsnLCAvLyBSZXdpbmQgb3IgcHJldmlvdXNcblxuICAgIC8vIExpc3RzIGFuZCBQcm9ncmVzc1xuICAgIFN0YXIgPSAn4piFJywgLy8gSGlnaGxpZ2h0IG9yIGZhdm9yaXRlIChmaWxsZWQpXG4gICAgU3RhckVtcHR5ID0gJ+KYhicsIC8vIEhpZ2hsaWdodCBvciBmYXZvcml0ZSAoZW1wdHkpXG4gICAgUGx1cyA9ICcrJywgLy8gQWRkaXRpb24gb3IgaW5jcmVtZW50XG4gICAgTWludXMgPSAnLScsIC8vIFN1YnRyYWN0aW9uIG9yIGRlY3JlbWVudFxuICAgIFByb2dyZXNzID0gJ+KPsycsIC8vIEluZGljYXRpbmcgcHJvZ3Jlc3NcbiAgICBTdWNjZXNzID0gJ+KchScsIC8vIFN1Y2Nlc3MgKGFsdGVybmF0aXZlIHRvIENoZWNrSWNvbilcbiAgICBGYWlsdXJlID0gJ+KdjCcsIC8vIEZhaWx1cmUgKGFsdGVybmF0aXZlIHRvIENyb3NzSWNvbilcblxuICAgIC8vIFRpbWUgYW5kIENhbGVuZGFyXG4gICAgQ2xvY2sgPSAn4o+wJywgLy8gVGltZS1yZWxhdGVkXG4gICAgVGltZXIgPSAn4o+xJywgLy8gU3RvcHdhdGNoIG9yIHRpbWVyXG4gICAgQWxhcm0gPSAn8J+UlCcsIC8vIEFsYXJtIG9yIGFsZXJ0XG4gICAgQ2FsZW5kYXIgPSAn8J+ThScsIC8vIENhbGVuZGFyIG9yIGRhdGVcblxuICAgIC8vIE5hdmlnYXRpb24gYW5kIEZvbGRlcnNcbiAgICBGb2xkZXIgPSAn8J+TgScsIC8vIERpcmVjdG9yeSBvciBmaWxlIGdyb3VwaW5nXG4gICAgRm9sZGVyT3BlbiA9ICfwn5OCJywgLy8gT3BlbiBmb2xkZXJcbiAgICBGaWxlID0gJ/Cfk4QnLCAvLyBGaWxlIG9yIGRvY3VtZW50XG4gICAgQXJjaGl2ZSA9ICfwn5eDJywgLy8gQXJjaGl2ZSBvciBmaWxlIGdyb3VwaW5nXG4gICAgTGluayA9ICfwn5SXJywgLy8gSHlwZXJsaW5rIG9yIGNvbm5lY3Rpb25cbiAgICBDaGFpbiA9ICfim5MnLCAvLyBDaGFpbiBvciBsaW5rZWRcbiAgICBCb29rbWFyayA9ICfwn5SWJywgLy8gQm9va21hcmsgb3Igc2F2ZVxuXG4gICAgLy8gQWN0aW9uc1xuICAgIEVkaXQgPSAn4pyPJywgLy8gRWRpdCBvciBtb2RpZnlcbiAgICBUcmFzaCA9ICfwn5eRJywgLy8gRGVsZXRpb24gb3IgcmVtb3ZhbFxuICAgIEFkZCA9ICfinpUnLCAvLyBBZGQgdXNlciBvciBpdGVtXG4gICAgUmVtb3ZlID0gJ+KelicsIC8vIFJlbW92ZSB1c2VyIG9yIGl0ZW1cbiAgICBSZWxvYWQgPSAn8J+UhCcsIC8vIFJlZnJlc2ggb3IgcmVsb2FkXG4gICAgU2F2ZSA9ICfwn5K+JywgLy8gU2F2ZSBvciBzdG9yZVxuICAgIFVuZG8gPSAn4oapJywgLy8gVW5kbyBhY3Rpb25cbiAgICBSZWRvID0gJ+KGqicsIC8vIFJlZG8gYWN0aW9uXG4gICAgUGxheSA9ICfilrYnLCAvLyBTdGFydCBvciBwbGF5XG4gICAgUGF1c2UgPSAn4o+4JywgLy8gUGF1c2Ugb3Igc3RvcCB0ZW1wb3JhcmlseVxuICAgIFN0b3AgPSAn4o+5JywgLy8gU3RvcCBvciBlbmRcbiAgICBDYW5jZWwgPSAn4p2OJywgLy8gQ2FuY2VsIG9yIGNsb3NlXG5cbiAgICAvLyBVc2VyIGFuZCBTZWN1cml0eVxuICAgIFVzZXIgPSAn8J+RpCcsIC8vIFVzZXIgb3IgcHJvZmlsZVxuICAgIEdyb3VwID0gJ/CfkaUnLCAvLyBHcm91cCBvciB0ZWFtXG4gICAgTG9jayA9ICfwn5SSJywgLy8gU2VjdXJlZCBvciBsb2NrZWRcbiAgICBVbmxvY2sgPSAn8J+UkycsIC8vIFVubG9ja2VkIG9yIGFjY2Vzc2libGVcbiAgICBIZWxwID0gJ+KdkycsIC8vIEhlbHAgb3Igc3VwcG9ydFxuICAgIEtleSA9ICfwn5SRJywgLy8gQXV0aGVudGljYXRpb24gb3Iga2V5XG4gICAgU2hpZWxkID0gJ/Cfm6EnLCAvLyBTZWN1cml0eSBvciBwcm90ZWN0aW9uXG5cbiAgICAvLyBUb29scyBhbmQgU2V0dGluZ3NcbiAgICBHZWFyID0gJ+KamScsIC8vIFNldHRpbmdzIG9yIGNvbmZpZ3VyYXRpb25cbiAgICBTZXR0aW5ncyA9ICfimpnvuI8nLCAvLyBTZXR0aW5ncyAoYWx0ZXJuYXRpdmUpXG4gICAgVGhlbWUgPSAn8J+OqCcsIC8vIFRoZW1lIG9yIGFwcGVhcmFuY2VcbiAgICBMaWdodCA9ICfwn5KhJywgLy8gTGlnaHQgbW9kZVxuICAgIEJ1ZyA9ICfwn5CeJywgLy8gQnVnIG9yIGlzc3VlXG4gICAgV3JlbmNoID0gJ/CflKcnLCAvLyBNYWludGVuYW5jZSBvciB0b29sc1xuICAgIEhhbW1lciA9ICfwn5SoJywgLy8gQnVpbGQgb3IgZml4XG5cbiAgICAvLyBUZWNobm9sb2d5IGFuZCBEZXZpY2VzXG4gICAgVGVybWluYWwgPSAn8J+SuycsIC8vIFRlcm1pbmFsIG9yIGNvbW1hbmQgbGluZVxuICAgIERhdGFiYXNlID0gJ/Cfl4QnLCAvLyBEYXRhYmFzZSBvciBzdG9yYWdlXG4gICAgU2VydmVyID0gJ/CflqUnLCAvLyBTZXJ2ZXIgb3IgaG9zdFxuICAgIENsb3VkID0gJ+KYgScsIC8vIENsb3VkIG9yIHJlbW90ZVxuICAgIE5ldHdvcmsgPSAn8J+MkCcsIC8vIE5ldHdvcmsgb3IgY29ubmVjdGlvblxuICAgIE1vbml0b3IgPSAn8J+WpScsIC8vIE1vbml0b3Igb3IgZGlzcGxheVxuICAgIFByaW50ZXIgPSAn8J+WqCcsIC8vIFByaW50ZXIgb3Igb3V0cHV0XG4gICAgVVNCID0gJ/CflIwnLCAvLyBVU0Igb3IgY29ubmVjdGlvblxuICAgIFNwZWFrZXIgPSAn8J+UiicsIC8vIFNwZWFrZXIgb3IgYXVkaW9cbiAgICBNaWNyb3Bob25lID0gJ/CfjpknLCAvLyBNaWNyb3Bob25lIG9yIGlucHV0XG4gICAgQ2FtZXJhID0gJ/Cfk7cnLCAvLyBDYW1lcmEgb3IgdmlkZW9cbiAgICBWaWRlbyA9ICfwn46lJywgLy8gVmlkZW8gb3IgbWVkaWFcbiAgICBNdXNpYyA9ICfwn461JywgLy8gTXVzaWMgb3IgYXVkaW9cbiAgICBQaG9uZSA9ICfwn5OeJywgLy8gUGhvbmUgb3IgY29tbXVuaWNhdGlvblxuXG4gICAgLy8gRGV2ZWxvcG1lbnQgYW5kIEV2YWx1YXRpb25cbiAgICBQYWNrYWdlID0gJ/Cfk6YnLCAvLyBQYWNrYWdlIG9yIGJ1bmRsZVxuICAgIFBsdWdpbiA9ICfwn5SMJywgLy8gUGx1Z2luIG9yIGV4dGVuc2lvblxuICAgIEV4dGVuc2lvbiA9ICfwn6epJywgLy8gRXh0ZW5zaW9uIG9yIGNvbXBvbmVudFxuICAgIE1vZHVsZSA9ICfwn5OmJywgLy8gTW9kdWxlIG9yIHBhY2thZ2VcbiAgICBFdmFsdWF0ZSA9ICfwn5SNJywgLy8gRXZhbHVhdGUgb3Igc2VhcmNoXG4gICAgVmFyaWFibGUgPSAn8J+UpycsIC8vIFZhcmlhYmxlIG9yIHNldHRpbmdcbiAgICBTY3JpcHQgPSAn8J+TnCcsIC8vIFNjcmlwdCBvciBjb2RlXG4gICAgQ29kZSA9ICfwn5K+JywgLy8gQ29kZSBvciBmaWxlXG5cbiAgICAvLyBTdGF0dXMgYW5kIENvbXBsZXRpb25cbiAgICBMb2dzID0gJ/Cfk5wnLCAvLyBMb2dzIG9yIGhpc3RvcnlcbiAgICBQb3dlciA9ICfij7snLCAvLyBPbi9PZmYgc3RhdGVcbiAgICBIZWFydCA9ICfinaQnLCAvLyBMb3ZlIG9yIGZhdm9yaXRlXG4gICAgRmxhbWUgPSAn8J+UpScsIC8vIFRyZW5kaW5nIG9yIGhvdFxuICAgIEdyb3d0aCA9ICfwn5OIJywgLy8gR3Jvd3RoIG9yIGluY3JlYXNlXG4gICAgRGVjbGluZSA9ICfwn5OJJywgLy8gRGVjbGluZSBvciBkZWNyZWFzZVxuICAgIFdhcm5pbmdGaWxsZWQgPSAn4pqg77iPJywgLy8gV2FybmluZyAoZmlsbGVkKVxuXG4gICAgLy8gTmF0dXJlIGFuZCBXZWF0aGVyXG4gICAgU3VuID0gJ+KYgCcsIC8vIEJyaWdodG5lc3Mgb3IgZGF5XG4gICAgTW9vbiA9ICfwn4yZJywgLy8gTmlnaHQgb3IgZGFyayBtb2RlXG4gICAgUmFpbiA9ICfwn4ynJywgLy8gUmFpbiBvciBiYWQgd2VhdGhlclxuICAgIFNub3cgPSAn4p2EJywgLy8gU25vdyBvciBjb2xkXG4gICAgTGlnaHRuaW5nID0gJ+KaoScsIC8vIExpZ2h0bmluZyBvciBkYW5nZXJcbiAgICBUcmVlID0gJ/CfjLInLCAvLyBOYXR1cmUgb3IgZW52aXJvbm1lbnRcblxuICAgIC8vIEVtb3Rpb25zIGFuZCBFeHByZXNzaW9uc1xuICAgIFNtaWxlID0gJ/CfmIonLCAvLyBIYXBwaW5lc3Mgb3IgcG9zaXRpdmUgc3RhdGVcbiAgICBTYWQgPSAn8J+YoicsIC8vIFNhZG5lc3Mgb3IgbmVnYXRpdmUgc3RhdGVcbiAgICBBbmdyeSA9ICfwn5ihJywgLy8gQW5nZXIgb3IgZnJ1c3RyYXRpb25cbiAgICBDbGFwID0gJ/CfkY8nLCAvLyBBcHBsYXVzZSBvciBjZWxlYnJhdGlvblxuICAgIFRodW1ic1VwID0gJ/CfkY0nLCAvLyBBcHByb3ZhbCBvciBzdWNjZXNzXG4gICAgVGh1bWJzRG93biA9ICfwn5GOJywgLy8gRGlzYXBwcm92YWwgb3IgZmFpbHVyZVxuXG4gICAgLy8gTWlzY2VsbGFuZW91c1xuICAgIFJvY2tldCA9ICfwn5qAJywgLy8gTGF1bmNoIG9yIGRlcGxveVxuICAgIEdsb2JlID0gJ/CfjI0nLCAvLyBFYXJ0aCBvciBpbnRlcm5hdGlvbmFsXG4gICAgTWVkYWwgPSAn8J+PhScsIC8vIEFjaGlldmVtZW50IG9yIGF3YXJkXG4gICAgVHJvcGh5ID0gJ/Cfj4YnLCAvLyBXaW5uZXIgb3IgY2hhbXBpb25cbiAgICBGbGFnID0gJ/CfmqknLCAvLyBNYXJrIG9yIGZsYWdcbiAgICBTdGFyRmlsbGVkID0gJ+KtkCcsIC8vIEhpZ2hsaWdodCBvciBmYXZvcml0ZVxuICAgIFN0YXJPdXRsaW5lID0gJ+KcqScsIC8vIEFsdGVybmF0ZSBzdGFyIGljb25cbiAgICBGaXJld29ya3MgPSAn8J+OhicsIC8vIENlbGVicmF0aW9uXG4gICAgQmFsbG9vbiA9ICfwn46IJywgLy8gUGFydHkgb3IgZnVuXG4gICAgR2lmdCA9ICfwn46BJywgLy8gUmV3YXJkIG9yIHByZXNlbnRcbn1cblxuZXhwb3J0IHR5cGUgSUNsaVVzZXIgPSB7XG4gICAgLyoqXG4gICAgICogVGhlIGlkIG9mIHRoZSB1c2VyXG4gICAgICovXG4gICAgaWQ6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYW1lIG9mIHRoZSB1c2VyXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGVtYWlsIG9mIHRoZSB1c2VyXG4gICAgICovXG4gICAgZW1haWw6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFRoZSBncm91cHMgdGhlIHVzZXIgYmVsb25ncyB0b1xuICAgICAqIEBkZWZhdWx0IFtdXG4gICAgICovXG4gICAgZ3JvdXBzPzogc3RyaW5nW107XG59O1xuXG5leHBvcnQgaW50ZXJmYWNlIElDbGlVc2VyU2Vzc2lvbiB7XG4gICAgLyoqXG4gICAgICogVGhlIHVzZXIgYXNzb2NpYXRlZCB3aXRoIHRoZSBzZXNzaW9uXG4gICAgICovXG4gICAgdXNlcjogSUNsaVVzZXI7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIHVzZXIgc2Vzc2lvblxuICAgICAqL1xuICAgIGRhdGE/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xufVxuXG4vKipcbiAqIE9wdGlvbnMgZm9yIHRoZSBDTElcbiAqL1xuZXhwb3J0IHR5cGUgQ2xpT3B0aW9ucyA9IFJlY29yZDxzdHJpbmcsIGFueT4gJiB7XG4gICAgLyoqXG4gICAgICogVGhlIHdlbGNvbWUgbWVzc2FnZSBvcHRpb25zXG4gICAgICovXG4gICAgd2VsY29tZU1lc3NhZ2U/OiB7XG4gICAgICAgIC8qKlxuICAgICAgICAgKiBUaGUgbWVzc2FnZSB0byBkaXNwbGF5XG4gICAgICAgICAqL1xuICAgICAgICBtZXNzYWdlPzogc3RyaW5nO1xuXG4gICAgICAgIC8qKlxuICAgICAgICAgKiBXaGVuIHRvIHNob3cgdGhlIHdlbGNvbWUgbWVzc2FnZVxuICAgICAgICAgKiBAZGVmYXVsdCAnYWx3YXlzJ1xuICAgICAgICAgKi9cbiAgICAgICAgc2hvdz86ICdhbHdheXMnIHwgJ29uY2UnIHwgJ2RhaWx5JyB8ICduZXZlcic7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoZSB3ZWxjb21lIG1lc3NhZ2UgaXMgaGlkZGVuXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBoaWRlV2VsY29tZU1lc3NhZ2U/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogVXNlcnMgbW9kdWxlIG9wdGlvbnNcbiAgICAgKi9cbiAgICB1c2Vyc01vZHVsZT86IHtcbiAgICAgICAgLyoqXG4gICAgICAgICAqIElmIHRydWUsIHRoZSB1c2VycyBtb2R1bGUgaXMgZW5hYmxlZFxuICAgICAgICAgKi9cbiAgICAgICAgZW5hYmxlZDogYm9vbGVhbjtcblxuICAgICAgICAvKipcbiAgICAgICAgICogSGlkZSB0aGUgcHJvbXB0IHRvIGRpc3BsYXkgd2hlbiB0aGUgQ0xJIGlzIHJlYWR5IHRvIGFjY2VwdCBpbnB1dFxuICAgICAgICAgKi9cbiAgICAgICAgaGlkZVVzZXJOYW1lPzogYm9vbGVhbjtcblxuICAgICAgICAvKipcbiAgICAgICAgICogUmVsb2FkIHRoZSBwYWdlIHdoZW4gdGhlIHVzZXIgY2hhbmdlc1xuICAgICAgICAgKi9cbiAgICAgICAgcmVsb2FkUGFnZU9uVXNlckNoYW5nZT86IGJvb2xlYW47XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIEN1c3RvbSB0ZXJtaW5hbCBvcHRpb25zXG4gICAgICovXG4gICAgdGVybWluYWxPcHRpb25zPzogSVRlcm1pbmFsT3B0aW9ucyAmIElUZXJtaW5hbEluaXRPbmx5T3B0aW9ucztcblxuICAgIC8qKlxuICAgICAqIFRoZSBtaW5pbXVtIGxvZyBsZXZlbCB0byBkaXNwbGF5XG4gICAgICovXG4gICAgbG9nTGV2ZWw/OiBDbGlMb2dMZXZlbDtcbn07XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIHBhY2thZ2UgdGhhdCBjYW4gYmUgaW5zdGFsbGVkXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUGFja2FnZSB7XG4gICAgLyoqXG4gICAgICogVGhlIG5hbWUgb2YgdGhlIHBhY2thZ2VcbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZ2xvYmFsIG5hbWUgdXNlZCB0byBhY2Nlc3MgdGhlIHBhY2thZ2VcbiAgICAgKi9cbiAgICBnbG9iYWxOYW1lPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZlcnNpb24gb2YgdGhlIHBhY2thZ2VcbiAgICAgKi9cbiAgICB2ZXJzaW9uOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgdW5wa2cgdXJsIHRvIHRoZSBwYWNrYWdlXG4gICAgICovXG4gICAgdXJsOiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGVwZW5kZW5jaWVzIGZvciB0aGUgbW9kdWxlXG4gICAgICovXG4gICAgZGVwZW5kZW5jaWVzPzogUGFja2FnZVtdO1xufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgY29tbWFuZCBwcm9jZXNzb3IgbWV0YWRhdGFcbiAqL1xuZXhwb3J0IHR5cGUgQ2xpUHJvY2Vzc29yTWV0YWRhdGEgPSBSZWNvcmQ8c3RyaW5nLCBhbnk+ICYge1xuICAgIC8qKlxuICAgICAqIElmIHRydWUsIHRoZSBwcm9jZXNzb3IgaXMgc2VhbGVkIGFuZCBjYW5ub3QgYmUgZXh0ZW5kZWRcbiAgICAgKi9cbiAgICBzZWFsZWQ/OiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogSWYgdHJ1ZSwgdGhlIHByb2Nlc3NvciByZXF1aXJlcyB0aGUgc2VydmVyIHRvIGJlIHJ1bm5pbmdcbiAgICAgKi9cbiAgICByZXF1aXJlU2VydmVyPzogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFRoZSBtb2R1bGUgdGhlIHByb2Nlc3NvciBiZWxvbmdzIHRvXG4gICAgICovXG4gICAgbW9kdWxlPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQW4gaWNvbiB0byBkaXNwbGF5IGZvciB0aGUgcHJvY2Vzc29yXG4gICAgICovXG4gICAgaWNvbj86IENsaUljb24gfCBzdHJpbmc7XG59O1xuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBsb2cgbGV2ZWwgZm9yIHRoZSBDTElcbiAqL1xuZXhwb3J0IGVudW0gQ2xpTG9nTGV2ZWwge1xuICAgIE5vbmUgPSAwLFxuICAgIERFQlVHID0gMSxcbiAgICBMT0cgPSAyLFxuICAgIElORk8gPSAzLFxuICAgIFdBUk4gPSA0LFxuICAgIEVSUk9SID0gNSxcbn1cblxuZXhwb3J0IGNvbnN0IGVudW1zID0ge1xuICAgIENsaUZvcmVncm91bmRDb2xvcixcbiAgICBDbGlCYWNrZ3JvdW5kQ29sb3IsXG4gICAgQ2xpSWNvbixcbiAgICBDbGlMb2dMZXZlbCxcbn07XG5cbmV4cG9ydCAqIGZyb20gJy4vc2VydmljZXMnO1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJ0eXBlIE11bHRpU2VydmljZXMgPSB7XG4gICAgLyoqXG4gICAgICogV2hlbiB0cnVlLCBpbmplY3RvciByZXR1cm5zIGFuIGFycmF5IG9mIGluc3RhbmNlcy4gVGhpcyBpcyB1c2VmdWwgdG8gYWxsb3cgbXVsdGlwbGVcbiAgICAgKiBwcm92aWRlcnMgc3ByZWFkIGFjcm9zcyBtYW55IGZpbGVzIHRvIHByb3ZpZGUgY29uZmlndXJhdGlvbiBpbmZvcm1hdGlvbiB0byBhIGNvbW1vbiB0b2tlbi5cbiAgICAgKi9cbiAgICBtdWx0aT86IGJvb2xlYW47XG59O1xuXG5leHBvcnQgdHlwZSBDbGlWYWx1ZVByb3ZpZGVyID0gTXVsdGlTZXJ2aWNlcyAmIHtcbiAgICB1c2VWYWx1ZTogYW55O1xufTtcblxuZXhwb3J0IHR5cGUgQ2xpVHlwZVByb3ZpZGVyID0gTXVsdGlTZXJ2aWNlcyAmIHtcbiAgICB1c2VDbGFzczogYW55O1xufTtcblxuZXhwb3J0IHR5cGUgQ2xpRmFjdG9yeVByb3ZpZGVyID0gTXVsdGlTZXJ2aWNlcyAmIHtcbiAgICB1c2VGYWN0b3J5OiBGdW5jdGlvbjtcbn07XG5cbmV4cG9ydCB0eXBlIENsaVByb3ZpZGVyID0geyBwcm92aWRlOiBhbnkgfSAmIChcbiAgICB8IENsaVZhbHVlUHJvdmlkZXJcbiAgICB8IENsaVR5cGVQcm92aWRlclxuICAgIHwgQ2xpRmFjdG9yeVByb3ZpZGVyXG4pICZcbiAgICBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuIl19
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"qodalis-cli-core.mjs","sources":["../../../projects/core/src/lib/models/index.ts","../../../projects/core/src/lib/constants/index.ts","../../../projects/core/src/lib/utils/delay.ts","../../../projects/core/src/lib/utils/object-describer.ts","../../../projects/core/src/lib/utils/index.ts","../../../projects/core/src/lib/modules/index.ts","../../../projects/core/src/lib/types/CancellablePromise.ts","../../../projects/core/src/public-api.ts","../../../projects/core/src/qodalis-cli-core.ts"],"sourcesContent":["import { ITerminalInitOnlyOptions, ITerminalOptions } from '@xterm/xterm';\n\nexport type CliProcessCommand = {\n /**\n * The command that was entered\n */\n command: string;\n\n /**\n * The data that was entered\n */\n data?: string;\n\n /**\n * The chain of commands that were entered\n */\n chainCommands: string[];\n\n /**\n * The raw command that was entered\n */\n rawCommand: string;\n\n /**\n * The value of the command\n */\n value?: string;\n\n /**\n * The arguments that were entered\n */\n args: Record<string, any>;\n};\n\nexport enum CliForegroundColor {\n Black = '\\x1b[30m',\n Red = '\\x1b[31m',\n Green = '\\x1b[32m',\n Yellow = '\\x1b[33m',\n Blue = '\\x1b[34m',\n Magenta = '\\x1b[35m',\n Cyan = '\\x1b[36m',\n White = '\\x1b[37m',\n Reset = '\\x1b[0m',\n}\n\nexport enum CliBackgroundColor {\n Black = '\\x1b[40m',\n Red = '\\x1b[41m',\n Green = '\\x1b[42m',\n Yellow = '\\x1b[43m',\n Blue = '\\x1b[44m',\n Magenta = '\\x1b[45m',\n Cyan = '\\x1b[46m',\n White = '\\x1b[47m',\n}\n\nexport enum CliIcon {\n // General Symbols\n CheckIcon = '✔', // Success, completion\n CrossIcon = '✘', // Failure, error\n InfoIcon = 'ℹ', // Information\n WarningIcon = '⚠', // Warning\n QuestionMark = '?', // Help or unknown state\n Exclamation = '❗', // Emphasis or alert\n Ellipsis = '…', // Loading or truncated text\n Dot = '•', // List item\n Bullet = '‣', // Alternate bullet point\n\n // Arrows\n ArrowRight = '→', // Navigation or next step\n ArrowLeft = '←', // Previous step or navigation\n ArrowUp = '↑', // Up direction\n ArrowDown = '↓', // Down direction\n ArrowRightFilled = '▶', // Navigation or next step (filled)\n ArrowLeftFilled = '◀', // Previous step or navigation (filled)\n ArrowUpFilled = '▲', // Up direction (filled)\n ArrowDownFilled = '▼', // Down direction (filled)\n DoubleArrowRight = '»', // Fast forward or next\n DoubleArrowLeft = '«', // Rewind or previous\n\n // Lists and Progress\n Star = '★', // Highlight or favorite (filled)\n StarEmpty = '☆', // Highlight or favorite (empty)\n Plus = '+', // Addition or increment\n Minus = '-', // Subtraction or decrement\n Progress = '⏳', // Indicating progress\n Success = '✅', // Success (alternative to CheckIcon)\n Failure = '❌', // Failure (alternative to CrossIcon)\n\n // Time and Calendar\n Clock = '⏰', // Time-related\n Timer = '⏱', // Stopwatch or timer\n Alarm = '🔔', // Alarm or alert\n Calendar = '📅', // Calendar or date\n\n // Navigation and Folders\n Folder = '📁', // Directory or file grouping\n FolderOpen = '📂', // Open folder\n File = '📄', // File or document\n Archive = '🗃', // Archive or file grouping\n Link = '🔗', // Hyperlink or connection\n Chain = '⛓', // Chain or linked\n Bookmark = '🔖', // Bookmark or save\n\n // Actions\n Edit = '✏', // Edit or modify\n Trash = '🗑', // Deletion or removal\n Add = '➕', // Add user or item\n Remove = '➖', // Remove user or item\n Reload = '🔄', // Refresh or reload\n Save = '💾', // Save or store\n Undo = '↩', // Undo action\n Redo = '↪', // Redo action\n Play = '▶', // Start or play\n Pause = '⏸', // Pause or stop temporarily\n Stop = '⏹', // Stop or end\n Cancel = '❎', // Cancel or close\n\n // User and Security\n User = '👤', // User or profile\n Group = '👥', // Group or team\n Lock = '🔒', // Secured or locked\n Unlock = '🔓', // Unlocked or accessible\n Help = '❓', // Help or support\n Key = '🔑', // Authentication or key\n Shield = '🛡', // Security or protection\n\n // Tools and Settings\n Gear = '⚙', // Settings or configuration\n Settings = '⚙️', // Settings (alternative)\n Theme = '🎨', // Theme or appearance\n Light = '💡', // Light mode\n Bug = '🐞', // Bug or issue\n Wrench = '🔧', // Maintenance or tools\n Hammer = '🔨', // Build or fix\n\n // Technology and Devices\n Terminal = '💻', // Terminal or command line\n Database = '🗄', // Database or storage\n Server = '🖥', // Server or host\n Cloud = '☁', // Cloud or remote\n Network = '🌐', // Network or connection\n Monitor = '🖥', // Monitor or display\n Printer = '🖨', // Printer or output\n USB = '🔌', // USB or connection\n Speaker = '🔊', // Speaker or audio\n Microphone = '🎙', // Microphone or input\n Camera = '📷', // Camera or video\n Video = '🎥', // Video or media\n Music = '🎵', // Music or audio\n Phone = '📞', // Phone or communication\n\n // Development and Evaluation\n Package = '📦', // Package or bundle\n Plugin = '🔌', // Plugin or extension\n Extension = '🧩', // Extension or component\n Module = '📦', // Module or package\n Evaluate = '🔍', // Evaluate or search\n Variable = '🔧', // Variable or setting\n Script = '📜', // Script or code\n Code = '💾', // Code or file\n\n // Status and Completion\n Logs = '📜', // Logs or history\n Power = '⏻', // On/Off state\n Heart = '❤', // Love or favorite\n Flame = '🔥', // Trending or hot\n Growth = '📈', // Growth or increase\n Decline = '📉', // Decline or decrease\n WarningFilled = '⚠️', // Warning (filled)\n\n // Nature and Weather\n Sun = '☀', // Brightness or day\n Moon = '🌙', // Night or dark mode\n Rain = '🌧', // Rain or bad weather\n Snow = '❄', // Snow or cold\n Lightning = '⚡', // Lightning or danger\n Tree = '🌲', // Nature or environment\n\n // Emotions and Expressions\n Smile = '😊', // Happiness or positive state\n Sad = '😢', // Sadness or negative state\n Angry = '😡', // Anger or frustration\n Clap = '👏', // Applause or celebration\n ThumbsUp = '👍', // Approval or success\n ThumbsDown = '👎', // Disapproval or failure\n\n // Miscellaneous\n Rocket = '🚀', // Launch or deploy\n Globe = '🌍', // Earth or international\n Medal = '🏅', // Achievement or award\n Trophy = '🏆', // Winner or champion\n Flag = '🚩', // Mark or flag\n StarFilled = '⭐', // Highlight or favorite\n StarOutline = '✩', // Alternate star icon\n Fireworks = '🎆', // Celebration\n Balloon = '🎈', // Party or fun\n Gift = '🎁', // Reward or present\n}\n\nexport type ICliUser = {\n /**\n * The id of the user\n */\n id: string;\n\n /**\n * The name of the user\n */\n name: string;\n\n /**\n * The email of the user\n */\n email: string;\n\n /**\n * The groups the user belongs to\n * @default []\n */\n groups?: string[];\n};\n\nexport interface ICliUserSession {\n /**\n * The user associated with the session\n */\n user: ICliUser;\n\n /**\n * The data associated with the user session\n */\n data?: Record<string, any>;\n}\n\n/**\n * Options for the CLI\n */\nexport type CliOptions = Record<string, any> & {\n /**\n * The welcome message options\n */\n welcomeMessage?: {\n /**\n * The message to display\n */\n message?: string;\n\n /**\n * When to show the welcome message\n * @default 'always'\n */\n show?: 'always' | 'once' | 'daily' | 'never';\n };\n\n /**\n * If true, the welcome message is hidden\n * @default false\n */\n hideWelcomeMessage?: boolean;\n\n /**\n * Users module options\n */\n usersModule?: {\n /**\n * If true, the users module is enabled\n */\n enabled: boolean;\n\n /**\n * Hide the prompt to display when the CLI is ready to accept input\n */\n hideUserName?: boolean;\n\n /**\n * Reload the page when the user changes\n */\n reloadPageOnUserChange?: boolean;\n };\n\n /**\n * Custom terminal options\n */\n terminalOptions?: ITerminalOptions & ITerminalInitOnlyOptions;\n\n /**\n * The minimum log level to display\n */\n logLevel?: CliLogLevel;\n};\n\n/**\n * Represents a package that can be installed\n */\nexport interface Package {\n /**\n * The name of the package\n */\n name: string;\n\n /**\n * The global name used to access the package\n */\n globalName?: string;\n\n /**\n * The version of the package\n */\n version: string;\n\n /**\n * The unpkg url to the package\n */\n url: string;\n\n /**\n * The dependencies for the module\n */\n dependencies?: Package[];\n}\n\n/**\n * Represents command processor metadata\n */\nexport type CliProcessorMetadata = Record<string, any> & {\n /**\n * If true, the processor is sealed and cannot be extended\n */\n sealed?: boolean;\n\n /**\n * If true, the processor requires the server to be running\n */\n requireServer?: boolean;\n\n /**\n * The module the processor belongs to\n */\n module?: string;\n\n /**\n * An icon to display for the processor\n */\n icon?: CliIcon | string;\n};\n\n/**\n * Represents a log level for the CLI\n */\nexport enum CliLogLevel {\n None = 0,\n DEBUG = 1,\n LOG = 2,\n INFO = 3,\n WARN = 4,\n ERROR = 5,\n}\n\nexport const enums = {\n CliForegroundColor,\n CliBackgroundColor,\n CliIcon,\n CliLogLevel,\n};\n","import { ICliCommandAuthor } from '../interfaces';\n\nexport const DefaultLibraryAuthor: ICliCommandAuthor = {\n name: 'Nicolae Lupei',\n email: 'nicolae.lupei@qodalis.com',\n};\n\nexport const constants = {\n DefaultLibraryAuthor,\n};\n","export const delay = (ms: number): Promise<void> => {\n return new Promise((resolve) => setTimeout(resolve, ms));\n};\n","import { ICliCommandProcessor, ICliExecutionContext } from '../interfaces';\nimport { CliForegroundColor, CliProcessCommand } from '../models';\n\nexport class ObjectDescriber {\n static describe(\n obj: any,\n options?: {\n filter?: (o: {\n funcName: string;\n func: any;\n args: string[];\n }) => boolean;\n },\n ): ICliCommandProcessor[] {\n const { filter } = options || {};\n\n const processors: ICliCommandProcessor[] = [];\n\n const keys = Object.keys(obj);\n\n const functions = keys.filter((key) => typeof obj[key] === 'function');\n\n for (const func of functions) {\n const funcValue = obj[func];\n const args = this.getFunctionArguments(funcValue);\n\n if (filter) {\n const shouldInclude = filter({\n funcName: func,\n func: funcValue,\n args,\n });\n\n if (!shouldInclude) {\n continue;\n }\n }\n\n const supportsMultipleArgs = args.length > 1;\n\n const supportsDynamicArgs = this.supportsDynamicArgs(funcValue);\n\n if (args.length === 0 && !supportsDynamicArgs) {\n continue;\n }\n\n if (\n args.length > 0 &&\n args.some((arg) => arg === 'function' || arg === 'func')\n ) {\n continue;\n }\n\n const processor: ICliCommandProcessor = {\n command: func,\n description: `A command that executes the function ${func} with the provided arguments`,\n allowUnlistedCommands: true,\n valueRequired: true,\n parameters: [\n {\n name: 'debug',\n description: 'Debug',\n type: 'boolean',\n required: false,\n },\n ],\n processCommand: async (\n command: CliProcessCommand,\n context: ICliExecutionContext,\n ) => {\n const debug = command.args['debug'] as boolean;\n\n if (debug) {\n context.writer.writeln('Executing command: ' + func);\n context.writer.writeln(\n 'Arguments: ' + JSON.stringify(command.args),\n );\n context.writer.writeln(\n 'Function: ' + funcValue.toString(),\n );\n }\n\n const argsToCallF: any[] = [];\n\n if (supportsMultipleArgs) {\n for (const arg of args.slice(1)) {\n argsToCallF.push(command.args[arg]);\n }\n }\n\n if (supportsDynamicArgs) {\n const delimiter = command.args['delimiter'] || ',';\n argsToCallF.push(...command.value!.split(delimiter));\n }\n\n if (debug) {\n context.writer.writeln(\n 'Arguments after processing: ' +\n JSON.stringify(argsToCallF),\n );\n }\n\n const result =\n supportsDynamicArgs && args.length === 0\n ? funcValue(...argsToCallF)\n : funcValue(command.value, ...argsToCallF);\n\n context.writer.write(\n context.writer.wrapInColor(\n 'Result: ',\n CliForegroundColor.Yellow,\n ),\n );\n\n if (result === null) {\n context.writer.writeln('null');\n } else if (result === undefined) {\n context.writer.writeln('undefined');\n } else if (typeof result === 'boolean') {\n context.writer.writeln(result.toString());\n } else if (typeof result === 'number') {\n context.writer.writeln(result.toString());\n } else if (Array.isArray(result)) {\n context.writer.writeJson(result);\n } else if (typeof result === 'string') {\n context.writer.writeln(result);\n } else if (typeof result === 'object') {\n context.writer.writeJson(result);\n } else {\n context.writer.writeln(result?.toString());\n }\n\n context.process.output(result?.toString());\n },\n writeDescription: (context: ICliExecutionContext) => {\n context.writer.writeln(func);\n },\n };\n\n if (supportsDynamicArgs) {\n processor.parameters?.push({\n name: 'delimiter',\n description: 'Delimiter',\n type: 'string',\n required: false,\n });\n }\n\n if (supportsMultipleArgs) {\n processor.parameters?.push(\n ...args.slice(1).map((arg) => ({\n name: arg,\n description: arg,\n type: 'string',\n required: false,\n })),\n );\n }\n\n processors.push(processor);\n }\n\n return processors;\n }\n\n static supportsDynamicArgs(func: any): boolean {\n const funcStr = func.toString();\n return funcStr.includes('arguments');\n }\n\n static getFunctionArguments(func: any): string[] {\n const funcStr = func.toString();\n const args = funcStr.match(/\\(([^)]*)\\)/);\n if (!args) {\n return [];\n }\n return args[1]\n .split(',')\n .map((arg: string) => arg.trim())\n .filter((arg: string) => arg !== '');\n }\n}\n","import { ICliCommandParameterDescriptor } from '../interfaces';\nimport { CliBackgroundColor, CliForegroundColor } from '../models';\nimport { delay } from './delay';\nimport { ObjectDescriber } from './object-describer';\n\nexport const getParameterValue = (\n p: ICliCommandParameterDescriptor,\n args: Record<string, any>,\n): any | undefined => {\n return (\n args[p.name] ??\n (p.aliases?.find((alias) => args[alias]) &&\n args[p.aliases!.find((alias) => args[alias])!])\n );\n};\n\nexport const formatJson = (json: any): string => {\n const identedJson = JSON.stringify(json, null, 2);\n\n return colorizeJson(identedJson.split('\\n').join('\\r\\n'));\n};\n\nexport const colorizeJson = (jsonString: any): string => {\n return jsonString\n .replace(/\"([^\"]+)\":/g, '\\x1b[33m\"$1\":\\x1b[0m') // Keys (yellow)\n .replace(/: \"([^\"]*)\"/g, ': \\x1b[32m\"$1\"\\x1b[0m') // Strings (green)\n .replace(/: (\\d+)/g, ': \\x1b[34m$1\\x1b[0m') // Numbers (blue)\n .replace(/: (true|false)/g, ': \\x1b[35m$1\\x1b[0m') // Booleans (magenta)\n .replace(/: (null)/g, ': \\x1b[36m$1\\x1b[0m'); // Null (cyan)\n};\n\nexport const toQueryString = (params: Record<string, any>): string => {\n const searchParams = new URLSearchParams();\n\n for (const key in params) {\n if (params.hasOwnProperty(key)) {\n const value = params[key];\n // Handle array and non-primitive values\n if (Array.isArray(value)) {\n value.forEach((v) => searchParams.append(key, v.toString()));\n } else if (value !== null && value !== undefined) {\n searchParams.append(key, value.toString());\n }\n }\n }\n\n return searchParams.toString();\n};\n\nexport const highlightTextWithBg = (\n text: string,\n pattern: RegExp,\n bgColor: CliBackgroundColor = CliBackgroundColor.Yellow,\n): string => {\n // Replace matches with background-colored text\n return text.replace(\n pattern,\n (match) => `${bgColor}${match}${CliForegroundColor.Reset}`,\n );\n};\n\nexport const getRightOfWord = (\n command: string,\n word: string,\n): string | undefined => {\n // Find the position of the word in the command\n const index = command.indexOf(word);\n\n // If the word is found, extract the substring to the right\n if (index !== -1) {\n return command.slice(index + word.length).trim();\n }\n\n // If the word is not found, return null\n return undefined;\n};\n\nexport * from './object-describer';\n\nexport * from './delay';\n\nexport const utils = {\n getParameterValue,\n formatJson,\n colorizeJson,\n toQueryString,\n highlightTextWithBg,\n getRightOfWord,\n ObjectDescriber,\n delay,\n};\n","import { enums } from '../models';\nimport { constants } from '../constants';\nimport { ICliExecutionContext, ICliUmdModule } from '../interfaces';\nimport { utils } from '../utils';\n\nexport const initializeBrowserEnvironment = ({\n context,\n handlers,\n}: {\n context: ICliExecutionContext;\n handlers: ((module: ICliUmdModule) => Promise<void>)[];\n}): void => {\n (window as any).cliCore = {\n onUmdModuleBoot: handlers || [],\n bootUmdModule: async (module: ICliUmdModule) => {\n context.logger.log('Booting UMD module', module.name);\n (window as any)[module.name] = module;\n handlers.forEach(async (handler) => await handler(module));\n },\n ...constants,\n ...utils,\n ...enums,\n };\n\n (window as any).ngCore = {\n Injectable: () => {},\n };\n};\n\nexport const bootUmdModule = async (module: ICliUmdModule): Promise<void> => {\n if (typeof (window as any) !== 'undefined') {\n await (window as any).cliCore.bootUmdModule(module);\n } else {\n console.log('window is undefined');\n }\n};\n","export class CancellablePromise<T> {\n private hasCancelled = false;\n\n private abortController = new AbortController();\n\n constructor(\n private executor: (\n resolve: (value: T) => void,\n reject: (reason?: any) => void,\n ) => void,\n ) {}\n\n public promise: Promise<T> = new Promise<T>((resolve, reject) => {\n this.abortController.signal.onabort = () => {\n reject(new Error('Promise cancelled'));\n };\n\n this.executor(\n (value) => {\n if (!this.hasCancelled) {\n resolve(value);\n }\n },\n (reason) => {\n if (!this.hasCancelled) {\n reject(reason);\n }\n },\n );\n });\n\n cancel() {\n this.hasCancelled = true;\n this.abortController.abort();\n }\n}\n","/*\n * Public API Surface of core\n */\n\nexport * from './lib/models';\n\nexport * from './lib/interfaces';\n\nexport * from './lib/modules';\n\nexport * from './lib/utils';\n\nexport * from './lib/constants';\n\nexport * from './lib/types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"qodalis-cli-core.mjs","sources":["../../../projects/core/src/lib/models/index.ts","../../../projects/core/src/lib/constants/index.ts","../../../projects/core/src/lib/utils/delay.ts","../../../projects/core/src/lib/utils/object-describer.ts","../../../projects/core/src/lib/utils/index.ts","../../../projects/core/src/lib/modules/index.ts","../../../projects/core/src/lib/types/CancellablePromise.ts","../../../projects/core/src/public-api.ts","../../../projects/core/src/qodalis-cli-core.ts"],"sourcesContent":["import { ITerminalInitOnlyOptions, ITerminalOptions } from '@xterm/xterm';\n\nexport type CliProcessCommand = {\n /**\n * The command that was entered\n */\n command: string;\n\n /**\n * The data that was entered\n */\n data?: any;\n\n /**\n * The chain of commands that were entered\n */\n chainCommands: string[];\n\n /**\n * The raw command that was entered\n */\n rawCommand: string;\n\n /**\n * The value of the command\n */\n value?: string;\n\n /**\n * The arguments that were entered\n */\n args: Record<string, any>;\n};\n\nexport enum CliForegroundColor {\n Black = '\\x1b[30m',\n Red = '\\x1b[31m',\n Green = '\\x1b[32m',\n Yellow = '\\x1b[33m',\n Blue = '\\x1b[34m',\n Magenta = '\\x1b[35m',\n Cyan = '\\x1b[36m',\n White = '\\x1b[37m',\n Reset = '\\x1b[0m',\n}\n\nexport enum CliBackgroundColor {\n Black = '\\x1b[40m',\n Red = '\\x1b[41m',\n Green = '\\x1b[42m',\n Yellow = '\\x1b[43m',\n Blue = '\\x1b[44m',\n Magenta = '\\x1b[45m',\n Cyan = '\\x1b[46m',\n White = '\\x1b[47m',\n}\n\nexport enum CliIcon {\n // General Symbols\n CheckIcon = '✔', // Success, completion\n CrossIcon = '✘', // Failure, error\n InfoIcon = 'ℹ', // Information\n WarningIcon = '⚠', // Warning\n QuestionMark = '?', // Help or unknown state\n Exclamation = '❗', // Emphasis or alert\n Ellipsis = '…', // Loading or truncated text\n Dot = '•', // List item\n Bullet = '‣', // Alternate bullet point\n\n // Arrows\n ArrowRight = '→', // Navigation or next step\n ArrowLeft = '←', // Previous step or navigation\n ArrowUp = '↑', // Up direction\n ArrowDown = '↓', // Down direction\n ArrowRightFilled = '▶', // Navigation or next step (filled)\n ArrowLeftFilled = '◀', // Previous step or navigation (filled)\n ArrowUpFilled = '▲', // Up direction (filled)\n ArrowDownFilled = '▼', // Down direction (filled)\n DoubleArrowRight = '»', // Fast forward or next\n DoubleArrowLeft = '«', // Rewind or previous\n\n // Lists and Progress\n Star = '★', // Highlight or favorite (filled)\n StarEmpty = '☆', // Highlight or favorite (empty)\n Plus = '+', // Addition or increment\n Minus = '-', // Subtraction or decrement\n Progress = '⏳', // Indicating progress\n Success = '✅', // Success (alternative to CheckIcon)\n Failure = '❌', // Failure (alternative to CrossIcon)\n\n // Time and Calendar\n Clock = '⏰', // Time-related\n Timer = '⏱', // Stopwatch or timer\n Alarm = '🔔', // Alarm or alert\n Calendar = '📅', // Calendar or date\n\n // Navigation and Folders\n Folder = '📁', // Directory or file grouping\n FolderOpen = '📂', // Open folder\n File = '📄', // File or document\n Archive = '🗃', // Archive or file grouping\n Link = '🔗', // Hyperlink or connection\n Chain = '⛓', // Chain or linked\n Bookmark = '🔖', // Bookmark or save\n\n // Actions\n Edit = '✏', // Edit or modify\n Trash = '🗑', // Deletion or removal\n Add = '➕', // Add user or item\n Remove = '➖', // Remove user or item\n Reload = '🔄', // Refresh or reload\n Save = '💾', // Save or store\n Undo = '↩', // Undo action\n Redo = '↪', // Redo action\n Play = '▶', // Start or play\n Pause = '⏸', // Pause or stop temporarily\n Stop = '⏹', // Stop or end\n Cancel = '❎', // Cancel or close\n\n // User and Security\n User = '👤', // User or profile\n Group = '👥', // Group or team\n Lock = '🔒', // Secured or locked\n Unlock = '🔓', // Unlocked or accessible\n Help = '❓', // Help or support\n Key = '🔑', // Authentication or key\n Shield = '🛡', // Security or protection\n\n // Tools and Settings\n Gear = '⚙', // Settings or configuration\n Settings = '⚙️', // Settings (alternative)\n Theme = '🎨', // Theme or appearance\n Light = '💡', // Light mode\n Bug = '🐞', // Bug or issue\n Wrench = '🔧', // Maintenance or tools\n Hammer = '🔨', // Build or fix\n\n // Technology and Devices\n Terminal = '💻', // Terminal or command line\n Database = '🗄', // Database or storage\n Server = '🖥', // Server or host\n Cloud = '☁', // Cloud or remote\n Network = '🌐', // Network or connection\n Monitor = '🖥', // Monitor or display\n Printer = '🖨', // Printer or output\n USB = '🔌', // USB or connection\n Speaker = '🔊', // Speaker or audio\n Microphone = '🎙', // Microphone or input\n Camera = '📷', // Camera or video\n Video = '🎥', // Video or media\n Music = '🎵', // Music or audio\n Phone = '📞', // Phone or communication\n\n // Development and Evaluation\n Package = '📦', // Package or bundle\n Plugin = '🔌', // Plugin or extension\n Extension = '🧩', // Extension or component\n Module = '📦', // Module or package\n Evaluate = '🔍', // Evaluate or search\n Variable = '🔧', // Variable or setting\n Script = '📜', // Script or code\n Code = '💾', // Code or file\n\n // Status and Completion\n Logs = '📜', // Logs or history\n Power = '⏻', // On/Off state\n Heart = '❤', // Love or favorite\n Flame = '🔥', // Trending or hot\n Growth = '📈', // Growth or increase\n Decline = '📉', // Decline or decrease\n WarningFilled = '⚠️', // Warning (filled)\n\n // Nature and Weather\n Sun = '☀', // Brightness or day\n Moon = '🌙', // Night or dark mode\n Rain = '🌧', // Rain or bad weather\n Snow = '❄', // Snow or cold\n Lightning = '⚡', // Lightning or danger\n Tree = '🌲', // Nature or environment\n\n // Emotions and Expressions\n Smile = '😊', // Happiness or positive state\n Sad = '😢', // Sadness or negative state\n Angry = '😡', // Anger or frustration\n Clap = '👏', // Applause or celebration\n ThumbsUp = '👍', // Approval or success\n ThumbsDown = '👎', // Disapproval or failure\n\n // Miscellaneous\n Rocket = '🚀', // Launch or deploy\n Globe = '🌍', // Earth or international\n Medal = '🏅', // Achievement or award\n Trophy = '🏆', // Winner or champion\n Flag = '🚩', // Mark or flag\n StarFilled = '⭐', // Highlight or favorite\n StarOutline = '✩', // Alternate star icon\n Fireworks = '🎆', // Celebration\n Balloon = '🎈', // Party or fun\n Gift = '🎁', // Reward or present\n}\n\nexport type ICliUser = {\n /**\n * The id of the user\n */\n id: string;\n\n /**\n * The name of the user\n */\n name: string;\n\n /**\n * The email of the user\n */\n email: string;\n\n /**\n * The groups the user belongs to\n * @default []\n */\n groups?: string[];\n};\n\nexport interface ICliUserSession {\n /**\n * The user associated with the session\n */\n user: ICliUser;\n\n /**\n * The data associated with the user session\n */\n data?: Record<string, any>;\n}\n\n/**\n * Options for the CLI\n */\nexport type CliOptions = Record<string, any> & {\n /**\n * The welcome message options\n */\n welcomeMessage?: {\n /**\n * The message to display\n */\n message?: string;\n\n /**\n * When to show the welcome message\n * @default 'always'\n */\n show?: 'always' | 'once' | 'daily' | 'never';\n };\n\n /**\n * If true, the welcome message is hidden\n * @default false\n */\n hideWelcomeMessage?: boolean;\n\n /**\n * Users module options\n */\n usersModule?: {\n /**\n * If true, the users module is enabled\n */\n enabled: boolean;\n\n /**\n * Hide the prompt to display when the CLI is ready to accept input\n */\n hideUserName?: boolean;\n\n /**\n * Reload the page when the user changes\n */\n reloadPageOnUserChange?: boolean;\n };\n\n /**\n * Custom terminal options\n */\n terminalOptions?: ITerminalOptions & ITerminalInitOnlyOptions;\n\n /**\n * The minimum log level to display\n */\n logLevel?: CliLogLevel;\n};\n\n/**\n * Represents a package that can be installed\n */\nexport interface Package {\n /**\n * The name of the package\n */\n name: string;\n\n /**\n * The global name used to access the package\n */\n globalName?: string;\n\n /**\n * The version of the package\n */\n version: string;\n\n /**\n * The unpkg url to the package\n */\n url: string;\n\n /**\n * The dependencies for the module\n */\n dependencies?: Package[];\n}\n\n/**\n * Represents command processor metadata\n */\nexport type CliProcessorMetadata = Record<string, any> & {\n /**\n * If true, the processor is sealed and cannot be extended\n */\n sealed?: boolean;\n\n /**\n * If true, the processor requires the server to be running\n */\n requireServer?: boolean;\n\n /**\n * The module the processor belongs to\n */\n module?: string;\n\n /**\n * An icon to display for the processor\n */\n icon?: CliIcon | string;\n};\n\n/**\n * Represents a log level for the CLI\n */\nexport enum CliLogLevel {\n None = 0,\n DEBUG = 1,\n LOG = 2,\n INFO = 3,\n WARN = 4,\n ERROR = 5,\n}\n\nexport const enums = {\n CliForegroundColor,\n CliBackgroundColor,\n CliIcon,\n CliLogLevel,\n};\n\nexport * from './services';\n","import { ICliCommandAuthor } from '../interfaces';\n\nexport const DefaultLibraryAuthor: ICliCommandAuthor = {\n name: 'Nicolae Lupei',\n email: 'nicolae.lupei@qodalis.com',\n};\n\nexport const constants = {\n DefaultLibraryAuthor,\n};\n","export const delay = (ms: number): Promise<void> => {\n return new Promise((resolve) => setTimeout(resolve, ms));\n};\n","import { ICliCommandProcessor, ICliExecutionContext } from '../interfaces';\nimport { CliForegroundColor, CliProcessCommand } from '../models';\n\nexport class ObjectDescriber {\n static describe(\n obj: any,\n options?: {\n filter?: (o: {\n funcName: string;\n func: any;\n args: string[];\n }) => boolean;\n },\n ): ICliCommandProcessor[] {\n const { filter } = options || {};\n\n const processors: ICliCommandProcessor[] = [];\n\n const keys = Object.keys(obj);\n\n const functions = keys.filter((key) => typeof obj[key] === 'function');\n\n for (const func of functions) {\n const funcValue = obj[func];\n const args = this.getFunctionArguments(funcValue);\n\n if (filter) {\n const shouldInclude = filter({\n funcName: func,\n func: funcValue,\n args,\n });\n\n if (!shouldInclude) {\n continue;\n }\n }\n\n const supportsMultipleArgs = args.length > 1;\n\n const supportsDynamicArgs = this.supportsDynamicArgs(funcValue);\n\n if (args.length === 0 && !supportsDynamicArgs) {\n continue;\n }\n\n if (\n args.length > 0 &&\n args.some((arg) => arg === 'function' || arg === 'func')\n ) {\n continue;\n }\n\n const processor: ICliCommandProcessor = {\n command: func,\n description: `A command that executes the function ${func} with the provided arguments`,\n allowUnlistedCommands: true,\n valueRequired: true,\n parameters: [\n {\n name: 'debug',\n description: 'Debug',\n type: 'boolean',\n required: false,\n },\n ],\n processCommand: async (\n command: CliProcessCommand,\n context: ICliExecutionContext,\n ) => {\n const debug = command.args['debug'] as boolean;\n\n if (debug) {\n context.writer.writeln('Executing command: ' + func);\n context.writer.writeln(\n 'Arguments: ' + JSON.stringify(command.args),\n );\n context.writer.writeln(\n 'Function: ' + funcValue.toString(),\n );\n }\n\n const argsToCallF: any[] = [];\n\n if (supportsMultipleArgs) {\n for (const arg of args.slice(1)) {\n argsToCallF.push(command.args[arg]);\n }\n }\n\n if (supportsDynamicArgs) {\n const delimiter = command.args['delimiter'] || ',';\n argsToCallF.push(...command.value!.split(delimiter));\n }\n\n if (debug) {\n context.writer.writeln(\n 'Arguments after processing: ' +\n JSON.stringify(argsToCallF),\n );\n }\n\n const result =\n supportsDynamicArgs && args.length === 0\n ? funcValue(...argsToCallF)\n : funcValue(command.value, ...argsToCallF);\n\n context.writer.write(\n context.writer.wrapInColor(\n 'Result: ',\n CliForegroundColor.Yellow,\n ),\n );\n\n if (result === null) {\n context.writer.writeln('null');\n } else if (result === undefined) {\n context.writer.writeln('undefined');\n } else if (typeof result === 'boolean') {\n context.writer.writeln(result.toString());\n } else if (typeof result === 'number') {\n context.writer.writeln(result.toString());\n } else if (Array.isArray(result)) {\n context.writer.writeJson(result);\n } else if (typeof result === 'string') {\n context.writer.writeln(result);\n } else if (typeof result === 'object') {\n context.writer.writeJson(result);\n } else {\n context.writer.writeln(result?.toString());\n }\n\n context.process.output(result?.toString());\n },\n writeDescription: (context: ICliExecutionContext) => {\n context.writer.writeln(func);\n },\n };\n\n if (supportsDynamicArgs) {\n processor.parameters?.push({\n name: 'delimiter',\n description: 'Delimiter',\n type: 'string',\n required: false,\n });\n }\n\n if (supportsMultipleArgs) {\n processor.parameters?.push(\n ...args.slice(1).map((arg) => ({\n name: arg,\n description: arg,\n type: 'string',\n required: false,\n })),\n );\n }\n\n processors.push(processor);\n }\n\n return processors;\n }\n\n static supportsDynamicArgs(func: any): boolean {\n const funcStr = func.toString();\n return funcStr.includes('arguments');\n }\n\n static getFunctionArguments(func: any): string[] {\n const funcStr = func.toString();\n const args = funcStr.match(/\\(([^)]*)\\)/);\n if (!args) {\n return [];\n }\n return args[1]\n .split(',')\n .map((arg: string) => arg.trim())\n .filter((arg: string) => arg !== '');\n }\n}\n","import { ICliCommandParameterDescriptor } from '../interfaces';\nimport { CliBackgroundColor, CliForegroundColor } from '../models';\nimport { delay } from './delay';\nimport { ObjectDescriber } from './object-describer';\n\nexport const getParameterValue = (\n p: ICliCommandParameterDescriptor,\n args: Record<string, any>,\n): any | undefined => {\n return (\n args[p.name] ??\n (p.aliases?.find((alias) => args[alias]) &&\n args[p.aliases!.find((alias) => args[alias])!])\n );\n};\n\nexport const formatJson = (json: any): string => {\n const identedJson = JSON.stringify(json, null, 2);\n\n return colorizeJson(identedJson.split('\\n').join('\\r\\n'));\n};\n\nexport const colorizeJson = (jsonString: any): string => {\n return jsonString\n .replace(/\"([^\"]+)\":/g, '\\x1b[33m\"$1\":\\x1b[0m') // Keys (yellow)\n .replace(/: \"([^\"]*)\"/g, ': \\x1b[32m\"$1\"\\x1b[0m') // Strings (green)\n .replace(/: (\\d+)/g, ': \\x1b[34m$1\\x1b[0m') // Numbers (blue)\n .replace(/: (true|false)/g, ': \\x1b[35m$1\\x1b[0m') // Booleans (magenta)\n .replace(/: (null)/g, ': \\x1b[36m$1\\x1b[0m'); // Null (cyan)\n};\n\nexport const toQueryString = (params: Record<string, any>): string => {\n const searchParams = new URLSearchParams();\n\n for (const key in params) {\n if (params.hasOwnProperty(key)) {\n const value = params[key];\n // Handle array and non-primitive values\n if (Array.isArray(value)) {\n value.forEach((v) => searchParams.append(key, v.toString()));\n } else if (value !== null && value !== undefined) {\n searchParams.append(key, value.toString());\n }\n }\n }\n\n return searchParams.toString();\n};\n\nexport const highlightTextWithBg = (\n text: string,\n pattern: RegExp,\n bgColor: CliBackgroundColor = CliBackgroundColor.Yellow,\n): string => {\n // Replace matches with background-colored text\n return text.replace(\n pattern,\n (match) => `${bgColor}${match}${CliForegroundColor.Reset}`,\n );\n};\n\nexport const getRightOfWord = (\n command: string,\n word: string,\n): string | undefined => {\n // Find the position of the word in the command\n const index = command.indexOf(word);\n\n // If the word is found, extract the substring to the right\n if (index !== -1) {\n return command.slice(index + word.length).trim();\n }\n\n // If the word is not found, return null\n return undefined;\n};\n\nexport * from './object-describer';\n\nexport * from './delay';\n\nexport const utils = {\n getParameterValue,\n formatJson,\n colorizeJson,\n toQueryString,\n highlightTextWithBg,\n getRightOfWord,\n ObjectDescriber,\n delay,\n};\n","import { enums } from '../models';\nimport { constants } from '../constants';\nimport { ICliExecutionContext, ICliUmdModule } from '../interfaces';\nimport { utils } from '../utils';\n\nexport const initializeBrowserEnvironment = ({\n context,\n handlers,\n}: {\n context: ICliExecutionContext;\n handlers: ((module: ICliUmdModule) => Promise<void>)[];\n}): void => {\n (window as any).cliCore = {\n onUmdModuleBoot: handlers || [],\n bootUmdModule: async (module: ICliUmdModule) => {\n context.logger.log('Booting UMD module', module.name);\n (window as any)[module.name] = module;\n handlers.forEach(async (handler) => await handler(module));\n },\n ...constants,\n ...utils,\n ...enums,\n };\n\n (window as any).ngCore = {\n Injectable: () => {},\n };\n};\n\nexport const bootUmdModule = async (module: ICliUmdModule): Promise<void> => {\n if (typeof (window as any) !== 'undefined') {\n await (window as any).cliCore.bootUmdModule(module);\n } else {\n console.log('window is undefined');\n }\n};\n","export class CancellablePromise<T> {\n private hasCancelled = false;\n\n private abortController = new AbortController();\n\n constructor(\n private executor: (\n resolve: (value: T) => void,\n reject: (reason?: any) => void,\n ) => void,\n ) {}\n\n public promise: Promise<T> = new Promise<T>((resolve, reject) => {\n this.abortController.signal.onabort = () => {\n reject(new Error('Promise cancelled'));\n };\n\n this.executor(\n (value) => {\n if (!this.hasCancelled) {\n resolve(value);\n }\n },\n (reason) => {\n if (!this.hasCancelled) {\n reject(reason);\n }\n },\n );\n });\n\n cancel() {\n this.hasCancelled = true;\n this.abortController.abort();\n }\n}\n","/*\n * Public API Surface of core\n */\n\nexport * from './lib/models';\n\nexport * from './lib/interfaces';\n\nexport * from './lib/modules';\n\nexport * from './lib/utils';\n\nexport * from './lib/constants';\n\nexport * from './lib/types';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { CliProcessCommand, CliProcessorMetadata } from '../models';
|
|
2
|
+
import { ICliExecutionContext } from './execution-context';
|
|
3
|
+
export interface ICliCommandAuthor {
|
|
4
|
+
/**
|
|
5
|
+
* The name of the author
|
|
6
|
+
*/
|
|
7
|
+
name: string;
|
|
8
|
+
/**
|
|
9
|
+
* The email of the author
|
|
10
|
+
*/
|
|
11
|
+
email: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Represents a command parameter
|
|
15
|
+
*/
|
|
16
|
+
export interface ICliCommandParameterDescriptor {
|
|
17
|
+
/**
|
|
18
|
+
* The name of the parameter
|
|
19
|
+
*/
|
|
20
|
+
name: string;
|
|
21
|
+
/**
|
|
22
|
+
* Aliases for the parameter
|
|
23
|
+
*/
|
|
24
|
+
aliases?: string[];
|
|
25
|
+
/**
|
|
26
|
+
* A description of the parameter
|
|
27
|
+
*/
|
|
28
|
+
description: string;
|
|
29
|
+
/**
|
|
30
|
+
* If true, the parameter is required
|
|
31
|
+
*/
|
|
32
|
+
required: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* The type of the parameter
|
|
35
|
+
*/
|
|
36
|
+
type: 'string' | 'number' | 'boolean' | 'array' | 'object' | string;
|
|
37
|
+
/**
|
|
38
|
+
* The default value of the parameter
|
|
39
|
+
*/
|
|
40
|
+
defaultValue?: any;
|
|
41
|
+
/**
|
|
42
|
+
* A validator function that validates the value of the parameter
|
|
43
|
+
* @param value The value to validate
|
|
44
|
+
* @returns An object with a valid property that indicates if the value is valid and an optional message property that contains a message to display if the value is not valid
|
|
45
|
+
*/
|
|
46
|
+
validator?: (value: any) => {
|
|
47
|
+
/**
|
|
48
|
+
* Indicates if the value is valid
|
|
49
|
+
*/
|
|
50
|
+
valid: boolean;
|
|
51
|
+
/**
|
|
52
|
+
* An optional message to display if the value is not valid
|
|
53
|
+
*/
|
|
54
|
+
message?: string;
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Represents a command processor
|
|
59
|
+
*/
|
|
60
|
+
export interface ICliCommandProcessor {
|
|
61
|
+
/**
|
|
62
|
+
* The command that this processor handles
|
|
63
|
+
*/
|
|
64
|
+
command: string;
|
|
65
|
+
/**
|
|
66
|
+
* A description of the command
|
|
67
|
+
*/
|
|
68
|
+
description?: string;
|
|
69
|
+
/**
|
|
70
|
+
* The author of the command
|
|
71
|
+
*/
|
|
72
|
+
author?: ICliCommandAuthor;
|
|
73
|
+
/**
|
|
74
|
+
* If true, the processor can handle unlisted commands
|
|
75
|
+
* @default false
|
|
76
|
+
* @remarks If true, the processor can handle unlisted commands. If false, the processor will only handle commands that are explicitly listed in the processors property
|
|
77
|
+
* @remarks Optional if valueRequired is true
|
|
78
|
+
*/
|
|
79
|
+
allowUnlistedCommands?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* If true, the value is required
|
|
82
|
+
*/
|
|
83
|
+
valueRequired?: boolean;
|
|
84
|
+
/**
|
|
85
|
+
* The version of the command processor
|
|
86
|
+
* @default '1.0.0'
|
|
87
|
+
*/
|
|
88
|
+
version?: string;
|
|
89
|
+
/**
|
|
90
|
+
* The metadata for the command processor
|
|
91
|
+
*/
|
|
92
|
+
metadata?: CliProcessorMetadata;
|
|
93
|
+
/**
|
|
94
|
+
* Processors that are nested under this processor
|
|
95
|
+
*/
|
|
96
|
+
processors?: ICliCommandProcessor[];
|
|
97
|
+
/**
|
|
98
|
+
* Parameters that the command accepts
|
|
99
|
+
*/
|
|
100
|
+
parameters?: ICliCommandParameterDescriptor[];
|
|
101
|
+
/**
|
|
102
|
+
* Process the command
|
|
103
|
+
* @param command The command to process
|
|
104
|
+
* @param context The context in which the command is executed
|
|
105
|
+
*/
|
|
106
|
+
processCommand(command: CliProcessCommand, context: ICliExecutionContext): Promise<void>;
|
|
107
|
+
/**
|
|
108
|
+
* Write the description of the command
|
|
109
|
+
* @param context The context in which the command is executed
|
|
110
|
+
*/
|
|
111
|
+
writeDescription?(context: ICliExecutionContext): void;
|
|
112
|
+
/**
|
|
113
|
+
* A function that validates the command before execution
|
|
114
|
+
* @param value The value to validate
|
|
115
|
+
* @returns An object with a valid property that indicates if the value is valid and an optional message property that contains a message to display if the value is not valid
|
|
116
|
+
*/
|
|
117
|
+
validateBeforeExecution?: (command: CliProcessCommand, context: ICliExecutionContext) => {
|
|
118
|
+
valid: boolean;
|
|
119
|
+
message?: string;
|
|
120
|
+
};
|
|
121
|
+
/**
|
|
122
|
+
* Initialize the command processor
|
|
123
|
+
* @param context The context in which the command is executed
|
|
124
|
+
*/
|
|
125
|
+
initialize?(context: ICliExecutionContext): Promise<void>;
|
|
126
|
+
}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { Terminal } from '@xterm/xterm';
|
|
2
|
+
import { Subject } from 'rxjs';
|
|
3
|
+
import { ICliClipboard, ICliCommandDataStore, ICliCommandExecutorService, ICliCommandProcessor, ICliContextServices, ICliExecutionProcess, ICliLogger, ICliPercentageProgressBar, ICliSpinner, ICliTerminalWriter } from '.';
|
|
4
|
+
import { CliOptions, ICliUserSession } from '../models';
|
|
5
|
+
/**
|
|
6
|
+
* Represents the context in which a command is executed
|
|
7
|
+
*/
|
|
8
|
+
export interface ICliExecutionContext {
|
|
9
|
+
/**
|
|
10
|
+
* The current user session
|
|
11
|
+
*/
|
|
12
|
+
userSession?: ICliUserSession;
|
|
13
|
+
/**
|
|
14
|
+
* The spinner to use for showing/hiding the loader
|
|
15
|
+
*/
|
|
16
|
+
spinner?: ICliSpinner;
|
|
17
|
+
/**
|
|
18
|
+
* The progress bar to use for showing progress
|
|
19
|
+
*/
|
|
20
|
+
progressBar: ICliPercentageProgressBar;
|
|
21
|
+
/**
|
|
22
|
+
* A subject that emits when the command is aborted
|
|
23
|
+
*/
|
|
24
|
+
onAbort: Subject<void>;
|
|
25
|
+
/**
|
|
26
|
+
* The terminal to use for writing
|
|
27
|
+
*/
|
|
28
|
+
terminal: Terminal;
|
|
29
|
+
/**
|
|
30
|
+
* The writer to use for writing to the terminal
|
|
31
|
+
*/
|
|
32
|
+
writer: ICliTerminalWriter;
|
|
33
|
+
/**
|
|
34
|
+
* The command executor to use for executing commands
|
|
35
|
+
*/
|
|
36
|
+
executor: ICliCommandExecutorService;
|
|
37
|
+
/**
|
|
38
|
+
* The clipboard to use for copying/pasting
|
|
39
|
+
*/
|
|
40
|
+
clipboard: ICliClipboard;
|
|
41
|
+
/**
|
|
42
|
+
* The data store to use for storing data
|
|
43
|
+
*/
|
|
44
|
+
dataStore: ICliCommandDataStore;
|
|
45
|
+
/**
|
|
46
|
+
* The options for the CLI
|
|
47
|
+
*/
|
|
48
|
+
options?: CliOptions;
|
|
49
|
+
/**
|
|
50
|
+
* The prompt to use for prompting the user for input
|
|
51
|
+
*/
|
|
52
|
+
showPrompt: () => void;
|
|
53
|
+
/**
|
|
54
|
+
* Set the current processor as the context processor, i.e. the processor that will handle the command
|
|
55
|
+
* @param processor The processor to set
|
|
56
|
+
* @param silent Indicates if the setting should be silent, i.e. not write to the terminal
|
|
57
|
+
*/
|
|
58
|
+
setContextProcessor(processor: ICliCommandProcessor, silent?: boolean): void;
|
|
59
|
+
/**
|
|
60
|
+
* The process to use for exiting the CLI
|
|
61
|
+
*/
|
|
62
|
+
process: ICliExecutionProcess;
|
|
63
|
+
/**
|
|
64
|
+
* The logger to use for logging
|
|
65
|
+
*/
|
|
66
|
+
logger: ICliLogger;
|
|
67
|
+
/**
|
|
68
|
+
* The services to use for the CLI context
|
|
69
|
+
*/
|
|
70
|
+
services: ICliContextServices;
|
|
71
|
+
}
|
|
@@ -1,130 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* The name of the author
|
|
7
|
-
*/
|
|
8
|
-
name: string;
|
|
9
|
-
/**
|
|
10
|
-
* The email of the author
|
|
11
|
-
*/
|
|
12
|
-
email: string;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Represents a command processor
|
|
16
|
-
*/
|
|
17
|
-
export interface ICliCommandProcessor {
|
|
18
|
-
/**
|
|
19
|
-
* The command that this processor handles
|
|
20
|
-
*/
|
|
21
|
-
command: string;
|
|
22
|
-
/**
|
|
23
|
-
* A description of the command
|
|
24
|
-
*/
|
|
25
|
-
description?: string;
|
|
26
|
-
/**
|
|
27
|
-
* The author of the command
|
|
28
|
-
*/
|
|
29
|
-
author?: ICliCommandAuthor;
|
|
30
|
-
/**
|
|
31
|
-
* If true, the processor can handle unlisted commands
|
|
32
|
-
* @default false
|
|
33
|
-
* @remarks If true, the processor can handle unlisted commands. If false, the processor will only handle commands that are explicitly listed in the processors property
|
|
34
|
-
* @remarks Optional if valueRequired is true
|
|
35
|
-
*/
|
|
36
|
-
allowUnlistedCommands?: boolean;
|
|
37
|
-
/**
|
|
38
|
-
* If true, the value is required
|
|
39
|
-
*/
|
|
40
|
-
valueRequired?: boolean;
|
|
41
|
-
/**
|
|
42
|
-
* The version of the command processor
|
|
43
|
-
* @default '1.0.0'
|
|
44
|
-
*/
|
|
45
|
-
version?: string;
|
|
46
|
-
/**
|
|
47
|
-
* The metadata for the command processor
|
|
48
|
-
*/
|
|
49
|
-
metadata?: CliProcessorMetadata;
|
|
50
|
-
/**
|
|
51
|
-
* Processors that are nested under this processor
|
|
52
|
-
*/
|
|
53
|
-
processors?: ICliCommandProcessor[];
|
|
54
|
-
/**
|
|
55
|
-
* Parameters that the command accepts
|
|
56
|
-
*/
|
|
57
|
-
parameters?: ICliCommandParameterDescriptor[];
|
|
58
|
-
/**
|
|
59
|
-
* Process the command
|
|
60
|
-
* @param command The command to process
|
|
61
|
-
* @param context The context in which the command is executed
|
|
62
|
-
*/
|
|
63
|
-
processCommand(command: CliProcessCommand, context: ICliExecutionContext): Promise<void>;
|
|
64
|
-
/**
|
|
65
|
-
* Write the description of the command
|
|
66
|
-
* @param context The context in which the command is executed
|
|
67
|
-
*/
|
|
68
|
-
writeDescription?(context: ICliExecutionContext): void;
|
|
69
|
-
/**
|
|
70
|
-
* A function that validates the command before execution
|
|
71
|
-
* @param value The value to validate
|
|
72
|
-
* @returns An object with a valid property that indicates if the value is valid and an optional message property that contains a message to display if the value is not valid
|
|
73
|
-
*/
|
|
74
|
-
validateBeforeExecution?: (command: CliProcessCommand, context: ICliExecutionContext) => {
|
|
75
|
-
valid: boolean;
|
|
76
|
-
message?: string;
|
|
77
|
-
};
|
|
78
|
-
/**
|
|
79
|
-
* Initialize the command processor
|
|
80
|
-
* @param context The context in which the command is executed
|
|
81
|
-
*/
|
|
82
|
-
initialize?(context: ICliExecutionContext): Promise<void>;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* Represents a command parameter
|
|
86
|
-
*/
|
|
87
|
-
export interface ICliCommandParameterDescriptor {
|
|
88
|
-
/**
|
|
89
|
-
* The name of the parameter
|
|
90
|
-
*/
|
|
91
|
-
name: string;
|
|
92
|
-
/**
|
|
93
|
-
* Aliases for the parameter
|
|
94
|
-
*/
|
|
95
|
-
aliases?: string[];
|
|
96
|
-
/**
|
|
97
|
-
* A description of the parameter
|
|
98
|
-
*/
|
|
99
|
-
description: string;
|
|
100
|
-
/**
|
|
101
|
-
* If true, the parameter is required
|
|
102
|
-
*/
|
|
103
|
-
required: boolean;
|
|
104
|
-
/**
|
|
105
|
-
* The type of the parameter
|
|
106
|
-
*/
|
|
107
|
-
type: string;
|
|
108
|
-
/**
|
|
109
|
-
* The default value of the parameter
|
|
110
|
-
*/
|
|
111
|
-
defaultValue?: any;
|
|
112
|
-
/**
|
|
113
|
-
* A validator function that validates the value of the parameter
|
|
114
|
-
* @param value The value to validate
|
|
115
|
-
* @returns An object with a valid property that indicates if the value is valid and an optional message property that contains a message to display if the value is not valid
|
|
116
|
-
*/
|
|
117
|
-
validator?: (value: any) => {
|
|
118
|
-
/**
|
|
119
|
-
* Indicates if the value is valid
|
|
120
|
-
*/
|
|
121
|
-
valid: boolean;
|
|
122
|
-
/**
|
|
123
|
-
* An optional message to display if the value is not valid
|
|
124
|
-
*/
|
|
125
|
-
message?: string;
|
|
126
|
-
};
|
|
127
|
-
}
|
|
1
|
+
import { Observable } from 'rxjs';
|
|
2
|
+
import { CliBackgroundColor, CliForegroundColor, CliLogLevel, CliProcessCommand, CliProvider, ICliUser, ICliUserSession } from '../models';
|
|
3
|
+
import { ICliExecutionContext } from './execution-context';
|
|
4
|
+
import { ICliCommandProcessor } from './command-processor';
|
|
128
5
|
export interface ICliTerminalWriter {
|
|
129
6
|
/**
|
|
130
7
|
* Write text to the terminal
|
|
@@ -211,58 +88,6 @@ export interface ICliTerminalWriter {
|
|
|
211
88
|
char?: string;
|
|
212
89
|
}): void;
|
|
213
90
|
}
|
|
214
|
-
export interface ICliProgressBar {
|
|
215
|
-
/**
|
|
216
|
-
* Indicates if the progress bar is running
|
|
217
|
-
*/
|
|
218
|
-
isRunning: boolean;
|
|
219
|
-
/**
|
|
220
|
-
* Show the progress bar
|
|
221
|
-
*/
|
|
222
|
-
show: () => void;
|
|
223
|
-
/**
|
|
224
|
-
* Hide the progress bar
|
|
225
|
-
*/
|
|
226
|
-
hide: () => void;
|
|
227
|
-
}
|
|
228
|
-
/**
|
|
229
|
-
* Represents a spinner for the CLI
|
|
230
|
-
*/
|
|
231
|
-
export interface ICliSpinner extends ICliProgressBar {
|
|
232
|
-
/**
|
|
233
|
-
* Set the text of the spinner
|
|
234
|
-
* @param text The text to set
|
|
235
|
-
*/
|
|
236
|
-
setText: (text: string) => void;
|
|
237
|
-
}
|
|
238
|
-
export type CliPercentageProgressBarUpdateValueOptions = {
|
|
239
|
-
/**
|
|
240
|
-
* The type of update to perform
|
|
241
|
-
* @default 'replace'
|
|
242
|
-
*/
|
|
243
|
-
type?: 'replace' | 'increment';
|
|
244
|
-
};
|
|
245
|
-
/**
|
|
246
|
-
* Represents a progress bar for the CLI
|
|
247
|
-
*/
|
|
248
|
-
export interface ICliPercentageProgressBar extends ICliProgressBar {
|
|
249
|
-
/**
|
|
250
|
-
* Update the progress of the progress bar
|
|
251
|
-
* @param progress The progress to update to
|
|
252
|
-
* @returns void
|
|
253
|
-
*/
|
|
254
|
-
update: (progress: number, options?: CliPercentageProgressBarUpdateValueOptions) => void;
|
|
255
|
-
/**
|
|
256
|
-
* Complete the progress bar
|
|
257
|
-
* @returns void
|
|
258
|
-
*/
|
|
259
|
-
complete: () => void;
|
|
260
|
-
/**
|
|
261
|
-
* Set the text of the spinner
|
|
262
|
-
* @param text The text to set
|
|
263
|
-
*/
|
|
264
|
-
setText: (text: string) => void;
|
|
265
|
-
}
|
|
266
91
|
/**
|
|
267
92
|
* Represents a clipboard for the CLI
|
|
268
93
|
*/
|
|
@@ -359,68 +184,6 @@ export interface ICliExecutionProcess {
|
|
|
359
184
|
*/
|
|
360
185
|
output(data: any): void;
|
|
361
186
|
}
|
|
362
|
-
/**
|
|
363
|
-
* Represents the context in which a command is executed
|
|
364
|
-
*/
|
|
365
|
-
export interface ICliExecutionContext {
|
|
366
|
-
/**
|
|
367
|
-
* The current user session
|
|
368
|
-
*/
|
|
369
|
-
userSession?: ICliUserSession;
|
|
370
|
-
/**
|
|
371
|
-
* The spinner to use for showing/hiding the loader
|
|
372
|
-
*/
|
|
373
|
-
spinner?: ICliSpinner;
|
|
374
|
-
/**
|
|
375
|
-
* The progress bar to use for showing progress
|
|
376
|
-
*/
|
|
377
|
-
progressBar: ICliPercentageProgressBar;
|
|
378
|
-
/**
|
|
379
|
-
* A subject that emits when the command is aborted
|
|
380
|
-
*/
|
|
381
|
-
onAbort: Subject<void>;
|
|
382
|
-
/**
|
|
383
|
-
* The terminal to use for writing
|
|
384
|
-
*/
|
|
385
|
-
terminal: Terminal;
|
|
386
|
-
/**
|
|
387
|
-
* The writer to use for writing to the terminal
|
|
388
|
-
*/
|
|
389
|
-
writer: ICliTerminalWriter;
|
|
390
|
-
/**
|
|
391
|
-
* The command executor to use for executing commands
|
|
392
|
-
*/
|
|
393
|
-
executor: ICliCommandExecutorService;
|
|
394
|
-
/**
|
|
395
|
-
* The clipboard to use for copying/pasting
|
|
396
|
-
*/
|
|
397
|
-
clipboard: ICliClipboard;
|
|
398
|
-
/**
|
|
399
|
-
* The data store to use for storing data
|
|
400
|
-
*/
|
|
401
|
-
dataStore: ICliCommandDataStore;
|
|
402
|
-
/**
|
|
403
|
-
* The options for the CLI
|
|
404
|
-
*/
|
|
405
|
-
options?: CliOptions;
|
|
406
|
-
/**
|
|
407
|
-
* The prompt to use for prompting the user for input
|
|
408
|
-
*/
|
|
409
|
-
showPrompt: () => void;
|
|
410
|
-
/**
|
|
411
|
-
* Set the current main processor
|
|
412
|
-
* @param processor The processor to set
|
|
413
|
-
*/
|
|
414
|
-
setMainProcessor(processor: ICliCommandProcessor): void;
|
|
415
|
-
/**
|
|
416
|
-
* The process to use for exiting the CLI
|
|
417
|
-
*/
|
|
418
|
-
process: ICliExecutionProcess;
|
|
419
|
-
/**
|
|
420
|
-
* The logger to use for logging
|
|
421
|
-
*/
|
|
422
|
-
logger: ICliLogger;
|
|
423
|
-
}
|
|
424
187
|
/**
|
|
425
188
|
* Represents a data store for storing data associated with commands
|
|
426
189
|
*/
|
|
@@ -542,3 +305,21 @@ export interface ICliLogger {
|
|
|
542
305
|
*/
|
|
543
306
|
debug(...args: any[]): void;
|
|
544
307
|
}
|
|
308
|
+
/**
|
|
309
|
+
* Represents a services for the CLI context
|
|
310
|
+
*/
|
|
311
|
+
export interface ICliContextServices {
|
|
312
|
+
/**
|
|
313
|
+
* Get a service
|
|
314
|
+
* @param service The service to get
|
|
315
|
+
*/
|
|
316
|
+
get<T>(service: any): T;
|
|
317
|
+
/**
|
|
318
|
+
* Set a service
|
|
319
|
+
* @param definition The definition of the service
|
|
320
|
+
*/
|
|
321
|
+
set(definition: CliProvider | CliProvider[]): void;
|
|
322
|
+
}
|
|
323
|
+
export * from './execution-context';
|
|
324
|
+
export * from './command-processor';
|
|
325
|
+
export * from './progress-bars';
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export interface ICliProgressBar {
|
|
2
|
+
/**
|
|
3
|
+
* Indicates if the progress bar is running
|
|
4
|
+
*/
|
|
5
|
+
isRunning: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Show the progress bar
|
|
8
|
+
*/
|
|
9
|
+
show: () => void;
|
|
10
|
+
/**
|
|
11
|
+
* Hide the progress bar
|
|
12
|
+
*/
|
|
13
|
+
hide: () => void;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Represents a spinner for the CLI
|
|
17
|
+
*/
|
|
18
|
+
export interface ICliSpinner extends ICliProgressBar {
|
|
19
|
+
/**
|
|
20
|
+
* Set the text of the spinner
|
|
21
|
+
* @param text The text to set
|
|
22
|
+
*/
|
|
23
|
+
setText: (text: string) => void;
|
|
24
|
+
}
|
|
25
|
+
export type CliPercentageProgressBarUpdateValueOptions = {
|
|
26
|
+
/**
|
|
27
|
+
* The type of update to perform
|
|
28
|
+
* @default 'replace'
|
|
29
|
+
*/
|
|
30
|
+
type?: 'replace' | 'increment';
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Represents a progress bar for the CLI
|
|
34
|
+
*/
|
|
35
|
+
export interface ICliPercentageProgressBar extends ICliProgressBar {
|
|
36
|
+
/**
|
|
37
|
+
* Update the progress of the progress bar
|
|
38
|
+
* @param progress The progress to update to
|
|
39
|
+
* @returns void
|
|
40
|
+
*/
|
|
41
|
+
update: (progress: number, options?: CliPercentageProgressBarUpdateValueOptions) => void;
|
|
42
|
+
/**
|
|
43
|
+
* Complete the progress bar
|
|
44
|
+
* @returns void
|
|
45
|
+
*/
|
|
46
|
+
complete: () => void;
|
|
47
|
+
/**
|
|
48
|
+
* Set the text of the spinner
|
|
49
|
+
* @param text The text to set
|
|
50
|
+
*/
|
|
51
|
+
setText: (text: string) => void;
|
|
52
|
+
}
|
package/lib/models/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export type CliProcessCommand = {
|
|
|
7
7
|
/**
|
|
8
8
|
* The data that was entered
|
|
9
9
|
*/
|
|
10
|
-
data?:
|
|
10
|
+
data?: any;
|
|
11
11
|
/**
|
|
12
12
|
* The chain of commands that were entered
|
|
13
13
|
*/
|
|
@@ -303,3 +303,4 @@ export declare const enums: {
|
|
|
303
303
|
CliIcon: typeof CliIcon;
|
|
304
304
|
CliLogLevel: typeof CliLogLevel;
|
|
305
305
|
};
|
|
306
|
+
export * from './services';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
type MultiServices = {
|
|
2
|
+
/**
|
|
3
|
+
* When true, injector returns an array of instances. This is useful to allow multiple
|
|
4
|
+
* providers spread across many files to provide configuration information to a common token.
|
|
5
|
+
*/
|
|
6
|
+
multi?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export type CliValueProvider = MultiServices & {
|
|
9
|
+
useValue: any;
|
|
10
|
+
};
|
|
11
|
+
export type CliTypeProvider = MultiServices & {
|
|
12
|
+
useClass: any;
|
|
13
|
+
};
|
|
14
|
+
export type CliFactoryProvider = MultiServices & {
|
|
15
|
+
useFactory: Function;
|
|
16
|
+
};
|
|
17
|
+
export type CliProvider = {
|
|
18
|
+
provide: any;
|
|
19
|
+
} & (CliValueProvider | CliTypeProvider | CliFactoryProvider) & Record<string, any>;
|
|
20
|
+
export {};
|