@blueking/ai-ui-sdk 0.4.3-beta.10 → 0.4.3-beta.13
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 +2258 -2258
- package/dist/assets/svg/lock.svg +43 -43
- package/dist/common/util.ts.js +103 -103
- package/dist/components/{render-card/agent/actions.script.vue.js.js → render-agent/action/index.script.vue.js.js} +33 -9
- package/dist/components/{render-card/agent/actions.vue.d.ts → render-agent/action/index.vue.d.ts} +1 -0
- package/dist/components/render-agent/action/index.vue.js +3 -0
- package/dist/components/render-agent/agent-download.vue.css +2 -2
- package/dist/components/render-agent/agent-share.script.vue.js.js +8 -5
- package/dist/components/render-agent/agent-share.vue.d.ts +1 -0
- package/dist/components/render-agent/agent-type.script.vue.js.js +3 -9
- package/dist/components/render-agent/agent-type.vue.css +9 -13
- package/dist/components/render-agent/agent-type.vue.d.ts +1 -1
- package/dist/components/render-agent/agent-type.vue.js +1 -1
- package/dist/components/render-auth/auth-dialog.script.vue.js.js +6 -3
- package/dist/components/render-auth/auth-dialog.vue.css +2 -2
- package/dist/components/render-auto-height-textarea/index.vue.css +26 -26
- package/dist/components/render-auto-height-textarea/index.vue.js +1 -1
- package/dist/components/render-auto-refresh/index.vue.css +30 -30
- package/dist/components/render-auto-refresh/index.vue.js +1 -1
- package/dist/components/render-card/agent/index.script.vue.js.js +55 -22
- package/dist/components/render-card/agent/index.vue.d.ts +4 -2
- package/dist/components/render-card/agent/prefix-info-tool.vue.css +18 -18
- package/dist/components/render-card/agent/prefix-info-tool.vue.js +1 -1
- package/dist/components/render-card/base/application-base-actions.script.vue.js.js +1 -1
- package/dist/components/render-card/base/collection-icon.script.vue.js.js +149 -0
- package/dist/components/render-card/base/collection-icon.vue.d.ts +20 -0
- package/dist/components/render-card/base/collection-icon.vue.js +3 -0
- package/dist/components/render-card/base.vue.css +30 -30
- package/dist/components/render-card/base.vue.js +1 -1
- package/dist/components/render-card/knowledge/index.vue.d.ts +1 -1
- package/dist/components/render-card/knowledgebase/index.vue.d.ts +1 -1
- package/dist/components/render-card/llm/actions.script.vue.js.js +15 -3
- package/dist/components/render-card/llm/actions.vue.d.ts +1 -0
- package/dist/components/render-card/llm/corner-badge.vue.css +12 -12
- package/dist/components/render-card/llm/corner-badge.vue.js +1 -1
- package/dist/components/render-card/llm/icons.vue.css +3 -3
- package/dist/components/render-card/llm/icons.vue.js +1 -1
- package/dist/components/render-card/llm/index.script.vue.js.js +9 -8
- package/dist/components/render-card/llm/index.vue.d.ts +1 -1
- package/dist/components/render-card/llm/info.vue.css +8 -8
- package/dist/components/render-card/llm/info.vue.js +1 -1
- package/dist/components/render-card/llm/tag-prefix.script.vue.js.js +18 -14
- package/dist/components/render-card/llm/tag-prefix.vue.css +5 -8
- package/dist/components/render-card/llm/tag-prefix.vue.d.ts +4 -1
- package/dist/components/render-card/llm/tag-prefix.vue.js +1 -1
- package/dist/components/render-card/mcp/actions.script.vue.js.js +35 -7
- package/dist/components/render-card/mcp/actions.vue.d.ts +1 -0
- package/dist/components/render-card/mcp/index.script.vue.js.js +35 -9
- package/dist/components/render-card/mcp/index.vue.d.ts +5 -4
- package/dist/components/render-card/mcp/name-suffix.vue.css +7 -7
- package/dist/components/render-card/mcp/name-suffix.vue.js +1 -1
- package/dist/components/render-card/mcp/selected-tools-info.script.vue.js.js +3 -7
- package/dist/components/render-card/mcp/selected-tools-info.vue.d.ts +1 -2
- package/dist/components/render-card/prompt/icons.vue.css +2 -2
- package/dist/components/render-card/prompt/icons.vue.js +1 -1
- package/dist/components/render-card/prompt/index.script.vue.js.js +48 -14
- package/dist/components/render-card/prompt/index.vue.d.ts +4 -2
- package/dist/components/render-card/role/index.script.vue.js.js +53 -20
- package/dist/components/render-card/role/index.vue.d.ts +4 -2
- package/dist/components/render-card/skill/index.script.vue.js.js +58 -24
- package/dist/components/render-card/skill/index.vue.d.ts +8 -4
- package/dist/components/render-card/skill/scanner.script.vue.js.js +66 -0
- package/dist/components/render-card/skill/{tag-prefix.vue.css → scanner.vue.css} +7 -7
- package/dist/components/render-card/skill/scanner.vue.d.ts +11 -0
- package/dist/components/render-card/skill/scanner.vue.js +5 -0
- package/dist/components/render-card/skill/tag-prefix.script.vue.js.js +11 -50
- package/dist/components/render-card/skill/tag-prefix.vue.js +0 -2
- package/dist/components/render-card/tool/actions.script.vue.js.js +26 -4
- package/dist/components/render-card/tool/actions.vue.d.ts +1 -0
- package/dist/components/render-card/tool/index.script.vue.js.js +53 -20
- package/dist/components/render-card/tool/index.vue.d.ts +4 -2
- package/dist/components/render-checkbox/index.vue.css +41 -41
- package/dist/components/render-checkbox/index.vue.js +1 -1
- package/dist/components/render-choose-tag/index.vue.css +29 -29
- package/dist/components/render-choose-tag/index.vue.js +1 -1
- package/dist/components/render-collapse/index.vue.css +6 -6
- package/dist/components/render-collapse/index.vue.js +1 -1
- package/dist/components/render-collection/actions/index.script.vue.js.js +22 -4
- package/dist/components/render-collection/actions/index.vue.d.ts +1 -0
- package/dist/components/render-collection/content/index.vue.css +15 -15
- package/dist/components/render-collection/content/index.vue.js +1 -1
- package/dist/components/render-dataset/components/batch-delete-dataset-data/index.vue.css +10 -10
- package/dist/components/render-dataset/components/batch-delete-dataset-data/index.vue.js +1 -1
- package/dist/components/render-dataset/components/dataset-data-tool-icons/index.script.vue.js +1 -1
- package/dist/components/render-dataset/components/edit-dataset-data/index.vue.css +9 -9
- package/dist/components/render-dataset/components/edit-dataset-data/index.vue.js +1 -1
- package/dist/components/render-dataset/components/operation-record/index.vue.css +10 -10
- package/dist/components/render-dataset/components/operation-record/index.vue.js +1 -1
- package/dist/components/render-dataset/components/operation-record/table/index.vue.css +8 -8
- package/dist/components/render-dataset/components/operation-record/table/index.vue.js +1 -1
- package/dist/components/render-dataset/components/operation-record/view-op-result/index.vue.css +8 -8
- package/dist/components/render-dataset/components/operation-record/view-op-result/index.vue.js +1 -1
- package/dist/components/render-dataset/components/plus-dataset/index.vue.css +2 -2
- package/dist/components/render-dataset/components/plus-dataset/index.vue.js +1 -1
- package/dist/components/render-dataset/components/plus-dataset-data/form/api.vue.css +6 -6
- package/dist/components/render-dataset/components/plus-dataset-data/form/api.vue.js +1 -1
- package/dist/components/render-dataset/components/plus-dataset-data/form/footer.vue.css +3 -3
- package/dist/components/render-dataset/components/plus-dataset-data/form/footer.vue.js +1 -1
- package/dist/components/render-dataset/components/plus-dataset-data/form/index.vue.css +2 -2
- package/dist/components/render-dataset/components/plus-dataset-data/form/index.vue.js +1 -1
- package/dist/components/render-dataset/components/plus-dataset-data/form/manual.vue.css +4 -4
- package/dist/components/render-dataset/components/review-dataset-data/index.vue.css +21 -21
- package/dist/components/render-dataset/components/review-dataset-data/index.vue.js +1 -1
- package/dist/components/render-dataset-detail-origin-data/index.vue.css +9 -9
- package/dist/components/render-dataset-detail-origin-data/index.vue.js +1 -1
- package/dist/components/render-dataset-list/components/main.vue.css +9 -9
- package/dist/components/render-dataset-list/components/main.vue.js +1 -1
- package/dist/components/render-dataset-list/index.vue.css +4 -4
- package/dist/components/render-dataset-list/index.vue.js +1 -1
- package/dist/components/render-dialog/choose-resource.vue.css +4 -4
- package/dist/components/render-dialog/choose-resource.vue.js +1 -1
- package/dist/components/render-dialog/choose-result.vue.css +31 -31
- package/dist/components/render-dialog/choose-result.vue.js +1 -1
- package/dist/components/render-dialog/choose-space.vue.css +18 -18
- package/dist/components/render-dialog/choose-space.vue.js +1 -1
- package/dist/components/render-dialog/index.vue.css +12 -12
- package/dist/components/render-dialog/index.vue.js +1 -1
- package/dist/components/render-dropdown/index.vue.css +15 -18
- package/dist/components/render-dropdown/index.vue.d.ts +5 -5
- package/dist/components/render-file-card/index.vue.css +28 -28
- package/dist/components/render-file-card/index.vue.d.ts +1 -1
- package/dist/components/render-file-card/index.vue.js +1 -1
- package/dist/components/render-file-type-icon/index.vue.css +7 -7
- package/dist/components/render-file-type-icon/index.vue.js +1 -1
- package/dist/components/render-generate-tag/index.vue.css +12 -12
- package/dist/components/render-generate-tag/index.vue.d.ts +1 -1
- package/dist/components/render-generate-tag/index.vue.js +1 -1
- package/dist/components/render-knowledge/icon/index.vue.css +2 -2
- package/dist/components/render-knowledge/icon/index.vue.js +1 -1
- package/dist/components/render-markdown/edit.d.ts +1 -1
- package/dist/components/render-markdown/edit.postcss.css +92 -92
- package/dist/components/render-markdown/katex.ts.js +8 -8
- package/dist/components/render-markdown/prism-atom-one-dark.postcss.css +192 -192
- package/dist/components/render-markdown/view.d.ts +1 -1
- package/dist/components/render-markdown/view.postcss.css +99 -99
- package/dist/components/render-permission-tag/index.vue.css +2 -2
- package/dist/components/render-prompt/actions/index.script.vue.js.js +22 -4
- package/dist/components/render-prompt/actions/index.vue.d.ts +1 -0
- package/dist/components/render-prompt/content/index.vue.css +5 -5
- package/dist/components/render-prompt/content/index.vue.js +1 -1
- package/dist/components/render-reference/index.vue.css +4 -4
- package/dist/components/render-reference/index.vue.js +1 -1
- package/dist/components/render-relate-agent/index.script.vue.js +8 -6
- package/dist/components/render-relate-agent/index.vue.d.ts +2 -2
- package/dist/components/render-resource-version/index.script.vue.js.js +6 -3
- package/dist/components/render-resource-version/index.vue.css +7 -7
- package/dist/components/render-resource-version/index.vue.d.ts +1 -1
- package/dist/components/render-resource-version/index.vue.js +1 -1
- package/dist/components/render-router-tab/index.vue.css +15 -15
- package/dist/components/render-router-tab/index.vue.js +1 -1
- package/dist/components/render-search-empty/index.script.vue.js.js +3 -2
- package/dist/components/render-search-empty/index.vue.d.ts +1 -1
- package/dist/components/render-search-select/index.vue.d.ts +1 -1
- package/dist/components/render-select-plus-extension/index.vue.css +11 -11
- package/dist/components/render-select-plus-extension/index.vue.js +1 -1
- package/dist/components/render-skill/actions/index.script.vue.js.js +38 -7
- package/dist/components/render-skill/actions/index.vue.d.ts +3 -2
- package/dist/components/render-t-table/index.script.vue.js +32 -12
- package/dist/components/render-t-table/index.vue.css +117 -117
- package/dist/components/render-t-table/index.vue.d.ts +1 -1
- package/dist/components/render-t-table/index.vue.js +1 -1
- package/dist/components/render-tag-tree/index.vue.css +17 -17
- package/dist/components/render-tag-tree/index.vue.js +1 -1
- package/dist/components/render-tags/index.script.vue.js +6 -6
- package/dist/components/render-tags/index.vue.css +12 -12
- package/dist/components/render-tags/index.vue.d.ts +1 -1
- package/dist/components/render-tags/index.vue.js +1 -1
- package/dist/components/render-tree/index.vue.css +12 -12
- package/dist/components/render-tree/index.vue.d.ts +1 -1
- package/dist/components.d.ts +15 -1
- package/dist/components.ts.js +15 -1
- package/dist/css/fonts/iconcool.svg +268 -268
- package/dist/css/g-utilities.css +39 -16
- package/dist/css/g-utilities.manifest.json +7 -0
- package/dist/css/style.css +259 -259
- package/dist/hooks/use-agent-http.d.ts +2 -0
- package/dist/hooks/use-agent-http.ts.js +15 -1
- package/dist/hooks/use-collection-http.d.ts +2 -0
- package/dist/hooks/use-collection-http.ts.js +15 -1
- package/dist/hooks/use-ellipsis-tooltip.ts.js +28 -28
- package/dist/hooks/use-loading-version.ts.js +4 -4
- package/dist/hooks/use-market-http.d.ts +10 -0
- package/dist/hooks/use-market-http.ts.js +71 -1
- package/dist/hooks/use-mcp-http.d.ts +2 -0
- package/dist/hooks/use-mcp-http.ts.js +15 -1
- package/dist/hooks/use-prompt-http.d.ts +2 -0
- package/dist/hooks/use-prompt-http.ts.js +15 -1
- package/dist/hooks/use-skill-http.d.ts +2 -0
- package/dist/hooks/use-skill-http.ts.js +15 -1
- package/dist/hooks/use-t-table.d.ts +11 -5
- package/dist/hooks/use-t-table.ts.js +25 -3
- package/dist/hooks/use-tool-http.d.ts +2 -0
- package/dist/hooks/use-tool-http.ts.js +15 -1
- package/dist/http/helper/agent.ts.js +46 -47
- package/dist/http/helper/collection.ts.js +14 -13
- package/dist/http/helper/common.d.ts +1 -1
- package/dist/http/helper/common.ts.js +48 -44
- package/dist/http/helper/dataset.ts.js +76 -76
- package/dist/http/helper/knowledge.ts.js +45 -45
- package/dist/http/helper/mcp.ts.js +42 -38
- package/dist/http/helper/permission.ts.js +12 -12
- package/dist/http/helper/prompt.ts.js +14 -13
- package/dist/http/helper/skill.ts.js +28 -24
- package/dist/http/helper/space.ts.js +24 -24
- package/dist/http/helper/tool.ts.js +26 -22
- package/dist/types/agent.d.ts +3 -3
- package/dist/types/collection.d.ts +3 -1
- package/dist/types/common.d.ts +4 -0
- package/dist/types/enum.d.ts +5 -7
- package/dist/types/enum.ts.js +3 -6
- package/dist/types/mcp.d.ts +4 -0
- package/dist/types/prompt.d.ts +3 -1
- package/dist/types/skill.d.ts +4 -0
- package/dist/types/tool.d.ts +4 -0
- package/package.json +112 -112
- package/dist/components/render-card/agent/actions.vue.js +0 -3
|
@@ -134,6 +134,18 @@ export const useAgentHttp = (apiPrefix, spaceId)=>{
|
|
|
134
134
|
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
135
135
|
}
|
|
136
136
|
}).then(transferAgentApigwMcpPermissionApi2AgentApigwMcpPermission);
|
|
137
|
+
// 添加收藏
|
|
138
|
+
const addAgentFavorite = (id)=>fetch.post(`${apiPrefix}/agent/v1/agent/${id}/add_favorite/`, undefined, {
|
|
139
|
+
headers: {
|
|
140
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
// 取消收藏
|
|
144
|
+
const removeAgentFavorite = (id)=>fetch.delete(`${apiPrefix}/agent/v1/agent/${id}/remove_favorite/`, undefined, {
|
|
145
|
+
headers: {
|
|
146
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
147
|
+
}
|
|
148
|
+
});
|
|
137
149
|
return {
|
|
138
150
|
getAgentList,
|
|
139
151
|
getAgent,
|
|
@@ -145,6 +157,8 @@ export const useAgentHttp = (apiPrefix, spaceId)=>{
|
|
|
145
157
|
resourceApply,
|
|
146
158
|
getAgentCount,
|
|
147
159
|
getAgentReferringAgents,
|
|
148
|
-
getAgentMcpPermission
|
|
160
|
+
getAgentMcpPermission,
|
|
161
|
+
addAgentFavorite,
|
|
162
|
+
removeAgentFavorite
|
|
149
163
|
};
|
|
150
164
|
};
|
|
@@ -16,4 +16,6 @@ export declare const useCollectionHttp: (apiPrefix: string, spaceId?: Ref<string
|
|
|
16
16
|
getCollectionReferringAgents: (collectionId: number) => Promise<import("@/types").IReferringAgent[]>;
|
|
17
17
|
parseCollection: (collectionId: number, variables: IVariableApi[], model_name: string) => Promise<IContent[]>;
|
|
18
18
|
parseCollectionVariable: (llm: string, session_id: string, contents: IContent[]) => Promise<IContent[]>;
|
|
19
|
+
addCollectionFavorite: (id: number) => Promise<unknown>;
|
|
20
|
+
removeCollectionFavorite: (id: number) => Promise<unknown>;
|
|
19
21
|
};
|
|
@@ -105,6 +105,18 @@ export const useCollectionHttp = (apiPrefix, spaceId)=>{
|
|
|
105
105
|
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
106
106
|
}
|
|
107
107
|
});
|
|
108
|
+
// 添加收藏
|
|
109
|
+
const addCollectionFavorite = (id)=>fetch.post(`${apiPrefix}/collection/v1/collection/${id}/add_favorite/`, undefined, {
|
|
110
|
+
headers: {
|
|
111
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
// 取消收藏
|
|
115
|
+
const removeCollectionFavorite = (id)=>fetch.delete(`${apiPrefix}/collection/v1/collection/${id}/remove_favorite/`, undefined, {
|
|
116
|
+
headers: {
|
|
117
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
118
|
+
}
|
|
119
|
+
});
|
|
108
120
|
return {
|
|
109
121
|
getCollections,
|
|
110
122
|
getCollectionCount,
|
|
@@ -112,6 +124,8 @@ export const useCollectionHttp = (apiPrefix, spaceId)=>{
|
|
|
112
124
|
restoreCollection,
|
|
113
125
|
getCollectionReferringAgents,
|
|
114
126
|
parseCollection,
|
|
115
|
-
parseCollectionVariable
|
|
127
|
+
parseCollectionVariable,
|
|
128
|
+
addCollectionFavorite,
|
|
129
|
+
removeCollectionFavorite
|
|
116
130
|
};
|
|
117
131
|
};
|
|
@@ -11,34 +11,34 @@ export const useEllipsisTooltip = ()=>{
|
|
|
11
11
|
};
|
|
12
12
|
const handleInitStyle = ()=>{
|
|
13
13
|
const style = document.createElement('style');
|
|
14
|
-
style.textContent = `
|
|
15
|
-
.tippy-box[data-theme~='ellipsis-tooltip'] .tippy-content {
|
|
16
|
-
font-size: 12px !important;
|
|
17
|
-
padding: 7px 14px !important;
|
|
18
|
-
white-space: pre-wrap !important;
|
|
19
|
-
max-height: 400px;
|
|
20
|
-
overflow-y: auto;
|
|
21
|
-
}
|
|
22
|
-
.tippy-box[data-theme~='ellipsis-tooltip'] .tippy-content::-webkit-scrollbar {
|
|
23
|
-
width: 6px;
|
|
24
|
-
height: 6px;
|
|
25
|
-
}
|
|
26
|
-
.tippy-box[data-theme~='ellipsis-tooltip'] .tippy-content::-webkit-scrollbar-thumb {
|
|
27
|
-
width: 6px;
|
|
28
|
-
height: 6px;
|
|
29
|
-
border-radius: 3px;
|
|
30
|
-
background-color: #dcdee5;
|
|
31
|
-
|
|
32
|
-
&:hover {
|
|
33
|
-
background-color: #979ba5;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
.tippy-box[data-theme~='ellipsis-tooltip'][data-placement^=top]>.tippy-arrow:before {
|
|
37
|
-
bottom: -5px !important;
|
|
38
|
-
}
|
|
39
|
-
.tippy-box[data-theme~='ellipsis-tooltip'][data-placement^=bottom]>.tippy-arrow:before {
|
|
40
|
-
top: -5px !important;
|
|
41
|
-
}
|
|
14
|
+
style.textContent = `
|
|
15
|
+
.tippy-box[data-theme~='ellipsis-tooltip'] .tippy-content {
|
|
16
|
+
font-size: 12px !important;
|
|
17
|
+
padding: 7px 14px !important;
|
|
18
|
+
white-space: pre-wrap !important;
|
|
19
|
+
max-height: 400px;
|
|
20
|
+
overflow-y: auto;
|
|
21
|
+
}
|
|
22
|
+
.tippy-box[data-theme~='ellipsis-tooltip'] .tippy-content::-webkit-scrollbar {
|
|
23
|
+
width: 6px;
|
|
24
|
+
height: 6px;
|
|
25
|
+
}
|
|
26
|
+
.tippy-box[data-theme~='ellipsis-tooltip'] .tippy-content::-webkit-scrollbar-thumb {
|
|
27
|
+
width: 6px;
|
|
28
|
+
height: 6px;
|
|
29
|
+
border-radius: 3px;
|
|
30
|
+
background-color: #dcdee5;
|
|
31
|
+
|
|
32
|
+
&:hover {
|
|
33
|
+
background-color: #979ba5;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
.tippy-box[data-theme~='ellipsis-tooltip'][data-placement^=top]>.tippy-arrow:before {
|
|
37
|
+
bottom: -5px !important;
|
|
38
|
+
}
|
|
39
|
+
.tippy-box[data-theme~='ellipsis-tooltip'][data-placement^=bottom]>.tippy-arrow:before {
|
|
40
|
+
top: -5px !important;
|
|
41
|
+
}
|
|
42
42
|
`;
|
|
43
43
|
document.head.appendChild(style);
|
|
44
44
|
};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ref } from 'vue';
|
|
2
|
-
/**
|
|
3
|
-
* 解决 abort + loading 的竞态问题:
|
|
4
|
-
* 当快速连续调用时,前一次请求被 abort 后其 finally 会错误地将 loading 设为 false,
|
|
5
|
-
* 而新请求仍在进行中。通过版本号确保只有最新一次调用才能结束 loading 状态。
|
|
2
|
+
/**
|
|
3
|
+
* 解决 abort + loading 的竞态问题:
|
|
4
|
+
* 当快速连续调用时,前一次请求被 abort 后其 finally 会错误地将 loading 设为 false,
|
|
5
|
+
* 而新请求仍在进行中。通过版本号确保只有最新一次调用才能结束 loading 状态。
|
|
6
6
|
*/ export const useLoadingVersion = ()=>{
|
|
7
7
|
let version = 0;
|
|
8
8
|
const loading = ref(false);
|
|
@@ -1,4 +1,14 @@
|
|
|
1
1
|
import { Ref } from 'vue';
|
|
2
2
|
export declare const useMarketHttp: (apiPrefix: string, spaceId?: Ref<string>) => {
|
|
3
3
|
downloadMarketSkill: (id: number) => Promise<import("@/types/skill").ISkill>;
|
|
4
|
+
addMarketSkillFavorite: (id: number) => Promise<unknown>;
|
|
5
|
+
removeMarketSkillFavorite: (id: number) => Promise<unknown>;
|
|
6
|
+
addMarketToolFavorite: (id: number) => Promise<unknown>;
|
|
7
|
+
removeMarketToolFavorite: (id: number) => Promise<unknown>;
|
|
8
|
+
addMarketAgentFavorite: (id: number) => Promise<unknown>;
|
|
9
|
+
removeMarketAgentFavorite: (id: number) => Promise<unknown>;
|
|
10
|
+
addMarketPromptFavorite: (id: number) => Promise<unknown>;
|
|
11
|
+
removeMarketPromptFavorite: (id: number) => Promise<unknown>;
|
|
12
|
+
addMarketCollectionFavorite: (id: number) => Promise<unknown>;
|
|
13
|
+
removeMarketCollectionFavorite: (id: number) => Promise<unknown>;
|
|
4
14
|
};
|
|
@@ -7,7 +7,77 @@ export const useMarketHttp = (apiPrefix, spaceId)=>{
|
|
|
7
7
|
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
8
8
|
}
|
|
9
9
|
}).then(transferSkillApi2Skill);
|
|
10
|
+
// 收藏 Skill(市场页)
|
|
11
|
+
const addMarketSkillFavorite = (id)=>fetch.post(`${apiPrefix}/market/v1/skill/${id}/add_favorite/`, undefined, {
|
|
12
|
+
headers: {
|
|
13
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
// 取消收藏 Skill(市场页)
|
|
17
|
+
const removeMarketSkillFavorite = (id)=>fetch.delete(`${apiPrefix}/market/v1/skill/${id}/remove_favorite/`, undefined, {
|
|
18
|
+
headers: {
|
|
19
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
// 收藏 Tool(市场页)
|
|
23
|
+
const addMarketToolFavorite = (id)=>fetch.post(`${apiPrefix}/market/v1/tool/${id}/add_favorite/`, undefined, {
|
|
24
|
+
headers: {
|
|
25
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
// 取消收藏 Tool(市场页)
|
|
29
|
+
const removeMarketToolFavorite = (id)=>fetch.delete(`${apiPrefix}/market/v1/tool/${id}/remove_favorite/`, undefined, {
|
|
30
|
+
headers: {
|
|
31
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
// 收藏 agent(市场页)
|
|
35
|
+
const addMarketAgentFavorite = (id)=>fetch.post(`${apiPrefix}/market/v1/agent/${id}/add_favorite/`, undefined, {
|
|
36
|
+
headers: {
|
|
37
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
// 取消收藏 agent(市场页)
|
|
41
|
+
const removeMarketAgentFavorite = (id)=>fetch.delete(`${apiPrefix}/market/v1/agent/${id}/remove_favorite/`, undefined, {
|
|
42
|
+
headers: {
|
|
43
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
// 收藏 prompt(市场页)
|
|
47
|
+
const addMarketPromptFavorite = (id)=>fetch.post(`${apiPrefix}/market/v1/prompt/${id}/add_favorite/`, undefined, {
|
|
48
|
+
headers: {
|
|
49
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
// 取消收藏 prompt(市场页)
|
|
53
|
+
const removeMarketPromptFavorite = (id)=>fetch.delete(`${apiPrefix}/market/v1/prompt/${id}/remove_favorite/`, undefined, {
|
|
54
|
+
headers: {
|
|
55
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
// 收藏 collection(市场页)
|
|
59
|
+
const addMarketCollectionFavorite = (id)=>fetch.post(`${apiPrefix}/market/v1/collection/${id}/add_favorite/`, undefined, {
|
|
60
|
+
headers: {
|
|
61
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
// 取消收藏 collection(市场页)
|
|
65
|
+
const removeMarketCollectionFavorite = (id)=>fetch.delete(`${apiPrefix}/market/v1/collection/${id}/remove_favorite/`, undefined, {
|
|
66
|
+
headers: {
|
|
67
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
68
|
+
}
|
|
69
|
+
});
|
|
10
70
|
return {
|
|
11
|
-
downloadMarketSkill
|
|
71
|
+
downloadMarketSkill,
|
|
72
|
+
addMarketSkillFavorite,
|
|
73
|
+
removeMarketSkillFavorite,
|
|
74
|
+
addMarketToolFavorite,
|
|
75
|
+
removeMarketToolFavorite,
|
|
76
|
+
addMarketAgentFavorite,
|
|
77
|
+
removeMarketAgentFavorite,
|
|
78
|
+
addMarketPromptFavorite,
|
|
79
|
+
removeMarketPromptFavorite,
|
|
80
|
+
addMarketCollectionFavorite,
|
|
81
|
+
removeMarketCollectionFavorite
|
|
12
82
|
};
|
|
13
83
|
};
|
|
@@ -18,4 +18,6 @@ export declare const useMcpHttp: (apiPrefix: string, spaceId?: Ref<string>) => {
|
|
|
18
18
|
markdown: string;
|
|
19
19
|
}>;
|
|
20
20
|
getMcpInstallTargets: () => Promise<import("@/types").IMcpInstallTarget[]>;
|
|
21
|
+
addMcpFavorite: (id: number) => Promise<unknown>;
|
|
22
|
+
removeMcpFavorite: (id: number) => Promise<unknown>;
|
|
21
23
|
};
|
|
@@ -105,6 +105,18 @@ export const useMcpHttp = (apiPrefix, spaceId)=>{
|
|
|
105
105
|
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
106
106
|
}
|
|
107
107
|
}).then((data)=>data.map(transferMcpInstallTargetApi2McpInstallTarget));
|
|
108
|
+
// 收藏 MCP
|
|
109
|
+
const addMcpFavorite = (id)=>fetch.post(`${apiPrefix}/mcp/v1/mcp/${id}/add_favorite/`, undefined, {
|
|
110
|
+
headers: {
|
|
111
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
// 取消收藏 MCP
|
|
115
|
+
const removeMcpFavorite = (id)=>fetch.delete(`${apiPrefix}/mcp/v1/mcp/${id}/remove_favorite/`, undefined, {
|
|
116
|
+
headers: {
|
|
117
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
118
|
+
}
|
|
119
|
+
});
|
|
108
120
|
return {
|
|
109
121
|
getMcpList,
|
|
110
122
|
deleteMcp,
|
|
@@ -113,6 +125,8 @@ export const useMcpHttp = (apiPrefix, spaceId)=>{
|
|
|
113
125
|
getMcpCount,
|
|
114
126
|
getMcpReferringAgents,
|
|
115
127
|
getMcpInstallGuide,
|
|
116
|
-
getMcpInstallTargets
|
|
128
|
+
getMcpInstallTargets,
|
|
129
|
+
addMcpFavorite,
|
|
130
|
+
removeMcpFavorite
|
|
117
131
|
};
|
|
118
132
|
};
|
|
@@ -13,4 +13,6 @@ export declare const usePromptHttp: (apiPrefix: string, spaceId?: Ref<string>) =
|
|
|
13
13
|
(param: import("@/types").IBaseCountParam): Promise<import("@/types").IResourceCount[]>;
|
|
14
14
|
abort(): void;
|
|
15
15
|
};
|
|
16
|
+
addPromptFavorite: (id: number) => Promise<unknown>;
|
|
17
|
+
removePromptFavorite: (id: number) => Promise<unknown>;
|
|
16
18
|
};
|
|
@@ -87,11 +87,25 @@ export const usePromptHttp = (apiPrefix, spaceId)=>{
|
|
|
87
87
|
},
|
|
88
88
|
signal
|
|
89
89
|
}).then((data)=>data.map(transferResourceCountApi2ResourceCount)));
|
|
90
|
+
// 添加收藏
|
|
91
|
+
const addPromptFavorite = (id)=>fetch.post(`${apiPrefix}/prompt/v1/prompt/${id}/add_favorite/`, undefined, {
|
|
92
|
+
headers: {
|
|
93
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
// 取消收藏
|
|
97
|
+
const removePromptFavorite = (id)=>fetch.delete(`${apiPrefix}/prompt/v1/prompt/${id}/remove_favorite/`, undefined, {
|
|
98
|
+
headers: {
|
|
99
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
100
|
+
}
|
|
101
|
+
});
|
|
90
102
|
return {
|
|
91
103
|
getPrompts,
|
|
92
104
|
togglePromptLike,
|
|
93
105
|
deletePrompt,
|
|
94
106
|
restorePrompt,
|
|
95
|
-
getPromptCount
|
|
107
|
+
getPromptCount,
|
|
108
|
+
addPromptFavorite,
|
|
109
|
+
removePromptFavorite
|
|
96
110
|
};
|
|
97
111
|
};
|
|
@@ -29,4 +29,6 @@ export declare const useSkillHttp: (apiPrefix: string, spaceId?: Ref<string>) =>
|
|
|
29
29
|
(id: number, version: string): Promise<import("@/types/skill").ISkillBuildLog>;
|
|
30
30
|
abort(): void;
|
|
31
31
|
};
|
|
32
|
+
addSkillFavorite: (id: number) => Promise<unknown>;
|
|
33
|
+
removeSkillFavorite: (id: number) => Promise<unknown>;
|
|
32
34
|
};
|
|
@@ -139,6 +139,18 @@ export const useSkillHttp = (apiPrefix, spaceId)=>{
|
|
|
139
139
|
},
|
|
140
140
|
signal
|
|
141
141
|
}).then(transferSkillBuildLogApi2SkillBuildLog));
|
|
142
|
+
// 收藏 Skill
|
|
143
|
+
const addSkillFavorite = (id)=>fetch.post(`${apiPrefix}/skill/v1/skill/${id}/add_favorite/`, undefined, {
|
|
144
|
+
headers: {
|
|
145
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
146
|
+
}
|
|
147
|
+
});
|
|
148
|
+
// 取消收藏 Skill
|
|
149
|
+
const removeSkillFavorite = (id)=>fetch.delete(`${apiPrefix}/skill/v1/skill/${id}/remove_favorite/`, undefined, {
|
|
150
|
+
headers: {
|
|
151
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
152
|
+
}
|
|
153
|
+
});
|
|
142
154
|
return {
|
|
143
155
|
getSkillList,
|
|
144
156
|
getSkillCount,
|
|
@@ -152,6 +164,8 @@ export const useSkillHttp = (apiPrefix, spaceId)=>{
|
|
|
152
164
|
getSkillOpenclawWindowsInstancesStatus,
|
|
153
165
|
installSkillToOpenclawWindows,
|
|
154
166
|
getSkillOpenclawWindowsInstallTasksStatus,
|
|
155
|
-
getSkillBuildLog
|
|
167
|
+
getSkillBuildLog,
|
|
168
|
+
addSkillFavorite,
|
|
169
|
+
removeSkillFavorite
|
|
156
170
|
};
|
|
157
171
|
};
|
|
@@ -1,13 +1,15 @@
|
|
|
1
|
+
import { type Ref } from 'vue';
|
|
1
2
|
import type { IPagination, IPaginationParam, ISortParam, ITTableSort } from '@/types/common';
|
|
2
3
|
import { OrderMethod } from '@/types/enum';
|
|
3
4
|
interface IPaginatedApiResult<T> {
|
|
4
5
|
results?: T;
|
|
5
6
|
count?: number;
|
|
6
7
|
}
|
|
8
|
+
type ITableRow<T> = T extends Array<infer E> ? E : T;
|
|
7
9
|
export declare const useTTable: <T>() => {
|
|
8
|
-
isLoading:
|
|
9
|
-
initHook: (callBackFn: (search: IPaginationParam & ISortParam) => Promise<IPaginatedApiResult<T> | T>, isShowPagination: boolean) => void;
|
|
10
|
-
sort:
|
|
10
|
+
isLoading: Ref<boolean, boolean>;
|
|
11
|
+
initHook: (callBackFn: (search: IPaginationParam & ISortParam) => Promise<IPaginatedApiResult<T> | T>, isShowPagination: boolean, key?: string) => void;
|
|
12
|
+
sort: Ref<{
|
|
11
13
|
descending?: OrderMethod;
|
|
12
14
|
sortKey?: string;
|
|
13
15
|
}, ITTableSort | {
|
|
@@ -22,7 +24,7 @@ export declare const useTTable: <T>() => {
|
|
|
22
24
|
};
|
|
23
25
|
}) => Promise<void>;
|
|
24
26
|
triggerApi: () => Promise<void>;
|
|
25
|
-
pagination:
|
|
27
|
+
pagination: Ref<{
|
|
26
28
|
current: number;
|
|
27
29
|
limit: number;
|
|
28
30
|
count: number;
|
|
@@ -32,8 +34,12 @@ export declare const useTTable: <T>() => {
|
|
|
32
34
|
count: number;
|
|
33
35
|
}>;
|
|
34
36
|
resetPagination: () => void;
|
|
35
|
-
tableData: [[] | T] extends [
|
|
37
|
+
tableData: [[] | T] extends [Ref<any, any>] ? import("@vue/shared").IfAny<Ref<any, any> & ([] | T), Ref<Ref<any, any> & ([] | T), Ref<any, any> & ([] | T)>, Ref<any, any> & ([] | T)> : Ref<[] | import("vue").UnwrapRef<T>, [] | T | import("vue").UnwrapRef<T>>;
|
|
36
38
|
handlePageChange: (current: number) => void;
|
|
37
39
|
handlePageSizeChange: (pageSize: number) => void;
|
|
40
|
+
selectedRows: Ref<ITableRow<T>[], ITableRow<T>[]>;
|
|
41
|
+
selectedIds: Ref<(string | number)[], (string | number)[]>;
|
|
42
|
+
handleSelectionChange: (_keys: string | number | (string | number)[], selectedRowData: ITableRow<T>[]) => void;
|
|
43
|
+
handleClearSelection: () => void;
|
|
38
44
|
};
|
|
39
45
|
export {};
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { ref } from 'vue';
|
|
2
2
|
import { OrderMethod } from '../types/enum.ts.js';
|
|
3
3
|
export const useTTable = ()=>{
|
|
4
|
+
const selectedRows = ref([]);
|
|
5
|
+
const selectedIds = ref([]);
|
|
4
6
|
const isLoading = ref(false);
|
|
5
7
|
const isPagination = ref(false);
|
|
6
|
-
let callBack;
|
|
7
8
|
const sort = ref({});
|
|
8
9
|
const tableData = ref([]);
|
|
9
10
|
const pagination = ref({
|
|
@@ -11,6 +12,9 @@ export const useTTable = ()=>{
|
|
|
11
12
|
limit: 20,
|
|
12
13
|
count: 0
|
|
13
14
|
});
|
|
15
|
+
let callBack;
|
|
16
|
+
let rowKey = 'id';
|
|
17
|
+
const getRowKey = (row)=>row[rowKey];
|
|
14
18
|
// 更新数据
|
|
15
19
|
const triggerApi = ()=>{
|
|
16
20
|
isLoading.value = true;
|
|
@@ -30,9 +34,10 @@ export const useTTable = ()=>{
|
|
|
30
34
|
isLoading.value = false;
|
|
31
35
|
});
|
|
32
36
|
};
|
|
33
|
-
const initHook = (callBackFn, isShowPagination)=>{
|
|
37
|
+
const initHook = (callBackFn, isShowPagination, key = 'id')=>{
|
|
34
38
|
callBack = callBackFn;
|
|
35
39
|
isPagination.value = isShowPagination;
|
|
40
|
+
rowKey = key;
|
|
36
41
|
};
|
|
37
42
|
// sortKey 为必传
|
|
38
43
|
const handleSortChange = (config, { col })=>{
|
|
@@ -67,6 +72,19 @@ export const useTTable = ()=>{
|
|
|
67
72
|
count: 0
|
|
68
73
|
};
|
|
69
74
|
};
|
|
75
|
+
const handleSelectionChange = (_keys, selectedRowData)=>{
|
|
76
|
+
const currentPageIds = tableData.value.map(getRowKey);
|
|
77
|
+
const otherPageRows = selectedRows.value.filter((row)=>!currentPageIds.includes(getRowKey(row)));
|
|
78
|
+
selectedRows.value = [
|
|
79
|
+
...otherPageRows,
|
|
80
|
+
...selectedRowData
|
|
81
|
+
];
|
|
82
|
+
selectedIds.value = selectedRows.value.map(getRowKey);
|
|
83
|
+
};
|
|
84
|
+
const handleClearSelection = ()=>{
|
|
85
|
+
selectedRows.value = [];
|
|
86
|
+
selectedIds.value = [];
|
|
87
|
+
};
|
|
70
88
|
return {
|
|
71
89
|
isLoading,
|
|
72
90
|
initHook,
|
|
@@ -77,6 +95,10 @@ export const useTTable = ()=>{
|
|
|
77
95
|
resetPagination,
|
|
78
96
|
tableData,
|
|
79
97
|
handlePageChange,
|
|
80
|
-
handlePageSizeChange
|
|
98
|
+
handlePageSizeChange,
|
|
99
|
+
selectedRows,
|
|
100
|
+
selectedIds,
|
|
101
|
+
handleSelectionChange,
|
|
102
|
+
handleClearSelection
|
|
81
103
|
};
|
|
82
104
|
};
|
|
@@ -13,4 +13,6 @@ export declare const useToolHttp: (apiPrefix: string, spaceId?: Ref<string>) =>
|
|
|
13
13
|
abort(): void;
|
|
14
14
|
};
|
|
15
15
|
getToolReferringAgents: (toolId: number) => Promise<import("@/types").IReferringAgent[]>;
|
|
16
|
+
addToolFavorite: (id: number) => Promise<unknown>;
|
|
17
|
+
removeToolFavorite: (id: number) => Promise<unknown>;
|
|
16
18
|
};
|
|
@@ -86,11 +86,25 @@ export const useToolHttp = (apiPrefix, spaceId)=>{
|
|
|
86
86
|
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
87
87
|
}
|
|
88
88
|
}).then((data)=>data.map(transferReferringAgentApi2ReferringAgent));
|
|
89
|
+
// 收藏 Tool
|
|
90
|
+
const addToolFavorite = (id)=>fetch.post(`${apiPrefix}/tool/v1/tool/${id}/add_favorite/`, undefined, {
|
|
91
|
+
headers: {
|
|
92
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
// 取消收藏 Tool
|
|
96
|
+
const removeToolFavorite = (id)=>fetch.delete(`${apiPrefix}/tool/v1/tool/${id}/remove_favorite/`, undefined, {
|
|
97
|
+
headers: {
|
|
98
|
+
'x-space-id': spaceId === null || spaceId === void 0 ? void 0 : spaceId.value
|
|
99
|
+
}
|
|
100
|
+
});
|
|
89
101
|
return {
|
|
90
102
|
deleteTool,
|
|
91
103
|
restoreTool,
|
|
92
104
|
getTools,
|
|
93
105
|
getToolCount,
|
|
94
|
-
getToolReferringAgents
|
|
106
|
+
getToolReferringAgents,
|
|
107
|
+
addToolFavorite,
|
|
108
|
+
removeToolFavorite
|
|
95
109
|
};
|
|
96
110
|
};
|