stelo 1.0.1
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/LICENSE +184 -0
- package/README.md +853 -0
- package/dist/accessibility.d.ts +227 -0
- package/dist/accessibility.d.ts.map +1 -0
- package/dist/accessibility.js +602 -0
- package/dist/accessibility.js.map +1 -0
- package/dist/agent.d.ts +870 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +1107 -0
- package/dist/agent.js.map +1 -0
- package/dist/audio-stream.d.ts +114 -0
- package/dist/audio-stream.d.ts.map +1 -0
- package/dist/audio-stream.js +167 -0
- package/dist/audio-stream.js.map +1 -0
- package/dist/clipboard.d.ts +99 -0
- package/dist/clipboard.d.ts.map +1 -0
- package/dist/clipboard.js +352 -0
- package/dist/clipboard.js.map +1 -0
- package/dist/config.d.ts +183 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +477 -0
- package/dist/config.js.map +1 -0
- package/dist/context.d.ts +213 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +387 -0
- package/dist/context.js.map +1 -0
- package/dist/cortex.d.ts +548 -0
- package/dist/cortex.d.ts.map +1 -0
- package/dist/cortex.js +1479 -0
- package/dist/cortex.js.map +1 -0
- package/dist/errors.d.ts +133 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +278 -0
- package/dist/errors.js.map +1 -0
- package/dist/events.d.ts +227 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +429 -0
- package/dist/events.js.map +1 -0
- package/dist/executor.d.ts +212 -0
- package/dist/executor.d.ts.map +1 -0
- package/dist/executor.js +545 -0
- package/dist/executor.js.map +1 -0
- package/dist/index.d.ts +69 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +167 -0
- package/dist/index.js.map +1 -0
- package/dist/integration.d.ts +159 -0
- package/dist/integration.d.ts.map +1 -0
- package/dist/integration.js +533 -0
- package/dist/integration.js.map +1 -0
- package/dist/keyboard.d.ts +276 -0
- package/dist/keyboard.d.ts.map +1 -0
- package/dist/keyboard.js +404 -0
- package/dist/keyboard.js.map +1 -0
- package/dist/logger.d.ts +198 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +516 -0
- package/dist/logger.js.map +1 -0
- package/dist/middleware.d.ts +183 -0
- package/dist/middleware.d.ts.map +1 -0
- package/dist/middleware.js +493 -0
- package/dist/middleware.js.map +1 -0
- package/dist/monitor.d.ts +136 -0
- package/dist/monitor.d.ts.map +1 -0
- package/dist/monitor.js +341 -0
- package/dist/monitor.js.map +1 -0
- package/dist/mouse.d.ts +290 -0
- package/dist/mouse.d.ts.map +1 -0
- package/dist/mouse.js +466 -0
- package/dist/mouse.js.map +1 -0
- package/dist/plugin.d.ts +157 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +409 -0
- package/dist/plugin.js.map +1 -0
- package/dist/process.d.ts +106 -0
- package/dist/process.d.ts.map +1 -0
- package/dist/process.js +326 -0
- package/dist/process.js.map +1 -0
- package/dist/recorder.d.ts +100 -0
- package/dist/recorder.d.ts.map +1 -0
- package/dist/recorder.js +258 -0
- package/dist/recorder.js.map +1 -0
- package/dist/safety.d.ts +59 -0
- package/dist/safety.d.ts.map +1 -0
- package/dist/safety.js +98 -0
- package/dist/safety.js.map +1 -0
- package/dist/scheduler.d.ts +152 -0
- package/dist/scheduler.d.ts.map +1 -0
- package/dist/scheduler.js +615 -0
- package/dist/scheduler.js.map +1 -0
- package/dist/screen.d.ts +96 -0
- package/dist/screen.d.ts.map +1 -0
- package/dist/screen.js +154 -0
- package/dist/screen.js.map +1 -0
- package/dist/session.d.ts +209 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +479 -0
- package/dist/session.js.map +1 -0
- package/dist/stream.d.ts +168 -0
- package/dist/stream.d.ts.map +1 -0
- package/dist/stream.js +298 -0
- package/dist/stream.js.map +1 -0
- package/dist/telemetry.d.ts +223 -0
- package/dist/telemetry.d.ts.map +1 -0
- package/dist/telemetry.js +433 -0
- package/dist/telemetry.js.map +1 -0
- package/dist/types.d.ts +165 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +8 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/bezier.d.ts +51 -0
- package/dist/utils/bezier.d.ts.map +1 -0
- package/dist/utils/bezier.js +117 -0
- package/dist/utils/bezier.js.map +1 -0
- package/dist/utils/helpers.d.ts +90 -0
- package/dist/utils/helpers.d.ts.map +1 -0
- package/dist/utils/helpers.js +143 -0
- package/dist/utils/helpers.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +18 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/validation.d.ts +254 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +478 -0
- package/dist/validation.js.map +1 -0
- package/dist/vision.d.ts +719 -0
- package/dist/vision.d.ts.map +1 -0
- package/dist/vision.js +1197 -0
- package/dist/vision.js.map +1 -0
- package/dist/window.d.ts +80 -0
- package/dist/window.d.ts.map +1 -0
- package/dist/window.js +170 -0
- package/dist/window.js.map +1 -0
- package/dist/workflow.d.ts +224 -0
- package/dist/workflow.d.ts.map +1 -0
- package/dist/workflow.js +578 -0
- package/dist/workflow.js.map +1 -0
- package/index.d.ts +840 -0
- package/index.js +495 -0
- package/package.json +91 -0
|
@@ -0,0 +1,212 @@
|
|
|
1
|
+
export type TaskPriority = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10;
|
|
2
|
+
export type TaskStatus = 'pending' | 'queued' | 'running' | 'completed' | 'failed' | 'cancelled' | 'timedout' | 'retrying';
|
|
3
|
+
export interface TaskOptions {
|
|
4
|
+
/** Task priority (0 = lowest, 10 = highest). Default: 5 */
|
|
5
|
+
priority?: TaskPriority;
|
|
6
|
+
/** Timeout in ms. Default: 30000 */
|
|
7
|
+
timeoutMs?: number;
|
|
8
|
+
/** Number of retry attempts on failure. Default: 0 */
|
|
9
|
+
retryAttempts?: number;
|
|
10
|
+
/** Delay between retries in ms. Default: 1000 */
|
|
11
|
+
retryDelayMs?: number;
|
|
12
|
+
/** Exponential backoff multiplier for retries. Default: 2.0 */
|
|
13
|
+
retryBackoff?: number;
|
|
14
|
+
/** Tags for categorization/filtering */
|
|
15
|
+
tags?: string[];
|
|
16
|
+
/** Group ID — tasks in same group execute sequentially */
|
|
17
|
+
group?: string;
|
|
18
|
+
/** Task IDs this task depends on (must complete first) */
|
|
19
|
+
dependsOn?: string[];
|
|
20
|
+
/** Arbitrary metadata */
|
|
21
|
+
metadata?: Record<string, unknown>;
|
|
22
|
+
/** Cancel signal */
|
|
23
|
+
signal?: AbortSignal;
|
|
24
|
+
}
|
|
25
|
+
export interface Task<T = unknown> {
|
|
26
|
+
/** Unique task ID */
|
|
27
|
+
id: string;
|
|
28
|
+
/** Human-readable task name */
|
|
29
|
+
name: string;
|
|
30
|
+
/** Current status */
|
|
31
|
+
status: TaskStatus;
|
|
32
|
+
/** Task priority */
|
|
33
|
+
priority: TaskPriority;
|
|
34
|
+
/** The function to execute */
|
|
35
|
+
execute: () => T | Promise<T>;
|
|
36
|
+
/** Task result (set after completion) */
|
|
37
|
+
result?: T;
|
|
38
|
+
/** Error (set after failure) */
|
|
39
|
+
error?: Error;
|
|
40
|
+
/** When the task was created */
|
|
41
|
+
createdAt: string;
|
|
42
|
+
/** When execution started */
|
|
43
|
+
startedAt?: string;
|
|
44
|
+
/** When execution completed/failed */
|
|
45
|
+
completedAt?: string;
|
|
46
|
+
/** Duration in ms */
|
|
47
|
+
durationMs?: number;
|
|
48
|
+
/** Retry attempt number */
|
|
49
|
+
attempt: number;
|
|
50
|
+
/** Max retry attempts */
|
|
51
|
+
maxAttempts: number;
|
|
52
|
+
/** Retry delay in ms */
|
|
53
|
+
retryDelayMs: number;
|
|
54
|
+
/** Retry backoff multiplier */
|
|
55
|
+
retryBackoff: number;
|
|
56
|
+
/** Timeout in ms */
|
|
57
|
+
timeoutMs: number;
|
|
58
|
+
/** Tags */
|
|
59
|
+
tags: string[];
|
|
60
|
+
/** Group */
|
|
61
|
+
group?: string;
|
|
62
|
+
/** Dependencies */
|
|
63
|
+
dependsOn: string[];
|
|
64
|
+
/** Metadata */
|
|
65
|
+
metadata: Record<string, unknown>;
|
|
66
|
+
/** Promise that resolves when task completes */
|
|
67
|
+
promise: Promise<T>;
|
|
68
|
+
/** Internal resolve/reject */
|
|
69
|
+
_resolve: (value: T) => void;
|
|
70
|
+
_reject: (error: Error) => void;
|
|
71
|
+
/** Abort signal */
|
|
72
|
+
signal?: AbortSignal;
|
|
73
|
+
/** Timeout handle */
|
|
74
|
+
_timeoutHandle?: ReturnType<typeof setTimeout>;
|
|
75
|
+
}
|
|
76
|
+
export interface ExecutorOptions {
|
|
77
|
+
/** Max concurrent tasks. Default: 1 */
|
|
78
|
+
maxConcurrency?: number;
|
|
79
|
+
/** Default task timeout in ms. Default: 30000 */
|
|
80
|
+
defaultTimeoutMs?: number;
|
|
81
|
+
/** Default priority for tasks. Default: 5 */
|
|
82
|
+
defaultPriority?: TaskPriority;
|
|
83
|
+
/** Max queue size (0 = unlimited). Default: 10000 */
|
|
84
|
+
maxQueueSize?: number;
|
|
85
|
+
/** Default retry attempts. Default: 0 */
|
|
86
|
+
defaultRetryAttempts?: number;
|
|
87
|
+
/** Default retry delay. Default: 1000 */
|
|
88
|
+
defaultRetryDelayMs?: number;
|
|
89
|
+
/** Process tasks in FIFO order within same priority? Default: true */
|
|
90
|
+
fifoWithinPriority?: boolean;
|
|
91
|
+
/** Pause processing on first failure? Default: false */
|
|
92
|
+
pauseOnFailure?: boolean;
|
|
93
|
+
/** Enable task execution logging? Default: true */
|
|
94
|
+
logging?: boolean;
|
|
95
|
+
}
|
|
96
|
+
export interface ExecutorStats {
|
|
97
|
+
/** Total tasks submitted */
|
|
98
|
+
totalSubmitted: number;
|
|
99
|
+
/** Tasks currently in queue */
|
|
100
|
+
queueSize: number;
|
|
101
|
+
/** Tasks currently running */
|
|
102
|
+
runningCount: number;
|
|
103
|
+
/** Tasks completed successfully */
|
|
104
|
+
completedCount: number;
|
|
105
|
+
/** Tasks that failed */
|
|
106
|
+
failedCount: number;
|
|
107
|
+
/** Tasks that were cancelled */
|
|
108
|
+
cancelledCount: number;
|
|
109
|
+
/** Tasks that timed out */
|
|
110
|
+
timedOutCount: number;
|
|
111
|
+
/** Average task duration (ms) */
|
|
112
|
+
avgDurationMs: number;
|
|
113
|
+
/** Is the executor running? */
|
|
114
|
+
isRunning: boolean;
|
|
115
|
+
/** Is the executor paused? */
|
|
116
|
+
isPaused: boolean;
|
|
117
|
+
}
|
|
118
|
+
export declare class Executor {
|
|
119
|
+
private _queue;
|
|
120
|
+
private _running;
|
|
121
|
+
private _completed;
|
|
122
|
+
private _options;
|
|
123
|
+
private _isRunning;
|
|
124
|
+
private _isPaused;
|
|
125
|
+
private _stats;
|
|
126
|
+
private _processing;
|
|
127
|
+
private _log;
|
|
128
|
+
private _groupLocks;
|
|
129
|
+
constructor(options?: ExecutorOptions);
|
|
130
|
+
/**
|
|
131
|
+
* Submit a task to the executor.
|
|
132
|
+
* Returns a promise that resolves with the task result.
|
|
133
|
+
*
|
|
134
|
+
* @example
|
|
135
|
+
* ```ts
|
|
136
|
+
* const result = await executor.submit('moveToButton', () => {
|
|
137
|
+
* mouse.moveSmoothly(500, 300);
|
|
138
|
+
* }, { priority: 8, timeoutMs: 5000 });
|
|
139
|
+
* ```
|
|
140
|
+
*/
|
|
141
|
+
submit<T>(name: string, execute: () => T | Promise<T>, options?: TaskOptions): Promise<T>;
|
|
142
|
+
/**
|
|
143
|
+
* Submit multiple tasks at once. Returns array of promises.
|
|
144
|
+
*/
|
|
145
|
+
submitBatch<T>(tasks: {
|
|
146
|
+
name: string;
|
|
147
|
+
execute: () => T | Promise<T>;
|
|
148
|
+
options?: TaskOptions;
|
|
149
|
+
}[]): Promise<T>[];
|
|
150
|
+
/**
|
|
151
|
+
* Submit a task and wait for it to complete, returning the task metadata.
|
|
152
|
+
*/
|
|
153
|
+
submitAndWait<T>(name: string, execute: () => T | Promise<T>, options?: TaskOptions): Promise<{
|
|
154
|
+
result: T;
|
|
155
|
+
durationMs: number;
|
|
156
|
+
taskId: string;
|
|
157
|
+
}>;
|
|
158
|
+
/** Pause task processing (running tasks continue, no new ones start) */
|
|
159
|
+
pause(): void;
|
|
160
|
+
/** Resume task processing */
|
|
161
|
+
resume(): void;
|
|
162
|
+
/** Stop the executor. Optionally cancel all pending tasks. */
|
|
163
|
+
stop(cancelPending?: boolean): void;
|
|
164
|
+
/** Start the executor (if previously stopped) */
|
|
165
|
+
start(): void;
|
|
166
|
+
/** Cancel a specific task by ID */
|
|
167
|
+
cancel(taskId: string): boolean;
|
|
168
|
+
/** Cancel all tasks matching a predicate */
|
|
169
|
+
cancelWhere(predicate: (task: Task) => boolean): number;
|
|
170
|
+
/** Cancel all tasks in a group */
|
|
171
|
+
cancelGroup(group: string): number;
|
|
172
|
+
/** Cancel all tasks with a specific tag */
|
|
173
|
+
cancelByTag(tag: string): number;
|
|
174
|
+
/** Drain the queue — wait for all pending + running tasks to complete */
|
|
175
|
+
drain(): Promise<void>;
|
|
176
|
+
/** Clear the queue (cancel all pending, let running finish) */
|
|
177
|
+
clear(): number;
|
|
178
|
+
/** Get executor statistics */
|
|
179
|
+
getStats(): ExecutorStats;
|
|
180
|
+
/** Get all queued tasks */
|
|
181
|
+
getQueuedTasks(): Task[];
|
|
182
|
+
/** Get all currently running tasks */
|
|
183
|
+
getRunningTasks(): Task[];
|
|
184
|
+
/** Get a completed task by ID */
|
|
185
|
+
getCompletedTask(taskId: string): Task | undefined;
|
|
186
|
+
/** Check if a task exists (queued, running, or completed) */
|
|
187
|
+
hasTask(taskId: string): boolean;
|
|
188
|
+
private _processQueue;
|
|
189
|
+
private _executeTask;
|
|
190
|
+
private _emitTaskEvent;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Get (or create) the default executor singleton.
|
|
194
|
+
*/
|
|
195
|
+
export declare function getDefaultExecutor(options?: ExecutorOptions): Executor;
|
|
196
|
+
/**
|
|
197
|
+
* Create a new executor with custom options.
|
|
198
|
+
*/
|
|
199
|
+
export declare function createExecutor(options?: ExecutorOptions): Executor;
|
|
200
|
+
/**
|
|
201
|
+
* Convenience: submit a task to the default executor.
|
|
202
|
+
*/
|
|
203
|
+
export declare function enqueue<T>(name: string, execute: () => T | Promise<T>, options?: TaskOptions): Promise<T>;
|
|
204
|
+
/**
|
|
205
|
+
* Convenience: submit a high-priority task.
|
|
206
|
+
*/
|
|
207
|
+
export declare function urgent<T>(name: string, execute: () => T | Promise<T>, options?: Omit<TaskOptions, 'priority'>): Promise<T>;
|
|
208
|
+
/**
|
|
209
|
+
* Convenience: submit a background (low-priority) task.
|
|
210
|
+
*/
|
|
211
|
+
export declare function background<T>(name: string, execute: () => T | Promise<T>, options?: Omit<TaskOptions, 'priority'>): Promise<T>;
|
|
212
|
+
//# sourceMappingURL=executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../ts/executor.ts"],"names":[],"mappings":"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"}
|