@kafca/agentdock 0.1.38 → 0.1.40
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 +4 -0
- package/dist/renderer/assets/{Badge-PKJavQmQ.js → Badge-CmP99fZV.js} +1 -1
- package/dist/renderer/assets/{Chat-DWm4h9aa.js → Chat-BHxpB0Vz.js} +1 -1
- package/dist/renderer/assets/{ChatMarkdown-DKxW2GbO.js → ChatMarkdown-Cnhe-XvR.js} +1 -1
- package/dist/renderer/assets/{Config-Bqn3cy0z.js → Config-CreR5RZX.js} +1 -1
- package/dist/renderer/assets/{CronList-CPI_C7FW.js → CronList-OHg6JWsr.js} +1 -1
- package/dist/renderer/assets/{Dashboard-0e9JS5t7.js → Dashboard-C083Q4zC.js} +2 -2
- package/dist/renderer/assets/{EmptyState-CuA0koT7.js → EmptyState-Br-H8kqG.js} +1 -1
- package/dist/renderer/assets/{KnowledgeDetail-B1YSDbFa.js → KnowledgeDetail-DKhVUY4_.js} +1 -1
- package/dist/renderer/assets/{KnowledgeHome-KHYwWGDu.js → KnowledgeHome-BM3TMxhj.js} +1 -1
- package/dist/renderer/assets/{Logs-X4LJw-00.js → Logs-debYolKz.js} +1 -1
- package/dist/renderer/assets/{Modal-BzEv4CK6.js → Modal-BIetew5T.js} +1 -1
- package/dist/renderer/assets/{Page-BrZMoKtK.js → Page-183Y5-ef.js} +1 -1
- package/dist/renderer/assets/{ProjectDetail-DpO00Ozx.js → ProjectDetail-CB6-zRBY.js} +1 -1
- package/dist/renderer/assets/{ProjectList-DFtJHTic.js → ProjectList-BEUflZUB.js} +1 -1
- package/dist/renderer/assets/{Select-DMrwDcus.js → Select-CNIQBVMx.js} +1 -1
- package/dist/renderer/assets/{SessionChat-Bh9AfkK5.js → SessionChat-CLpfIftJ.js} +1 -1
- package/dist/renderer/assets/{SessionList-Y3gWAe96.js → SessionList-BUwfQcGl.js} +1 -1
- package/dist/renderer/assets/{ThreadChat-Cq0ZRNOh.js → ThreadChat-B9EcRcki.js} +1 -1
- package/dist/renderer/assets/{Workspace-DMSPypFO.js → Workspace-D82il8Vz.js} +1 -1
- package/dist/renderer/assets/{arrow-left-CgYQZlK9.js → arrow-left-T9D9J6Ln.js} +1 -1
- package/dist/renderer/assets/{book-open-cAfg0BWS.js → book-open-Bfdr9s70.js} +1 -1
- package/dist/renderer/assets/{check-BNRlfwZx.js → check-CPJsC_C4.js} +1 -1
- package/dist/renderer/assets/{chevron-down-B9vVz3wf.js → chevron-down-BDoIQdna.js} +1 -1
- package/dist/renderer/assets/{circle-TBXQ38et.js → circle-CRGTgPlR.js} +1 -1
- package/dist/renderer/assets/{desktop-DfkCIN1l.js → desktop-DJ_OjjxL.js} +1 -1
- package/dist/renderer/assets/{funnel-BdZjZcqK.js → funnel-BISvzz6U.js} +1 -1
- package/dist/renderer/assets/{heart-CBPXb4dq.js → heart-EllaLuEV.js} +1 -1
- package/dist/renderer/assets/{index-C_Yr2rQ1.js → index-Db87Dhd_.js} +1 -1
- package/dist/renderer/assets/{index-CXrYAFUE.js → index-YUnN4zTb.js} +2 -2
- package/dist/renderer/assets/{pencil-BlLIWP1h.js → pencil-w4F5pFB6.js} +1 -1
- package/dist/renderer/assets/{play-F-oO0VwG.js → play-CNY6DepD.js} +1 -1
- package/dist/renderer/assets/{plug-B5BduKTi.js → plug-DnMzECJy.js} +1 -1
- package/dist/renderer/assets/{plus-Bbe6vc8z.js → plus-D33HMCG5.js} +1 -1
- package/dist/renderer/assets/projects-DcYpVq_W.js +1 -0
- package/dist/renderer/assets/{save-CbX1ymi_.js → save-B0PXgtN_.js} +1 -1
- package/dist/renderer/assets/{search-KyB8P1Ie.js → search-zNtpxpxG.js} +1 -1
- package/dist/renderer/assets/{server-D2EQ0I-I.js → server-DIsU-ww0.js} +1 -1
- package/dist/renderer/assets/{session-utils-C4Eq8h8o.js → session-utils-CxQ3KCei.js} +1 -1
- package/dist/renderer/assets/{sessions-CchD99QT.js → sessions-DFDVZGz-.js} +1 -1
- package/dist/renderer/assets/{shield-check-BTTXqP3n.js → shield-check-5hrgmi9Y.js} +1 -1
- package/dist/renderer/assets/{trash-2-CDOrVaia.js → trash-2-DWftp5eL.js} +1 -1
- package/dist/renderer/assets/{user-BR0zEuV_.js → user-CKjiW1bV.js} +1 -1
- package/dist/renderer/assets/{wifi-off-W_cPAMcl.js → wifi-off-DyBtTbdO.js} +1 -1
- package/dist/renderer/index.html +1 -1
- package/dist-electron/services/local-ai-core/src/channel/lark/local-core-lark-gateway.js +8 -7
- package/dist-electron/services/local-ai-core/src/channel/lark/post.js +18 -0
- package/dist-electron/tests/integration/local-core-refactor.test.js +42 -12
- package/package.json +1 -1
- package/dist/renderer/assets/projects-CGLECySt.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{z as t}from"./index-YUnN4zTb.js";const e=()=>t.get("/projects"),r=o=>t.get(`/projects/${o}`);export{r as g,e as l};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{z as o}from"./index-
|
|
1
|
+
import{z as o}from"./index-YUnN4zTb.js";const i=s=>o.get(`/projects/${s}/sessions`),c=(s,e,t)=>o.get(`/projects/${s}/sessions/${e}`,{history_limit:String(t)}),r=(s,e,t)=>o.patch(`/projects/${s}/sessions/${e}`,t),a=(s,e)=>o.delete(`/projects/${s}/sessions/${e}`),p=(s,e)=>o.post(`/projects/${s}/sessions/switch`,e),$=(s,e)=>o.post(`/projects/${s}/send`,e);export{$ as a,a as d,c as g,i as l,r,p as s};
|
package/dist/renderer/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<link rel="icon" type="image/svg+xml" href="./favicon.svg" />
|
|
6
6
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
7
7
|
<title>AgentDock</title>
|
|
8
|
-
<script type="module" crossorigin src="./assets/index-
|
|
8
|
+
<script type="module" crossorigin src="./assets/index-YUnN4zTb.js"></script>
|
|
9
9
|
<link rel="stylesheet" crossorigin href="./assets/index-CaQZSRbg.css">
|
|
10
10
|
</head>
|
|
11
11
|
<body class="bg-[#f5f5f7] dark:bg-[#151516]">
|
|
@@ -44,6 +44,7 @@ const file_utils_js_1 = require("../shared/file-utils.js");
|
|
|
44
44
|
const cards_js_1 = require("./cards.js");
|
|
45
45
|
const config_js_1 = require("./config.js");
|
|
46
46
|
const registration_js_1 = require("./registration.js");
|
|
47
|
+
const post_js_1 = require("./post.js");
|
|
47
48
|
const runtime_state_js_1 = require("./runtime-state.js");
|
|
48
49
|
const PAIRING_EXPIRY_MS = 10 * 60 * 1000;
|
|
49
50
|
const LARK_MAX_UPLOAD_FILE_SIZE = 30 * 1024 * 1024;
|
|
@@ -218,7 +219,7 @@ class LocalCoreLarkGateway extends node_events_1.EventEmitter {
|
|
|
218
219
|
if (part.type === 'text') {
|
|
219
220
|
const text = String(part.text || '').trim();
|
|
220
221
|
if (text) {
|
|
221
|
-
messageIds.push(await this.
|
|
222
|
+
messageIds.push(await this.sendTextAsPost(state, channelId, text));
|
|
222
223
|
}
|
|
223
224
|
continue;
|
|
224
225
|
}
|
|
@@ -514,14 +515,14 @@ class LocalCoreLarkGateway extends node_events_1.EventEmitter {
|
|
|
514
515
|
}
|
|
515
516
|
if (!existingMessageId) {
|
|
516
517
|
const createdId = renderedMessage.delivery === 'message' && renderedMessage.buttonRows.length === 0
|
|
517
|
-
? await this.
|
|
518
|
+
? await this.sendTextAsPost(state, route.chatId, renderedMessage.text)
|
|
518
519
|
: await this.sendTextAsCard(state, route.chatId, renderedMessage.text, renderedMessage.buttonRows, sessionKey, bridgeThreadId);
|
|
519
520
|
if (createdId) {
|
|
520
521
|
(0, runtime_state_js_1.setLarkRenderedMessageId)(turn, renderedMessage, createdId);
|
|
521
522
|
if (renderedMessage.isFinal) {
|
|
522
523
|
this.options.store.updatePlatformThreadMessageId(route.workspaceId, route.chatId, route.platformUserId, createdId, routePlatformKey);
|
|
523
524
|
}
|
|
524
|
-
this.options.log?.(`localcore-lark sent new ${renderedMessage.delivery === 'message' ? '
|
|
525
|
+
this.options.log?.(`localcore-lark sent new ${renderedMessage.delivery === 'message' ? 'post' : 'card'} message ${createdId} for sessionKey=${sessionKey}`);
|
|
525
526
|
}
|
|
526
527
|
continue;
|
|
527
528
|
}
|
|
@@ -1151,7 +1152,7 @@ class LocalCoreLarkGateway extends node_events_1.EventEmitter {
|
|
|
1151
1152
|
this.options.log?.(`localcore-lark card create took ${Date.now() - startedAt}ms textBytes=${Buffer.byteLength(text || '', 'utf8')}`);
|
|
1152
1153
|
return String(response?.data?.message_id || '').trim();
|
|
1153
1154
|
}
|
|
1154
|
-
async
|
|
1155
|
+
async sendTextAsPost(state, chatId, text) {
|
|
1155
1156
|
const startedAt = Date.now();
|
|
1156
1157
|
const response = await state.client.im.message.create({
|
|
1157
1158
|
params: {
|
|
@@ -1159,11 +1160,11 @@ class LocalCoreLarkGateway extends node_events_1.EventEmitter {
|
|
|
1159
1160
|
},
|
|
1160
1161
|
data: {
|
|
1161
1162
|
receive_id: chatId,
|
|
1162
|
-
msg_type: '
|
|
1163
|
-
content: JSON.stringify(
|
|
1163
|
+
msg_type: 'post',
|
|
1164
|
+
content: JSON.stringify((0, post_js_1.buildLarkPostContent)(text)),
|
|
1164
1165
|
},
|
|
1165
1166
|
});
|
|
1166
|
-
this.options.log?.(`localcore-lark
|
|
1167
|
+
this.options.log?.(`localcore-lark post create took ${Date.now() - startedAt}ms textBytes=${Buffer.byteLength(text || '', 'utf8')}`);
|
|
1167
1168
|
return String(response?.data?.message_id || '').trim();
|
|
1168
1169
|
}
|
|
1169
1170
|
resolveReceiveIdType(receiveId) {
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildLarkPostContent = buildLarkPostContent;
|
|
4
|
+
function buildLarkPostContent(markdown) {
|
|
5
|
+
return {
|
|
6
|
+
zh_cn: {
|
|
7
|
+
content: [[{
|
|
8
|
+
tag: 'md',
|
|
9
|
+
text: sanitizeLarkPostMarkdown(String(markdown || '').trim() || ' '),
|
|
10
|
+
}]],
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function sanitizeLarkPostMarkdown(markdown) {
|
|
15
|
+
return markdown.replace(/\[([^\]]*)\]\(([^)]+)\)/g, (match, label, href) => {
|
|
16
|
+
return /^https?:\/\//i.test(href) ? match : `${label} (${href})`;
|
|
17
|
+
});
|
|
18
|
+
}
|
|
@@ -30,11 +30,34 @@ function extractLarkCreatedMessage(request) {
|
|
|
30
30
|
return {
|
|
31
31
|
msgType,
|
|
32
32
|
content,
|
|
33
|
-
text: msgType
|
|
34
|
-
? String(content.elements?.[0]?.content || '')
|
|
35
|
-
: String(content.text || ''),
|
|
33
|
+
text: extractLarkCreatedMessageText(msgType, content),
|
|
36
34
|
};
|
|
37
35
|
}
|
|
36
|
+
function extractLarkCreatedMessageText(msgType, content) {
|
|
37
|
+
if (msgType === 'interactive') {
|
|
38
|
+
return String(content.elements?.[0]?.content || '');
|
|
39
|
+
}
|
|
40
|
+
if (msgType === 'post') {
|
|
41
|
+
return (content.zh_cn?.content || [])
|
|
42
|
+
.map((line) => (Array.isArray(line) ? line : [])
|
|
43
|
+
.map((item) => {
|
|
44
|
+
return String(item?.text || item?.href || '');
|
|
45
|
+
})
|
|
46
|
+
.join(''))
|
|
47
|
+
.join('\n');
|
|
48
|
+
}
|
|
49
|
+
return String(content.text || '');
|
|
50
|
+
}
|
|
51
|
+
function findLarkPostMdText(content) {
|
|
52
|
+
for (const line of content.zh_cn?.content || []) {
|
|
53
|
+
for (const item of Array.isArray(line) ? line : []) {
|
|
54
|
+
if (item?.tag === 'md') {
|
|
55
|
+
return String(item.text || '');
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
return '';
|
|
60
|
+
}
|
|
38
61
|
(0, node_test_1.default)('local core route parser separates runtime refresh and runtime detail routes', () => {
|
|
39
62
|
strict_1.default.deepEqual((0, server_routes_js_1.parseLocalAiCoreRoute)('GET', '/api/local/v1/logs'), { name: 'logs.list' });
|
|
40
63
|
strict_1.default.deepEqual((0, server_routes_js_1.parseLocalAiCoreRoute)('GET', '/api/local/v1/runtimes'), { name: 'runtimes.list' });
|
|
@@ -1853,6 +1876,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
1853
1876
|
messageId,
|
|
1854
1877
|
msgType: message.msgType,
|
|
1855
1878
|
text: message.text,
|
|
1879
|
+
content: message.content,
|
|
1856
1880
|
});
|
|
1857
1881
|
return { data: { message_id: messageId } };
|
|
1858
1882
|
},
|
|
@@ -1921,13 +1945,13 @@ function extractLarkCreatedMessage(request) {
|
|
|
1921
1945
|
replyCtx: 'run-1',
|
|
1922
1946
|
content: '最终回答',
|
|
1923
1947
|
});
|
|
1924
|
-
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['interactive', '
|
|
1948
|
+
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['interactive', 'post']);
|
|
1925
1949
|
strict_1.default.equal(createdMessages[0]?.text, '先理解问题,再检查代码');
|
|
1926
1950
|
strict_1.default.equal(createdMessages[1]?.text, '最终回答');
|
|
1927
1951
|
strict_1.default.equal(patchedCards.length, 0);
|
|
1928
1952
|
strict_1.default.deepEqual(storedMessageIds, ['lark-msg-2']);
|
|
1929
1953
|
});
|
|
1930
|
-
(0, node_test_1.default)('lark bridge sends final reply as its own
|
|
1954
|
+
(0, node_test_1.default)('lark bridge sends final reply as its own post message instead of streaming draft', async () => {
|
|
1931
1955
|
const createdMessages = [];
|
|
1932
1956
|
const patchedCards = [];
|
|
1933
1957
|
const storedMessageIds = [];
|
|
@@ -1941,6 +1965,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
1941
1965
|
messageId,
|
|
1942
1966
|
msgType: message.msgType,
|
|
1943
1967
|
text: message.text,
|
|
1968
|
+
content: message.content,
|
|
1944
1969
|
});
|
|
1945
1970
|
return { data: { message_id: messageId } };
|
|
1946
1971
|
},
|
|
@@ -1999,7 +2024,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
1999
2024
|
replyCtx: 'run-1',
|
|
2000
2025
|
content: '真正最终回答',
|
|
2001
2026
|
});
|
|
2002
|
-
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['
|
|
2027
|
+
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['post']);
|
|
2003
2028
|
strict_1.default.deepEqual(createdMessages.map((message) => message.text), ['真正最终回答']);
|
|
2004
2029
|
strict_1.default.deepEqual(patchedCards, []);
|
|
2005
2030
|
strict_1.default.deepEqual(storedMessageIds, ['lark-msg-1']);
|
|
@@ -2017,6 +2042,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
2017
2042
|
messageId,
|
|
2018
2043
|
msgType: message.msgType,
|
|
2019
2044
|
text: message.text,
|
|
2045
|
+
content: message.content,
|
|
2020
2046
|
});
|
|
2021
2047
|
return { data: { message_id: messageId } };
|
|
2022
2048
|
},
|
|
@@ -2073,11 +2099,11 @@ function extractLarkCreatedMessage(request) {
|
|
|
2073
2099
|
replyCtx: 'run-2',
|
|
2074
2100
|
content: 'second final',
|
|
2075
2101
|
});
|
|
2076
|
-
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['
|
|
2102
|
+
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['post', 'post']);
|
|
2077
2103
|
strict_1.default.deepEqual(createdMessages.map((message) => message.text), ['first final', 'second final']);
|
|
2078
2104
|
strict_1.default.deepEqual(patchedCards, []);
|
|
2079
2105
|
});
|
|
2080
|
-
(0, node_test_1.default)('lark bridge sends tool and final as separate
|
|
2106
|
+
(0, node_test_1.default)('lark bridge sends tool and final as separate post messages without patching tool progress', async () => {
|
|
2081
2107
|
const createdMessages = [];
|
|
2082
2108
|
const patchedCards = [];
|
|
2083
2109
|
const storedMessageIds = [];
|
|
@@ -2091,6 +2117,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
2091
2117
|
messageId,
|
|
2092
2118
|
msgType: message.msgType,
|
|
2093
2119
|
text: message.text,
|
|
2120
|
+
content: message.content,
|
|
2094
2121
|
});
|
|
2095
2122
|
return { data: { message_id: messageId } };
|
|
2096
2123
|
},
|
|
@@ -2163,7 +2190,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
2163
2190
|
replyCtx: 'run-1',
|
|
2164
2191
|
content: '好的,文件存在,现在发送给你:已发送!`CLAUDE.md` 文件已经发出去了,请查收',
|
|
2165
2192
|
});
|
|
2166
|
-
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['
|
|
2193
|
+
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['post', 'post']);
|
|
2167
2194
|
strict_1.default.deepEqual(createdMessages.map((message) => message.text), [
|
|
2168
2195
|
'🔧 bash',
|
|
2169
2196
|
'好的,文件存在,现在发送给你:已发送!`CLAUDE.md` 文件已经发出去了,请查收',
|
|
@@ -2185,6 +2212,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
2185
2212
|
messageId,
|
|
2186
2213
|
msgType: message.msgType,
|
|
2187
2214
|
text: message.text,
|
|
2215
|
+
content: message.content,
|
|
2188
2216
|
});
|
|
2189
2217
|
return { data: { message_id: messageId } };
|
|
2190
2218
|
},
|
|
@@ -2291,13 +2319,14 @@ function extractLarkCreatedMessage(request) {
|
|
|
2291
2319
|
replyCtx: 'run-1',
|
|
2292
2320
|
content: '最终回答',
|
|
2293
2321
|
});
|
|
2294
|
-
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['interactive', '
|
|
2322
|
+
strict_1.default.deepEqual(createdMessages.map((message) => message.msgType), ['interactive', 'post', 'interactive', 'post']);
|
|
2295
2323
|
strict_1.default.deepEqual(createdMessages.map((message) => message.text), [
|
|
2296
2324
|
'先理解用户需求',
|
|
2297
2325
|
'🔧 Terminal\n\n```json\n{\n "command": "uname -a",\n "description": "Get system info"\n}\n```',
|
|
2298
2326
|
'看到了 Linux',
|
|
2299
2327
|
'最终回答',
|
|
2300
2328
|
]);
|
|
2329
|
+
strict_1.default.equal(findLarkPostMdText(createdMessages[1]?.content), '🔧 Terminal\n\n```json\n{\n "command": "uname -a",\n "description": "Get system info"\n}\n```');
|
|
2301
2330
|
strict_1.default.deepEqual(patchedCards, []);
|
|
2302
2331
|
strict_1.default.deepEqual(storedMessageIds, ['lark-msg-4']);
|
|
2303
2332
|
});
|
|
@@ -2619,7 +2648,7 @@ function extractLarkCreatedMessage(request) {
|
|
|
2619
2648
|
strict_1.default.equal(patchedCards[0]?.messageId, 'permission-msg-1');
|
|
2620
2649
|
strict_1.default.match(patchedCards[0]?.card?.elements?.[0]?.content || '', /工具确认已处理/);
|
|
2621
2650
|
strict_1.default.equal(createdMessages.length, 1);
|
|
2622
|
-
strict_1.default.equal(createdMessages[0]?.msgType, '
|
|
2651
|
+
strict_1.default.equal(createdMessages[0]?.msgType, 'post');
|
|
2623
2652
|
strict_1.default.match(createdMessages[0]?.text || '', /桌面文件列表/);
|
|
2624
2653
|
});
|
|
2625
2654
|
(0, node_test_1.default)('lark channel sends tool name and parameters once without streaming output', async () => {
|
|
@@ -2699,10 +2728,11 @@ function extractLarkCreatedMessage(request) {
|
|
|
2699
2728
|
},
|
|
2700
2729
|
});
|
|
2701
2730
|
const text = createdMessages[0]?.text || '';
|
|
2702
|
-
strict_1.default.equal(createdMessages[0]?.msgType, '
|
|
2731
|
+
strict_1.default.equal(createdMessages[0]?.msgType, 'post');
|
|
2703
2732
|
strict_1.default.match(text, /🔧 Terminal/);
|
|
2704
2733
|
strict_1.default.match(text, /```json\n{\n "command": "ls ~\/Desktop"\n}\n```/);
|
|
2705
2734
|
strict_1.default.doesNotMatch(text, /参数/);
|
|
2735
|
+
strict_1.default.equal(findLarkPostMdText(createdMessages[0]?.content), '🔧 Terminal\n\n```json\n{\n "command": "ls ~/Desktop"\n}\n```');
|
|
2706
2736
|
strict_1.default.equal(patchedCards.length, 0);
|
|
2707
2737
|
strict_1.default.doesNotMatch(text, /completed/);
|
|
2708
2738
|
strict_1.default.doesNotMatch(text, /secret terminal output/);
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{z as t}from"./index-CXrYAFUE.js";const e=()=>t.get("/projects"),r=o=>t.get(`/projects/${o}`);export{r as g,e as l};
|