@dxos/cli 2.18.5-dev.5b370dc9 → 2.19.1-dev.2b9c1a6a
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 +25 -16
- package/dist/dx.yml +14 -0
- package/dist/known-extensions.yml +47 -69
- package/dist/src/extensions/index.d.ts +4 -0
- package/dist/src/extensions/index.d.ts.map +1 -0
- package/dist/src/extensions/index.js +23 -0
- package/dist/src/extensions/index.js.map +1 -0
- package/dist/src/extensions/manager.d.ts +15 -0
- package/dist/src/extensions/manager.d.ts.map +1 -0
- package/dist/src/extensions/manager.js +52 -0
- package/dist/src/extensions/manager.js.map +1 -0
- package/dist/src/extensions/module.d.ts +20 -0
- package/dist/src/extensions/module.d.ts.map +1 -0
- package/dist/src/extensions/module.js +61 -0
- package/dist/src/extensions/module.js.map +1 -0
- package/dist/src/extensions/pluggable.d.ts +68 -0
- package/dist/src/extensions/pluggable.d.ts.map +1 -0
- package/dist/src/{pluggable.js → extensions/pluggable.js} +49 -89
- package/dist/src/extensions/pluggable.js.map +1 -0
- package/dist/src/extensions/utils.d.ts +9 -0
- package/dist/src/extensions/utils.d.ts.map +1 -0
- package/dist/src/extensions/utils.js +58 -0
- package/dist/src/extensions/utils.js.map +1 -0
- package/dist/src/main.js +51 -62
- package/dist/src/main.js.map +1 -1
- package/dist/src/modules/device/commands/index.d.ts +4 -0
- package/dist/src/modules/device/commands/index.d.ts.map +1 -0
- package/dist/src/modules/device/commands/index.js +23 -0
- package/dist/src/modules/device/commands/index.js.map +1 -0
- package/dist/src/modules/device/commands/info.d.ts +7 -0
- package/dist/src/modules/device/commands/info.d.ts.map +1 -0
- package/dist/src/modules/device/commands/info.js +24 -0
- package/dist/src/modules/device/commands/info.js.map +1 -0
- package/dist/src/modules/device/commands/invite.d.ts +9 -0
- package/dist/src/modules/device/commands/invite.d.ts.map +1 -0
- package/dist/src/modules/device/commands/invite.js +25 -0
- package/dist/src/modules/device/commands/invite.js.map +1 -0
- package/dist/src/modules/device/commands/join.d.ts +23 -0
- package/dist/src/modules/device/commands/join.d.ts.map +1 -0
- package/dist/src/modules/device/commands/join.js +46 -0
- package/dist/src/modules/device/commands/join.js.map +1 -0
- package/dist/src/modules/device/device.d.ts +10 -0
- package/dist/src/modules/device/device.d.ts.map +1 -0
- package/dist/src/modules/device/device.js +40 -0
- package/dist/src/modules/device/device.js.map +1 -0
- package/dist/src/modules/device/device.test.d.ts +2 -0
- package/dist/src/modules/device/device.test.d.ts.map +1 -0
- package/dist/src/modules/device/device.test.js +79 -0
- package/dist/src/modules/device/device.test.js.map +1 -0
- package/dist/src/modules/device/index.d.ts +2 -0
- package/dist/src/modules/device/index.d.ts.map +1 -0
- package/dist/src/modules/device/index.js +21 -0
- package/dist/src/modules/device/index.js.map +1 -0
- package/dist/src/modules/devtools.d.ts +1 -1
- package/dist/src/modules/devtools.d.ts.map +1 -1
- package/dist/src/modules/devtools.js +5 -4
- package/dist/src/modules/devtools.js.map +1 -1
- package/dist/src/modules/extension.d.ts.map +1 -1
- package/dist/src/modules/extension.js +18 -16
- package/dist/src/modules/extension.js.map +1 -1
- package/dist/src/modules/halo.d.ts +1 -1
- package/dist/src/modules/index.d.ts +10 -0
- package/dist/src/modules/index.d.ts.map +1 -0
- package/dist/src/modules/index.js +29 -0
- package/dist/src/modules/index.js.map +1 -0
- package/dist/src/modules/info.d.ts +6 -0
- package/dist/src/modules/info.d.ts.map +1 -0
- package/dist/src/modules/info.js +25 -0
- package/dist/src/modules/info.js.map +1 -0
- package/dist/src/modules/{installation.d.ts → install.d.ts} +1 -1
- package/dist/src/modules/install.d.ts.map +1 -0
- package/dist/src/modules/{installation.js → install.js} +12 -11
- package/dist/src/modules/install.js.map +1 -0
- package/dist/src/modules/profile.d.ts +2 -2
- package/dist/src/modules/profile.d.ts.map +1 -1
- package/dist/src/modules/profile.js.map +1 -1
- package/dist/src/modules/services.d.ts.map +1 -1
- package/dist/src/modules/services.js +8 -5
- package/dist/src/modules/services.js.map +1 -1
- package/dist/src/modules/storage.d.ts.map +1 -1
- package/dist/src/modules/storage.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +23 -15
- package/dist/src/extensions.d.ts +0 -6
- package/dist/src/extensions.d.ts.map +0 -1
- package/dist/src/extensions.js +0 -47
- package/dist/src/extensions.js.map +0 -1
- package/dist/src/modules/installation.d.ts.map +0 -1
- package/dist/src/modules/installation.js.map +0 -1
- package/dist/src/modules/pluggable.d.ts +0 -14
- package/dist/src/modules/pluggable.d.ts.map +0 -1
- package/dist/src/modules/pluggable.js +0 -48
- package/dist/src/modules/pluggable.js.map +0 -1
- package/dist/src/pluggable.d.ts +0 -68
- package/dist/src/pluggable.d.ts.map +0 -1
- package/dist/src/pluggable.js.map +0 -1
|
@@ -7,101 +7,49 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.Pluggable = void 0;
|
|
10
|
-
/* eslint import/no-dynamic-require: 0 */
|
|
11
10
|
/* eslint @typescript-eslint/no-var-requires: 0 */
|
|
12
11
|
/* eslint global-require: 0 */
|
|
13
|
-
const child_process_1 = require("child_process");
|
|
14
|
-
const find_root_1 = __importDefault(require("find-root"));
|
|
15
12
|
const fs_1 = __importDefault(require("fs"));
|
|
16
|
-
const ora_1 = __importDefault(require("ora"));
|
|
17
13
|
const path_1 = __importDefault(require("path"));
|
|
18
14
|
const read_pkg_up_1 = __importDefault(require("read-pkg-up"));
|
|
19
15
|
const strip_json_comments_1 = __importDefault(require("strip-json-comments"));
|
|
20
16
|
const cli_core_1 = require("@dxos/cli-core");
|
|
21
|
-
const
|
|
17
|
+
const manager_1 = require("./manager");
|
|
18
|
+
const utils_1 = require("./utils");
|
|
22
19
|
const pkg = read_pkg_up_1.default.sync({ cwd: path_1.default.join(__dirname, '../') });
|
|
23
|
-
/**
|
|
24
|
-
* @param {String} command
|
|
25
|
-
* @param {Array} args
|
|
26
|
-
* @param {Object} options
|
|
27
|
-
*/
|
|
28
|
-
const runCommand = async (command, args, options) => {
|
|
29
|
-
return new Promise((resolve, reject) => {
|
|
30
|
-
const { spinner: spinnerText } = options;
|
|
31
|
-
const spinner = (0, ora_1.default)(spinnerText);
|
|
32
|
-
spinner.start();
|
|
33
|
-
(0, child_process_1.exec)(`${(0, cli_core_1.prepareExec)(command)} ${args.join(' ')}`, (err) => {
|
|
34
|
-
if (err) {
|
|
35
|
-
spinner.fail();
|
|
36
|
-
reject(err);
|
|
37
|
-
}
|
|
38
|
-
else {
|
|
39
|
-
spinner.succeed();
|
|
40
|
-
spinner.clear();
|
|
41
|
-
resolve();
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
};
|
|
46
|
-
/**
|
|
47
|
-
* Finds root dir of a workspace.
|
|
48
|
-
* @param {String} from
|
|
49
|
-
*/
|
|
50
|
-
const getWorkspaceRoot = from => {
|
|
51
|
-
try {
|
|
52
|
-
return (0, find_root_1.default)(from, dir => {
|
|
53
|
-
const pkgPath = path_1.default.join(dir, 'package.json');
|
|
54
|
-
if (fs_1.default.existsSync(pkgPath)) {
|
|
55
|
-
const { workspaces } = require(pkgPath);
|
|
56
|
-
return workspaces && (Array.isArray(workspaces) || workspaces.packages);
|
|
57
|
-
}
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
catch (err) {
|
|
61
|
-
return '';
|
|
62
|
-
}
|
|
63
|
-
};
|
|
64
20
|
/**
|
|
65
21
|
* Pluggable CLI module.
|
|
66
22
|
*/
|
|
67
23
|
class Pluggable {
|
|
68
|
-
/**
|
|
69
|
-
* @constructor
|
|
70
|
-
* @param {String} moduleName
|
|
71
|
-
* @param {String} version
|
|
72
|
-
*/
|
|
73
24
|
constructor({ moduleName, version }) {
|
|
74
25
|
var _a;
|
|
75
26
|
this._moduleName = moduleName;
|
|
76
27
|
this._version = version;
|
|
77
|
-
this._workspaceRoot = getWorkspaceRoot(__dirname);
|
|
78
|
-
this._workspacePackages = this._workspaceRoot &&
|
|
79
|
-
|
|
80
|
-
this.
|
|
81
|
-
|
|
28
|
+
this._workspaceRoot = (0, utils_1.getWorkspaceRoot)(__dirname);
|
|
29
|
+
this._workspacePackages = this._workspaceRoot &&
|
|
30
|
+
JSON.parse((0, strip_json_comments_1.default)(fs_1.default.readFileSync(path_1.default.join(this._workspaceRoot, 'rush.json')).toString())).projects;
|
|
31
|
+
this._workspaceInfo = this._workspacePackages &&
|
|
32
|
+
this._workspacePackages.find(module => module.packageName === this._moduleName);
|
|
33
|
+
this._isInWorkspace = this._workspaceInfo &&
|
|
34
|
+
fs_1.default.existsSync(path_1.default.join(this._workspaceRoot, this._workspaceInfo.projectFolder));
|
|
35
|
+
this._isInCWD = fs_1.default.existsSync(path_1.default.join(process.cwd(), 'package.json')) &&
|
|
36
|
+
((_a = require(path_1.default.join(process.cwd(), 'package.json'))) === null || _a === void 0 ? void 0 : _a.name) === this._moduleName;
|
|
82
37
|
this._installed = this.isInstalled();
|
|
83
38
|
}
|
|
84
39
|
/**
|
|
85
40
|
* Pluggable factory.
|
|
86
|
-
* @param {Object} options
|
|
87
41
|
*/
|
|
88
|
-
static create(
|
|
89
|
-
return new Pluggable(
|
|
90
|
-
}
|
|
91
|
-
get moduleName() {
|
|
92
|
-
return this._moduleName;
|
|
93
|
-
}
|
|
94
|
-
get version() {
|
|
95
|
-
return this._version;
|
|
96
|
-
}
|
|
97
|
-
get workspaceRoot() {
|
|
98
|
-
return this._workspaceRoot;
|
|
99
|
-
}
|
|
100
|
-
get installed() {
|
|
101
|
-
return this._installed;
|
|
42
|
+
static create(extension) {
|
|
43
|
+
return new Pluggable(extension);
|
|
102
44
|
}
|
|
103
|
-
|
|
104
|
-
|
|
45
|
+
/**
|
|
46
|
+
* Returns the exported info.
|
|
47
|
+
*/
|
|
48
|
+
get module() {
|
|
49
|
+
var _a;
|
|
50
|
+
const module = require(this.modulePath);
|
|
51
|
+
const cli = (_a = module.default) !== null && _a !== void 0 ? _a : module; // Difference between `module.exports` and `export default`.
|
|
52
|
+
return cli;
|
|
105
53
|
}
|
|
106
54
|
get modulePath() {
|
|
107
55
|
if (!this._modulePath) {
|
|
@@ -120,11 +68,20 @@ class Pluggable {
|
|
|
120
68
|
}
|
|
121
69
|
return this._modulePath;
|
|
122
70
|
}
|
|
123
|
-
get
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
return
|
|
71
|
+
get moduleName() {
|
|
72
|
+
return this._moduleName;
|
|
73
|
+
}
|
|
74
|
+
get version() {
|
|
75
|
+
return this._version;
|
|
76
|
+
}
|
|
77
|
+
get workspaceRoot() {
|
|
78
|
+
return this._workspaceRoot;
|
|
79
|
+
}
|
|
80
|
+
get installed() {
|
|
81
|
+
return this._installed;
|
|
82
|
+
}
|
|
83
|
+
get isInWorkspace() {
|
|
84
|
+
return this._isInWorkspace;
|
|
128
85
|
}
|
|
129
86
|
/**
|
|
130
87
|
* Checks if workspace is defined.
|
|
@@ -166,7 +123,7 @@ class Pluggable {
|
|
|
166
123
|
const command = isYarn ? 'yarn' : 'npm';
|
|
167
124
|
const args = isYarn ? ['global', 'add'] : ['install', '-g'];
|
|
168
125
|
args.push(`${moduleName}${version ? `@${version}` : ''}`);
|
|
169
|
-
return runCommand(command, args, options);
|
|
126
|
+
return (0, utils_1.runCommand)(command, args, options);
|
|
170
127
|
}
|
|
171
128
|
/**
|
|
172
129
|
* Uninstall CLI extension.
|
|
@@ -181,34 +138,37 @@ class Pluggable {
|
|
|
181
138
|
const command = isYarn ? 'yarn' : 'npm';
|
|
182
139
|
const args = isYarn ? ['global', 'remove'] : ['uninstall', '-g'];
|
|
183
140
|
args.push(`${moduleName}`);
|
|
184
|
-
return runCommand(command, args, options);
|
|
141
|
+
return (0, utils_1.runCommand)(command, args, options);
|
|
185
142
|
}
|
|
186
143
|
/**
|
|
187
144
|
* Init extension in a scope of main CLI.
|
|
188
|
-
* @param {Object} state
|
|
189
145
|
*/
|
|
190
146
|
async init(state) {
|
|
191
|
-
|
|
147
|
+
var _a, _b;
|
|
148
|
+
return (_b = (_a = this.module).init) === null || _b === void 0 ? void 0 : _b.call(_a, state);
|
|
192
149
|
}
|
|
193
150
|
/**
|
|
194
151
|
* Destroy extension in a scope of main CLI.
|
|
195
|
-
* @param {Object} state
|
|
196
152
|
*/
|
|
197
153
|
async destroy(state) {
|
|
198
|
-
|
|
154
|
+
var _a, _b;
|
|
155
|
+
return (_b = (_a = this.module).destroy) === null || _b === void 0 ? void 0 : _b.call(_a, state);
|
|
156
|
+
}
|
|
157
|
+
async handleExit(state) {
|
|
158
|
+
var _a, _b;
|
|
159
|
+
return (_b = (_a = this.module).onExit) === null || _b === void 0 ? void 0 : _b.call(_a, state);
|
|
199
160
|
}
|
|
200
161
|
/**
|
|
201
162
|
* Runs command of an CLI extension.
|
|
202
|
-
* @param {Object} state
|
|
203
|
-
* @param {Object} argv
|
|
204
163
|
*/
|
|
205
164
|
async run(state, argv) {
|
|
206
165
|
const { installed, moduleName, version } = this;
|
|
207
166
|
if (!installed) {
|
|
208
167
|
const spinner = `Installing ${moduleName}${version ? `@${version}` : ''}`;
|
|
209
168
|
try {
|
|
210
|
-
await this.installModule(
|
|
211
|
-
|
|
169
|
+
await this.installModule(undefined, { spinner });
|
|
170
|
+
const extensionManager = new manager_1.ExtensionManager();
|
|
171
|
+
await extensionManager.add(moduleName, this.getInfo());
|
|
212
172
|
const { init, destroy } = this.module;
|
|
213
173
|
if (init || destroy) {
|
|
214
174
|
console.log(`${moduleName} was successfully installed. Please run your command again.`);
|
|
@@ -228,7 +188,7 @@ class Pluggable {
|
|
|
228
188
|
}
|
|
229
189
|
getDockerCompose() {
|
|
230
190
|
this._cleanCache();
|
|
231
|
-
return this.module.
|
|
191
|
+
return this.module.docker;
|
|
232
192
|
}
|
|
233
193
|
_cleanCache() {
|
|
234
194
|
delete require.cache[require.resolve(this.modulePath)];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pluggable.js","sourceRoot":"","sources":["../../../src/extensions/pluggable.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Asynchronosly run the shell command.
|
|
3
|
+
*/
|
|
4
|
+
export declare const runCommand: (command: string, args: string[], options: any) => Promise<unknown>;
|
|
5
|
+
/**
|
|
6
|
+
* Finds root dir of a workspace.
|
|
7
|
+
*/
|
|
8
|
+
export declare const getWorkspaceRoot: (from: string) => string;
|
|
9
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/extensions/utils.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,eAAO,MAAM,UAAU,YAAmB,MAAM,QAAQ,MAAM,EAAE,WAAW,GAAG,qBAiB7E,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,SAAU,MAAM,WAY5C,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2020 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
6
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
7
|
+
};
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.getWorkspaceRoot = exports.runCommand = void 0;
|
|
10
|
+
/* eslint @typescript-eslint/no-var-requires: 0 */
|
|
11
|
+
/* eslint global-require: 0 */
|
|
12
|
+
const child_process_1 = require("child_process");
|
|
13
|
+
const find_root_1 = __importDefault(require("find-root"));
|
|
14
|
+
const fs_1 = __importDefault(require("fs"));
|
|
15
|
+
const ora_1 = __importDefault(require("ora"));
|
|
16
|
+
const path_1 = __importDefault(require("path"));
|
|
17
|
+
const cli_core_1 = require("@dxos/cli-core");
|
|
18
|
+
/**
|
|
19
|
+
* Asynchronosly run the shell command.
|
|
20
|
+
*/
|
|
21
|
+
const runCommand = async (command, args, options) => {
|
|
22
|
+
return new Promise((resolve, reject) => {
|
|
23
|
+
const { spinner: spinnerText } = options;
|
|
24
|
+
const spinner = (0, ora_1.default)(spinnerText);
|
|
25
|
+
spinner.start();
|
|
26
|
+
(0, child_process_1.exec)(`${(0, cli_core_1.prepareExec)(command)} ${args.join(' ')}`, (err) => {
|
|
27
|
+
if (err) {
|
|
28
|
+
spinner.fail();
|
|
29
|
+
reject(err);
|
|
30
|
+
}
|
|
31
|
+
else {
|
|
32
|
+
spinner.succeed();
|
|
33
|
+
spinner.clear();
|
|
34
|
+
resolve(true);
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
};
|
|
39
|
+
exports.runCommand = runCommand;
|
|
40
|
+
/**
|
|
41
|
+
* Finds root dir of a workspace.
|
|
42
|
+
*/
|
|
43
|
+
const getWorkspaceRoot = (from) => {
|
|
44
|
+
try {
|
|
45
|
+
return (0, find_root_1.default)(from, dir => {
|
|
46
|
+
const pkgPath = path_1.default.join(dir, 'package.json');
|
|
47
|
+
if (fs_1.default.existsSync(pkgPath)) {
|
|
48
|
+
const { workspaces } = require(pkgPath);
|
|
49
|
+
return workspaces && (Array.isArray(workspaces) || workspaces.packages);
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
catch (err) {
|
|
54
|
+
return '';
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
exports.getWorkspaceRoot = getWorkspaceRoot;
|
|
58
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/extensions/utils.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;AAEF,kDAAkD;AAClD,8BAA8B;AAE9B,iDAAqC;AACrC,0DAAiC;AACjC,4CAAoB;AACpB,8CAAsB;AACtB,gDAAwB;AAExB,6CAA6C;AAE7C;;GAEG;AACI,MAAM,UAAU,GAAG,KAAK,EAAE,OAAe,EAAE,IAAc,EAAE,OAAY,EAAE,EAAE;IAChF,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;QACzC,MAAM,OAAO,GAAG,IAAA,aAAG,EAAC,WAAW,CAAC,CAAC;QACjC,OAAO,CAAC,KAAK,EAAE,CAAC;QAEhB,IAAA,oBAAI,EAAC,GAAG,IAAA,sBAAW,EAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YACxD,IAAI,GAAG,EAAE;gBACP,OAAO,CAAC,IAAI,EAAE,CAAC;gBACf,MAAM,CAAC,GAAG,CAAC,CAAC;aACb;iBAAM;gBACL,OAAO,CAAC,OAAO,EAAE,CAAC;gBAClB,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,CAAC;aACf;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAjBW,QAAA,UAAU,cAiBrB;AAEF;;GAEG;AACI,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,EAAE;IAC/C,IAAI;QACF,OAAO,IAAA,mBAAQ,EAAC,IAAI,EAAE,GAAG,CAAC,EAAE;YAC1B,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC/C,IAAI,YAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;gBAC1B,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;gBACxC,OAAO,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;aACzE;QACH,CAAC,CAAC,CAAC;KACJ;IAAC,OAAO,GAAG,EAAE;QACZ,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC;AAZW,QAAA,gBAAgB,oBAY3B"}
|
package/dist/src/main.js
CHANGED
|
@@ -7,91 +7,80 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
};
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
const fs_1 = require("fs");
|
|
10
|
-
const js_yaml_1 = __importDefault(require("js-yaml"));
|
|
11
10
|
const lodash_uniqby_1 = __importDefault(require("lodash.uniqby"));
|
|
12
11
|
const path_1 = __importDefault(require("path"));
|
|
13
|
-
const read_pkg_up_1 = __importDefault(require("read-pkg-up"));
|
|
14
12
|
const cli_core_1 = require("@dxos/cli-core");
|
|
15
13
|
const extensions_1 = require("./extensions");
|
|
16
|
-
const
|
|
17
|
-
const extension_1 = require("./modules/extension");
|
|
18
|
-
const halo_1 = require("./modules/halo");
|
|
19
|
-
const installation_1 = require("./modules/installation");
|
|
20
|
-
const pluggable_1 = require("./modules/pluggable");
|
|
21
|
-
const profile_1 = require("./modules/profile");
|
|
22
|
-
const services_1 = require("./modules/services");
|
|
23
|
-
const storage_1 = require("./modules/storage");
|
|
24
|
-
const KNOWN_EXTENSIONS = (0, fs_1.readFileSync)(path_1.default.join(__dirname, '../known-extensions.yml')).toString();
|
|
25
|
-
const { logError } = (0, cli_core_1.getLoggers)();
|
|
26
|
-
const knownExtensions = js_yaml_1.default.load(KNOWN_EXTENSIONS);
|
|
27
|
-
const pkg = read_pkg_up_1.default.sync({ cwd: __dirname });
|
|
14
|
+
const modules_1 = require("./modules");
|
|
28
15
|
const CLI_BASE_COMMAND = 'dx';
|
|
29
|
-
const
|
|
16
|
+
const { logError } = (0, cli_core_1.getLoggers)();
|
|
30
17
|
const CLI_CONFIG = {
|
|
31
18
|
prompt: CLI_BASE_COMMAND,
|
|
32
19
|
baseCommand: '',
|
|
33
20
|
enableInteractive: true
|
|
34
21
|
};
|
|
35
|
-
const
|
|
36
|
-
|
|
22
|
+
const modules = [
|
|
23
|
+
modules_1.DeviceModule,
|
|
24
|
+
modules_1.InfoModule,
|
|
25
|
+
modules_1.ProfileModule,
|
|
26
|
+
modules_1.DevtoolsModule,
|
|
27
|
+
modules_1.ServicesModule,
|
|
28
|
+
modules_1.StorageModule,
|
|
29
|
+
modules_1.HaloModule,
|
|
30
|
+
modules_1.UpgradeModule,
|
|
31
|
+
modules_1.UninstallModule,
|
|
32
|
+
modules_1.ExtensionModule
|
|
33
|
+
];
|
|
34
|
+
const pluggableModules = [];
|
|
37
35
|
const init = async (state) => {
|
|
38
|
-
|
|
36
|
+
// Generated by package script from Yargs definitions.
|
|
37
|
+
const knownExtensions = (0, cli_core_1.loadYml)(path_1.default.join(__dirname, '../known-extensions.yml'));
|
|
39
38
|
// If developing new extension - read info from cwd.
|
|
40
|
-
const localExtensionFile = path_1.default.join(process.cwd(),
|
|
39
|
+
const localExtensionFile = path_1.default.join(process.cwd(), cli_core_1.EXTENSION_CONFIG_FILENAME);
|
|
41
40
|
if ((0, fs_1.existsSync)(localExtensionFile)) {
|
|
42
|
-
const
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
moduleName: `@${name}`,
|
|
47
|
-
describe: description,
|
|
48
|
-
command,
|
|
49
|
-
initRequired,
|
|
50
|
-
destroyRequired
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
const pluggableModules = (0, lodash_uniqby_1.default)(knownExtensions.concat(installedExtensions), 'moduleName');
|
|
54
|
-
for await (const extension of pluggableModules) {
|
|
55
|
-
const version = extension.version || (pkg === null || pkg === void 0 ? void 0 : pkg.package.version);
|
|
56
|
-
const pluggableModule = new pluggable_1.PluggableModule({ ...extension, version }, state);
|
|
57
|
-
if (extension.initRequired) {
|
|
58
|
-
await pluggableModule.init();
|
|
59
|
-
}
|
|
60
|
-
// eslint-disable-next-line
|
|
61
|
-
extensions.push(...pluggableModule.export.call(pluggableModule));
|
|
62
|
-
if (extension.destroyRequired) {
|
|
63
|
-
destroyers.push(pluggableModule.destroy.bind(pluggableModule));
|
|
41
|
+
const devExtensionInfo = (0, cli_core_1.loadYml)(localExtensionFile);
|
|
42
|
+
// TODO(egorgripasov): Once proper dx.yml in place check if DXNS type == 'extension' instead.
|
|
43
|
+
if (devExtensionInfo.moduleName) {
|
|
44
|
+
knownExtensions.push(devExtensionInfo);
|
|
64
45
|
}
|
|
65
46
|
}
|
|
47
|
+
const extensionManager = new extensions_1.ExtensionManager();
|
|
48
|
+
const installedExtensions = await extensionManager.list();
|
|
49
|
+
const pluggableExtensions = (0, lodash_uniqby_1.default)(knownExtensions.concat(installedExtensions), 'moduleName');
|
|
50
|
+
for await (const pluggableExtension of pluggableExtensions) {
|
|
51
|
+
const pluggableModule = new extensions_1.PluggableModule(pluggableExtension, state);
|
|
52
|
+
await pluggableModule.init();
|
|
53
|
+
pluggableModules.push(pluggableModule);
|
|
54
|
+
const exportedModules = pluggableModule.export();
|
|
55
|
+
modules.push(...exportedModules);
|
|
56
|
+
}
|
|
66
57
|
};
|
|
67
58
|
const destroy = async () => {
|
|
68
|
-
for await (const
|
|
69
|
-
await
|
|
59
|
+
for await (const pluggableModule of pluggableModules) {
|
|
60
|
+
await pluggableModule.destroy();
|
|
70
61
|
}
|
|
71
62
|
};
|
|
72
|
-
const
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
63
|
+
const handleExit = async () => {
|
|
64
|
+
for await (const pluggableModule of pluggableModules) {
|
|
65
|
+
await pluggableModule.handleExit();
|
|
66
|
+
}
|
|
67
|
+
};
|
|
68
|
+
const handleError = async (err) => {
|
|
69
|
+
await handleExit();
|
|
70
|
+
logError(err);
|
|
71
|
+
process.exit(1);
|
|
72
|
+
};
|
|
73
|
+
process.on('uncaughtException', handleError);
|
|
74
|
+
process.on('unhandledRejection', handleError);
|
|
75
|
+
process.on('SIGINT', handleExit);
|
|
76
|
+
process.on('SIGTERM', handleExit);
|
|
82
77
|
module.exports = (0, cli_core_1.createCLI)({
|
|
83
|
-
options: CLI_CONFIG,
|
|
84
78
|
dir: __dirname,
|
|
85
79
|
main: !module.parent,
|
|
80
|
+
info: (0, cli_core_1.loadYml)(path_1.default.join(__dirname, `../${cli_core_1.EXTENSION_CONFIG_FILENAME}`)),
|
|
86
81
|
init,
|
|
87
82
|
destroy,
|
|
88
|
-
getModules: async () =>
|
|
89
|
-
|
|
83
|
+
getModules: async () => modules,
|
|
84
|
+
options: CLI_CONFIG
|
|
90
85
|
});
|
|
91
|
-
const handleError = (err) => {
|
|
92
|
-
logError(err);
|
|
93
|
-
process.exit(1);
|
|
94
|
-
};
|
|
95
|
-
process.on('uncaughtException', handleError);
|
|
96
|
-
process.on('unhandledRejection', handleError);
|
|
97
86
|
//# sourceMappingURL=main.js.map
|
package/dist/src/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;AAEF,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/modules/device/commands/index.ts"],"names":[],"mappings":"AAIA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2020 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
17
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
|
+
};
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
__exportStar(require("./info"), exports);
|
|
21
|
+
__exportStar(require("./invite"), exports);
|
|
22
|
+
__exportStar(require("./join"), exports);
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/modules/device/commands/index.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;;;;;;;;;;;;;;AAEF,yCAAuB;AACvB,2CAAyB;AACzB,yCAAuB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CommandModule } from 'yargs';
|
|
2
|
+
import type { Client } from '@dxos/client';
|
|
3
|
+
import { DeviceOptions } from '..';
|
|
4
|
+
export declare const infoCommand: ({ getClient }: {
|
|
5
|
+
getClient: (name?: string | undefined) => Promise<Client>;
|
|
6
|
+
}) => CommandModule<DeviceOptions, DeviceOptions>;
|
|
7
|
+
//# sourceMappingURL=info.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"info.d.ts","sourceRoot":"","sources":["../../../../../src/modules/device/commands/info.ts"],"names":[],"mappings":"AAIA,OAAO,EAAa,aAAa,EAAE,MAAM,OAAO,CAAC;AAGjD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AAEnC,eAAO,MAAM,WAAW;8CAAmD,QAAQ,MAAM,CAAC;MAAK,cAAc,aAAa,EAAE,aAAa,CAevI,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2020 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.infoCommand = void 0;
|
|
7
|
+
const cli_core_1 = require("@dxos/cli-core");
|
|
8
|
+
const infoCommand = ({ getClient }) => ({
|
|
9
|
+
command: ['info'],
|
|
10
|
+
describe: 'Current device info.',
|
|
11
|
+
builder: yargs => yargs,
|
|
12
|
+
handler: (0, cli_core_1.asyncHandler)(async (argv) => {
|
|
13
|
+
var _a;
|
|
14
|
+
const client = await getClient();
|
|
15
|
+
const data = {
|
|
16
|
+
displayName: (_a = client.halo.profile) === null || _a === void 0 ? void 0 : _a.username
|
|
17
|
+
// identityKey: client.echo.halo.identity.identityKey?.publicKey.toHex(),
|
|
18
|
+
// deviceKey: client.echo.halo.identity.deviceKey?.publicKey.toHex()
|
|
19
|
+
};
|
|
20
|
+
return (0, cli_core_1.print)(data, argv);
|
|
21
|
+
})
|
|
22
|
+
});
|
|
23
|
+
exports.infoCommand = infoCommand;
|
|
24
|
+
//# sourceMappingURL=info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"info.js","sourceRoot":"","sources":["../../../../../src/modules/device/commands/info.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAIF,6CAAqD;AAK9C,MAAM,WAAW,GAAG,CAAC,EAAE,SAAS,EAAqD,EAA+C,EAAE,CAAC,CAAC;IAC7I,OAAO,EAAE,CAAC,MAAM,CAAC;IACjB,QAAQ,EAAE,sBAAsB;IAChC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK;IACvB,OAAO,EAAE,IAAA,uBAAY,EAAC,KAAK,EAAE,IAA8B,EAAE,EAAE;;QAC7D,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QAEjC,MAAM,IAAI,GAAG;YACX,WAAW,EAAE,MAAA,MAAM,CAAC,IAAI,CAAC,OAAO,0CAAE,QAAQ;YAC1C,yEAAyE;YACzE,oEAAoE;SACrE,CAAC;QAEF,OAAO,IAAA,gBAAK,EAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC3B,CAAC,CAAC;CACH,CAAC,CAAC;AAfU,QAAA,WAAW,eAerB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { CommandModule } from 'yargs';
|
|
2
|
+
import type { Client } from '@dxos/client';
|
|
3
|
+
import { DeviceOptions } from '../device';
|
|
4
|
+
declare type DeviceInviteOptions = {
|
|
5
|
+
getClient: (name?: string) => Promise<Client>;
|
|
6
|
+
};
|
|
7
|
+
export declare const inviteCommand: ({ getClient }: DeviceInviteOptions, onPinGenerated: (pin: string) => void, onGenerated?: ((code: string) => void) | undefined) => CommandModule<DeviceOptions, DeviceOptions>;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=invite.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invite.d.ts","sourceRoot":"","sources":["../../../../../src/modules/device/commands/invite.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,aAAa,EAAE,MAAM,OAAO,CAAC;AAGvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAO1C,aAAK,mBAAmB,GAAG;IACzB,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;CAC9C,CAAA;AAED,eAAO,MAAM,aAAa,kBAAmB,mBAAmB,wBAAwB,MAAM,KAAK,IAAI,wBAAuB,MAAM,KAAK,IAAI,kBAAG,cAAc,aAAa,EAAE,aAAa,CAcxL,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
//
|
|
3
|
+
// Copyright 2020 DXOS.org
|
|
4
|
+
//
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.inviteCommand = void 0;
|
|
7
|
+
const cli_core_1 = require("@dxos/cli-core");
|
|
8
|
+
const options = (yargs) => {
|
|
9
|
+
return yargs
|
|
10
|
+
.option('interactive', { hidden: true, default: true }); // override the default.
|
|
11
|
+
};
|
|
12
|
+
const inviteCommand = ({ getClient }, onPinGenerated, onGenerated) => ({
|
|
13
|
+
command: ['invite'],
|
|
14
|
+
describe: 'Invite another device.',
|
|
15
|
+
builder: yargs => options(yargs),
|
|
16
|
+
handler: (0, cli_core_1.asyncHandler)(async (argv) => {
|
|
17
|
+
const client = await getClient();
|
|
18
|
+
const invitation = await client.halo.createInvitation();
|
|
19
|
+
invitation.connected.on(() => { var _a, _b; return onPinGenerated((_b = (_a = invitation.descriptor.secret) === null || _a === void 0 ? void 0 : _a.toString()) !== null && _b !== void 0 ? _b : ''); });
|
|
20
|
+
onGenerated && await onGenerated(invitation.descriptor.encode());
|
|
21
|
+
(0, cli_core_1.print)({ code: invitation.descriptor.encode() }, argv);
|
|
22
|
+
})
|
|
23
|
+
});
|
|
24
|
+
exports.inviteCommand = inviteCommand;
|
|
25
|
+
//# sourceMappingURL=invite.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invite.js","sourceRoot":"","sources":["../../../../../src/modules/device/commands/invite.ts"],"names":[],"mappings":";AAAA,EAAE;AACF,0BAA0B;AAC1B,EAAE;;;AAIF,6CAAqD;AAKrD,MAAM,OAAO,GAAG,CAAC,KAA0B,EAAuB,EAAE;IAClE,OAAO,KAAK;SACT,MAAM,CAAC,aAAa,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,wBAAwB;AACrF,CAAC,CAAC;AAMK,MAAM,aAAa,GAAG,CAAC,EAAE,SAAS,EAAuB,EAAE,cAAqC,EAAE,WAAoC,EAA+C,EAAE,CAAC,CAAC;IAC9L,OAAO,EAAE,CAAC,QAAQ,CAAC;IACnB,QAAQ,EAAE,wBAAwB;IAClC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAChC,OAAO,EAAE,IAAA,uBAAY,EAAC,KAAK,EAAE,IAA8B,EAAE,EAAE;QAC7D,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QAEjC,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxD,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,eAAC,OAAA,cAAc,CAAC,MAAA,MAAA,UAAU,CAAC,UAAU,CAAC,MAAM,0CAAE,QAAQ,EAAE,mCAAI,EAAE,CAAC,CAAA,EAAA,CAAC,CAAC;QAE9F,WAAW,IAAI,MAAM,WAAW,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QAEjE,IAAA,gBAAK,EAAC,EAAE,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC,CAAC;CACH,CAAC,CAAC;AAdU,QAAA,aAAa,iBAcvB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Argv } from 'yargs';
|
|
2
|
+
import { CoreState } from '@dxos/cli-core';
|
|
3
|
+
import type { Client } from '@dxos/client';
|
|
4
|
+
import { DeviceOptions } from '../device';
|
|
5
|
+
declare type DeviceJoinCommandOptions = Pick<CoreState, 'profilePath' | 'cliState'> & {
|
|
6
|
+
getClient: (name?: string) => Promise<Client>;
|
|
7
|
+
storage?: {
|
|
8
|
+
persistent?: boolean;
|
|
9
|
+
path?: string;
|
|
10
|
+
};
|
|
11
|
+
};
|
|
12
|
+
export interface DeviceJoinOptions extends DeviceOptions {
|
|
13
|
+
code: string;
|
|
14
|
+
name: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const joinCommand: ({ storage, profilePath, cliState, getClient }: DeviceJoinCommandOptions, secretProvider: Function) => {
|
|
17
|
+
command: string[];
|
|
18
|
+
describe: string;
|
|
19
|
+
builder: (yargs: Argv<any>) => Argv<DeviceJoinOptions>;
|
|
20
|
+
handler: (argv: any) => Promise<any>;
|
|
21
|
+
};
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=join.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"join.d.ts","sourceRoot":"","sources":["../../../../../src/modules/device/commands/join.ts"],"names":[],"mappings":"AAKA,OAAO,EAAa,IAAI,EAAE,MAAM,OAAO,CAAC;AAExC,OAAO,EAA0B,SAAS,EAA8C,MAAM,gBAAgB,CAAC;AAC/G,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAG3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,aAAK,wBAAwB,GAAG,IAAI,CAAC,SAAS,EAAI,aAAa,GAAG,UAAU,CAAC,GAAG;IAC9E,SAAS,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IAC7C,OAAO,CAAC,EAAE;QACR,UAAU,CAAC,EAAE,OAAO,CAAA;QACpB,IAAI,CAAC,EAAE,MAAM,CAAA;KACd,CAAA;CACF,CAAA;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AASD,eAAO,MAAM,WAAW,kDAAmD,wBAAwB,kBAAkB,QAAQ;;;qBAG1G,KAAK,GAAG,CAAC;;CA2B1B,CAAC"}
|