main
html 108 lines 3.48 KB
Raw
1 <html>
2
3 <head>
4 <title>Scan Skills</title>
5 <script type="module">
6 import { store } from "/components/settings/skills/skills-scan-store.js";
7 </script>
8 </head>
9
10 <body>
11 <div x-data>
12 <template x-if="$store.skillsScanStore">
13 <div class="skills-scan-section" x-init="$store.skillsScanStore.init()" x-destroy="$store.skillsScanStore.onClose()">
14 <div class="section-title">Scan Skills</div>
15 <div class="section-description">
16 Review installed skills, a local skill path, or a skill repository before activation.
17 </div>
18
19 <div class="skills-scan-toolbar">
20 <label class="skills-scan-target">
21 <span>Target</span>
22 <textarea x-model="$store.skillsScanStore.sectionTarget" rows="3"
23 placeholder="/a0/usr/skills/my-pack/my-skill&#10;https://github.com/example/agent-skills.git"></textarea>
24 </label>
25
26 <div class="skills-scan-actions">
27 <button type="button" class="button" @click="$store.skillsScanStore.openForInstalledSkills()"
28 :disabled="$store.skillsScanStore.sectionLoading">
29 <x-icon aria-hidden="true" name="inventory_2"></x-icon>
30 <span>Installed Skills</span>
31 </button>
32 <button type="button" class="button confirm" @click="$store.skillsScanStore.openForManualTarget()"
33 :disabled="$store.skillsScanStore.sectionLoading">
34 <x-icon aria-hidden="true" name="radar"></x-icon>
35 <span>Open Scanner</span>
36 </button>
37 </div>
38 </div>
39 </div>
40 </template>
41 </div>
42
43 <style>
44 .skills-scan-section {
45 display: flex;
46 flex-direction: column;
47 gap: 0.85rem;
48 }
49
50 .skills-scan-toolbar {
51 display: flex;
52 flex-direction: column;
53 gap: 0.75rem;
54 }
55
56 .skills-scan-target {
57 display: flex;
58 flex-direction: column;
59 gap: 0.35rem;
60 margin: 0;
61 }
62
63 .skills-scan-target span {
64 color: var(--color-text-secondary);
65 font-weight: 600;
66 }
67
68 .skills-scan-target textarea {
69 width: 100%;
70 min-height: 5rem;
71 box-sizing: border-box;
72 border: 1px solid var(--color-border);
73 border-radius: 6px;
74 background: var(--color-bg-primary);
75 color: var(--color-text-primary);
76 padding: 0.55rem 0.7rem;
77 font-family: var(--font-family-code);
78 font-size: 0.86rem;
79 line-height: 1.4;
80 resize: vertical;
81 }
82
83 .skills-scan-target textarea:focus {
84 border-color: var(--color-highlight);
85 outline: none;
86 }
87
88 .skills-scan-actions {
89 display: flex;
90 flex-wrap: wrap;
91 gap: 0.5rem;
92 }
93
94 .skills-scan-actions .button {
95 display: inline-flex;
96 align-items: center;
97 justify-content: center;
98 gap: 0.35rem;
99 }
100
101 .skills-scan-actions .material-symbols-outlined {
102 font-size: 1.05rem;
103 line-height: 1;
104 }
105 </style>
106 </body>
107
108 </html>