@aexol/opencode-wizard 0.3.5 → 0.3.6
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 +6 -4
- package/dist/graphql-operations.d.ts +1 -0
- package/dist/graphql-operations.js +12 -0
- package/dist/graphql-operations.js.map +1 -1
- package/dist/plugin-tools.d.ts +11 -0
- package/dist/plugin-tools.js +16 -1
- package/dist/plugin-tools.js.map +1 -1
- package/dist/server/import-sources.d.ts +27 -0
- package/dist/server/import-sources.js +115 -0
- package/dist/server/import-sources.js.map +1 -0
- package/dist/server/runtime.js +121 -1
- package/dist/server/runtime.js.map +1 -1
- package/dist/server/types.d.ts +12 -0
- package/dist/server/types.js.map +1 -1
- package/dist/server.d.ts +1 -0
- package/dist/server.js +1 -0
- package/dist/server.js.map +1 -1
- package/dist/tui/components/common.d.ts +0 -1
- package/dist/tui/components/common.js +6 -29
- package/dist/tui/components/common.js.map +1 -1
- package/dist/tui/components/status-content.js +1 -1
- package/dist/tui/components/status-content.js.map +1 -1
- package/dist/tui/constants.d.ts +0 -5
- package/dist/tui/constants.js +0 -5
- package/dist/tui/constants.js.map +1 -1
- package/dist/tui/formatting.d.ts +0 -3
- package/dist/tui/formatting.js +1 -13
- package/dist/tui/formatting.js.map +1 -1
- package/dist/tui/skill-helpers.d.ts +1 -11
- package/dist/tui/skill-helpers.js +0 -42
- package/dist/tui/skill-helpers.js.map +1 -1
- package/dist/tui/slots.d.ts +1 -1
- package/dist/tui/slots.js +1 -24
- package/dist/tui/slots.js.map +1 -1
- package/dist/tui/status.js +2 -2
- package/dist/tui/status.js.map +1 -1
- package/dist/tui/types.d.ts +0 -19
- package/dist/tui/types.js.map +1 -1
- package/package.json +1 -1
- package/dist/tui/components/preference-action-notice-row.d.ts +0 -5
- package/dist/tui/components/preference-action-notice-row.js +0 -17
- package/dist/tui/components/preference-action-notice-row.js.map +0 -1
- package/dist/tui/components/skill-catalog-row.d.ts +0 -8
- package/dist/tui/components/skill-catalog-row.js +0 -125
- package/dist/tui/components/skill-catalog-row.js.map +0 -1
- package/dist/tui/components/wizard-skills-dialog-content.d.ts +0 -9
- package/dist/tui/components/wizard-skills-dialog-content.js +0 -229
- package/dist/tui/components/wizard-skills-dialog-content.js.map +0 -1
- package/dist/tui/components/wizard-skills-dialog.d.ts +0 -7
- package/dist/tui/components/wizard-skills-dialog.js +0 -156
- package/dist/tui/components/wizard-skills-dialog.js.map +0 -1
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import { effect as _$effect } from "@opentui/solid";
|
|
2
|
-
import { memo as _$memo } from "@opentui/solid";
|
|
3
|
-
import { createTextNode as _$createTextNode } from "@opentui/solid";
|
|
4
|
-
import { insertNode as _$insertNode } from "@opentui/solid";
|
|
5
|
-
import { insert as _$insert } from "@opentui/solid";
|
|
6
|
-
import { setProp as _$setProp } from "@opentui/solid";
|
|
7
|
-
import { createElement as _$createElement } from "@opentui/solid";
|
|
8
|
-
import { compactSkillDescription, compactSkillMeta, compactSkillName } from '../formatting.js';
|
|
9
|
-
import { WIZARD_SCOPE_LABELS } from '../../published-skills-terminology.js';
|
|
10
|
-
import { getRowStateLabel, getSkillDescription, getSkillDisplayName, getSkillMeta } from '../skill-helpers.js';
|
|
11
|
-
export const SkillCatalogRow = props => {
|
|
12
|
-
const skill = props.row.skill;
|
|
13
|
-
const description = getSkillDescription(skill);
|
|
14
|
-
const canUninstall = skill.assignmentSource === 'USER_GLOBAL' || skill.assignmentSource === 'USER_WORKSPACE';
|
|
15
|
-
return (() => {
|
|
16
|
-
var _el$ = _$createElement("box"),
|
|
17
|
-
_el$2 = _$createElement("box"),
|
|
18
|
-
_el$3 = _$createElement("text"),
|
|
19
|
-
_el$4 = _$createElement("b"),
|
|
20
|
-
_el$5 = _$createTextNode(` (`),
|
|
21
|
-
_el$7 = _$createTextNode(`)`),
|
|
22
|
-
_el$8 = _$createElement("box"),
|
|
23
|
-
_el$9 = _$createElement("text");
|
|
24
|
-
_$insertNode(_el$, _el$2);
|
|
25
|
-
_$insertNode(_el$, _el$9);
|
|
26
|
-
_$setProp(_el$, "width", "100%");
|
|
27
|
-
_$setProp(_el$, "flexDirection", "column");
|
|
28
|
-
_$setProp(_el$, "overflow", "hidden");
|
|
29
|
-
_$setProp(_el$, "marginBottom", 1);
|
|
30
|
-
_$insertNode(_el$2, _el$3);
|
|
31
|
-
_$insertNode(_el$2, _el$8);
|
|
32
|
-
_$setProp(_el$2, "width", "100%");
|
|
33
|
-
_$setProp(_el$2, "flexDirection", "row");
|
|
34
|
-
_$setProp(_el$2, "justifyContent", "space-between");
|
|
35
|
-
_$setProp(_el$2, "overflow", "hidden");
|
|
36
|
-
_$insertNode(_el$3, _el$4);
|
|
37
|
-
_$insertNode(_el$3, _el$5);
|
|
38
|
-
_$insertNode(_el$3, _el$7);
|
|
39
|
-
_$setProp(_el$3, "wrapMode", "none");
|
|
40
|
-
_$setProp(_el$3, "overflow", "hidden");
|
|
41
|
-
_$insert(_el$4, () => compactSkillName(getSkillDisplayName(skill)));
|
|
42
|
-
_$insert(_el$3, () => getRowStateLabel(props.row), _el$7);
|
|
43
|
-
_$setProp(_el$8, "flexDirection", "row");
|
|
44
|
-
_$setProp(_el$8, "flexShrink", 0);
|
|
45
|
-
_$insert(_el$8, (() => {
|
|
46
|
-
var _c$ = _$memo(() => props.row.state === 'installable');
|
|
47
|
-
return () => _c$() ? [(() => {
|
|
48
|
-
var _el$0 = _$createElement("box"),
|
|
49
|
-
_el$1 = _$createElement("text");
|
|
50
|
-
_$insertNode(_el$0, _el$1);
|
|
51
|
-
_$setProp(_el$0, "onMouseUp", () => props.onInstall(props.row, 'global'));
|
|
52
|
-
_$setProp(_el$0, "flexShrink", 0);
|
|
53
|
-
_$setProp(_el$1, "wrapMode", "none");
|
|
54
|
-
_$insert(_el$1, () => WIZARD_SCOPE_LABELS.global);
|
|
55
|
-
_$effect(_$p => _$setProp(_el$1, "fg", props.theme.textMuted, _$p));
|
|
56
|
-
return _el$0;
|
|
57
|
-
})(), (() => {
|
|
58
|
-
var _el$10 = _$createElement("text");
|
|
59
|
-
_$insertNode(_el$10, _$createTextNode(` / `));
|
|
60
|
-
_$setProp(_el$10, "wrapMode", "none");
|
|
61
|
-
_$effect(_$p => _$setProp(_el$10, "fg", props.theme.textMuted, _$p));
|
|
62
|
-
return _el$10;
|
|
63
|
-
})(), (() => {
|
|
64
|
-
var _el$12 = _$createElement("box"),
|
|
65
|
-
_el$13 = _$createElement("text");
|
|
66
|
-
_$insertNode(_el$12, _el$13);
|
|
67
|
-
_$setProp(_el$12, "onMouseUp", () => props.onInstall(props.row, 'project'));
|
|
68
|
-
_$setProp(_el$12, "flexShrink", 0);
|
|
69
|
-
_$setProp(_el$13, "wrapMode", "none");
|
|
70
|
-
_$insert(_el$13, () => WIZARD_SCOPE_LABELS.project);
|
|
71
|
-
_$effect(_$p => _$setProp(_el$13, "fg", props.theme.textMuted, _$p));
|
|
72
|
-
return _el$12;
|
|
73
|
-
})()] : [(() => {
|
|
74
|
-
var _el$14 = _$createElement("box"),
|
|
75
|
-
_el$15 = _$createElement("text");
|
|
76
|
-
_$insertNode(_el$14, _el$15);
|
|
77
|
-
_$setProp(_el$14, "onMouseUp", () => props.onIgnore(props.row));
|
|
78
|
-
_$setProp(_el$14, "flexShrink", 0);
|
|
79
|
-
_$setProp(_el$15, "wrapMode", "none");
|
|
80
|
-
_$insert(_el$15, () => props.row.ignored ? 'Unignore' : 'Ignore');
|
|
81
|
-
_$effect(_$p => _$setProp(_el$15, "fg", props.theme.textMuted, _$p));
|
|
82
|
-
return _el$14;
|
|
83
|
-
})(), canUninstall ? [(() => {
|
|
84
|
-
var _el$16 = _$createElement("text");
|
|
85
|
-
_$insertNode(_el$16, _$createTextNode(` / `));
|
|
86
|
-
_$setProp(_el$16, "wrapMode", "none");
|
|
87
|
-
_$effect(_$p => _$setProp(_el$16, "fg", props.theme.textMuted, _$p));
|
|
88
|
-
return _el$16;
|
|
89
|
-
})(), (() => {
|
|
90
|
-
var _el$18 = _$createElement("box"),
|
|
91
|
-
_el$19 = _$createElement("text");
|
|
92
|
-
_$insertNode(_el$18, _el$19);
|
|
93
|
-
_$setProp(_el$18, "onMouseUp", () => props.onUninstall(props.row));
|
|
94
|
-
_$setProp(_el$18, "flexShrink", 0);
|
|
95
|
-
_$insertNode(_el$19, _$createTextNode(`Uninstall`));
|
|
96
|
-
_$setProp(_el$19, "wrapMode", "none");
|
|
97
|
-
_$effect(_$p => _$setProp(_el$19, "fg", props.theme.textMuted, _$p));
|
|
98
|
-
return _el$18;
|
|
99
|
-
})()] : null];
|
|
100
|
-
})());
|
|
101
|
-
_$setProp(_el$9, "wrapMode", "none");
|
|
102
|
-
_$setProp(_el$9, "overflow", "hidden");
|
|
103
|
-
_$insert(_el$9, () => compactSkillMeta(getSkillMeta(skill, props.row.state)));
|
|
104
|
-
_$insert(_el$, description ? (() => {
|
|
105
|
-
var _el$21 = _$createElement("text");
|
|
106
|
-
_$setProp(_el$21, "wrapMode", "none");
|
|
107
|
-
_$setProp(_el$21, "overflow", "hidden");
|
|
108
|
-
_$insert(_el$21, () => compactSkillDescription(description));
|
|
109
|
-
_$effect(_$p => _$setProp(_el$21, "fg", props.theme.text, _$p));
|
|
110
|
-
return _el$21;
|
|
111
|
-
})() : null, null);
|
|
112
|
-
_$effect(_p$ => {
|
|
113
|
-
var _v$ = props.row.ignored ? props.theme.textMuted : props.theme.text,
|
|
114
|
-
_v$2 = props.theme.textMuted;
|
|
115
|
-
_v$ !== _p$.e && (_p$.e = _$setProp(_el$3, "fg", _v$, _p$.e));
|
|
116
|
-
_v$2 !== _p$.t && (_p$.t = _$setProp(_el$9, "fg", _v$2, _p$.t));
|
|
117
|
-
return _p$;
|
|
118
|
-
}, {
|
|
119
|
-
e: undefined,
|
|
120
|
-
t: undefined
|
|
121
|
-
});
|
|
122
|
-
return _el$;
|
|
123
|
-
})();
|
|
124
|
-
};
|
|
125
|
-
//# sourceMappingURL=skill-catalog-row.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["compactSkillDescription","compactSkillMeta","compactSkillName","WIZARD_SCOPE_LABELS","getRowStateLabel","getSkillDescription","getSkillDisplayName","getSkillMeta","SkillCatalogRow","props","skill","row","description","canUninstall","assignmentSource","_el$","_$createElement","_el$2","_el$3","_el$4","_el$5","_$createTextNode","_el$7","_el$8","_el$9","_$insertNode","_$setProp","_$insert","_c$","_$memo","state","_el$0","_el$1","onInstall","global","_$effect","_$p","theme","textMuted","_el$10","_el$12","_el$13","project","_el$14","_el$15","onIgnore","ignored","_el$16","_el$18","_el$19","onUninstall","_el$21","text","_p$","_v$","_v$2","e","t","undefined"],"sources":["../../../src/tui/components/skill-catalog-row.tsx"],"sourcesContent":["import { compactSkillDescription, compactSkillMeta, compactSkillName } from '../formatting.js';\nimport { WIZARD_SCOPE_LABELS } from '../../published-skills-terminology.js';\nimport {\n getRowStateLabel,\n getSkillDescription,\n getSkillDisplayName,\n getSkillMeta,\n} from '../skill-helpers.js';\nimport type { PreferenceScope, SkillDialogRow, TuiPluginApi } from '../types.js';\n\nexport const SkillCatalogRow = (props: {\n row: SkillDialogRow;\n theme: TuiPluginApi['theme']['current'];\n onIgnore: (row: SkillDialogRow) => void;\n onInstall: (row: SkillDialogRow, preferenceScope: PreferenceScope) => void;\n onUninstall: (row: SkillDialogRow) => void;\n}) => {\n const skill = props.row.skill;\n const description = getSkillDescription(skill);\n const canUninstall = skill.assignmentSource === 'USER_GLOBAL' || skill.assignmentSource === 'USER_WORKSPACE';\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\" marginBottom={1}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={props.row.ignored ? props.theme.textMuted : props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{compactSkillName(getSkillDisplayName(skill))}</b>\n {' '}({getRowStateLabel(props.row)})\n </text>\n <box flexDirection=\"row\" flexShrink={0}>\n {props.row.state === 'installable' ? (\n <>\n <box onMouseUp={() => props.onInstall(props.row, 'global')} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n {WIZARD_SCOPE_LABELS.global}\n </text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n {' / '}\n </text>\n <box onMouseUp={() => props.onInstall(props.row, 'project')} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n {WIZARD_SCOPE_LABELS.project}\n </text>\n </box>\n </>\n ) : (\n <>\n <box onMouseUp={() => props.onIgnore(props.row)} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n {props.row.ignored ? 'Unignore' : 'Ignore'}\n </text>\n </box>\n {canUninstall ? (\n <>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n {' / '}\n </text>\n <box onMouseUp={() => props.onUninstall(props.row)} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n Uninstall\n </text>\n </box>\n </>\n ) : null}\n </>\n )}\n </box>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n {compactSkillMeta(getSkillMeta(skill, props.row.state))}\n </text>\n {description ? (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {compactSkillDescription(description)}\n </text>\n ) : null}\n </box>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { PreferenceActionNotice, PreferenceScope, SkillDialogRow, StatusState, TuiPluginApi } from '../types.js';
|
|
2
|
-
export declare const WizardSkillsDialogContent: (props: {
|
|
3
|
-
status: () => StatusState;
|
|
4
|
-
actionNotice: () => PreferenceActionNotice;
|
|
5
|
-
theme: TuiPluginApi["theme"]["current"];
|
|
6
|
-
onIgnoreSkill: (row: SkillDialogRow) => void;
|
|
7
|
-
onInstallSkill: (row: SkillDialogRow, preferenceScope: PreferenceScope) => void;
|
|
8
|
-
onUninstallSkill: (row: SkillDialogRow) => void;
|
|
9
|
-
}) => any;
|
|
@@ -1,229 +0,0 @@
|
|
|
1
|
-
import { createComponent as _$createComponent } from "@opentui/solid";
|
|
2
|
-
import { insert as _$insert } from "@opentui/solid";
|
|
3
|
-
import { effect as _$effect } from "@opentui/solid";
|
|
4
|
-
import { createTextNode as _$createTextNode } from "@opentui/solid";
|
|
5
|
-
import { insertNode as _$insertNode } from "@opentui/solid";
|
|
6
|
-
import { setProp as _$setProp } from "@opentui/solid";
|
|
7
|
-
import { createElement as _$createElement } from "@opentui/solid";
|
|
8
|
-
import { createSignal } from 'solid-js';
|
|
9
|
-
import { WIZARD_SCOPE_TERMS } from '../../published-skills-terminology.js';
|
|
10
|
-
import { SKILLS_PAGE_SIZE } from '../constants.js';
|
|
11
|
-
import { compactStatusMessage, formatSkillsCatalogUnavailableMessage } from '../formatting.js';
|
|
12
|
-
import { getInstallableNotInstalledSkills, getSkillRowState } from '../skill-helpers.js';
|
|
13
|
-
import { PreferenceActionNoticeRow } from './preference-action-notice-row.js';
|
|
14
|
-
import { SkillCatalogRow } from './skill-catalog-row.js';
|
|
15
|
-
export const WizardSkillsDialogContent = props => {
|
|
16
|
-
const [page, setPage] = createSignal(0);
|
|
17
|
-
const content = () => {
|
|
18
|
-
const currentStatus = props.status();
|
|
19
|
-
if (currentStatus.kind === 'loading') {
|
|
20
|
-
return (() => {
|
|
21
|
-
var _el$ = _$createElement("text");
|
|
22
|
-
_$insertNode(_el$, _$createTextNode(`Refreshing published skills…`));
|
|
23
|
-
_$setProp(_el$, "wrapMode", "none");
|
|
24
|
-
_$setProp(_el$, "overflow", "hidden");
|
|
25
|
-
_$effect(_$p => _$setProp(_el$, "fg", props.theme.textMuted, _$p));
|
|
26
|
-
return _el$;
|
|
27
|
-
})();
|
|
28
|
-
}
|
|
29
|
-
if (currentStatus.kind === 'error') {
|
|
30
|
-
return (() => {
|
|
31
|
-
var _el$3 = _$createElement("text"),
|
|
32
|
-
_el$4 = _$createTextNode(`unavailable: `);
|
|
33
|
-
_$insertNode(_el$3, _el$4);
|
|
34
|
-
_$setProp(_el$3, "wrapMode", "none");
|
|
35
|
-
_$setProp(_el$3, "overflow", "hidden");
|
|
36
|
-
_$insert(_el$3, () => compactStatusMessage(currentStatus.message), null);
|
|
37
|
-
_$effect(_$p => _$setProp(_el$3, "fg", props.theme.warning, _$p));
|
|
38
|
-
return _el$3;
|
|
39
|
-
})();
|
|
40
|
-
}
|
|
41
|
-
if (!currentStatus.snapshot.catalog) {
|
|
42
|
-
return (() => {
|
|
43
|
-
var _el$5 = _$createElement("text"),
|
|
44
|
-
_el$6 = _$createTextNode(`catalog `);
|
|
45
|
-
_$insertNode(_el$5, _el$6);
|
|
46
|
-
_$setProp(_el$5, "wrapMode", "none");
|
|
47
|
-
_$setProp(_el$5, "overflow", "hidden");
|
|
48
|
-
_$insert(_el$5, () => formatSkillsCatalogUnavailableMessage(currentStatus.snapshot), null);
|
|
49
|
-
_$effect(_$p => _$setProp(_el$5, "fg", props.theme.textMuted, _$p));
|
|
50
|
-
return _el$5;
|
|
51
|
-
})();
|
|
52
|
-
}
|
|
53
|
-
const {
|
|
54
|
-
catalog
|
|
55
|
-
} = currentStatus.snapshot;
|
|
56
|
-
const installableNotInstalledSkills = getInstallableNotInstalledSkills(currentStatus.snapshot);
|
|
57
|
-
const rows = [...catalog.skills.map(skill => ({
|
|
58
|
-
skill,
|
|
59
|
-
ignored: false,
|
|
60
|
-
state: getSkillRowState(skill)
|
|
61
|
-
})), ...currentStatus.snapshot.ignoredPublishedSkills.skills.map(skill => ({
|
|
62
|
-
skill,
|
|
63
|
-
ignored: true,
|
|
64
|
-
state: getSkillRowState(skill)
|
|
65
|
-
})), ...installableNotInstalledSkills.map(skill => ({
|
|
66
|
-
skill,
|
|
67
|
-
ignored: false,
|
|
68
|
-
state: 'installable'
|
|
69
|
-
}))];
|
|
70
|
-
const totalPages = Math.max(1, Math.ceil(rows.length / SKILLS_PAGE_SIZE));
|
|
71
|
-
const currentPage = Math.min(page(), totalPages - 1);
|
|
72
|
-
const startIndex = currentPage * SKILLS_PAGE_SIZE;
|
|
73
|
-
const endIndex = Math.min(startIndex + SKILLS_PAGE_SIZE, rows.length);
|
|
74
|
-
const visibleRows = rows.slice(startIndex, endIndex);
|
|
75
|
-
const canGoBack = currentPage > 0;
|
|
76
|
-
const canGoForward = currentPage < totalPages - 1;
|
|
77
|
-
const goBack = () => {
|
|
78
|
-
if (!canGoBack) return;
|
|
79
|
-
setPage(currentPage - 1);
|
|
80
|
-
};
|
|
81
|
-
const goForward = () => {
|
|
82
|
-
if (!canGoForward) return;
|
|
83
|
-
setPage(currentPage + 1);
|
|
84
|
-
};
|
|
85
|
-
return (() => {
|
|
86
|
-
var _el$7 = _$createElement("box"),
|
|
87
|
-
_el$8 = _$createElement("box"),
|
|
88
|
-
_el$9 = _$createElement("text"),
|
|
89
|
-
_el$0 = _$createElement("b"),
|
|
90
|
-
_el$1 = _$createTextNode(` skills`),
|
|
91
|
-
_el$10 = _$createTextNode(` · `),
|
|
92
|
-
_el$11 = _$createTextNode(` `),
|
|
93
|
-
_el$12 = _$createTextNode(` · `),
|
|
94
|
-
_el$13 = _$createTextNode(` `),
|
|
95
|
-
_el$14 = _$createTextNode(` · `),
|
|
96
|
-
_el$15 = _$createTextNode(` `),
|
|
97
|
-
_el$16 = _$createTextNode(` · `),
|
|
98
|
-
_el$17 = _$createTextNode(` ignored · `),
|
|
99
|
-
_el$18 = _$createTextNode(` installable/not installed`),
|
|
100
|
-
_el$19 = _$createElement("text"),
|
|
101
|
-
_el$20 = _$createTextNode(`page `),
|
|
102
|
-
_el$21 = _$createTextNode(`/`),
|
|
103
|
-
_el$22 = _$createElement("box"),
|
|
104
|
-
_el$23 = _$createElement("box"),
|
|
105
|
-
_el$24 = _$createElement("box"),
|
|
106
|
-
_el$25 = _$createElement("text"),
|
|
107
|
-
_el$27 = _$createElement("text"),
|
|
108
|
-
_el$28 = _$createTextNode(` shown`),
|
|
109
|
-
_el$29 = _$createElement("box"),
|
|
110
|
-
_el$30 = _$createElement("text");
|
|
111
|
-
_$insertNode(_el$7, _el$8);
|
|
112
|
-
_$insertNode(_el$7, _el$22);
|
|
113
|
-
_$insertNode(_el$7, _el$23);
|
|
114
|
-
_$setProp(_el$7, "width", "100%");
|
|
115
|
-
_$setProp(_el$7, "flexDirection", "column");
|
|
116
|
-
_$setProp(_el$7, "overflow", "hidden");
|
|
117
|
-
_$insertNode(_el$8, _el$9);
|
|
118
|
-
_$insertNode(_el$8, _el$19);
|
|
119
|
-
_$setProp(_el$8, "width", "100%");
|
|
120
|
-
_$setProp(_el$8, "flexDirection", "row");
|
|
121
|
-
_$setProp(_el$8, "justifyContent", "space-between");
|
|
122
|
-
_$setProp(_el$8, "overflow", "hidden");
|
|
123
|
-
_$insertNode(_el$9, _el$0);
|
|
124
|
-
_$insertNode(_el$9, _el$10);
|
|
125
|
-
_$insertNode(_el$9, _el$11);
|
|
126
|
-
_$insertNode(_el$9, _el$12);
|
|
127
|
-
_$insertNode(_el$9, _el$13);
|
|
128
|
-
_$insertNode(_el$9, _el$14);
|
|
129
|
-
_$insertNode(_el$9, _el$15);
|
|
130
|
-
_$insertNode(_el$9, _el$16);
|
|
131
|
-
_$insertNode(_el$9, _el$17);
|
|
132
|
-
_$insertNode(_el$9, _el$18);
|
|
133
|
-
_$setProp(_el$9, "wrapMode", "none");
|
|
134
|
-
_$setProp(_el$9, "overflow", "hidden");
|
|
135
|
-
_$insertNode(_el$0, _el$1);
|
|
136
|
-
_$insert(_el$0, () => catalog.publishedSkillCount, _el$1);
|
|
137
|
-
_$insert(_el$9, () => catalog.assignmentCounts.global, _el$11);
|
|
138
|
-
_$insert(_el$9, () => WIZARD_SCOPE_TERMS.global, _el$12);
|
|
139
|
-
_$insert(_el$9, () => catalog.assignmentCounts.project, _el$13);
|
|
140
|
-
_$insert(_el$9, () => WIZARD_SCOPE_TERMS.project, _el$14);
|
|
141
|
-
_$insert(_el$9, () => catalog.assignmentCounts.user, _el$15);
|
|
142
|
-
_$insert(_el$9, () => WIZARD_SCOPE_TERMS.user, _el$16);
|
|
143
|
-
_$insert(_el$9, () => currentStatus.snapshot.ignoredPublishedSkills.count, _el$17);
|
|
144
|
-
_$insert(_el$9, () => installableNotInstalledSkills.length, _el$18);
|
|
145
|
-
_$insertNode(_el$19, _el$20);
|
|
146
|
-
_$insertNode(_el$19, _el$21);
|
|
147
|
-
_$setProp(_el$19, "wrapMode", "none");
|
|
148
|
-
_$insert(_el$19, currentPage + 1, _el$21);
|
|
149
|
-
_$insert(_el$19, totalPages, null);
|
|
150
|
-
_$setProp(_el$22, "width", "100%");
|
|
151
|
-
_$setProp(_el$22, "flexDirection", "column");
|
|
152
|
-
_$setProp(_el$22, "marginTop", 1);
|
|
153
|
-
_$setProp(_el$22, "overflow", "hidden");
|
|
154
|
-
_$insert(_el$22, () => visibleRows.map(row => _$createComponent(SkillCatalogRow, {
|
|
155
|
-
row: row,
|
|
156
|
-
get theme() {
|
|
157
|
-
return props.theme;
|
|
158
|
-
},
|
|
159
|
-
get onIgnore() {
|
|
160
|
-
return props.onIgnoreSkill;
|
|
161
|
-
},
|
|
162
|
-
get onInstall() {
|
|
163
|
-
return props.onInstallSkill;
|
|
164
|
-
},
|
|
165
|
-
get onUninstall() {
|
|
166
|
-
return props.onUninstallSkill;
|
|
167
|
-
}
|
|
168
|
-
})));
|
|
169
|
-
_$insertNode(_el$23, _el$24);
|
|
170
|
-
_$insertNode(_el$23, _el$27);
|
|
171
|
-
_$insertNode(_el$23, _el$29);
|
|
172
|
-
_$setProp(_el$23, "width", "100%");
|
|
173
|
-
_$setProp(_el$23, "flexDirection", "row");
|
|
174
|
-
_$setProp(_el$23, "justifyContent", "space-between");
|
|
175
|
-
_$setProp(_el$23, "overflow", "hidden");
|
|
176
|
-
_$insertNode(_el$24, _el$25);
|
|
177
|
-
_$setProp(_el$24, "onMouseUp", goBack);
|
|
178
|
-
_$setProp(_el$24, "flexShrink", 0);
|
|
179
|
-
_$insertNode(_el$25, _$createTextNode(`← Prev`));
|
|
180
|
-
_$setProp(_el$25, "wrapMode", "none");
|
|
181
|
-
_$insertNode(_el$27, _el$28);
|
|
182
|
-
_$setProp(_el$27, "wrapMode", "none");
|
|
183
|
-
_$setProp(_el$27, "overflow", "hidden");
|
|
184
|
-
_$insert(_el$27, () => visibleRows.length, _el$28);
|
|
185
|
-
_$insertNode(_el$29, _el$30);
|
|
186
|
-
_$setProp(_el$29, "onMouseUp", goForward);
|
|
187
|
-
_$setProp(_el$29, "flexShrink", 0);
|
|
188
|
-
_$insertNode(_el$30, _$createTextNode(`Next →`));
|
|
189
|
-
_$setProp(_el$30, "wrapMode", "none");
|
|
190
|
-
_$effect(_p$ => {
|
|
191
|
-
var _v$ = props.theme.text,
|
|
192
|
-
_v$2 = props.theme.textMuted,
|
|
193
|
-
_v$3 = canGoBack ? props.theme.text : props.theme.textMuted,
|
|
194
|
-
_v$4 = props.theme.textMuted,
|
|
195
|
-
_v$5 = canGoForward ? props.theme.text : props.theme.textMuted;
|
|
196
|
-
_v$ !== _p$.e && (_p$.e = _$setProp(_el$9, "fg", _v$, _p$.e));
|
|
197
|
-
_v$2 !== _p$.t && (_p$.t = _$setProp(_el$19, "fg", _v$2, _p$.t));
|
|
198
|
-
_v$3 !== _p$.a && (_p$.a = _$setProp(_el$25, "fg", _v$3, _p$.a));
|
|
199
|
-
_v$4 !== _p$.o && (_p$.o = _$setProp(_el$27, "fg", _v$4, _p$.o));
|
|
200
|
-
_v$5 !== _p$.i && (_p$.i = _$setProp(_el$30, "fg", _v$5, _p$.i));
|
|
201
|
-
return _p$;
|
|
202
|
-
}, {
|
|
203
|
-
e: undefined,
|
|
204
|
-
t: undefined,
|
|
205
|
-
a: undefined,
|
|
206
|
-
o: undefined,
|
|
207
|
-
i: undefined
|
|
208
|
-
});
|
|
209
|
-
return _el$7;
|
|
210
|
-
})();
|
|
211
|
-
};
|
|
212
|
-
return (() => {
|
|
213
|
-
var _el$32 = _$createElement("box");
|
|
214
|
-
_$setProp(_el$32, "width", "100%");
|
|
215
|
-
_$setProp(_el$32, "flexDirection", "column");
|
|
216
|
-
_$setProp(_el$32, "overflow", "hidden");
|
|
217
|
-
_$insert(_el$32, _$createComponent(PreferenceActionNoticeRow, {
|
|
218
|
-
get notice() {
|
|
219
|
-
return props.actionNotice();
|
|
220
|
-
},
|
|
221
|
-
get theme() {
|
|
222
|
-
return props.theme;
|
|
223
|
-
}
|
|
224
|
-
}), null);
|
|
225
|
-
_$insert(_el$32, content, null);
|
|
226
|
-
return _el$32;
|
|
227
|
-
})();
|
|
228
|
-
};
|
|
229
|
-
//# sourceMappingURL=wizard-skills-dialog-content.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["createSignal","WIZARD_SCOPE_TERMS","SKILLS_PAGE_SIZE","compactStatusMessage","formatSkillsCatalogUnavailableMessage","getInstallableNotInstalledSkills","getSkillRowState","PreferenceActionNoticeRow","SkillCatalogRow","WizardSkillsDialogContent","props","page","setPage","content","currentStatus","status","kind","_el$","_$createElement","_$insertNode","_$createTextNode","_$setProp","_$effect","_$p","theme","textMuted","_el$3","_el$4","_$insert","message","warning","snapshot","catalog","_el$5","_el$6","installableNotInstalledSkills","rows","skills","map","skill","ignored","state","ignoredPublishedSkills","totalPages","Math","max","ceil","length","currentPage","min","startIndex","endIndex","visibleRows","slice","canGoBack","canGoForward","goBack","goForward","_el$7","_el$8","_el$9","_el$0","_el$1","_el$10","_el$11","_el$12","_el$13","_el$14","_el$15","_el$16","_el$17","_el$18","_el$19","_el$20","_el$21","_el$22","_el$23","_el$24","_el$25","_el$27","_el$28","_el$29","_el$30","publishedSkillCount","assignmentCounts","global","project","user","count","row","_$createComponent","onIgnore","onIgnoreSkill","onInstall","onInstallSkill","onUninstall","onUninstallSkill","_p$","_v$","text","_v$2","_v$3","_v$4","_v$5","e","t","a","o","i","undefined","_el$32","notice","actionNotice"],"sources":["../../../src/tui/components/wizard-skills-dialog-content.tsx"],"sourcesContent":["import { createSignal } from 'solid-js';\nimport { WIZARD_SCOPE_TERMS } from '../../published-skills-terminology.js';\nimport { SKILLS_PAGE_SIZE } from '../constants.js';\nimport { compactStatusMessage, formatSkillsCatalogUnavailableMessage } from '../formatting.js';\nimport { getInstallableNotInstalledSkills, getSkillRowState } from '../skill-helpers.js';\nimport type { PreferenceActionNotice, PreferenceScope, SkillDialogRow, StatusState, TuiPluginApi } from '../types.js';\nimport { PreferenceActionNoticeRow } from './preference-action-notice-row.js';\nimport { SkillCatalogRow } from './skill-catalog-row.js';\n\nexport const WizardSkillsDialogContent = (props: {\n status: () => StatusState;\n actionNotice: () => PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n onIgnoreSkill: (row: SkillDialogRow) => void;\n onInstallSkill: (row: SkillDialogRow, preferenceScope: PreferenceScope) => void;\n onUninstallSkill: (row: SkillDialogRow) => void;\n}) => {\n const [page, setPage] = createSignal(0);\n const content = () => {\n const currentStatus = props.status();\n\n if (currentStatus.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n Refreshing published skills…\n </text>\n );\n }\n\n if (currentStatus.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(currentStatus.message)}\n </text>\n );\n }\n\n if (!currentStatus.snapshot.catalog) {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog {formatSkillsCatalogUnavailableMessage(currentStatus.snapshot)}\n </text>\n );\n }\n\n const { catalog } = currentStatus.snapshot;\n const installableNotInstalledSkills = getInstallableNotInstalledSkills(currentStatus.snapshot);\n const rows: SkillDialogRow[] = [\n ...catalog.skills.map((skill) => ({\n skill,\n ignored: false,\n state: getSkillRowState(skill),\n })),\n ...currentStatus.snapshot.ignoredPublishedSkills.skills.map((skill) => ({\n skill,\n ignored: true,\n state: getSkillRowState(skill),\n })),\n ...installableNotInstalledSkills.map((skill) => ({ skill, ignored: false, state: 'installable' as const })),\n ];\n const totalPages = Math.max(1, Math.ceil(rows.length / SKILLS_PAGE_SIZE));\n const currentPage = Math.min(page(), totalPages - 1);\n const startIndex = currentPage * SKILLS_PAGE_SIZE;\n const endIndex = Math.min(startIndex + SKILLS_PAGE_SIZE, rows.length);\n const visibleRows = rows.slice(startIndex, endIndex);\n const canGoBack = currentPage > 0;\n const canGoForward = currentPage < totalPages - 1;\n const goBack = () => {\n if (!canGoBack) return;\n\n setPage(currentPage - 1);\n };\n const goForward = () => {\n if (!canGoForward) return;\n\n setPage(currentPage + 1);\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{catalog.publishedSkillCount} skills</b>\n · {catalog.assignmentCounts.global} {WIZARD_SCOPE_TERMS.global} · {catalog.assignmentCounts.project}{' '}\n {WIZARD_SCOPE_TERMS.project}\n · {catalog.assignmentCounts.user} {WIZARD_SCOPE_TERMS.user}\n · {currentStatus.snapshot.ignoredPublishedSkills.count} ignored\n · {installableNotInstalledSkills.length} installable/not installed\n </text>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n page {currentPage + 1}/{totalPages}\n </text>\n </box>\n <box width=\"100%\" flexDirection=\"column\" marginTop={1} overflow=\"hidden\">\n {visibleRows.map((row) => (\n <SkillCatalogRow\n row={row}\n theme={props.theme}\n onIgnore={props.onIgnoreSkill}\n onInstall={props.onInstallSkill}\n onUninstall={props.onUninstallSkill}\n />\n ))}\n </box>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box onMouseUp={goBack} flexShrink={0}>\n <text fg={canGoBack ? props.theme.text : props.theme.textMuted} wrapMode=\"none\">\n ← Prev\n </text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n {visibleRows.length} shown\n </text>\n <box onMouseUp={goForward} flexShrink={0}>\n <text fg={canGoForward ? props.theme.text : props.theme.textMuted} wrapMode=\"none\">\n Next →\n </text>\n </box>\n </box>\n </box>\n );\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n <PreferenceActionNoticeRow notice={props.actionNotice()} theme={props.theme} />\n {content()}\n </box>\n );\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,156 +0,0 @@
|
|
|
1
|
-
import { effect as _$effect } from "@opentui/solid";
|
|
2
|
-
import { insert as _$insert } from "@opentui/solid";
|
|
3
|
-
import { createComponent as _$createComponent } from "@opentui/solid";
|
|
4
|
-
import { createTextNode as _$createTextNode } from "@opentui/solid";
|
|
5
|
-
import { insertNode as _$insertNode } from "@opentui/solid";
|
|
6
|
-
import { setProp as _$setProp } from "@opentui/solid";
|
|
7
|
-
import { createElement as _$createElement } from "@opentui/solid";
|
|
8
|
-
import { createEffect, createMemo, createSignal } from 'solid-js';
|
|
9
|
-
import { setPublishedSkillIgnored, setPublishedSkillInstalled } from '../../server.js';
|
|
10
|
-
import { requestRender } from '../rendering.js';
|
|
11
|
-
import { getErrorMessage, getSkillPreferenceScope } from '../skill-helpers.js';
|
|
12
|
-
import { WizardSkillsDialogContent } from './wizard-skills-dialog-content.js';
|
|
13
|
-
export const WizardSkillsDialog = props => {
|
|
14
|
-
const theme = createMemo(() => props.api.theme.current);
|
|
15
|
-
const [actionNotice, setActionNotice] = createSignal({
|
|
16
|
-
kind: 'idle'
|
|
17
|
-
});
|
|
18
|
-
const refreshAfterPreferenceChange = message => {
|
|
19
|
-
setActionNotice({
|
|
20
|
-
kind: 'success',
|
|
21
|
-
message
|
|
22
|
-
});
|
|
23
|
-
props.refreshStatus({
|
|
24
|
-
showLoading: false
|
|
25
|
-
});
|
|
26
|
-
requestRender(props.api);
|
|
27
|
-
};
|
|
28
|
-
const showPreferenceFailure = error => {
|
|
29
|
-
setActionNotice({
|
|
30
|
-
kind: 'error',
|
|
31
|
-
message: getErrorMessage(error)
|
|
32
|
-
});
|
|
33
|
-
props.refreshStatus({
|
|
34
|
-
showLoading: false
|
|
35
|
-
});
|
|
36
|
-
requestRender(props.api);
|
|
37
|
-
};
|
|
38
|
-
const ignoreSkill = row => {
|
|
39
|
-
const currentStatus = props.status();
|
|
40
|
-
if (currentStatus.kind !== 'ready') return;
|
|
41
|
-
const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;
|
|
42
|
-
setActionNotice({
|
|
43
|
-
kind: 'pending',
|
|
44
|
-
message: row.ignored ? 'Removing ignore preference…' : 'Ignoring skill…'
|
|
45
|
-
});
|
|
46
|
-
requestRender(props.api);
|
|
47
|
-
void setPublishedSkillIgnored({
|
|
48
|
-
worktree: props.api.state.path.worktree,
|
|
49
|
-
directory: props.api.state.path.directory,
|
|
50
|
-
scopeKey,
|
|
51
|
-
skillSlug: row.skill.skillSlug,
|
|
52
|
-
ignored: !row.ignored,
|
|
53
|
-
preferenceScope: getSkillPreferenceScope(row.skill)
|
|
54
|
-
}).then(() => refreshAfterPreferenceChange(row.ignored ? 'Skill is no longer ignored.' : 'Skill ignored.')).catch(showPreferenceFailure);
|
|
55
|
-
};
|
|
56
|
-
const installSkill = (row, preferenceScope) => {
|
|
57
|
-
const currentStatus = props.status();
|
|
58
|
-
if (currentStatus.kind !== 'ready') return;
|
|
59
|
-
const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;
|
|
60
|
-
setActionNotice({
|
|
61
|
-
kind: 'pending',
|
|
62
|
-
message: `Installing skill for ${preferenceScope.toUpperCase()} SCOPE…`
|
|
63
|
-
});
|
|
64
|
-
requestRender(props.api);
|
|
65
|
-
void setPublishedSkillInstalled({
|
|
66
|
-
worktree: props.api.state.path.worktree,
|
|
67
|
-
directory: props.api.state.path.directory,
|
|
68
|
-
scopeKey,
|
|
69
|
-
skillSlug: row.skill.skillSlug,
|
|
70
|
-
installed: true,
|
|
71
|
-
preferenceScope
|
|
72
|
-
}).then(() => refreshAfterPreferenceChange(`Skill installed for ${preferenceScope.toUpperCase()} SCOPE.`)).catch(showPreferenceFailure);
|
|
73
|
-
};
|
|
74
|
-
const uninstallSkill = row => {
|
|
75
|
-
const currentStatus = props.status();
|
|
76
|
-
if (currentStatus.kind !== 'ready') return;
|
|
77
|
-
const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;
|
|
78
|
-
setActionNotice({
|
|
79
|
-
kind: 'pending',
|
|
80
|
-
message: 'Uninstalling skill…'
|
|
81
|
-
});
|
|
82
|
-
requestRender(props.api);
|
|
83
|
-
void setPublishedSkillInstalled({
|
|
84
|
-
worktree: props.api.state.path.worktree,
|
|
85
|
-
directory: props.api.state.path.directory,
|
|
86
|
-
scopeKey,
|
|
87
|
-
skillSlug: row.skill.skillSlug,
|
|
88
|
-
installed: false,
|
|
89
|
-
preferenceScope: getSkillPreferenceScope(row.skill)
|
|
90
|
-
}).then(() => refreshAfterPreferenceChange('Skill uninstalled.')).catch(showPreferenceFailure);
|
|
91
|
-
};
|
|
92
|
-
createEffect(() => {
|
|
93
|
-
props.api.ui?.dialog?.setSize?.('xlarge');
|
|
94
|
-
});
|
|
95
|
-
return (() => {
|
|
96
|
-
var _el$ = _$createElement("box"),
|
|
97
|
-
_el$2 = _$createElement("box"),
|
|
98
|
-
_el$3 = _$createElement("text"),
|
|
99
|
-
_el$4 = _$createElement("b"),
|
|
100
|
-
_el$6 = _$createElement("box"),
|
|
101
|
-
_el$7 = _$createElement("text"),
|
|
102
|
-
_el$9 = _$createElement("box");
|
|
103
|
-
_$insertNode(_el$, _el$2);
|
|
104
|
-
_$insertNode(_el$, _el$9);
|
|
105
|
-
_$setProp(_el$, "width", "100%");
|
|
106
|
-
_$setProp(_el$, "flexDirection", "column");
|
|
107
|
-
_$setProp(_el$, "paddingLeft", 1);
|
|
108
|
-
_$setProp(_el$, "paddingRight", 1);
|
|
109
|
-
_$setProp(_el$, "paddingBottom", 1);
|
|
110
|
-
_$insertNode(_el$2, _el$3);
|
|
111
|
-
_$insertNode(_el$2, _el$6);
|
|
112
|
-
_$setProp(_el$2, "width", "100%");
|
|
113
|
-
_$setProp(_el$2, "flexDirection", "row");
|
|
114
|
-
_$setProp(_el$2, "justifyContent", "space-between");
|
|
115
|
-
_$setProp(_el$2, "overflow", "hidden");
|
|
116
|
-
_$insertNode(_el$3, _el$4);
|
|
117
|
-
_$setProp(_el$3, "wrapMode", "none");
|
|
118
|
-
_$setProp(_el$3, "overflow", "hidden");
|
|
119
|
-
_$insertNode(_el$4, _$createTextNode(`Wizard Skills`));
|
|
120
|
-
_$insertNode(_el$6, _el$7);
|
|
121
|
-
_$setProp(_el$6, "flexShrink", 0);
|
|
122
|
-
_$insertNode(_el$7, _$createTextNode(`Close`));
|
|
123
|
-
_$setProp(_el$7, "wrapMode", "none");
|
|
124
|
-
_$setProp(_el$9, "width", "100%");
|
|
125
|
-
_$setProp(_el$9, "flexDirection", "column");
|
|
126
|
-
_$setProp(_el$9, "marginTop", 1);
|
|
127
|
-
_$setProp(_el$9, "overflow", "hidden");
|
|
128
|
-
_$insert(_el$9, _$createComponent(WizardSkillsDialogContent, {
|
|
129
|
-
get status() {
|
|
130
|
-
return props.status;
|
|
131
|
-
},
|
|
132
|
-
actionNotice: actionNotice,
|
|
133
|
-
get theme() {
|
|
134
|
-
return theme();
|
|
135
|
-
},
|
|
136
|
-
onIgnoreSkill: ignoreSkill,
|
|
137
|
-
onInstallSkill: installSkill,
|
|
138
|
-
onUninstallSkill: uninstallSkill
|
|
139
|
-
}));
|
|
140
|
-
_$effect(_p$ => {
|
|
141
|
-
var _v$ = theme().text,
|
|
142
|
-
_v$2 = props.onClose,
|
|
143
|
-
_v$3 = theme().textMuted;
|
|
144
|
-
_v$ !== _p$.e && (_p$.e = _$setProp(_el$3, "fg", _v$, _p$.e));
|
|
145
|
-
_v$2 !== _p$.t && (_p$.t = _$setProp(_el$6, "onMouseUp", _v$2, _p$.t));
|
|
146
|
-
_v$3 !== _p$.a && (_p$.a = _$setProp(_el$7, "fg", _v$3, _p$.a));
|
|
147
|
-
return _p$;
|
|
148
|
-
}, {
|
|
149
|
-
e: undefined,
|
|
150
|
-
t: undefined,
|
|
151
|
-
a: undefined
|
|
152
|
-
});
|
|
153
|
-
return _el$;
|
|
154
|
-
})();
|
|
155
|
-
};
|
|
156
|
-
//# sourceMappingURL=wizard-skills-dialog.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createMemo","createSignal","setPublishedSkillIgnored","setPublishedSkillInstalled","requestRender","getErrorMessage","getSkillPreferenceScope","WizardSkillsDialogContent","WizardSkillsDialog","props","theme","api","current","actionNotice","setActionNotice","kind","refreshAfterPreferenceChange","message","refreshStatus","showLoading","showPreferenceFailure","error","ignoreSkill","row","currentStatus","status","scopeKey","snapshot","ignoredPublishedSkills","ignored","worktree","state","path","directory","skillSlug","skill","preferenceScope","then","catch","installSkill","toUpperCase","installed","uninstallSkill","ui","dialog","setSize","_el$","_$createElement","_el$2","_el$3","_el$4","_el$6","_el$7","_el$9","_$insertNode","_$setProp","_$createTextNode","_$insert","_$createComponent","onIgnoreSkill","onInstallSkill","onUninstallSkill","_$effect","_p$","_v$","text","_v$2","onClose","_v$3","textMuted","e","t","a","undefined"],"sources":["../../../src/tui/components/wizard-skills-dialog.tsx"],"sourcesContent":["import { createEffect, createMemo, createSignal } from 'solid-js';\nimport { setPublishedSkillIgnored, setPublishedSkillInstalled } from '../../server.js';\nimport { requestRender } from '../rendering.js';\nimport { getErrorMessage, getSkillPreferenceScope } from '../skill-helpers.js';\nimport type { PreferenceActionNotice, PreferenceScope, RefreshStatus, SkillDialogRow, StatusState, TuiPluginApi } from '../types.js';\nimport { WizardSkillsDialogContent } from './wizard-skills-dialog-content.js';\n\nexport const WizardSkillsDialog = (props: {\n api: TuiPluginApi;\n status: () => StatusState;\n refreshStatus: RefreshStatus;\n onClose: () => void;\n}) => {\n const theme = createMemo(() => props.api.theme.current);\n const [actionNotice, setActionNotice] = createSignal<PreferenceActionNotice>({ kind: 'idle' });\n\n const refreshAfterPreferenceChange = (message: string): void => {\n setActionNotice({ kind: 'success', message });\n props.refreshStatus({ showLoading: false });\n requestRender(props.api);\n };\n\n const showPreferenceFailure = (error: unknown): void => {\n setActionNotice({ kind: 'error', message: getErrorMessage(error) });\n props.refreshStatus({ showLoading: false });\n requestRender(props.api);\n };\n\n const ignoreSkill = (row: SkillDialogRow): void => {\n const currentStatus = props.status();\n if (currentStatus.kind !== 'ready') return;\n\n const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;\n setActionNotice({ kind: 'pending', message: row.ignored ? 'Removing ignore preference…' : 'Ignoring skill…' });\n requestRender(props.api);\n void setPublishedSkillIgnored({\n worktree: props.api.state.path.worktree,\n directory: props.api.state.path.directory,\n scopeKey,\n skillSlug: row.skill.skillSlug,\n ignored: !row.ignored,\n preferenceScope: getSkillPreferenceScope(row.skill),\n })\n .then(() => refreshAfterPreferenceChange(row.ignored ? 'Skill is no longer ignored.' : 'Skill ignored.'))\n .catch(showPreferenceFailure);\n };\n\n const installSkill = (row: SkillDialogRow, preferenceScope: PreferenceScope): void => {\n const currentStatus = props.status();\n if (currentStatus.kind !== 'ready') return;\n\n const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;\n setActionNotice({ kind: 'pending', message: `Installing skill for ${preferenceScope.toUpperCase()} SCOPE…` });\n requestRender(props.api);\n void setPublishedSkillInstalled({\n worktree: props.api.state.path.worktree,\n directory: props.api.state.path.directory,\n scopeKey,\n skillSlug: row.skill.skillSlug,\n installed: true,\n preferenceScope,\n })\n .then(() => refreshAfterPreferenceChange(`Skill installed for ${preferenceScope.toUpperCase()} SCOPE.`))\n .catch(showPreferenceFailure);\n };\n\n const uninstallSkill = (row: SkillDialogRow): void => {\n const currentStatus = props.status();\n if (currentStatus.kind !== 'ready') return;\n\n const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;\n setActionNotice({ kind: 'pending', message: 'Uninstalling skill…' });\n requestRender(props.api);\n void setPublishedSkillInstalled({\n worktree: props.api.state.path.worktree,\n directory: props.api.state.path.directory,\n scopeKey,\n skillSlug: row.skill.skillSlug,\n installed: false,\n preferenceScope: getSkillPreferenceScope(row.skill),\n })\n .then(() => refreshAfterPreferenceChange('Skill uninstalled.'))\n .catch(showPreferenceFailure);\n };\n\n createEffect(() => {\n props.api.ui?.dialog?.setSize?.('xlarge');\n });\n\n return (\n <box width=\"100%\" flexDirection=\"column\" paddingLeft={1} paddingRight={1} paddingBottom={1}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={theme().text} wrapMode=\"none\" overflow=\"hidden\">\n <b>Wizard Skills</b>\n </text>\n <box onMouseUp={props.onClose} flexShrink={0}>\n <text fg={theme().textMuted} wrapMode=\"none\">\n Close\n </text>\n </box>\n </box>\n <box width=\"100%\" flexDirection=\"column\" marginTop={1} overflow=\"hidden\">\n <WizardSkillsDialogContent\n status={props.status}\n actionNotice={actionNotice}\n theme={theme()}\n onIgnoreSkill={ignoreSkill}\n onInstallSkill={installSkill}\n onUninstallSkill={uninstallSkill}\n />\n </box>\n </box>\n );\n};\n"],"mappings":";;;;;;;AAAA,SAASA,YAAY,EAAEC,UAAU,EAAEC,YAAY,QAAQ,UAAU;AACjE,SAASC,wBAAwB,EAAEC,0BAA0B,QAAQ,iBAAiB;AACtF,SAASC,aAAa,QAAQ,iBAAiB;AAC/C,SAASC,eAAe,EAAEC,uBAAuB,QAAQ,qBAAqB;AAE9E,SAASC,yBAAyB,QAAQ,mCAAmC;AAE7E,OAAO,MAAMC,kBAAkB,GAAIC,KAKlC,IAAK;EACJ,MAAMC,KAAK,GAAGV,UAAU,CAAC,MAAMS,KAAK,CAACE,GAAG,CAACD,KAAK,CAACE,OAAO,CAAC;EACvD,MAAM,CAACC,YAAY,EAAEC,eAAe,CAAC,GAAGb,YAAY,CAAyB;IAAEc,IAAI,EAAE;EAAO,CAAC,CAAC;EAE9F,MAAMC,4BAA4B,GAAIC,OAAe,IAAW;IAC9DH,eAAe,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEE;IAAQ,CAAC,CAAC;IAC7CR,KAAK,CAACS,aAAa,CAAC;MAAEC,WAAW,EAAE;IAAM,CAAC,CAAC;IAC3Cf,aAAa,CAACK,KAAK,CAACE,GAAG,CAAC;EAC1B,CAAC;EAED,MAAMS,qBAAqB,GAAIC,KAAc,IAAW;IACtDP,eAAe,CAAC;MAAEC,IAAI,EAAE,OAAO;MAAEE,OAAO,EAAEZ,eAAe,CAACgB,KAAK;IAAE,CAAC,CAAC;IACnEZ,KAAK,CAACS,aAAa,CAAC;MAAEC,WAAW,EAAE;IAAM,CAAC,CAAC;IAC3Cf,aAAa,CAACK,KAAK,CAACE,GAAG,CAAC;EAC1B,CAAC;EAED,MAAMW,WAAW,GAAIC,GAAmB,IAAW;IACjD,MAAMC,aAAa,GAAGf,KAAK,CAACgB,MAAM,CAAC,CAAC;IACpC,IAAID,aAAa,CAACT,IAAI,KAAK,OAAO,EAAE;IAEpC,MAAMW,QAAQ,GAAGF,aAAa,CAACG,QAAQ,CAACC,sBAAsB,CAACF,QAAQ;IACvEZ,eAAe,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEE,OAAO,EAAEM,GAAG,CAACM,OAAO,GAAG,6BAA6B,GAAG;IAAkB,CAAC,CAAC;IAC9GzB,aAAa,CAACK,KAAK,CAACE,GAAG,CAAC;IACxB,KAAKT,wBAAwB,CAAC;MAC5B4B,QAAQ,EAAErB,KAAK,CAACE,GAAG,CAACoB,KAAK,CAACC,IAAI,CAACF,QAAQ;MACvCG,SAAS,EAAExB,KAAK,CAACE,GAAG,CAACoB,KAAK,CAACC,IAAI,CAACC,SAAS;MACzCP,QAAQ;MACRQ,SAAS,EAAEX,GAAG,CAACY,KAAK,CAACD,SAAS;MAC9BL,OAAO,EAAE,CAACN,GAAG,CAACM,OAAO;MACrBO,eAAe,EAAE9B,uBAAuB,CAACiB,GAAG,CAACY,KAAK;IACpD,CAAC,CAAC,CACCE,IAAI,CAAC,MAAMrB,4BAA4B,CAACO,GAAG,CAACM,OAAO,GAAG,6BAA6B,GAAG,gBAAgB,CAAC,CAAC,CACxGS,KAAK,CAAClB,qBAAqB,CAAC;EACjC,CAAC;EAED,MAAMmB,YAAY,GAAGA,CAAChB,GAAmB,EAAEa,eAAgC,KAAW;IACpF,MAAMZ,aAAa,GAAGf,KAAK,CAACgB,MAAM,CAAC,CAAC;IACpC,IAAID,aAAa,CAACT,IAAI,KAAK,OAAO,EAAE;IAEpC,MAAMW,QAAQ,GAAGF,aAAa,CAACG,QAAQ,CAACC,sBAAsB,CAACF,QAAQ;IACvEZ,eAAe,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEE,OAAO,EAAE,wBAAwBmB,eAAe,CAACI,WAAW,CAAC,CAAC;IAAU,CAAC,CAAC;IAC7GpC,aAAa,CAACK,KAAK,CAACE,GAAG,CAAC;IACxB,KAAKR,0BAA0B,CAAC;MAC9B2B,QAAQ,EAAErB,KAAK,CAACE,GAAG,CAACoB,KAAK,CAACC,IAAI,CAACF,QAAQ;MACvCG,SAAS,EAAExB,KAAK,CAACE,GAAG,CAACoB,KAAK,CAACC,IAAI,CAACC,SAAS;MACzCP,QAAQ;MACRQ,SAAS,EAAEX,GAAG,CAACY,KAAK,CAACD,SAAS;MAC9BO,SAAS,EAAE,IAAI;MACfL;IACF,CAAC,CAAC,CACCC,IAAI,CAAC,MAAMrB,4BAA4B,CAAC,uBAAuBoB,eAAe,CAACI,WAAW,CAAC,CAAC,SAAS,CAAC,CAAC,CACvGF,KAAK,CAAClB,qBAAqB,CAAC;EACjC,CAAC;EAED,MAAMsB,cAAc,GAAInB,GAAmB,IAAW;IACpD,MAAMC,aAAa,GAAGf,KAAK,CAACgB,MAAM,CAAC,CAAC;IACpC,IAAID,aAAa,CAACT,IAAI,KAAK,OAAO,EAAE;IAEpC,MAAMW,QAAQ,GAAGF,aAAa,CAACG,QAAQ,CAACC,sBAAsB,CAACF,QAAQ;IACvEZ,eAAe,CAAC;MAAEC,IAAI,EAAE,SAAS;MAAEE,OAAO,EAAE;IAAsB,CAAC,CAAC;IACpEb,aAAa,CAACK,KAAK,CAACE,GAAG,CAAC;IACxB,KAAKR,0BAA0B,CAAC;MAC9B2B,QAAQ,EAAErB,KAAK,CAACE,GAAG,CAACoB,KAAK,CAACC,IAAI,CAACF,QAAQ;MACvCG,SAAS,EAAExB,KAAK,CAACE,GAAG,CAACoB,KAAK,CAACC,IAAI,CAACC,SAAS;MACzCP,QAAQ;MACRQ,SAAS,EAAEX,GAAG,CAACY,KAAK,CAACD,SAAS;MAC9BO,SAAS,EAAE,KAAK;MAChBL,eAAe,EAAE9B,uBAAuB,CAACiB,GAAG,CAACY,KAAK;IACpD,CAAC,CAAC,CACCE,IAAI,CAAC,MAAMrB,4BAA4B,CAAC,oBAAoB,CAAC,CAAC,CAC9DsB,KAAK,CAAClB,qBAAqB,CAAC;EACjC,CAAC;EAEDrB,YAAY,CAAC,MAAM;IACjBU,KAAK,CAACE,GAAG,CAACgC,EAAE,EAAEC,MAAM,EAAEC,OAAO,GAAG,QAAQ,CAAC;EAC3C,CAAC,CAAC;EAEF;IAAA,IAAAC,IAAA,GAAAC,eAAA;MAAAC,KAAA,GAAAD,eAAA;MAAAE,KAAA,GAAAF,eAAA;MAAAG,KAAA,GAAAH,eAAA;MAAAI,KAAA,GAAAJ,eAAA;MAAAK,KAAA,GAAAL,eAAA;MAAAM,KAAA,GAAAN,eAAA;IAAAO,YAAA,CAAAR,IAAA,EAAAE,KAAA;IAAAM,YAAA,CAAAR,IAAA,EAAAO,KAAA;IAAAE,SAAA,CAAAT,IAAA,WACa,MAAM;IAAAS,SAAA,CAAAT,IAAA,mBAAe,QAAQ;IAAAS,SAAA,CAAAT,IAAA,iBAAc,CAAC;IAAAS,SAAA,CAAAT,IAAA,kBAAgB,CAAC;IAAAS,SAAA,CAAAT,IAAA,mBAAiB,CAAC;IAAAQ,YAAA,CAAAN,KAAA,EAAAC,KAAA;IAAAK,YAAA,CAAAN,KAAA,EAAAG,KAAA;IAAAI,SAAA,CAAAP,KAAA,WAC7E,MAAM;IAAAO,SAAA,CAAAP,KAAA,mBAAe,KAAK;IAAAO,SAAA,CAAAP,KAAA,oBAAgB,eAAe;IAAAO,SAAA,CAAAP,KAAA,cAAU,QAAQ;IAAAM,YAAA,CAAAL,KAAA,EAAAC,KAAA;IAAAK,SAAA,CAAAN,KAAA,cACnD,MAAM;IAAAM,SAAA,CAAAN,KAAA,cAAU,QAAQ;IAAAK,YAAA,CAAAJ,KAAA,EAAAM,gBAAA;IAAAF,YAAA,CAAAH,KAAA,EAAAC,KAAA;IAAAG,SAAA,CAAAJ,KAAA,gBAGd,CAAC;IAAAG,YAAA,CAAAF,KAAA,EAAAI,gBAAA;IAAAD,SAAA,CAAAH,KAAA,cACJ,MAAM;IAAAG,SAAA,CAAAF,KAAA,WAKrC,MAAM;IAAAE,SAAA,CAAAF,KAAA,mBAAe,QAAQ;IAAAE,SAAA,CAAAF,KAAA,eAAY,CAAC;IAAAE,SAAA,CAAAF,KAAA,cAAW,QAAQ;IAAAI,QAAA,CAAAJ,KAAA,EAAAK,iBAAA,CACrEnD,yBAAyB;MAAA,IACxBkB,MAAMA,CAAA;QAAA,OAAEhB,KAAK,CAACgB,MAAM;MAAA;MACpBZ,YAAY,EAAEA,YAAY;MAAA,IAC1BH,KAAKA,CAAA;QAAA,OAAEA,KAAK,CAAC,CAAC;MAAA;MACdiD,aAAa,EAAErC,WAAW;MAC1BsC,cAAc,EAAErB,YAAY;MAC5BsB,gBAAgB,EAAEnB;IAAc;IAAAoB,QAAA,CAAAC,GAAA;MAAA,IAAAC,GAAA,GAhBxBtD,KAAK,CAAC,CAAC,CAACuD,IAAI;QAAAC,IAAA,GAGNzD,KAAK,CAAC0D,OAAO;QAAAC,IAAA,GACjB1D,KAAK,CAAC,CAAC,CAAC2D,SAAS;MAAAL,GAAA,KAAAD,GAAA,CAAAO,CAAA,KAAAP,GAAA,CAAAO,CAAA,GAAAf,SAAA,CAAAN,KAAA,QAAAe,GAAA,EAAAD,GAAA,CAAAO,CAAA;MAAAJ,IAAA,KAAAH,GAAA,CAAAQ,CAAA,KAAAR,GAAA,CAAAQ,CAAA,GAAAhB,SAAA,CAAAJ,KAAA,eAAAe,IAAA,EAAAH,GAAA,CAAAQ,CAAA;MAAAH,IAAA,KAAAL,GAAA,CAAAS,CAAA,KAAAT,GAAA,CAAAS,CAAA,GAAAjB,SAAA,CAAAH,KAAA,QAAAgB,IAAA,EAAAL,GAAA,CAAAS,CAAA;MAAA,OAAAT,GAAA;IAAA;MAAAO,CAAA,EAAAG,SAAA;MAAAF,CAAA,EAAAE,SAAA;MAAAD,CAAA,EAAAC;IAAA;IAAA,OAAA3B,IAAA;EAAA;AAiBrC,CAAC","ignoreList":[]}
|