@ssww.one/l4cli 0.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.
@@ -0,0 +1,7 @@
1
+ export declare class ExitLoop {
2
+ }
3
+ export declare class ContinueLoop {
4
+ }
5
+ export declare class ExitProgram {
6
+ }
7
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../errors.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAQ;CAAG;AACxB,qBAAa,YAAY;CAAG;AAC5B,qBAAa,WAAW;CAAG"}
package/dist/errors.js ADDED
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExitProgram = exports.ContinueLoop = exports.ExitLoop = void 0;
4
+ class ExitLoop {
5
+ }
6
+ exports.ExitLoop = ExitLoop;
7
+ class ContinueLoop {
8
+ }
9
+ exports.ContinueLoop = ContinueLoop;
10
+ class ExitProgram {
11
+ }
12
+ exports.ExitProgram = ExitProgram;
13
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../errors.ts"],"names":[],"mappings":";;;AAAA,MAAa,QAAQ;CAAG;AAAxB,4BAAwB;AACxB,MAAa,YAAY;CAAG;AAA5B,oCAA4B;AAC5B,MAAa,WAAW;CAAG;AAA3B,kCAA2B"}
package/dist/exec.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=exec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../exec.ts"],"names":[],"mappings":""}
package/dist/exec.js ADDED
@@ -0,0 +1,29 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ const dotenv_1 = __importDefault(require("dotenv"));
8
+ dotenv_1.default.config({ quiet: true, debug: false });
9
+ const path_1 = __importDefault(require("path"));
10
+ const l4_1 = require("@ssww.one/l4");
11
+ const executor_1 = require("./executor");
12
+ const framework_1 = require("@ssww.one/framework");
13
+ const node_fs_1 = require("node:fs");
14
+ const file_input_path = process.argv[2];
15
+ if (!file_input_path) {
16
+ console.error("Please provide .l4 file input");
17
+ process.exit(0);
18
+ }
19
+ const abs_path = path_1.default.resolve(file_input_path);
20
+ const source = (0, node_fs_1.readFileSync)(abs_path, 'utf-8');
21
+ const relative_dir = path_1.default.dirname(abs_path);
22
+ (0, l4_1.setLocale)(process.env.LOCALE || 'id');
23
+ const llm = new framework_1.OpenAILLM({
24
+ base_url: process.env.OPENAI_BASEURL || '',
25
+ apiKey: process.env.OPENAI_APIKEY || '',
26
+ model: process.env.OPENAI_MODEL || '',
27
+ });
28
+ (0, executor_1.runProgram)({ source, llm, relative_dir }).then(s => console.log(`Output: ${s}`)).catch(console.error);
29
+ //# sourceMappingURL=exec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../exec.ts"],"names":[],"mappings":";;;;;;AAEA,oDAA4B;AAC5B,gBAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7C,gDAAwB;AACxB,qCAAyC;AACzC,yCAAwC;AACxC,mDAAgD;AAChD,qCAAuC;AAEvC,MAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACxC,IAAI,CAAC,eAAe,EAAE,CAAC;IACrB,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC/C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,QAAQ,GAAG,cAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;AAC/C,MAAM,MAAM,GAAG,IAAA,sBAAY,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAE/C,MAAM,YAAY,GAAG,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAE5C,IAAA,cAAS,EAAC,OAAO,CAAC,GAAG,CAAC,MAAuB,IAAI,IAAI,CAAC,CAAC;AACvD,MAAM,GAAG,GAAG,IAAI,qBAAS,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE;IAC1C,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE;IACvC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE;CACtC,CAAC,CAAC;AACH,IAAA,qBAAU,EAAC,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { GenericLLM } from "@ssww.one/framework";
2
+ import { ProgramNode, StatementNode } from "@ssww.one/l4";
3
+ export interface RunProgramParam {
4
+ source: string;
5
+ llm: GenericLLM;
6
+ customListener?: (context: string) => Promise<string>;
7
+ level?: number;
8
+ relative_dir: string;
9
+ }
10
+ export declare function runProgram(param: RunProgramParam): Promise<string>;
11
+ export interface ExecuteParam {
12
+ program: ProgramNode;
13
+ llm: GenericLLM;
14
+ customListener?: (context: string) => Promise<string>;
15
+ level?: number;
16
+ relative_dir: string;
17
+ }
18
+ export declare function execute(param: ExecuteParam): Promise<string>;
19
+ export interface ExecuteNodesParam {
20
+ nodes: StatementNode[];
21
+ old_context: string;
22
+ llm: GenericLLM;
23
+ customListener?: (context: string) => Promise<string>;
24
+ level?: number;
25
+ relative_dir: string;
26
+ }
27
+ export declare function executeNodes(param: ExecuteNodesParam): Promise<string>;
28
+ export interface ExecuteNodeParam {
29
+ node: StatementNode;
30
+ old_context: string;
31
+ llm: GenericLLM;
32
+ customListener?: (context: string) => Promise<string>;
33
+ level?: number;
34
+ relative_dir: string;
35
+ }
36
+ export declare function executeNode(param: ExecuteNodeParam): Promise<string>;
37
+ export declare function replaceContext(text: string, old_context: string): string;
38
+ //# sourceMappingURL=executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../executor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAS,WAAW,EAAE,aAAa,EAAY,MAAM,cAAc,CAAC;AAY3E,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,UAAU,CAAA;IACf,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CA2BlE;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,WAAW,CAAA;IACpB,GAAG,EAAE,UAAU,CAAA;IACf,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,OAAO,CAAC,KAAK,EAAE,YAAY,mBAsBhD;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,aAAa,EAAE,CAAA;IACtB,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,UAAU,CAAA;IACf,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACrD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAc5E;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,UAAU,CAAA;IACf,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAA;IACrD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CA8L1E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,UAM/D"}
@@ -0,0 +1,355 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.runProgram = runProgram;
7
+ exports.execute = execute;
8
+ exports.executeNodes = executeNodes;
9
+ exports.executeNode = executeNode;
10
+ exports.replaceContext = replaceContext;
11
+ const l4_1 = require("@ssww.one/l4");
12
+ const enquirer_1 = require("enquirer");
13
+ const zod_1 = __importDefault(require("zod"));
14
+ const fs_1 = __importDefault(require("fs"));
15
+ const errors_1 = require("./errors");
16
+ const axios_1 = __importDefault(require("axios"));
17
+ const axios_2 = require("axios");
18
+ const path_1 = __importDefault(require("path"));
19
+ let global_context = {};
20
+ let macro_urls = {};
21
+ function runProgram(param) {
22
+ return new Promise(async (resolve, reject) => {
23
+ const tokens = (0, l4_1.tokenize)(param.source);
24
+ if (tokens.errors.length > 0) {
25
+ reject(tokens.errors);
26
+ return;
27
+ }
28
+ else {
29
+ const parse_result = (0, l4_1.parse)(tokens.tokens);
30
+ if (parse_result.errors.length > 0) {
31
+ reject(parse_result.errors);
32
+ return;
33
+ }
34
+ else {
35
+ const program = parse_result.ast;
36
+ try {
37
+ resolve(await execute({
38
+ program,
39
+ llm: param.llm,
40
+ customListener: param.customListener,
41
+ level: param.level,
42
+ relative_dir: param.relative_dir
43
+ }));
44
+ }
45
+ catch (err) {
46
+ reject(err);
47
+ }
48
+ }
49
+ }
50
+ });
51
+ }
52
+ async function execute(param) {
53
+ printOpeningBox(param.program.title?.value ?? '<untitled>', param.level);
54
+ for (const macro of param.program.defines) {
55
+ macro_urls[macro.name] = macro.url;
56
+ }
57
+ try {
58
+ return await executeNodes({
59
+ nodes: param.program.body,
60
+ old_context: '',
61
+ llm: param.llm,
62
+ customListener: param.customListener,
63
+ level: param.level,
64
+ relative_dir: param.relative_dir
65
+ });
66
+ }
67
+ catch (err) {
68
+ if (err instanceof errors_1.ExitProgram) {
69
+ return 'Exit 0';
70
+ }
71
+ throw err;
72
+ }
73
+ finally {
74
+ printClosingBox(param.program.title?.value ?? '<untitled>', param.level);
75
+ }
76
+ }
77
+ async function executeNodes(param) {
78
+ let context = param.old_context;
79
+ for (let i = 0; i < param.nodes.length; i++) {
80
+ const node = param.nodes[i];
81
+ context = await executeNode({
82
+ node: node,
83
+ old_context: context,
84
+ llm: param.llm,
85
+ customListener: param.customListener,
86
+ level: param.level,
87
+ relative_dir: param.relative_dir
88
+ });
89
+ }
90
+ return context;
91
+ }
92
+ async function executeNode(param) {
93
+ param.llm.cleanUp();
94
+ let output = '';
95
+ let clean_loading;
96
+ switch (param.node.type) {
97
+ case "Read":
98
+ if (!param.node.path) {
99
+ throw new Error(`Path ${param.node.path} doesnt exist`);
100
+ }
101
+ const abs_r1_path = path_1.default.resolve(param.relative_dir, param.node.path);
102
+ if (!fs_1.default.existsSync(abs_r1_path)) {
103
+ throw new Error(`Path ${abs_r1_path} doesnt exist`);
104
+ }
105
+ output = await fs_1.default.promises.readFile(abs_r1_path, 'utf-8');
106
+ if (param.node.debug)
107
+ printDebug(`File content: ${output}`, param.level);
108
+ break;
109
+ case "Write":
110
+ if (!param.node.path) {
111
+ throw new Error(`Path is empty`);
112
+ }
113
+ const abs_w1_path = path_1.default.resolve(param.relative_dir, param.node.path);
114
+ await fs_1.default.promises.writeFile(abs_w1_path, replaceContext(param.node.content || '', param.old_context));
115
+ output = `Write file ${param.node.path} success`;
116
+ break;
117
+ case "Say":
118
+ output = replaceContext(param.node.argument || '', param.old_context);
119
+ printLog(output, param.level);
120
+ break;
121
+ case "SayThink":
122
+ const prompt1 = [
123
+ 'Context',
124
+ param.old_context,
125
+ '',
126
+ 'User Request',
127
+ replaceContext(param.node.argument || '', param.old_context)
128
+ ].join('\n');
129
+ if (param.node.debug)
130
+ printDebug(`Prompt: ${prompt1}`, param.level);
131
+ clean_loading = printLoading('Asking LLM...', param.level);
132
+ output = (await param.llm.askLLM(prompt1, zod_1.default.object({ answer: zod_1.default.string() }))).answer;
133
+ clean_loading();
134
+ printLog(output, param.level);
135
+ break;
136
+ case "Listen":
137
+ if (param.customListener) {
138
+ output = await param.customListener(param.old_context);
139
+ }
140
+ else {
141
+ const answers = await (0, enquirer_1.prompt)([{
142
+ type: "input",
143
+ name: ' input',
144
+ message: '',
145
+ prefix: '',
146
+ }]);
147
+ output = answers.prompt;
148
+ }
149
+ break;
150
+ case "Think":
151
+ const prompt2 = [
152
+ 'Context',
153
+ param.old_context,
154
+ '',
155
+ 'User Request',
156
+ replaceContext(param.node.argument || '', param.old_context)
157
+ ].join('\n');
158
+ if (param.node.debug)
159
+ printDebug(`Prompt: ${prompt2}`, param.level);
160
+ clean_loading = printLoading('Asking LLM...', param.level);
161
+ output = (await param.llm.askLLM(prompt2, zod_1.default.object({ answer: zod_1.default.string() }))).answer;
162
+ clean_loading();
163
+ break;
164
+ case "Call":
165
+ try {
166
+ const call_url = macro_urls[param.node.macroName] || '';
167
+ if (param.node.debug)
168
+ printDebug(`HTTP URL: ${call_url}`, param.level);
169
+ const params = new URLSearchParams(replaceContext(param.node.argument || '', param.old_context));
170
+ if (param.node.debug)
171
+ printDebug(`HTTP Params: ${params}`, param.level);
172
+ clean_loading = printLoading('Fetching http request...', param.level);
173
+ const response1 = await axios_1.default.get(call_url, { params });
174
+ clean_loading();
175
+ output = JSON.stringify(response1.data);
176
+ if (param.node.debug)
177
+ printDebug(`HTTP Response: ${output}`, param.level);
178
+ }
179
+ catch (err) {
180
+ output = err instanceof axios_2.AxiosError ? JSON.stringify(err.response?.data) : err.message || '';
181
+ }
182
+ break;
183
+ case "Ask":
184
+ const agent_name = param.node.agentName;
185
+ const agent_path = macro_urls[agent_name];
186
+ if (agent_path?.startsWith('http')) {
187
+ throw new Error(`This program is currently not available for http agent`);
188
+ }
189
+ if (!agent_path) {
190
+ throw new Error(`Path ${agent_path} doesnt exist`);
191
+ }
192
+ const abs_a1_path = path_1.default.resolve(param.relative_dir, agent_path);
193
+ if (!fs_1.default.existsSync(abs_a1_path)) {
194
+ throw new Error(`Path ${abs_a1_path} doesnt exist`);
195
+ }
196
+ const agent_code = await fs_1.default.promises.readFile(abs_a1_path, 'utf-8');
197
+ const agent_instruction = param.node.argument;
198
+ const sub_agent_level = (param.level || 0) + 1;
199
+ output = await runProgram({
200
+ source: agent_code,
201
+ llm: param.llm.clone(),
202
+ async customListener(agent_context) {
203
+ const prompt_context = [
204
+ `Your objective: ${agent_instruction}`,
205
+ `${agent_name} gives you context:`,
206
+ agent_context || '<no context>',
207
+ '',
208
+ '---',
209
+ `Answer ${agent_name} request/statement or ask the agent to achieve your objective!`
210
+ ].join('\n');
211
+ if (param.node.debug)
212
+ printDebug(`Agent Prompt: ${prompt_context}`, sub_agent_level);
213
+ clean_loading = printLoading('Asking LLM...', sub_agent_level);
214
+ const prompt_output = (await param.llm.askLLM(prompt_context, zod_1.default.object({ answer: zod_1.default.string() }))).answer;
215
+ clean_loading();
216
+ printLog(`>> ${prompt_output}`, sub_agent_level);
217
+ return prompt_output;
218
+ },
219
+ level: sub_agent_level,
220
+ relative_dir: param.relative_dir
221
+ });
222
+ break;
223
+ case "If":
224
+ const prompt3 = [
225
+ 'Context',
226
+ param.old_context,
227
+ '',
228
+ 'Say answer = true if this statement true based on context above:',
229
+ replaceContext(param.node.condition || '', param.old_context)
230
+ ].join('\n');
231
+ if (param.node.debug)
232
+ printDebug(`Prompt: ${prompt3}`, param.level);
233
+ clean_loading = printLoading('Asking LLM...', param.level);
234
+ const is_satisfied = (await param.llm.askLLM(prompt3, zod_1.default.object({ answer: zod_1.default.boolean() }))).answer;
235
+ clean_loading();
236
+ if (param.node.debug)
237
+ printDebug(`Conditional state: ${is_satisfied}`, param.level);
238
+ if (is_satisfied) {
239
+ output = await executeNodes({
240
+ nodes: param.node.body,
241
+ old_context: param.old_context,
242
+ llm: param.llm,
243
+ customListener: param.customListener,
244
+ level: param.level,
245
+ relative_dir: param.relative_dir
246
+ });
247
+ }
248
+ else {
249
+ output = await executeNodes({
250
+ nodes: param.node.elseBlock?.body ?? [],
251
+ old_context: param.old_context,
252
+ llm: param.llm,
253
+ customListener: param.customListener,
254
+ level: param.level,
255
+ relative_dir: param.relative_dir
256
+ });
257
+ }
258
+ break;
259
+ case "Else":
260
+ console.error('ELSE BLOCK, UNREACHABLE!');
261
+ break;
262
+ case "Loop":
263
+ while (true) {
264
+ try {
265
+ output = await executeNodes({
266
+ nodes: param.node.body,
267
+ old_context: param.old_context,
268
+ llm: param.llm,
269
+ customListener: param.customListener,
270
+ level: param.level,
271
+ relative_dir: param.relative_dir
272
+ });
273
+ }
274
+ catch (err) {
275
+ if (err instanceof errors_1.ExitLoop) {
276
+ break;
277
+ }
278
+ if (err instanceof errors_1.ContinueLoop) {
279
+ continue;
280
+ }
281
+ throw err;
282
+ }
283
+ }
284
+ break;
285
+ case "ExitLoop":
286
+ throw new errors_1.ExitLoop();
287
+ case "ContinueLoop":
288
+ throw new errors_1.ContinueLoop();
289
+ case "Exit":
290
+ throw new errors_1.ExitProgram();
291
+ }
292
+ if (param.node.assignVar)
293
+ global_context[param.node.assignVar] = output;
294
+ return output;
295
+ }
296
+ function replaceContext(text, old_context) {
297
+ let normalized_text = text.replace(/{context}/i, old_context);
298
+ Object.entries(global_context).forEach(([key, value]) => {
299
+ normalized_text = normalized_text.replace(`{${key}}`, value);
300
+ });
301
+ return normalized_text;
302
+ }
303
+ function printDebug(text, level = 0) {
304
+ printLog(`┎───────`, level);
305
+ printLog(`┃ DEBUG`, level);
306
+ printLog(`┠───────`, level);
307
+ printLog(wrapText(text, level).split('\n').map(l => `┃ ${l}`).join('\n'), level);
308
+ printLog(`┖───────`, level);
309
+ }
310
+ function printOpeningBox(title, level = 0) {
311
+ const pipe_wrapper = ' ' + Array(level).fill('│ ').join('');
312
+ console.log(`${pipe_wrapper} ┌─${Array(title.length).fill('─').join('')}─┐`);
313
+ console.log(`${pipe_wrapper}┌──┤ ${title} │`);
314
+ console.log(`${pipe_wrapper}│ └─${Array(title.length).fill('─').join('')}─┘`);
315
+ }
316
+ function printClosingBox(title, level = 0) {
317
+ const pipe_wrapper = ' ' + Array(level).fill('│ ').join('');
318
+ console.log(`${pipe_wrapper}│ ┌─${Array(title.length).fill('─').join('')}─┐`);
319
+ console.log(`${pipe_wrapper}└──┤ ${title} │`);
320
+ console.log(`${pipe_wrapper} └─${Array(title.length).fill('─').join('')}─┘`);
321
+ }
322
+ function getNormalizedText(text, level) {
323
+ const pipe_wrapper = ' ' + Array(level + 1).fill('│ ').join('');
324
+ return wrapText(text, level).split('\n').map(l => `${pipe_wrapper}${l}`).join('\n');
325
+ }
326
+ function printLog(text, level = 0) {
327
+ console.log(getNormalizedText(text, level));
328
+ }
329
+ function printLoading(label, level = 0) {
330
+ const spinnerFrames = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
331
+ let frameIndex = 0;
332
+ const pipe_wrapper = ' ' + Array(level + 1).fill('│ ').join('');
333
+ const loaderInterval = setInterval(() => {
334
+ // Move cursor to the start of the line and clear it
335
+ process.stdout.clearLine(0);
336
+ process.stdout.cursorTo(0);
337
+ // Print the current frame and text
338
+ process.stdout.write(`${pipe_wrapper}${spinnerFrames[frameIndex]} ${label}`);
339
+ // Cycle through the spinner frames
340
+ frameIndex = (frameIndex + 1) % spinnerFrames.length;
341
+ }, 80);
342
+ // Stop the loader after 4 seconds
343
+ return () => {
344
+ clearInterval(loaderInterval);
345
+ process.stdout.clearLine(0);
346
+ process.stdout.cursorTo(0);
347
+ };
348
+ }
349
+ function wrapText(text, level = 0) {
350
+ const limit = (process.stdout.columns || 80) - (2 * level + 3);
351
+ // Regex matches chunks of text up to the character limit, breaking at word boundaries
352
+ const regex = new RegExp(`(.{1,${limit}})(?:\\s+|$)`, 'g');
353
+ return text.match(regex)?.map(line => line.trim()).join('\n') || text;
354
+ }
355
+ //# sourceMappingURL=executor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"executor.js","sourceRoot":"","sources":["../executor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './executor';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./executor"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B"}
package/package.json ADDED
@@ -0,0 +1,33 @@
1
+ {
2
+ "name": "@ssww.one/l4cli",
3
+ "version": "0.0.1",
4
+ "description": "",
5
+ "main": "dist/index.js",
6
+ "publishConfig": {
7
+ "access": "public"
8
+ },
9
+ "scripts": {
10
+ "build": "rm -rf dist && tsc && npm unlink -g && npm link"
11
+ },
12
+ "bin": {
13
+ "l4cli": "./dist/exec.js"
14
+ },
15
+ "files": [
16
+ "dist",
17
+ "package.json"
18
+ ],
19
+ "keywords": [],
20
+ "author": "",
21
+ "license": "ISC",
22
+ "devDependencies": {
23
+ "@types/node": "^26.0.1",
24
+ "typescript": "^6.0.3"
25
+ },
26
+ "dependencies": {
27
+ "@ssww.one/framework": "^0.6.1",
28
+ "@ssww.one/l4": "^0.0.6",
29
+ "axios": "^1.18.1",
30
+ "dotenv": "^16.6.1",
31
+ "enquirer": "^2.4.1"
32
+ }
33
+ }