@positronic/cli 0.0.76 → 0.0.78
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/dist/src/cli.js +306 -198
- package/dist/src/commands/server.js +2 -2
- package/dist/src/components/brain-show.js +1 -1
- package/dist/src/components/event-detail.js +139 -139
- package/dist/src/components/events-view.js +60 -63
- package/dist/src/components/watch-keyboard.js +1 -1
- package/dist/src/components/watch-machine.js +344 -286
- package/dist/src/components/watch.js +17 -84
- package/dist/types/cli.d.ts.map +1 -1
- package/dist/types/components/brain-show.d.ts.map +1 -1
- package/dist/types/components/event-detail.d.ts.map +1 -1
- package/dist/types/components/events-view.d.ts.map +1 -1
- package/dist/types/components/watch-machine.d.ts +90 -146
- package/dist/types/components/watch-machine.d.ts.map +1 -1
- package/dist/types/components/watch.d.ts.map +1 -1
- package/dist/types/hooks/useBrainMachine.d.ts +0 -3
- package/dist/types/hooks/useBrainMachine.d.ts.map +1 -1
- package/package.json +4 -4
- package/dist/src/commands/auth.js +0 -91
- package/dist/src/commands/brain.js +0 -139
- package/dist/src/commands/pages.js +0 -47
- package/dist/src/commands/project.js +0 -130
- package/dist/src/commands/resources.js +0 -272
- package/dist/src/commands/schedule.js +0 -91
- package/dist/src/commands/secrets.js +0 -67
- package/dist/src/commands/store.js +0 -36
- package/dist/src/commands/users.js +0 -92
- package/dist/src/components/agent-chat-view.js +0 -125
- package/dist/src/utils/agent-utils.js +0 -107
- package/dist/types/commands/auth.d.ts +0 -32
- package/dist/types/commands/auth.d.ts.map +0 -1
- package/dist/types/commands/brain.d.ts +0 -46
- package/dist/types/commands/brain.d.ts.map +0 -1
- package/dist/types/commands/pages.d.ts +0 -15
- package/dist/types/commands/pages.d.ts.map +0 -1
- package/dist/types/commands/project.d.ts +0 -55
- package/dist/types/commands/project.d.ts.map +0 -1
- package/dist/types/commands/resources.d.ts +0 -13
- package/dist/types/commands/resources.d.ts.map +0 -1
- package/dist/types/commands/schedule.d.ts +0 -33
- package/dist/types/commands/schedule.d.ts.map +0 -1
- package/dist/types/commands/secrets.d.ts +0 -20
- package/dist/types/commands/secrets.d.ts.map +0 -1
- package/dist/types/commands/store.d.ts +0 -5
- package/dist/types/commands/store.d.ts.map +0 -1
- package/dist/types/commands/users.d.ts +0 -34
- package/dist/types/commands/users.d.ts.map +0 -1
- package/dist/types/components/agent-chat-view.d.ts +0 -12
- package/dist/types/components/agent-chat-view.d.ts.map +0 -1
- package/dist/types/utils/agent-utils.d.ts +0 -20
- package/dist/types/utils/agent-utils.d.ts.map +0 -1
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
function _class_call_check(instance, Constructor) {
|
|
2
|
-
if (!(instance instanceof Constructor)) {
|
|
3
|
-
throw new TypeError("Cannot call a class as a function");
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
function _defineProperties(target, props) {
|
|
7
|
-
for(var i = 0; i < props.length; i++){
|
|
8
|
-
var descriptor = props[i];
|
|
9
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
10
|
-
descriptor.configurable = true;
|
|
11
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
12
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
16
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
17
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
18
|
-
return Constructor;
|
|
19
|
-
}
|
|
20
|
-
import React from 'react';
|
|
21
|
-
import { SecretsCreate } from '../components/secrets-create.js';
|
|
22
|
-
import { SecretsList } from '../components/secrets-list.js';
|
|
23
|
-
import { SecretsDelete } from '../components/secrets-delete.js';
|
|
24
|
-
import { SecretsBulk } from '../components/secrets-bulk.js';
|
|
25
|
-
export var SecretsCommand = /*#__PURE__*/ function() {
|
|
26
|
-
"use strict";
|
|
27
|
-
function SecretsCommand() {
|
|
28
|
-
_class_call_check(this, SecretsCommand);
|
|
29
|
-
}
|
|
30
|
-
_create_class(SecretsCommand, [
|
|
31
|
-
{
|
|
32
|
-
key: "list",
|
|
33
|
-
value: function list() {
|
|
34
|
-
return React.createElement(SecretsList);
|
|
35
|
-
}
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
key: "create",
|
|
39
|
-
value: function create(param) {
|
|
40
|
-
var name = param.name, value = param.value;
|
|
41
|
-
return React.createElement(SecretsCreate, {
|
|
42
|
-
name: name,
|
|
43
|
-
value: value
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
key: "delete",
|
|
49
|
-
value: function _delete(param) {
|
|
50
|
-
var name = param.name;
|
|
51
|
-
return React.createElement(SecretsDelete, {
|
|
52
|
-
name: name
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
{
|
|
57
|
-
key: "bulk",
|
|
58
|
-
value: function bulk(param) {
|
|
59
|
-
var file = param.file;
|
|
60
|
-
return React.createElement(SecretsBulk, {
|
|
61
|
-
file: file
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
]);
|
|
66
|
-
return SecretsCommand;
|
|
67
|
-
}();
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
function _class_call_check(instance, Constructor) {
|
|
2
|
-
if (!(instance instanceof Constructor)) {
|
|
3
|
-
throw new TypeError("Cannot call a class as a function");
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
function _defineProperties(target, props) {
|
|
7
|
-
for(var i = 0; i < props.length; i++){
|
|
8
|
-
var descriptor = props[i];
|
|
9
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
10
|
-
descriptor.configurable = true;
|
|
11
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
12
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
16
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
17
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
18
|
-
return Constructor;
|
|
19
|
-
}
|
|
20
|
-
import React from 'react';
|
|
21
|
-
import { StoreExplorer } from '../components/store-explorer.js';
|
|
22
|
-
export var StoreCommand = /*#__PURE__*/ function() {
|
|
23
|
-
"use strict";
|
|
24
|
-
function StoreCommand() {
|
|
25
|
-
_class_call_check(this, StoreCommand);
|
|
26
|
-
}
|
|
27
|
-
_create_class(StoreCommand, [
|
|
28
|
-
{
|
|
29
|
-
key: "explore",
|
|
30
|
-
value: function explore() {
|
|
31
|
-
return React.createElement(StoreExplorer);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
]);
|
|
35
|
-
return StoreCommand;
|
|
36
|
-
}();
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
function _class_call_check(instance, Constructor) {
|
|
2
|
-
if (!(instance instanceof Constructor)) {
|
|
3
|
-
throw new TypeError("Cannot call a class as a function");
|
|
4
|
-
}
|
|
5
|
-
}
|
|
6
|
-
function _defineProperties(target, props) {
|
|
7
|
-
for(var i = 0; i < props.length; i++){
|
|
8
|
-
var descriptor = props[i];
|
|
9
|
-
descriptor.enumerable = descriptor.enumerable || false;
|
|
10
|
-
descriptor.configurable = true;
|
|
11
|
-
if ("value" in descriptor) descriptor.writable = true;
|
|
12
|
-
Object.defineProperty(target, descriptor.key, descriptor);
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function _create_class(Constructor, protoProps, staticProps) {
|
|
16
|
-
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
17
|
-
if (staticProps) _defineProperties(Constructor, staticProps);
|
|
18
|
-
return Constructor;
|
|
19
|
-
}
|
|
20
|
-
import React from 'react';
|
|
21
|
-
import { UsersList } from '../components/users-list.js';
|
|
22
|
-
import { UsersCreate } from '../components/users-create.js';
|
|
23
|
-
import { UsersDelete } from '../components/users-delete.js';
|
|
24
|
-
import { UsersKeysList } from '../components/users-keys-list.js';
|
|
25
|
-
import { UsersKeysAdd } from '../components/users-keys-add.js';
|
|
26
|
-
import { UsersKeysRemove } from '../components/users-keys-remove.js';
|
|
27
|
-
export var UsersCommand = /*#__PURE__*/ function() {
|
|
28
|
-
"use strict";
|
|
29
|
-
function UsersCommand() {
|
|
30
|
-
_class_call_check(this, UsersCommand);
|
|
31
|
-
}
|
|
32
|
-
_create_class(UsersCommand, [
|
|
33
|
-
{
|
|
34
|
-
key: "list",
|
|
35
|
-
value: function list() {
|
|
36
|
-
return React.createElement(UsersList);
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
key: "create",
|
|
41
|
-
value: function create(param) {
|
|
42
|
-
var name = param.name;
|
|
43
|
-
return React.createElement(UsersCreate, {
|
|
44
|
-
name: name
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
|
-
{
|
|
49
|
-
key: "delete",
|
|
50
|
-
value: function _delete(param) {
|
|
51
|
-
var name = param.name, force = param.force;
|
|
52
|
-
return React.createElement(UsersDelete, {
|
|
53
|
-
userName: name,
|
|
54
|
-
force: force
|
|
55
|
-
});
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
key: "listKeys",
|
|
60
|
-
value: function listKeys(param) {
|
|
61
|
-
var name = param.name;
|
|
62
|
-
return React.createElement(UsersKeysList, {
|
|
63
|
-
userName: name
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
key: "addKey",
|
|
69
|
-
value: function addKey(param) {
|
|
70
|
-
var name = param.name, pubkeyPath = param.pubkeyPath, paste = param.paste, label = param.label;
|
|
71
|
-
return React.createElement(UsersKeysAdd, {
|
|
72
|
-
userName: name,
|
|
73
|
-
pubkeyPath: pubkeyPath,
|
|
74
|
-
paste: paste,
|
|
75
|
-
label: label
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
key: "removeKey",
|
|
81
|
-
value: function removeKey(param) {
|
|
82
|
-
var name = param.name, fingerprint = param.fingerprint, force = param.force;
|
|
83
|
-
return React.createElement(UsersKeysRemove, {
|
|
84
|
-
userName: name,
|
|
85
|
-
fingerprint: fingerprint,
|
|
86
|
-
force: force
|
|
87
|
-
});
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
]);
|
|
91
|
-
return UsersCommand;
|
|
92
|
-
}();
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
function _array_like_to_array(arr, len) {
|
|
2
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
3
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
4
|
-
return arr2;
|
|
5
|
-
}
|
|
6
|
-
function _array_without_holes(arr) {
|
|
7
|
-
if (Array.isArray(arr)) return _array_like_to_array(arr);
|
|
8
|
-
}
|
|
9
|
-
function _iterable_to_array(iter) {
|
|
10
|
-
if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
|
|
11
|
-
}
|
|
12
|
-
function _non_iterable_spread() {
|
|
13
|
-
throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
14
|
-
}
|
|
15
|
-
function _to_consumable_array(arr) {
|
|
16
|
-
return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
|
|
17
|
-
}
|
|
18
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
19
|
-
if (!o) return;
|
|
20
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
21
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
22
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
23
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
24
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
25
|
-
}
|
|
26
|
-
import React from 'react';
|
|
27
|
-
import { Text, Box, useStdout, useInput } from 'ink';
|
|
28
|
-
export var AgentChatView = function(param) {
|
|
29
|
-
var label = param.label, agentStartEvent = param.agentStartEvent, rawResponseEvents = param.rawResponseEvents, scrollOffset = param.scrollOffset, onScrollChange = param.onScrollChange, _param_isActive = param.isActive, isActive = _param_isActive === void 0 ? true : _param_isActive;
|
|
30
|
-
var stdout = useStdout().stdout;
|
|
31
|
-
var terminalHeight = (stdout === null || stdout === void 0 ? void 0 : stdout.rows) || 24;
|
|
32
|
-
// Reserve lines for header, footer, margins
|
|
33
|
-
var maxLines = Math.max(5, terminalHeight - 6);
|
|
34
|
-
// Build content as array of lines
|
|
35
|
-
var lines = [];
|
|
36
|
-
// Prompt section
|
|
37
|
-
lines.push('Prompt:');
|
|
38
|
-
lines.push(JSON.stringify(agentStartEvent.prompt, null, 2));
|
|
39
|
-
lines.push('');
|
|
40
|
-
// System section (if present)
|
|
41
|
-
if (agentStartEvent.system) {
|
|
42
|
-
lines.push('System:');
|
|
43
|
-
lines.push(JSON.stringify(agentStartEvent.system, null, 2));
|
|
44
|
-
lines.push('');
|
|
45
|
-
}
|
|
46
|
-
// Messages section - each event now contains a single message
|
|
47
|
-
if (rawResponseEvents.length > 0) {
|
|
48
|
-
lines.push('Messages:');
|
|
49
|
-
lines.push('');
|
|
50
|
-
var currentIteration = 0;
|
|
51
|
-
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
52
|
-
try {
|
|
53
|
-
for(var _iterator = rawResponseEvents[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
54
|
-
var event = _step.value;
|
|
55
|
-
var _lines;
|
|
56
|
-
// Add iteration header when iteration changes
|
|
57
|
-
if (event.iteration !== currentIteration) {
|
|
58
|
-
currentIteration = event.iteration;
|
|
59
|
-
lines.push("--- Iteration ".concat(event.iteration, " ---"));
|
|
60
|
-
lines.push('');
|
|
61
|
-
}
|
|
62
|
-
// Each event contains a single message
|
|
63
|
-
var messageJson = JSON.stringify(event.message, null, 2);
|
|
64
|
-
(_lines = lines).push.apply(_lines, _to_consumable_array(messageJson.split('\n')));
|
|
65
|
-
lines.push('');
|
|
66
|
-
}
|
|
67
|
-
} catch (err) {
|
|
68
|
-
_didIteratorError = true;
|
|
69
|
-
_iteratorError = err;
|
|
70
|
-
} finally{
|
|
71
|
-
try {
|
|
72
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
73
|
-
_iterator.return();
|
|
74
|
-
}
|
|
75
|
-
} finally{
|
|
76
|
-
if (_didIteratorError) {
|
|
77
|
-
throw _iteratorError;
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
} else {
|
|
82
|
-
lines.push('No response messages yet.');
|
|
83
|
-
}
|
|
84
|
-
var totalLines = lines.length;
|
|
85
|
-
var maxScroll = Math.max(0, totalLines - maxLines);
|
|
86
|
-
// Page size keeps 2 lines of context
|
|
87
|
-
var pageSize = Math.max(1, maxLines - 2);
|
|
88
|
-
// Handle scrolling
|
|
89
|
-
useInput(function(input, key) {
|
|
90
|
-
if (!isActive) return;
|
|
91
|
-
if (key.upArrow || input === 'k') {
|
|
92
|
-
onScrollChange(Math.max(0, scrollOffset - 1));
|
|
93
|
-
} else if (key.downArrow || input === 'j') {
|
|
94
|
-
onScrollChange(Math.min(maxScroll, scrollOffset + 1));
|
|
95
|
-
} else if (input === ' ' && !key.shift) {
|
|
96
|
-
// Space = page down
|
|
97
|
-
onScrollChange(Math.min(maxScroll, scrollOffset + pageSize));
|
|
98
|
-
} else if (input === ' ' && key.shift) {
|
|
99
|
-
// Shift+Space = page up
|
|
100
|
-
onScrollChange(Math.max(0, scrollOffset - pageSize));
|
|
101
|
-
}
|
|
102
|
-
}, {
|
|
103
|
-
isActive: isActive
|
|
104
|
-
});
|
|
105
|
-
var visibleLines = lines.slice(scrollOffset, scrollOffset + maxLines);
|
|
106
|
-
return /*#__PURE__*/ React.createElement(Box, {
|
|
107
|
-
flexDirection: "column"
|
|
108
|
-
}, /*#__PURE__*/ React.createElement(Box, {
|
|
109
|
-
marginBottom: 1
|
|
110
|
-
}, /*#__PURE__*/ React.createElement(Text, {
|
|
111
|
-
bold: true,
|
|
112
|
-
color: "cyan"
|
|
113
|
-
}, 'Agent: "', label, '"')), /*#__PURE__*/ React.createElement(Box, {
|
|
114
|
-
flexDirection: "column",
|
|
115
|
-
marginLeft: 2
|
|
116
|
-
}, visibleLines.map(function(line, i) {
|
|
117
|
-
return /*#__PURE__*/ React.createElement(Text, {
|
|
118
|
-
key: scrollOffset + i
|
|
119
|
-
}, line);
|
|
120
|
-
})), totalLines > maxLines && /*#__PURE__*/ React.createElement(Box, {
|
|
121
|
-
marginTop: 1
|
|
122
|
-
}, /*#__PURE__*/ React.createElement(Text, {
|
|
123
|
-
dimColor: true
|
|
124
|
-
}, "Lines ", scrollOffset + 1, "-", Math.min(scrollOffset + maxLines, totalLines), " of ", totalLines)));
|
|
125
|
-
};
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
function _array_like_to_array(arr, len) {
|
|
2
|
-
if (len == null || len > arr.length) len = arr.length;
|
|
3
|
-
for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
|
|
4
|
-
return arr2;
|
|
5
|
-
}
|
|
6
|
-
function _array_with_holes(arr) {
|
|
7
|
-
if (Array.isArray(arr)) return arr;
|
|
8
|
-
}
|
|
9
|
-
function _iterable_to_array_limit(arr, i) {
|
|
10
|
-
var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
|
|
11
|
-
if (_i == null) return;
|
|
12
|
-
var _arr = [];
|
|
13
|
-
var _n = true;
|
|
14
|
-
var _d = false;
|
|
15
|
-
var _s, _e;
|
|
16
|
-
try {
|
|
17
|
-
for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
|
|
18
|
-
_arr.push(_s.value);
|
|
19
|
-
if (i && _arr.length === i) break;
|
|
20
|
-
}
|
|
21
|
-
} catch (err) {
|
|
22
|
-
_d = true;
|
|
23
|
-
_e = err;
|
|
24
|
-
} finally{
|
|
25
|
-
try {
|
|
26
|
-
if (!_n && _i["return"] != null) _i["return"]();
|
|
27
|
-
} finally{
|
|
28
|
-
if (_d) throw _e;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
return _arr;
|
|
32
|
-
}
|
|
33
|
-
function _non_iterable_rest() {
|
|
34
|
-
throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
35
|
-
}
|
|
36
|
-
function _sliced_to_array(arr, i) {
|
|
37
|
-
return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
|
|
38
|
-
}
|
|
39
|
-
function _unsupported_iterable_to_array(o, minLen) {
|
|
40
|
-
if (!o) return;
|
|
41
|
-
if (typeof o === "string") return _array_like_to_array(o, minLen);
|
|
42
|
-
var n = Object.prototype.toString.call(o).slice(8, -1);
|
|
43
|
-
if (n === "Object" && o.constructor) n = o.constructor.name;
|
|
44
|
-
if (n === "Map" || n === "Set") return Array.from(n);
|
|
45
|
-
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
46
|
-
}
|
|
47
|
-
import { BRAIN_EVENTS } from '@positronic/core';
|
|
48
|
-
/**
|
|
49
|
-
* Get display label for an agent.
|
|
50
|
-
* If stepTitle is 'main' (brain-level agent), use brainTitle instead.
|
|
51
|
-
*/ export function getAgentLabel(stepTitle, brainTitle) {
|
|
52
|
-
if (stepTitle === 'main' && brainTitle) {
|
|
53
|
-
return brainTitle;
|
|
54
|
-
}
|
|
55
|
-
return stepTitle;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Extract all unique agent loops from events.
|
|
59
|
-
* Groups by stepId to handle multiple agents.
|
|
60
|
-
*/ export function getAgentLoops(events, brainTitle) {
|
|
61
|
-
var agentMap = new Map();
|
|
62
|
-
var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
|
|
63
|
-
try {
|
|
64
|
-
for(var _iterator = events[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
|
|
65
|
-
var event = _step.value.event;
|
|
66
|
-
if (event.type === BRAIN_EVENTS.AGENT_START) {
|
|
67
|
-
var agentStart = event;
|
|
68
|
-
var existing = agentMap.get(agentStart.stepId);
|
|
69
|
-
if (!existing) {
|
|
70
|
-
agentMap.set(agentStart.stepId, {
|
|
71
|
-
startEvent: agentStart,
|
|
72
|
-
rawResponseEvents: []
|
|
73
|
-
});
|
|
74
|
-
}
|
|
75
|
-
} else if (event.type === BRAIN_EVENTS.AGENT_RAW_RESPONSE_MESSAGE) {
|
|
76
|
-
var rawResponse = event;
|
|
77
|
-
var existing1 = agentMap.get(rawResponse.stepId);
|
|
78
|
-
if (existing1) {
|
|
79
|
-
existing1.rawResponseEvents.push(rawResponse);
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
} catch (err) {
|
|
84
|
-
_didIteratorError = true;
|
|
85
|
-
_iteratorError = err;
|
|
86
|
-
} finally{
|
|
87
|
-
try {
|
|
88
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
89
|
-
_iterator.return();
|
|
90
|
-
}
|
|
91
|
-
} finally{
|
|
92
|
-
if (_didIteratorError) {
|
|
93
|
-
throw _iteratorError;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
return Array.from(agentMap.entries()).map(function(param) {
|
|
98
|
-
var _param = _sliced_to_array(param, 2), stepId = _param[0], _param_ = _param[1], startEvent = _param_.startEvent, rawResponseEvents = _param_.rawResponseEvents;
|
|
99
|
-
return {
|
|
100
|
-
stepId: stepId,
|
|
101
|
-
stepTitle: startEvent.stepTitle,
|
|
102
|
-
label: getAgentLabel(startEvent.stepTitle, brainTitle),
|
|
103
|
-
startEvent: startEvent,
|
|
104
|
-
rawResponseEvents: rawResponseEvents
|
|
105
|
-
};
|
|
106
|
-
});
|
|
107
|
-
}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import type { ArgumentsCamelCase } from 'yargs';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
import { ProjectConfigManager } from './project-config-manager.js';
|
|
4
|
-
interface LoginArgs {
|
|
5
|
-
path?: string;
|
|
6
|
-
project?: boolean;
|
|
7
|
-
}
|
|
8
|
-
interface LogoutArgs {
|
|
9
|
-
project?: boolean;
|
|
10
|
-
}
|
|
11
|
-
export declare class AuthCommand {
|
|
12
|
-
private configManager;
|
|
13
|
-
private projectRootPath?;
|
|
14
|
-
constructor(configManager?: ProjectConfigManager, projectRootPath?: string);
|
|
15
|
-
/**
|
|
16
|
-
* Handles the 'px login' command.
|
|
17
|
-
* Configure SSH key for authentication.
|
|
18
|
-
*/
|
|
19
|
-
login({ path, project }: ArgumentsCamelCase<LoginArgs>): React.ReactElement;
|
|
20
|
-
/**
|
|
21
|
-
* Handles the 'px logout' command.
|
|
22
|
-
* Clear SSH key configuration.
|
|
23
|
-
*/
|
|
24
|
-
logout({ project }: ArgumentsCamelCase<LogoutArgs>): React.ReactElement;
|
|
25
|
-
/**
|
|
26
|
-
* Handles the 'px whoami' command.
|
|
27
|
-
* Shows the current authenticated identity.
|
|
28
|
-
*/
|
|
29
|
-
whoami(): React.ReactElement;
|
|
30
|
-
}
|
|
31
|
-
export {};
|
|
32
|
-
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/commands/auth.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,UAAU,SAAS;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,eAAe,CAAC,CAAS;gBAErB,aAAa,CAAC,EAAE,oBAAoB,EAAE,eAAe,CAAC,EAAE,MAAM;IAK1E;;;OAGG;IACH,KAAK,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,kBAAkB,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,YAAY;IAS3E;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,EAAE,EAAE,kBAAkB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,YAAY;IAQvE;;;OAGG;IACH,MAAM,IAAI,KAAK,CAAC,YAAY;CAM7B"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import type { ArgumentsCamelCase } from 'yargs';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
interface BrainListArgs {
|
|
4
|
-
}
|
|
5
|
-
interface BrainHistoryArgs {
|
|
6
|
-
brain: string;
|
|
7
|
-
limit: number;
|
|
8
|
-
}
|
|
9
|
-
interface BrainShowArgs {
|
|
10
|
-
brain?: string;
|
|
11
|
-
runId?: string;
|
|
12
|
-
steps?: boolean;
|
|
13
|
-
}
|
|
14
|
-
interface BrainRerunArgs {
|
|
15
|
-
runId: string;
|
|
16
|
-
startsAt: number;
|
|
17
|
-
}
|
|
18
|
-
interface BrainRunArgs {
|
|
19
|
-
brain: string;
|
|
20
|
-
watch?: boolean;
|
|
21
|
-
options?: Record<string, string>;
|
|
22
|
-
initialState?: Record<string, unknown>;
|
|
23
|
-
}
|
|
24
|
-
interface BrainWatchArgs {
|
|
25
|
-
identifier: string;
|
|
26
|
-
events?: boolean;
|
|
27
|
-
}
|
|
28
|
-
interface BrainKillArgs {
|
|
29
|
-
runId: string;
|
|
30
|
-
force: boolean;
|
|
31
|
-
}
|
|
32
|
-
interface BrainTopArgs {
|
|
33
|
-
brain?: string;
|
|
34
|
-
}
|
|
35
|
-
export declare class BrainCommand {
|
|
36
|
-
list(argv: ArgumentsCamelCase<BrainListArgs>): React.ReactElement;
|
|
37
|
-
history({ brain, limit, }: ArgumentsCamelCase<BrainHistoryArgs>): React.ReactElement;
|
|
38
|
-
show({ brain, runId, steps, }: ArgumentsCamelCase<BrainShowArgs>): React.ReactElement;
|
|
39
|
-
rerun({ runId, startsAt, }: ArgumentsCamelCase<BrainRerunArgs>): React.ReactElement;
|
|
40
|
-
run({ brain, watch, options, initialState, }: ArgumentsCamelCase<BrainRunArgs>): React.ReactElement;
|
|
41
|
-
watch({ identifier, events, }: ArgumentsCamelCase<BrainWatchArgs>): React.ReactElement;
|
|
42
|
-
kill({ runId, force, }: ArgumentsCamelCase<BrainKillArgs>): React.ReactElement;
|
|
43
|
-
top({ brain }: ArgumentsCamelCase<BrainTopArgs>): React.ReactElement;
|
|
44
|
-
}
|
|
45
|
-
export {};
|
|
46
|
-
//# sourceMappingURL=brain.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"brain.d.ts","sourceRoot":"","sources":["../../../src/commands/brain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAa1B,UAAU,aAAa;CAAG;AAC1B,UAAU,gBAAgB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AACD,UAAU,aAAa;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AACD,UAAU,cAAc;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AACD,UAAU,YAAY;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AACD,UAAU,cAAc;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AACD,UAAU,aAAa;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,OAAO,CAAC;CAChB;AACD,UAAU,YAAY;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,YAAY;IACvB,IAAI,CAAC,IAAI,EAAE,kBAAkB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,YAAY;IAIjE,OAAO,CAAC,EACN,KAAK,EACL,KAAK,GACN,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,YAAY;IAW5D,IAAI,CAAC,EACH,KAAK,EACL,KAAK,EACL,KAAK,GACN,EAAE,kBAAkB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,YAAY;IAyBzD,KAAK,CAAC,EACJ,KAAK,EACL,QAAQ,GACT,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,YAAY;IAO1D,GAAG,CAAC,EACF,KAAK,EACL,KAAK,EACL,OAAO,EACP,YAAY,GACb,EAAE,kBAAkB,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,YAAY;IASxD,KAAK,CAAC,EACJ,UAAU,EACV,MAAM,GACP,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,YAAY;IAO1D,IAAI,CAAC,EACH,KAAK,EACL,KAAK,GACN,EAAE,kBAAkB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,YAAY;IAIzD,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,YAAY,CAAC,GAAG,KAAK,CAAC,YAAY;CAGrE"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { ArgumentsCamelCase } from 'yargs';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
interface PagesListArgs {
|
|
4
|
-
}
|
|
5
|
-
interface PageDeleteArgs {
|
|
6
|
-
slug: string;
|
|
7
|
-
force: boolean;
|
|
8
|
-
}
|
|
9
|
-
export declare class PagesCommand {
|
|
10
|
-
constructor();
|
|
11
|
-
list(_args: ArgumentsCamelCase<PagesListArgs>): React.ReactElement;
|
|
12
|
-
delete({ slug, force, }: ArgumentsCamelCase<PageDeleteArgs>): React.ReactElement;
|
|
13
|
-
}
|
|
14
|
-
export {};
|
|
15
|
-
//# sourceMappingURL=pages.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../../src/commands/pages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,aAAa;CAEtB;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,qBAAa,YAAY;;IAGvB,IAAI,CAAC,KAAK,EAAE,kBAAkB,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,YAAY;IAIlE,MAAM,CAAC,EACL,IAAI,EACJ,KAAK,GACN,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,YAAY;CAM3D"}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import type { ArgumentsCamelCase } from 'yargs';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
export type { Project, ProjectConfig } from './project-config-manager.js';
|
|
4
|
-
import { ProjectConfigManager } from './project-config-manager.js';
|
|
5
|
-
export { ProjectConfigManager };
|
|
6
|
-
interface AddProjectArgs {
|
|
7
|
-
name: string;
|
|
8
|
-
url: string;
|
|
9
|
-
}
|
|
10
|
-
interface SelectProjectArgs {
|
|
11
|
-
name?: string;
|
|
12
|
-
}
|
|
13
|
-
interface CreateProjectArgs {
|
|
14
|
-
name: string;
|
|
15
|
-
}
|
|
16
|
-
interface RemoveProjectArgs {
|
|
17
|
-
name: string;
|
|
18
|
-
}
|
|
19
|
-
export declare class ProjectCommand {
|
|
20
|
-
private projectConfig;
|
|
21
|
-
constructor();
|
|
22
|
-
/**
|
|
23
|
-
* Handles the 'positronic project add <name> --url <url>' command.
|
|
24
|
-
* Adds a project configuration to the global store.
|
|
25
|
-
*/
|
|
26
|
-
add({ name, url }: ArgumentsCamelCase<AddProjectArgs>): React.ReactElement;
|
|
27
|
-
/**
|
|
28
|
-
* Handles the 'positronic project list' command.
|
|
29
|
-
* Lists configured remote projects (Global Mode) or shows current local project path (Local Dev Mode).
|
|
30
|
-
*/
|
|
31
|
-
list(): React.ReactElement;
|
|
32
|
-
/**
|
|
33
|
-
* Handles the 'positronic project select [name]' command.
|
|
34
|
-
* Selects the active remote project for subsequent commands.
|
|
35
|
-
* Only available in Global Mode.
|
|
36
|
-
*/
|
|
37
|
-
select({ name }: ArgumentsCamelCase<SelectProjectArgs>): React.ReactElement;
|
|
38
|
-
/**
|
|
39
|
-
* Handles the 'positronic project show' command.
|
|
40
|
-
* Shows details of the active project (remote in Global Mode, local in Local Dev Mode).
|
|
41
|
-
*/
|
|
42
|
-
show(): React.ReactElement;
|
|
43
|
-
/**
|
|
44
|
-
* Handles the 'positronic project rm <name>' command.
|
|
45
|
-
* Removes a project configuration from the global store.
|
|
46
|
-
*/
|
|
47
|
-
remove({ name }: ArgumentsCamelCase<RemoveProjectArgs>): React.ReactElement;
|
|
48
|
-
/**
|
|
49
|
-
* Handles the 'positronic new <project-name>' command.
|
|
50
|
-
* Creates a new project directory structure and populates it with template files.
|
|
51
|
-
* Also sets up the .positronic server environment.
|
|
52
|
-
*/
|
|
53
|
-
create({ name: projectPathArg, }: ArgumentsCamelCase<CreateProjectArgs>): React.ReactElement;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=project.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../../src/commands/project.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAS1B,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAE1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAGhC,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAED,UAAU,iBAAiB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,aAAa,CAAuB;;IAO5C;;;OAGG;IACH,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAAG,KAAK,CAAC,YAAY;IAQ1E;;;OAGG;IACH,IAAI,IAAI,KAAK,CAAC,YAAY;IAM1B;;;;OAIG;IACH,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,YAAY;IAO3E;;;OAGG;IACH,IAAI,IAAI,KAAK,CAAC,YAAY;IAM1B;;;OAGG;IACH,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,YAAY;IAO3E;;;;OAIG;IACH,MAAM,CAAC,EACL,IAAI,EAAE,cAAc,GACrB,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAAC,YAAY;CAK9D"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React, { ReactElement } from 'react';
|
|
2
|
-
import type { PositronicDevServer } from '@positronic/spec';
|
|
3
|
-
export declare class ResourcesCommand {
|
|
4
|
-
private server?;
|
|
5
|
-
constructor(server?: PositronicDevServer | undefined);
|
|
6
|
-
list(): ReactElement;
|
|
7
|
-
sync(): ReactElement;
|
|
8
|
-
types(): ReactElement;
|
|
9
|
-
delete(resourcePath: string, force?: boolean): ReactElement;
|
|
10
|
-
clear(): Promise<React.FunctionComponentElement<{}>>;
|
|
11
|
-
upload(filePath: string, customKey?: string): ReactElement;
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=resources.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../src/commands/resources.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAW5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,qBAAa,gBAAgB;IACf,OAAO,CAAC,MAAM,CAAC;gBAAP,MAAM,CAAC,EAAE,mBAAmB,YAAA;IAEhD,IAAI,IAAI,YAAY;IAIpB,IAAI,IAAI,YAAY;IAyBpB,KAAK,IAAI,YAAY;IAiBrB,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,GAAE,OAAe,GAAG,YAAY;IAsB5D,KAAK;IAKX,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,YAAY;CAO3D"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { ArgumentsCamelCase } from 'yargs';
|
|
2
|
-
import React from 'react';
|
|
3
|
-
interface ScheduleCreateArgs {
|
|
4
|
-
brain: string;
|
|
5
|
-
cronExpression: string;
|
|
6
|
-
options?: Record<string, string>;
|
|
7
|
-
initialState?: Record<string, unknown>;
|
|
8
|
-
}
|
|
9
|
-
interface ScheduleListArgs {
|
|
10
|
-
brain?: string;
|
|
11
|
-
}
|
|
12
|
-
interface ScheduleDeleteArgs {
|
|
13
|
-
scheduleId: string;
|
|
14
|
-
force: boolean;
|
|
15
|
-
}
|
|
16
|
-
interface ScheduleRunsArgs {
|
|
17
|
-
scheduleId?: string;
|
|
18
|
-
limit: number;
|
|
19
|
-
status?: 'triggered' | 'failed' | 'complete';
|
|
20
|
-
}
|
|
21
|
-
interface ScheduleTimezoneArgs {
|
|
22
|
-
timezone?: string;
|
|
23
|
-
}
|
|
24
|
-
export declare class ScheduleCommand {
|
|
25
|
-
constructor();
|
|
26
|
-
create({ brain, cronExpression, options, initialState, }: ArgumentsCamelCase<ScheduleCreateArgs>): React.ReactElement;
|
|
27
|
-
list({ brain }: ArgumentsCamelCase<ScheduleListArgs>): React.ReactElement;
|
|
28
|
-
delete({ scheduleId, force, }: ArgumentsCamelCase<ScheduleDeleteArgs>): React.ReactElement;
|
|
29
|
-
runs({ scheduleId, limit, status, }: ArgumentsCamelCase<ScheduleRunsArgs>): React.ReactElement;
|
|
30
|
-
timezone({ timezone, }: ArgumentsCamelCase<ScheduleTimezoneArgs>): React.ReactElement;
|
|
31
|
-
}
|
|
32
|
-
export {};
|
|
33
|
-
//# sourceMappingURL=schedule.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schedule.d.ts","sourceRoot":"","sources":["../../../src/commands/schedule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,KAAK,MAAM,OAAO,CAAC;AAQ1B,UAAU,kBAAkB;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxC;AAED,UAAU,gBAAgB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,kBAAkB;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,UAAU,gBAAgB;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC;CAC9C;AAED,UAAU,oBAAoB;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,eAAe;;IAG1B,MAAM,CAAC,EACL,KAAK,EACL,cAAc,EACd,OAAO,EACP,YAAY,GACb,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,YAAY;IAa9D,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,YAAY;IAMzE,MAAM,CAAC,EACL,UAAU,EACV,KAAK,GACN,EAAE,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,KAAK,CAAC,YAAY;IAO9D,IAAI,CAAC,EACH,UAAU,EACV,KAAK,EACL,MAAM,GACP,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,GAAG,KAAK,CAAC,YAAY;IAQ5D,QAAQ,CAAC,EACP,QAAQ,GACT,EAAE,kBAAkB,CAAC,oBAAoB,CAAC,GAAG,KAAK,CAAC,YAAY;CAKjE"}
|