@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 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
- ![Install packages](docs/assets/help_command.gif)
37
+ ![Install packages](assets/help_command.gif)
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: "-- your custom welcome message --",
82
- //TODO: supports multiple customizations
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
- ## Cli Packages
121
+ ### Custom
122
+
123
+ See the available packages section.
110
124
 
111
- - Add JavaScript packages dynamically.
112
- - Evaluate JavaScript expressions using added packages.
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
- ![Install packages](docs/assets/install_packages.gif)
135
+ ![Install packages](assets/install_packages.gif)
118
136
 
119
- ### Add a Package
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-name>
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 lodash
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 Package
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 lodash
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
- ## Live Example
265
+ ## Extensibility
225
266
 
226
- 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)
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":"IAkCY,mBAUX;AAVD,CAAA,UAAY,kBAAkB,EAAA;AAC1B,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,KAAA,CAAA,GAAA,YAAgB,CAAA;AAChB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,YAAmB,CAAA;AACnB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,YAAoB,CAAA;AACpB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,WAAiB,CAAA;AACrB,CAAC,EAVW,kBAAkB,KAAlB,kBAAkB,GAU7B,EAAA,CAAA,CAAA,CAAA;IAEW,mBASX;AATD,CAAA,UAAY,kBAAkB,EAAA;AAC1B,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,KAAA,CAAA,GAAA,YAAgB,CAAA;AAChB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,YAAmB,CAAA;AACnB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,YAAoB,CAAA;AACpB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AACtB,CAAC,EATW,kBAAkB,KAAlB,kBAAkB,GAS7B,EAAA,CAAA,CAAA,CAAA;IAEW,QA8IX;AA9ID,CAAA,UAAY,OAAO,EAAA;;AAEf,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,QAAc,CAAA;AACd,IAAA,OAAA,CAAA,aAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,cAAA,CAAA,GAAA,GAAkB,CAAA;AAClB,IAAA,OAAA,CAAA,aAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,QAAc,CAAA;AACd,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,QAAS,CAAA;AACT,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,QAAY,CAAA;;AAGZ,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,QAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,QAAa,CAAA;AACb,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,kBAAA,CAAA,GAAA,QAAsB,CAAA;AACtB,IAAA,OAAA,CAAA,iBAAA,CAAA,GAAA,QAAqB,CAAA;AACrB,IAAA,OAAA,CAAA,eAAA,CAAA,GAAA,QAAmB,CAAA;AACnB,IAAA,OAAA,CAAA,iBAAA,CAAA,GAAA,QAAqB,CAAA;AACrB,IAAA,OAAA,CAAA,kBAAA,CAAA,GAAA,QAAsB,CAAA;AACtB,IAAA,OAAA,CAAA,iBAAA,CAAA,GAAA,QAAqB,CAAA;;AAGrB,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,GAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,GAAW,CAAA;AACX,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,QAAc,CAAA;AACd,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,QAAa,CAAA;AACb,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,QAAa,CAAA;;AAGb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;;AAGf,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,cAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;;AAGf,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,QAAS,CAAA;AACT,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,QAAY,CAAA;AACZ,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,QAAY,CAAA;;AAGZ,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;;AAGb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;;AAGb,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,cAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;;AAGZ,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,cAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;;AAGX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,eAAA,CAAA,GAAA,cAAoB,CAAA;;AAGpB,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,QAAS,CAAA;AACT,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;;AAGX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,cAAiB,CAAA;;AAGjB,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,QAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,aAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,cAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACf,CAAC,EA9IW,OAAO,KAAP,OAAO,GA8IlB,EAAA,CAAA,CAAA,CAAA;AAqJD;;AAEG;IACS,YAOX;AAPD,CAAA,UAAY,WAAW,EAAA;AACnB,IAAA,WAAA,CAAA,WAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,WAAA,CAAA,WAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACT,IAAA,WAAA,CAAA,WAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,GAAA,KAAO,CAAA;AACP,IAAA,WAAA,CAAA,WAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,WAAA,CAAA,WAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,WAAA,CAAA,WAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACb,CAAC,EAPW,WAAW,KAAX,WAAW,GAOtB,EAAA,CAAA,CAAA,CAAA;AAEY,MAAA,KAAK,GAAG;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,OAAO;IACP,WAAW;;;AC1WF,MAAA,oBAAoB,GAAsB;AACnD,IAAA,IAAI,EAAE,eAAe;AACrB,IAAA,KAAK,EAAE,2BAA2B;EACpC;AAEW,MAAA,SAAS,GAAG;IACrB,oBAAoB;;;ACRX,MAAA,KAAK,GAAG,CAAC,EAAU,KAAmB;AAC/C,IAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D;;MCCa,eAAe,CAAA;AACxB,IAAA,OAAO,QAAQ,CACX,GAAQ,EACR,OAMC,EAAA;AAED,QAAA,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;QAEjC,MAAM,UAAU,GAA2B,EAAE,CAAC;QAE9C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE9B,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,CAAC;AAEvE,QAAA,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;AAC1B,YAAA,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAElD,YAAA,IAAI,MAAM,EAAE;gBACR,MAAM,aAAa,GAAG,MAAM,CAAC;AACzB,oBAAA,QAAQ,EAAE,IAAI;AACd,oBAAA,IAAI,EAAE,SAAS;oBACf,IAAI;AACP,iBAAA,CAAC,CAAC;gBAEH,IAAI,CAAC,aAAa,EAAE;oBAChB,SAAS;AACZ,iBAAA;AACJ,aAAA;AAED,YAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAE7C,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC3C,SAAS;AACZ,aAAA;AAED,YAAA,IACI,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,gBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,MAAM,CAAC,EAC1D;gBACE,SAAS;AACZ,aAAA;AAED,YAAA,MAAM,SAAS,GAAyB;AACpC,gBAAA,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,CAAwC,qCAAA,EAAA,IAAI,CAA8B,4BAAA,CAAA;AACvF,gBAAA,qBAAqB,EAAE,IAAI;AAC3B,gBAAA,aAAa,EAAE,IAAI;AACnB,gBAAA,UAAU,EAAE;AACR,oBAAA;AACI,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,WAAW,EAAE,OAAO;AACpB,wBAAA,IAAI,EAAE,SAAS;AACf,wBAAA,QAAQ,EAAE,KAAK;AAClB,qBAAA;AACJ,iBAAA;AACD,gBAAA,cAAc,EAAE,OACZ,OAA0B,EAC1B,OAA6B,KAC7B;oBACA,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAY,CAAC;AAE/C,oBAAA,IAAI,KAAK,EAAE;wBACP,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;AACrD,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAClB,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAC/C,CAAC;AACF,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAClB,YAAY,GAAG,SAAS,CAAC,QAAQ,EAAE,CACtC,CAAC;AACL,qBAAA;oBAED,MAAM,WAAW,GAAU,EAAE,CAAC;AAE9B,oBAAA,IAAI,oBAAoB,EAAE;wBACtB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;4BAC7B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACvC,yBAAA;AACJ,qBAAA;AAED,oBAAA,IAAI,mBAAmB,EAAE;wBACrB,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC;AACnD,wBAAA,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AACxD,qBAAA;AAED,oBAAA,IAAI,KAAK,EAAE;AACP,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAClB,8BAA8B;AAC1B,4BAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAClC,CAAC;AACL,qBAAA;oBAED,MAAM,MAAM,GACR,mBAAmB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AACpC,0BAAE,SAAS,CAAC,GAAG,WAAW,CAAC;0BACzB,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,WAAW,CAAC,CAAC;AAEnD,oBAAA,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,OAAO,CAAC,MAAM,CAAC,WAAW,CACtB,UAAU,EACV,kBAAkB,CAAC,MAAM,CAC5B,CACJ,CAAC;oBAEF,IAAI,MAAM,KAAK,IAAI,EAAE;AACjB,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAClC,qBAAA;yBAAM,IAAI,MAAM,KAAK,SAAS,EAAE;AAC7B,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACvC,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE;wBACpC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7C,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;wBACnC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7C,qBAAA;AAAM,yBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC9B,wBAAA,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACpC,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACnC,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAClC,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACnC,wBAAA,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACpC,qBAAA;AAAM,yBAAA;wBACH,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC9C,qBAAA;oBAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;iBAC9C;AACD,gBAAA,gBAAgB,EAAE,CAAC,OAA6B,KAAI;AAChD,oBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBAChC;aACJ,CAAC;AAEF,YAAA,IAAI,mBAAmB,EAAE;AACrB,gBAAA,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC;AACvB,oBAAA,IAAI,EAAE,WAAW;AACjB,oBAAA,WAAW,EAAE,WAAW;AACxB,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,QAAQ,EAAE,KAAK;AAClB,iBAAA,CAAC,CAAC;AACN,aAAA;AAED,YAAA,IAAI,oBAAoB,EAAE;gBACtB,SAAS,CAAC,UAAU,EAAE,IAAI,CACtB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM;AAC3B,oBAAA,IAAI,EAAE,GAAG;AACT,oBAAA,WAAW,EAAE,GAAG;AAChB,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,QAAQ,EAAE,KAAK;iBAClB,CAAC,CAAC,CACN,CAAC;AACL,aAAA;AAED,YAAA,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC9B,SAAA;AAED,QAAA,OAAO,UAAU,CAAC;KACrB;IAED,OAAO,mBAAmB,CAAC,IAAS,EAAA;AAChC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChC,QAAA,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;KACxC;IAED,OAAO,oBAAoB,CAAC,IAAS,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE;AACP,YAAA,OAAO,EAAE,CAAC;AACb,SAAA;QACD,OAAO,IAAI,CAAC,CAAC,CAAC;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,GAAW,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;aAChC,MAAM,CAAC,CAAC,GAAW,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;KAC5C;AACJ;;MChLY,iBAAiB,GAAG,CAC7B,CAAiC,EACjC,IAAyB,KACR;AACjB,IAAA,QACI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACZ,SAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,CAAC,CAAC,OAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC,EACrD;AACN,EAAE;AAEW,MAAA,UAAU,GAAG,CAAC,IAAS,KAAY;AAC5C,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAElD,IAAA,OAAO,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9D,EAAE;AAEW,MAAA,YAAY,GAAG,CAAC,UAAe,KAAY;AACpD,IAAA,OAAO,UAAU;AACZ,SAAA,OAAO,CAAC,aAAa,EAAE,sBAAsB,CAAC;AAC9C,SAAA,OAAO,CAAC,cAAc,EAAE,uBAAuB,CAAC;AAChD,SAAA,OAAO,CAAC,UAAU,EAAE,qBAAqB,CAAC;AAC1C,SAAA,OAAO,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;AACjD,SAAA,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AACrD,EAAE;AAEW,MAAA,aAAa,GAAG,CAAC,MAA2B,KAAY;AACjE,IAAA,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;AAE3C,IAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACtB,QAAA,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;AAC5B,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;;AAE1B,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACtB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAChE,aAAA;AAAM,iBAAA,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;gBAC9C,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9C,aAAA;AACJ,SAAA;AACJ,KAAA;AAED,IAAA,OAAO,YAAY,CAAC,QAAQ,EAAE,CAAC;AACnC,EAAE;AAEK,MAAM,mBAAmB,GAAG,CAC/B,IAAY,EACZ,OAAe,EACf,OAA8B,GAAA,kBAAkB,CAAC,MAAM,KAC/C;;IAER,OAAO,IAAI,CAAC,OAAO,CACf,OAAO,EACP,CAAC,KAAK,KAAK,CAAG,EAAA,OAAO,GAAG,KAAK,CAAA,EAAG,kBAAkB,CAAC,KAAK,CAAE,CAAA,CAC7D,CAAC;AACN,EAAE;MAEW,cAAc,GAAG,CAC1B,OAAe,EACf,IAAY,KACQ;;IAEpB,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;AAGpC,IAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AACd,QAAA,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACpD,KAAA;;AAGD,IAAA,OAAO,SAAS,CAAC;AACrB,EAAE;AAMW,MAAA,KAAK,GAAG;IACjB,iBAAiB;IACjB,UAAU;IACV,YAAY;IACZ,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,eAAe;IACf,KAAK;;;ACpFI,MAAA,4BAA4B,GAAG,CAAC,EACzC,OAAO,EACP,QAAQ,GAIX,KAAU;IACN,MAAc,CAAC,OAAO,GAAG;QACtB,eAAe,EAAE,QAAQ,IAAI,EAAE;AAC/B,QAAA,aAAa,EAAE,OAAO,MAAqB,KAAI;YAC3C,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AACrD,YAAA,MAAc,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACtC,YAAA,QAAQ,CAAC,OAAO,CAAC,OAAO,OAAO,KAAK,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SAC9D;AACD,QAAA,GAAG,SAAS;AACZ,QAAA,GAAG,KAAK;AACR,QAAA,GAAG,KAAK;KACX,CAAC;IAED,MAAc,CAAC,MAAM,GAAG;AACrB,QAAA,UAAU,EAAE,MAAK,GAAG;KACvB,CAAC;AACN,EAAE;MAEW,aAAa,GAAG,OAAO,MAAqB,KAAmB;AACxE,IAAA,IAAI,OAAQ,MAAc,KAAK,WAAW,EAAE;QACxC,MAAO,MAAc,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACvD,KAAA;AAAM,SAAA;AACH,QAAA,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACtC,KAAA;AACL;;MCnCa,kBAAkB,CAAA;AAK3B,IAAA,WAAA,CACY,QAGC,EAAA;QAHD,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAGP;QARL,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AAErB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QASzC,IAAO,CAAA,OAAA,GAAe,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,KAAI;YAC5D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,GAAG,MAAK;AACvC,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC3C,aAAC,CAAC;AAEF,YAAA,IAAI,CAAC,QAAQ,CACT,CAAC,KAAK,KAAI;AACN,gBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACpB,OAAO,CAAC,KAAK,CAAC,CAAC;AAClB,iBAAA;AACL,aAAC,EACD,CAAC,MAAM,KAAI;AACP,gBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACpB,MAAM,CAAC,MAAM,CAAC,CAAC;AAClB,iBAAA;AACL,aAAC,CACJ,CAAC;AACN,SAAC,CAAC,CAAC;KAnBC;IAqBJ,MAAM,GAAA;AACF,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;KAChC;AACJ;;ACnCD;;AAEG;;ACFH;;AAEG;;;;"}
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":"IAkCY,mBAUX;AAVD,CAAA,UAAY,kBAAkB,EAAA;AAC1B,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,KAAA,CAAA,GAAA,YAAgB,CAAA;AAChB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,YAAmB,CAAA;AACnB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,YAAoB,CAAA;AACpB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,WAAiB,CAAA;AACrB,CAAC,EAVW,kBAAkB,KAAlB,kBAAkB,GAU7B,EAAA,CAAA,CAAA,CAAA;IAEW,mBASX;AATD,CAAA,UAAY,kBAAkB,EAAA;AAC1B,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,KAAA,CAAA,GAAA,YAAgB,CAAA;AAChB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AAClB,IAAA,kBAAA,CAAA,QAAA,CAAA,GAAA,YAAmB,CAAA;AACnB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,SAAA,CAAA,GAAA,YAAoB,CAAA;AACpB,IAAA,kBAAA,CAAA,MAAA,CAAA,GAAA,YAAiB,CAAA;AACjB,IAAA,kBAAA,CAAA,OAAA,CAAA,GAAA,YAAkB,CAAA;AACtB,CAAC,EATW,kBAAkB,KAAlB,kBAAkB,GAS7B,EAAA,CAAA,CAAA,CAAA;IAEW,QA8IX;AA9ID,CAAA,UAAY,OAAO,EAAA;;AAEf,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,QAAc,CAAA;AACd,IAAA,OAAA,CAAA,aAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,cAAA,CAAA,GAAA,GAAkB,CAAA;AAClB,IAAA,OAAA,CAAA,aAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,QAAc,CAAA;AACd,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,QAAS,CAAA;AACT,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,QAAY,CAAA;;AAGZ,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,QAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,QAAa,CAAA;AACb,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,kBAAA,CAAA,GAAA,QAAsB,CAAA;AACtB,IAAA,OAAA,CAAA,iBAAA,CAAA,GAAA,QAAqB,CAAA;AACrB,IAAA,OAAA,CAAA,eAAA,CAAA,GAAA,QAAmB,CAAA;AACnB,IAAA,OAAA,CAAA,iBAAA,CAAA,GAAA,QAAqB,CAAA;AACrB,IAAA,OAAA,CAAA,kBAAA,CAAA,GAAA,QAAsB,CAAA;AACtB,IAAA,OAAA,CAAA,iBAAA,CAAA,GAAA,QAAqB,CAAA;;AAGrB,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,GAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,GAAW,CAAA;AACX,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,QAAc,CAAA;AACd,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,QAAa,CAAA;AACb,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,QAAa,CAAA;;AAGb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;;AAGf,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,cAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;;AAGf,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,QAAS,CAAA;AACT,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,QAAY,CAAA;AACZ,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,QAAY,CAAA;;AAGZ,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;;AAGb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;;AAGb,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,cAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;;AAGZ,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,cAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;;AAGX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,QAAW,CAAA;AACX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,eAAA,CAAA,GAAA,cAAoB,CAAA;;AAGpB,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,QAAS,CAAA;AACT,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,QAAU,CAAA;AACV,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,QAAe,CAAA;AACf,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;;AAGX,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,KAAA,CAAA,GAAA,cAAU,CAAA;AACV,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,UAAA,CAAA,GAAA,cAAe,CAAA;AACf,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,cAAiB,CAAA;;AAGjB,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,OAAA,CAAA,GAAA,cAAY,CAAA;AACZ,IAAA,OAAA,CAAA,QAAA,CAAA,GAAA,cAAa,CAAA;AACb,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACX,IAAA,OAAA,CAAA,YAAA,CAAA,GAAA,QAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,aAAA,CAAA,GAAA,QAAiB,CAAA;AACjB,IAAA,OAAA,CAAA,WAAA,CAAA,GAAA,cAAgB,CAAA;AAChB,IAAA,OAAA,CAAA,SAAA,CAAA,GAAA,cAAc,CAAA;AACd,IAAA,OAAA,CAAA,MAAA,CAAA,GAAA,cAAW,CAAA;AACf,CAAC,EA9IW,OAAO,KAAP,OAAO,GA8IlB,EAAA,CAAA,CAAA,CAAA;AAqJD;;AAEG;IACS,YAOX;AAPD,CAAA,UAAY,WAAW,EAAA;AACnB,IAAA,WAAA,CAAA,WAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,WAAA,CAAA,WAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACT,IAAA,WAAA,CAAA,WAAA,CAAA,KAAA,CAAA,GAAA,CAAA,CAAA,GAAA,KAAO,CAAA;AACP,IAAA,WAAA,CAAA,WAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,WAAA,CAAA,WAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAQ,CAAA;AACR,IAAA,WAAA,CAAA,WAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAS,CAAA;AACb,CAAC,EAPW,WAAW,KAAX,WAAW,GAOtB,EAAA,CAAA,CAAA,CAAA;AAEY,MAAA,KAAK,GAAG;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,OAAO;IACP,WAAW;;;AC1WF,MAAA,oBAAoB,GAAsB;AACnD,IAAA,IAAI,EAAE,eAAe;AACrB,IAAA,KAAK,EAAE,2BAA2B;EACpC;AAEW,MAAA,SAAS,GAAG;IACrB,oBAAoB;;;ACRX,MAAA,KAAK,GAAG,CAAC,EAAU,KAAmB;AAC/C,IAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC7D;;MCCa,eAAe,CAAA;AACxB,IAAA,OAAO,QAAQ,CACX,GAAQ,EACR,OAMC,EAAA;AAED,QAAA,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;QAEjC,MAAM,UAAU,GAA2B,EAAE,CAAC;QAE9C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE9B,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,UAAU,CAAC,CAAC;AAEvE,QAAA,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE;AAC1B,YAAA,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;AAElD,YAAA,IAAI,MAAM,EAAE;gBACR,MAAM,aAAa,GAAG,MAAM,CAAC;AACzB,oBAAA,QAAQ,EAAE,IAAI;AACd,oBAAA,IAAI,EAAE,SAAS;oBACf,IAAI;AACP,iBAAA,CAAC,CAAC;gBAEH,IAAI,CAAC,aAAa,EAAE;oBAChB,SAAS;AACZ,iBAAA;AACJ,aAAA;AAED,YAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;YAE7C,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;YAEhE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,mBAAmB,EAAE;gBAC3C,SAAS;AACZ,aAAA;AAED,YAAA,IACI,IAAI,CAAC,MAAM,GAAG,CAAC;AACf,gBAAA,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,MAAM,CAAC,EAC1D;gBACE,SAAS;AACZ,aAAA;AAED,YAAA,MAAM,SAAS,GAAyB;AACpC,gBAAA,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,CAAwC,qCAAA,EAAA,IAAI,CAA8B,4BAAA,CAAA;AACvF,gBAAA,qBAAqB,EAAE,IAAI;AAC3B,gBAAA,aAAa,EAAE,IAAI;AACnB,gBAAA,UAAU,EAAE;AACR,oBAAA;AACI,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,WAAW,EAAE,OAAO;AACpB,wBAAA,IAAI,EAAE,SAAS;AACf,wBAAA,QAAQ,EAAE,KAAK;AAClB,qBAAA;AACJ,iBAAA;AACD,gBAAA,cAAc,EAAE,OACZ,OAA0B,EAC1B,OAA6B,KAC7B;oBACA,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAY,CAAC;AAE/C,oBAAA,IAAI,KAAK,EAAE;wBACP,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAAC;AACrD,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAClB,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAC/C,CAAC;AACF,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAClB,YAAY,GAAG,SAAS,CAAC,QAAQ,EAAE,CACtC,CAAC;AACL,qBAAA;oBAED,MAAM,WAAW,GAAU,EAAE,CAAC;AAE9B,oBAAA,IAAI,oBAAoB,EAAE;wBACtB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;4BAC7B,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACvC,yBAAA;AACJ,qBAAA;AAED,oBAAA,IAAI,mBAAmB,EAAE;wBACrB,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC;AACnD,wBAAA,WAAW,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;AACxD,qBAAA;AAED,oBAAA,IAAI,KAAK,EAAE;AACP,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAClB,8BAA8B;AAC1B,4BAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAClC,CAAC;AACL,qBAAA;oBAED,MAAM,MAAM,GACR,mBAAmB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;AACpC,0BAAE,SAAS,CAAC,GAAG,WAAW,CAAC;0BACzB,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,WAAW,CAAC,CAAC;AAEnD,oBAAA,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,OAAO,CAAC,MAAM,CAAC,WAAW,CACtB,UAAU,EACV,kBAAkB,CAAC,MAAM,CAC5B,CACJ,CAAC;oBAEF,IAAI,MAAM,KAAK,IAAI,EAAE;AACjB,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAClC,qBAAA;yBAAM,IAAI,MAAM,KAAK,SAAS,EAAE;AAC7B,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;AACvC,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE;wBACpC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7C,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;wBACnC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC7C,qBAAA;AAAM,yBAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC9B,wBAAA,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACpC,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACnC,wBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAClC,qBAAA;AAAM,yBAAA,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;AACnC,wBAAA,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACpC,qBAAA;AAAM,yBAAA;wBACH,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC9C,qBAAA;oBAED,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;iBAC9C;AACD,gBAAA,gBAAgB,EAAE,CAAC,OAA6B,KAAI;AAChD,oBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBAChC;aACJ,CAAC;AAEF,YAAA,IAAI,mBAAmB,EAAE;AACrB,gBAAA,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC;AACvB,oBAAA,IAAI,EAAE,WAAW;AACjB,oBAAA,WAAW,EAAE,WAAW;AACxB,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,QAAQ,EAAE,KAAK;AAClB,iBAAA,CAAC,CAAC;AACN,aAAA;AAED,YAAA,IAAI,oBAAoB,EAAE;gBACtB,SAAS,CAAC,UAAU,EAAE,IAAI,CACtB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM;AAC3B,oBAAA,IAAI,EAAE,GAAG;AACT,oBAAA,WAAW,EAAE,GAAG;AAChB,oBAAA,IAAI,EAAE,QAAQ;AACd,oBAAA,QAAQ,EAAE,KAAK;iBAClB,CAAC,CAAC,CACN,CAAC;AACL,aAAA;AAED,YAAA,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAC9B,SAAA;AAED,QAAA,OAAO,UAAU,CAAC;KACrB;IAED,OAAO,mBAAmB,CAAC,IAAS,EAAA;AAChC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChC,QAAA,OAAO,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;KACxC;IAED,OAAO,oBAAoB,CAAC,IAAS,EAAA;AACjC,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE;AACP,YAAA,OAAO,EAAE,CAAC;AACb,SAAA;QACD,OAAO,IAAI,CAAC,CAAC,CAAC;aACT,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,GAAW,KAAK,GAAG,CAAC,IAAI,EAAE,CAAC;aAChC,MAAM,CAAC,CAAC,GAAW,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC;KAC5C;AACJ;;MChLY,iBAAiB,GAAG,CAC7B,CAAiC,EACjC,IAAyB,KACR;AACjB,IAAA,QACI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACZ,SAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;YACpC,IAAI,CAAC,CAAC,CAAC,OAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC,EACrD;AACN,EAAE;AAEW,MAAA,UAAU,GAAG,CAAC,IAAS,KAAY;AAC5C,IAAA,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAElD,IAAA,OAAO,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC9D,EAAE;AAEW,MAAA,YAAY,GAAG,CAAC,UAAe,KAAY;AACpD,IAAA,OAAO,UAAU;AACZ,SAAA,OAAO,CAAC,aAAa,EAAE,sBAAsB,CAAC;AAC9C,SAAA,OAAO,CAAC,cAAc,EAAE,uBAAuB,CAAC;AAChD,SAAA,OAAO,CAAC,UAAU,EAAE,qBAAqB,CAAC;AAC1C,SAAA,OAAO,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;AACjD,SAAA,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;AACrD,EAAE;AAEW,MAAA,aAAa,GAAG,CAAC,MAA2B,KAAY;AACjE,IAAA,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;AAE3C,IAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACtB,QAAA,IAAI,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;AAC5B,YAAA,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;;AAE1B,YAAA,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gBACtB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAChE,aAAA;AAAM,iBAAA,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;gBAC9C,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;AAC9C,aAAA;AACJ,SAAA;AACJ,KAAA;AAED,IAAA,OAAO,YAAY,CAAC,QAAQ,EAAE,CAAC;AACnC,EAAE;AAEK,MAAM,mBAAmB,GAAG,CAC/B,IAAY,EACZ,OAAe,EACf,OAA8B,GAAA,kBAAkB,CAAC,MAAM,KAC/C;;IAER,OAAO,IAAI,CAAC,OAAO,CACf,OAAO,EACP,CAAC,KAAK,KAAK,CAAG,EAAA,OAAO,GAAG,KAAK,CAAA,EAAG,kBAAkB,CAAC,KAAK,CAAE,CAAA,CAC7D,CAAC;AACN,EAAE;MAEW,cAAc,GAAG,CAC1B,OAAe,EACf,IAAY,KACQ;;IAEpB,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;;AAGpC,IAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AACd,QAAA,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACpD,KAAA;;AAGD,IAAA,OAAO,SAAS,CAAC;AACrB,EAAE;AAMW,MAAA,KAAK,GAAG;IACjB,iBAAiB;IACjB,UAAU;IACV,YAAY;IACZ,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,eAAe;IACf,KAAK;;;ACpFI,MAAA,4BAA4B,GAAG,CAAC,EACzC,OAAO,EACP,QAAQ,GAIX,KAAU;IACN,MAAc,CAAC,OAAO,GAAG;QACtB,eAAe,EAAE,QAAQ,IAAI,EAAE;AAC/B,QAAA,aAAa,EAAE,OAAO,MAAqB,KAAI;YAC3C,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;AACrD,YAAA,MAAc,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC;AACtC,YAAA,QAAQ,CAAC,OAAO,CAAC,OAAO,OAAO,KAAK,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;SAC9D;AACD,QAAA,GAAG,SAAS;AACZ,QAAA,GAAG,KAAK;AACR,QAAA,GAAG,KAAK;KACX,CAAC;IAED,MAAc,CAAC,MAAM,GAAG;AACrB,QAAA,UAAU,EAAE,MAAK,GAAG;KACvB,CAAC;AACN,EAAE;MAEW,aAAa,GAAG,OAAO,MAAqB,KAAmB;AACxE,IAAA,IAAI,OAAQ,MAAc,KAAK,WAAW,EAAE;QACxC,MAAO,MAAc,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;AACvD,KAAA;AAAM,SAAA;AACH,QAAA,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACtC,KAAA;AACL;;MCnCa,kBAAkB,CAAA;AAK3B,IAAA,WAAA,CACY,QAGC,EAAA;QAHD,IAAQ,CAAA,QAAA,GAAR,QAAQ,CAGP;QARL,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;AAErB,QAAA,IAAA,CAAA,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QASzC,IAAO,CAAA,OAAA,GAAe,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,KAAI;YAC5D,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,GAAG,MAAK;AACvC,gBAAA,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;AAC3C,aAAC,CAAC;AAEF,YAAA,IAAI,CAAC,QAAQ,CACT,CAAC,KAAK,KAAI;AACN,gBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACpB,OAAO,CAAC,KAAK,CAAC,CAAC;AAClB,iBAAA;AACL,aAAC,EACD,CAAC,MAAM,KAAI;AACP,gBAAA,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;oBACpB,MAAM,CAAC,MAAM,CAAC,CAAC;AAClB,iBAAA;AACL,aAAC,CACJ,CAAC;AACN,SAAC,CAAC,CAAC;KAnBC;IAqBJ,MAAM,GAAA;AACF,QAAA,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;AACzB,QAAA,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;KAChC;AACJ;;ACnCD;;AAEG;;ACFH;;AAEG;;;;"}
@@ -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 { Terminal } from '@xterm/xterm';
2
- import { Observable, Subject } from 'rxjs';
3
- import { CliBackgroundColor, CliForegroundColor, CliLogLevel, CliOptions, CliProcessCommand, CliProcessorMetadata, ICliUser, ICliUserSession } from '../models';
4
- export interface ICliCommandAuthor {
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
+ }
@@ -7,7 +7,7 @@ export type CliProcessCommand = {
7
7
  /**
8
8
  * The data that was entered
9
9
  */
10
- data?: string;
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 {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@qodalis/cli-core",
3
- "version": "0.0.10",
3
+ "version": "0.0.11",
4
4
  "description": "Core Angular CLI for @qodalis extensions.",
5
5
  "author": "Nicolae Lupei, Qodalis Solutions",
6
6
  "license": "MIT",