@aexol/opencode-wizard 0.1.16 → 0.2.0

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/dist/tui.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["createEffect","createMemo","createSignal","PLUGIN_ID","resolvePluginStatusSnapshotWithAuthBootstrap","setPublishedSkillInstalled","setPublishedSkillIgnored","STATUS_TIMEOUT_MS","STATUS_REFRESH_INTERVAL_MS","MAX_STATUS_MESSAGE_LENGTH","MAX_SKILL_DESCRIPTION_LENGTH","MAX_SKILL_NAME_LENGTH","MAX_SKILL_META_LENGTH","MAX_SKILL_TAGS","SKILLS_PAGE_SIZE","compactStatusMessage","message","length","slice","compactSkillDescription","compactSkillName","name","compactSkillMeta","meta","formatSkillsCatalogUnavailableMessage","snapshot","catalog","status","formatAuthStatus","authState","email","formatBackendOriginLabel","backendOrigin","hostname","URL","includes","requestRender","api","renderer","Row","props","_el$","_$createElement","_el$2","_el$3","_$createTextNode","_el$4","_$insertNode","_$setProp","_$insert","label","value","_$effect","_p$","_v$","labelColor","_v$2","valueColor","e","t","undefined","Panel","_el$5","_el$6","_el$7","_el$8","_el$9","_el$0","_el$1","title","children","_v$3","onOpen","_v$4","theme","text","_v$5","textMuted","a","StatusContent","kind","_el$11","_$p","_el$13","_el$14","warning","_$createComponent","ReadyRows","SkillsRows","current","statusContent","currentStatus","_el$15","CatalogBullet","_el$16","_el$17","getSkillDisplayName","skill","artifactName","skillName","skillSlug","getSkillDescription","whenToUse","artifactDescription","getSkillTags","tagLabels","tags","map","tag","slug","filter","Boolean","join","getSkillMeta","state","policyLabel","getRowStateLabel","row","ignored","getErrorMessage","error","Error","SkillCatalogRow","description","canUninstall","assignmentSource","_el$18","_el$19","_el$20","_el$21","_el$22","_el$24","_el$25","_el$26","_c$","_$memo","_el$27","_el$28","onInstall","_el$30","_el$32","_el$33","_el$35","_el$36","onIgnore","_el$37","_el$39","_el$40","onUninstall","_el$42","_v$6","_v$7","WizardSkillsDialogContent","page","setPage","content","_el$43","_el$45","_el$46","_el$47","_el$48","activeSkillSlugs","Set","skills","ignoredSkillSlugs","ignoredPublishedSkills","rows","contextKind","installableCatalog","has","totalPages","Math","max","ceil","currentPage","min","startIndex","endIndex","visibleRows","canGoBack","canGoForward","goBack","goForward","_el$49","_el$50","_el$51","_el$52","_el$53","_el$54","_el$55","_el$56","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$63","_el$64","_el$65","_el$67","_el$68","_el$69","_el$70","publishedSkillCount","assignmentCounts","global","project","count","onIgnoreSkill","onInstallSkill","onUninstallSkill","_v$8","_v$9","_v$0","_v$1","_v$10","o","i","_el$72","PreferenceActionNoticeRow","notice","actionNotice","_el$73","statusRows","_el$74","counts","_el$75","_el$76","WizardSkillsDialog","setActionNotice","refreshAfterPreferenceChange","refreshStatus","showLoading","showPreferenceFailure","ignoreSkill","scopeKey","worktree","path","directory","preferenceScope","then","catch","installSkill","installed","uninstallSkill","ui","dialog","setSize","_el$78","_el$79","_el$80","_el$81","_el$83","_el$84","_el$86","_v$11","_v$12","onClose","_v$13","openWizardSkillsDialog","replace","clear","createWizardStatusSlot","order","slots","home_bottom","sidebar_content","_ctx","_value","loadStatus","signal","AbortSignal","timeout","tui","setStatus","options","nextStatus","register","setInterval","id"],"sources":["../src/tui.tsx"],"sourcesContent":["/** @jsxImportSource @opentui/solid */\nimport type { RGBA } from '@opentui/core';\nimport { createEffect, createMemo, createSignal } from 'solid-js';\nimport type { JSX } from 'solid-js';\nimport {\n PLUGIN_ID,\n resolvePluginStatusSnapshotWithAuthBootstrap,\n setPublishedSkillInstalled,\n setPublishedSkillIgnored,\n type PluginStatusSnapshot,\n} from './server.js';\n\ntype StatusState =\n | {\n kind: 'loading';\n }\n | {\n kind: 'ready';\n snapshot: PluginStatusSnapshot;\n }\n | {\n kind: 'error';\n message: string;\n };\n\ntype WizardTheme = {\n text: string | RGBA | undefined;\n textMuted: string | RGBA | undefined;\n warning: string | RGBA | undefined;\n};\n\ntype TuiPluginApi = {\n theme: {\n current: WizardTheme;\n };\n ui?: {\n dialog?: {\n replace?: (render: () => JSX.Element, onClose?: () => void) => void;\n clear?: () => void;\n setSize?: (size: 'medium' | 'large' | 'xlarge') => void;\n };\n };\n renderer?: {\n requestRender?: () => void;\n };\n slots: {\n register: (slot: TuiSlotPlugin) => void;\n };\n state: {\n path: {\n worktree: string;\n directory: string;\n };\n };\n};\n\ntype TuiSlotContext = unknown;\n\ntype TuiSlotPlugin = {\n order: number;\n slots: {\n home_bottom: () => JSX.Element;\n sidebar_content: (ctx: TuiSlotContext, value: { session_id: string }) => JSX.Element;\n };\n};\n\ntype TuiPlugin = (api: TuiPluginApi) => void | Promise<void>;\n\nconst STATUS_TIMEOUT_MS = 5_000;\nconst STATUS_REFRESH_INTERVAL_MS = 5_000;\nconst MAX_STATUS_MESSAGE_LENGTH = 80;\nconst MAX_SKILL_DESCRIPTION_LENGTH = 96;\nconst MAX_SKILL_NAME_LENGTH = 48;\nconst MAX_SKILL_META_LENGTH = 72;\nconst MAX_SKILL_TAGS = 4;\nconst SKILLS_PAGE_SIZE = 5;\n\nconst compactStatusMessage = (message: string): string => {\n if (message.length <= MAX_STATUS_MESSAGE_LENGTH) return message;\n\n return `${message.slice(0, MAX_STATUS_MESSAGE_LENGTH - 1)}…`;\n};\n\nconst compactSkillDescription = (message: string): string => {\n if (message.length <= MAX_SKILL_DESCRIPTION_LENGTH) return message;\n\n return `${message.slice(0, MAX_SKILL_DESCRIPTION_LENGTH - 1)}…`;\n};\n\nconst compactSkillName = (name: string): string => {\n if (name.length <= MAX_SKILL_NAME_LENGTH) return name;\n\n return `${name.slice(0, MAX_SKILL_NAME_LENGTH - 1)}…`;\n};\n\nconst compactSkillMeta = (meta: string): string => {\n if (meta.length <= MAX_SKILL_META_LENGTH) return meta;\n\n return `${meta.slice(0, MAX_SKILL_META_LENGTH - 1)}…`;\n};\n\nconst formatSkillsCatalogUnavailableMessage = (snapshot: PluginStatusSnapshot): string => {\n if (!snapshot.catalog && snapshot.status === 'missing_auth') {\n if (snapshot.message) return compactStatusMessage(snapshot.message);\n\n return 'locked (browser auth pending)';\n }\n\n if (!snapshot.catalog && snapshot.message) return compactStatusMessage(snapshot.message);\n if (!snapshot.catalog) return `unavailable (${snapshot.status})`;\n\n return 'unavailable';\n};\n\nconst formatAuthStatus = (snapshot: PluginStatusSnapshot): string => {\n if (snapshot.authState.status !== 'authenticated') return snapshot.authState.status;\n if (!snapshot.authState.email) return 'authenticated';\n\n return snapshot.authState.email;\n};\n\nconst formatBackendOriginLabel = (backendOrigin: string): string => {\n try {\n const { hostname } = new URL(backendOrigin);\n if (hostname === 'localhost' || hostname === '127.0.0.1') return 'localhost';\n\n return 'opencode-wizard';\n } catch {\n if (backendOrigin.includes('localhost') || backendOrigin.includes('127.0.0.1')) return 'localhost';\n\n return 'opencode-wizard';\n }\n};\n\nconst requestRender = (api: TuiPluginApi): void => {\n try {\n api.renderer?.requestRender?.();\n } catch {\n // Ignore render request failures; state is still updated.\n }\n};\n\nconst Row = (props: {\n label: string;\n value: string;\n labelColor: string | RGBA | undefined;\n valueColor: string | RGBA | undefined;\n}) => (\n <box width=\"100%\" flexDirection=\"row\" overflow=\"hidden\">\n <text fg={props.labelColor} flexShrink={0} wrapMode=\"none\">\n {props.label}:&nbsp;\n </text>\n <text fg={props.valueColor} flexGrow={1} overflow=\"hidden\" wrapMode=\"none\">\n {props.value}\n </text>\n </box>\n);\n\nconst Panel = (props: {\n title: string;\n theme: TuiPluginApi['theme']['current'];\n onOpen: () => void;\n children: JSX.Element;\n}) => (\n <box width=\"100%\" flexDirection=\"column\" paddingRight={1} onMouseUp={props.onOpen}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box flexShrink={0}>\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{props.title}</b>\n </text>\n </box>\n <box flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n open\n </text>\n </box>\n </box>\n {props.children}\n </box>\n);\n\nconst StatusContent = (props: { status: StatusState; theme: TuiPluginApi['theme']['current'] }) => {\n if (props.status.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n loading…\n </text>\n );\n }\n\n if (props.status.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(props.status.message)}\n </text>\n );\n }\n\n return <ReadyRows snapshot={props.status.snapshot} theme={props.theme} />;\n};\n\nconst SkillsRows = (props: { api: TuiPluginApi; status: () => StatusState }) => {\n const theme = createMemo(() => props.api.theme.current);\n const statusContent = () => {\n const currentStatus = props.status();\n\n return <StatusContent status={currentStatus} theme={theme()} />;\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusContent()}\n </box>\n );\n};\n\nconst CatalogBullet = (props: { value: string; theme: TuiPluginApi['theme']['current'] }) => (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {' - '}{props.value}\n </text>\n);\n\ntype PublishedSkillSummary = NonNullable<PluginStatusSnapshot['catalog']>['skills'][number];\ntype SkillRowState = 'installed-global' | 'installed-project' | 'installable';\ntype SkillDialogRow = {\n skill: PublishedSkillSummary;\n ignored: boolean;\n state: SkillRowState;\n};\ntype RefreshStatus = (options?: { showLoading?: boolean }) => void;\ntype PreferenceActionNotice =\n | {\n kind: 'idle';\n }\n | {\n kind: 'pending';\n message: string;\n }\n | {\n kind: 'success';\n message: string;\n }\n | {\n kind: 'error';\n message: string;\n };\n\nconst getSkillDisplayName = (skill: PublishedSkillSummary): string => skill.artifactName || skill.skillName || skill.skillSlug;\n\nconst getSkillDescription = (skill: PublishedSkillSummary): string | null => {\n if (skill.whenToUse) return skill.whenToUse;\n if (skill.artifactDescription) return skill.artifactDescription;\n\n return null;\n};\n\nconst getSkillTags = (skill: PublishedSkillSummary): string => {\n const tagLabels = skill.tags.map((tag) => tag.label || tag.slug).filter(Boolean).slice(0, MAX_SKILL_TAGS);\n if (tagLabels.length === 0) return 'no tags';\n\n return tagLabels.join(', ');\n};\n\nconst getSkillMeta = (skill: PublishedSkillSummary, state: SkillRowState): string =>\n `${skill.policyLabel} · ${state} · ${getSkillTags(skill)}`;\n\nconst getRowStateLabel = (row: SkillDialogRow): string => {\n if (row.ignored) return 'ignored';\n if (row.state === 'installable') return 'not installed';\n return row.state === 'installed-global' ? 'installed global' : 'installed project';\n};\n\nconst getErrorMessage = (error: unknown): string => {\n if (error instanceof Error && error.message) return error.message;\n return 'Preference update failed. Check plugin auth/backend status and try again.';\n};\n\nconst SkillCatalogRow = (props: {\n row: SkillDialogRow;\n theme: TuiPluginApi['theme']['current'];\n onIgnore: (row: SkillDialogRow) => void;\n onInstall: (row: SkillDialogRow, preferenceScope: 'global' | 'project') => 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\">Global</text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\"> / </text>\n <box onMouseUp={() => props.onInstall(props.row, 'project')} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">Project</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\"> / </text>\n <box onMouseUp={() => props.onUninstall(props.row)} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">Uninstall</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\nconst WizardSkillsDialogContent = (props: {\n status: () => StatusState;\n actionNotice: () => PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n onIgnoreSkill: (row: SkillDialogRow) => void;\n onInstallSkill: (row: SkillDialogRow, preferenceScope: 'global' | 'project') => 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 activeSkillSlugs = new Set(catalog.skills.map((skill) => skill.skillSlug));\n const ignoredSkillSlugs = new Set(currentStatus.snapshot.ignoredPublishedSkills.skills.map((skill) => skill.skillSlug));\n const rows: SkillDialogRow[] = [\n ...catalog.skills.map((skill) => ({\n skill,\n ignored: false,\n state: skill.contextKind === 'global' ? ('installed-global' as const) : ('installed-project' as const),\n })),\n ...currentStatus.snapshot.ignoredPublishedSkills.skills.map((skill) => ({\n skill,\n ignored: true,\n state: skill.contextKind === 'global' ? ('installed-global' as const) : ('installed-project' as const),\n })),\n ...(currentStatus.snapshot.installableCatalog?.skills ?? [])\n .filter((skill) => !activeSkillSlugs.has(skill.skillSlug) && !ignoredSkillSlugs.has(skill.skillSlug))\n .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 &nbsp;· {catalog.assignmentCounts.global} global · {catalog.assignmentCounts.project} workspace\n &nbsp;· {currentStatus.snapshot.ignoredPublishedSkills.count} ignored\n &nbsp;· {currentStatus.snapshot.installableCatalog?.count ?? 0} installable\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\nconst PreferenceActionNoticeRow = (props: {\n notice: PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n}) => {\n if (props.notice.kind === 'idle') return null;\n\n return (\n <text\n fg={props.notice.kind === 'error' ? props.theme.warning : props.theme.textMuted}\n wrapMode=\"none\"\n overflow=\"hidden\"\n >\n {compactStatusMessage(props.notice.message)}\n </text>\n );\n};\n\nconst ReadyRows = (props: { snapshot: PluginStatusSnapshot; theme: TuiPluginApi['theme']['current'] }) => {\n const statusRows = (\n <>\n <Row label=\"url\" value={formatBackendOriginLabel(props.snapshot.backendOrigin)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n <Row label=\"auth\" value={formatAuthStatus(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </>\n );\n\n if (!props.snapshot.catalog) {\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <Row label=\"catalog\" value={formatSkillsCatalogUnavailableMessage(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </box>\n );\n }\n\n const counts = props.snapshot.catalog.assignmentCounts;\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog:\n </text>\n <CatalogBullet value={`${props.snapshot.catalog.publishedSkillCount} loaded`} theme={props.theme} />\n <CatalogBullet value={`${counts.global} global`} theme={props.theme} />\n <CatalogBullet value={`${counts.project} workspace`} theme={props.theme} />\n <CatalogBullet value={`${props.snapshot.ignoredPublishedSkills.count} ignored`} theme={props.theme} />\n </box>\n );\n};\n\nconst 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: row.state === 'installed-global' ? 'global' : 'project',\n })\n .then(() => refreshAfterPreferenceChange(row.ignored ? 'Skill is no longer ignored.' : 'Skill ignored.'))\n .catch(showPreferenceFailure);\n };\n\n const installSkill = (row: SkillDialogRow, preferenceScope: 'global' | 'project'): 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}…` });\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}.`))\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: row.state === 'installed-global' ? 'global' : 'project',\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\nconst openWizardSkillsDialog = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): void => {\n const dialog = api.ui?.dialog;\n if (!dialog?.replace) return;\n\n refreshStatus({ showLoading: true });\n\n dialog.replace(\n () => (\n <WizardSkillsDialog\n api={api}\n status={status}\n refreshStatus={refreshStatus}\n onClose={() => {\n dialog.clear?.();\n requestRender(api);\n }}\n />\n ),\n () => {\n requestRender(api);\n },\n );\n\n requestRender(api);\n};\n\nconst createWizardStatusSlot = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): TuiSlotPlugin => ({\n order: 240,\n slots: {\n home_bottom: () => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n sidebar_content: (_ctx: TuiSlotContext, _value: { session_id: string }) => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n },\n});\n\nconst loadStatus = async (api: TuiPluginApi): Promise<StatusState> => {\n try {\n const snapshot = await resolvePluginStatusSnapshotWithAuthBootstrap({\n worktree: api.state.path.worktree,\n directory: api.state.path.directory,\n signal: AbortSignal.timeout(STATUS_TIMEOUT_MS),\n });\n\n return {\n kind: 'ready',\n snapshot,\n };\n } catch (error) {\n return {\n kind: 'error',\n message: error instanceof Error ? error.message : 'Unable to load opencode-wizard status.',\n };\n }\n};\n\nconst tui: TuiPlugin = async (api) => {\n const [status, setStatus] = createSignal<StatusState>({ kind: 'loading' });\n const refreshStatus: RefreshStatus = (options) => {\n if (options?.showLoading) {\n setStatus({ kind: 'loading' });\n requestRender(api);\n }\n\n void loadStatus(api).then((nextStatus) => {\n setStatus(nextStatus);\n requestRender(api);\n });\n };\n\n api.slots.register(createWizardStatusSlot(api, status, refreshStatus));\n refreshStatus();\n setInterval(refreshStatus, STATUS_REFRESH_INTERVAL_MS);\n};\n\nexport default {\n id: PLUGIN_ID,\n tui,\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createEffect","createMemo","createSignal","PLUGIN_ID","resolvePluginStatusSnapshotWithAuthBootstrap","setPublishedSkillInstalled","setPublishedSkillIgnored","STATUS_TIMEOUT_MS","STATUS_REFRESH_INTERVAL_MS","MAX_STATUS_MESSAGE_LENGTH","MAX_SKILL_DESCRIPTION_LENGTH","MAX_SKILL_NAME_LENGTH","MAX_SKILL_META_LENGTH","MAX_SKILL_TAGS","SKILLS_PAGE_SIZE","compactStatusMessage","message","length","slice","compactSkillDescription","compactSkillName","name","compactSkillMeta","meta","formatSkillsCatalogUnavailableMessage","snapshot","catalog","status","formatAuthStatus","authState","email","formatBackendOriginLabel","backendOrigin","hostname","URL","includes","requestRender","api","renderer","Row","props","_el$","_$createElement","_el$2","_el$3","_$createTextNode","_el$4","_$insertNode","_$setProp","_$insert","label","value","_$effect","_p$","_v$","labelColor","_v$2","valueColor","e","t","undefined","Panel","_el$5","_el$6","_el$7","_el$8","_el$9","_el$0","_el$1","title","children","_v$3","onOpen","_v$4","theme","text","_v$5","textMuted","a","StatusContent","kind","_el$11","_$p","_el$13","_el$14","warning","_$createComponent","ReadyRows","SkillsRows","current","statusContent","currentStatus","_el$15","CatalogBullet","_el$16","_el$17","getSkillDisplayName","skill","artifactName","skillName","skillSlug","getSkillDescription","whenToUse","artifactDescription","getSkillTags","tagLabels","tags","map","tag","slug","filter","Boolean","join","isUserScopeAssignment","assignmentSource","getSkillScopeLabel","state","contextKind","getSkillPreferenceScope","getSkillMeta","assignmentLabel","policyLabel","getRowStateLabel","row","scopeLabel","ignored","getSkillRowState","getErrorMessage","error","Error","SkillCatalogRow","description","canUninstall","_el$18","_el$19","_el$20","_el$21","_el$22","_el$24","_el$25","_el$26","_c$","_$memo","_el$27","_el$28","onInstall","_el$30","_el$32","_el$33","_el$35","_el$36","onIgnore","_el$37","_el$39","_el$40","onUninstall","_el$42","_v$6","_v$7","WizardSkillsDialogContent","page","setPage","content","_el$43","_el$45","_el$46","_el$47","_el$48","activeSkillSlugs","Set","skills","ignoredSkillSlugs","ignoredPublishedSkills","rows","installableCatalog","has","totalPages","Math","max","ceil","currentPage","min","startIndex","endIndex","visibleRows","canGoBack","canGoForward","goBack","goForward","_el$49","_el$50","_el$51","_el$52","_el$53","_el$54","_el$55","_el$56","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$63","_el$64","_el$65","_el$66","_el$68","_el$69","_el$70","_el$71","publishedSkillCount","assignmentCounts","global","project","user","count","onIgnoreSkill","onInstallSkill","onUninstallSkill","_v$8","_v$9","_v$0","_v$1","_v$10","o","i","_el$73","PreferenceActionNoticeRow","notice","actionNotice","_el$74","statusRows","_el$75","counts","_el$76","_el$77","WizardSkillsDialog","setActionNotice","refreshAfterPreferenceChange","refreshStatus","showLoading","showPreferenceFailure","ignoreSkill","scopeKey","worktree","path","directory","preferenceScope","then","catch","installSkill","toUpperCase","installed","uninstallSkill","ui","dialog","setSize","_el$79","_el$80","_el$81","_el$82","_el$84","_el$85","_el$87","_v$11","_v$12","onClose","_v$13","openWizardSkillsDialog","replace","clear","createWizardStatusSlot","order","slots","home_bottom","sidebar_content","_ctx","_value","loadStatus","signal","AbortSignal","timeout","tui","setStatus","options","nextStatus","register","setInterval","id"],"sources":["../src/tui.tsx"],"sourcesContent":["/** @jsxImportSource @opentui/solid */\nimport type { RGBA } from '@opentui/core';\nimport { createEffect, createMemo, createSignal } from 'solid-js';\nimport type { JSX } from 'solid-js';\nimport {\n PLUGIN_ID,\n resolvePluginStatusSnapshotWithAuthBootstrap,\n setPublishedSkillInstalled,\n setPublishedSkillIgnored,\n type PluginStatusSnapshot,\n} from './server.js';\n\ntype StatusState =\n | {\n kind: 'loading';\n }\n | {\n kind: 'ready';\n snapshot: PluginStatusSnapshot;\n }\n | {\n kind: 'error';\n message: string;\n };\n\ntype WizardTheme = {\n text: string | RGBA | undefined;\n textMuted: string | RGBA | undefined;\n warning: string | RGBA | undefined;\n};\n\ntype TuiPluginApi = {\n theme: {\n current: WizardTheme;\n };\n ui?: {\n dialog?: {\n replace?: (render: () => JSX.Element, onClose?: () => void) => void;\n clear?: () => void;\n setSize?: (size: 'medium' | 'large' | 'xlarge') => void;\n };\n };\n renderer?: {\n requestRender?: () => void;\n };\n slots: {\n register: (slot: TuiSlotPlugin) => void;\n };\n state: {\n path: {\n worktree: string;\n directory: string;\n };\n };\n};\n\ntype TuiSlotContext = unknown;\n\ntype TuiSlotPlugin = {\n order: number;\n slots: {\n home_bottom: () => JSX.Element;\n sidebar_content: (ctx: TuiSlotContext, value: { session_id: string }) => JSX.Element;\n };\n};\n\ntype TuiPlugin = (api: TuiPluginApi) => void | Promise<void>;\n\nconst STATUS_TIMEOUT_MS = 5_000;\nconst STATUS_REFRESH_INTERVAL_MS = 5_000;\nconst MAX_STATUS_MESSAGE_LENGTH = 80;\nconst MAX_SKILL_DESCRIPTION_LENGTH = 96;\nconst MAX_SKILL_NAME_LENGTH = 48;\nconst MAX_SKILL_META_LENGTH = 72;\nconst MAX_SKILL_TAGS = 4;\nconst SKILLS_PAGE_SIZE = 5;\n\nconst compactStatusMessage = (message: string): string => {\n if (message.length <= MAX_STATUS_MESSAGE_LENGTH) return message;\n\n return `${message.slice(0, MAX_STATUS_MESSAGE_LENGTH - 1)}…`;\n};\n\nconst compactSkillDescription = (message: string): string => {\n if (message.length <= MAX_SKILL_DESCRIPTION_LENGTH) return message;\n\n return `${message.slice(0, MAX_SKILL_DESCRIPTION_LENGTH - 1)}…`;\n};\n\nconst compactSkillName = (name: string): string => {\n if (name.length <= MAX_SKILL_NAME_LENGTH) return name;\n\n return `${name.slice(0, MAX_SKILL_NAME_LENGTH - 1)}…`;\n};\n\nconst compactSkillMeta = (meta: string): string => {\n if (meta.length <= MAX_SKILL_META_LENGTH) return meta;\n\n return `${meta.slice(0, MAX_SKILL_META_LENGTH - 1)}…`;\n};\n\nconst formatSkillsCatalogUnavailableMessage = (snapshot: PluginStatusSnapshot): string => {\n if (!snapshot.catalog && snapshot.status === 'missing_auth') {\n if (snapshot.message) return compactStatusMessage(snapshot.message);\n\n return 'locked (browser auth pending)';\n }\n\n if (!snapshot.catalog && snapshot.message) return compactStatusMessage(snapshot.message);\n if (!snapshot.catalog) return `unavailable (${snapshot.status})`;\n\n return 'unavailable';\n};\n\nconst formatAuthStatus = (snapshot: PluginStatusSnapshot): string => {\n if (snapshot.authState.status !== 'authenticated') return snapshot.authState.status;\n if (!snapshot.authState.email) return 'authenticated';\n\n return snapshot.authState.email;\n};\n\nconst formatBackendOriginLabel = (backendOrigin: string): string => {\n try {\n const { hostname } = new URL(backendOrigin);\n if (hostname === 'localhost' || hostname === '127.0.0.1') return 'localhost';\n\n return 'opencode-wizard';\n } catch {\n if (backendOrigin.includes('localhost') || backendOrigin.includes('127.0.0.1')) return 'localhost';\n\n return 'opencode-wizard';\n }\n};\n\nconst requestRender = (api: TuiPluginApi): void => {\n try {\n api.renderer?.requestRender?.();\n } catch {\n // Ignore render request failures; state is still updated.\n }\n};\n\nconst Row = (props: {\n label: string;\n value: string;\n labelColor: string | RGBA | undefined;\n valueColor: string | RGBA | undefined;\n}) => (\n <box width=\"100%\" flexDirection=\"row\" overflow=\"hidden\">\n <text fg={props.labelColor} flexShrink={0} wrapMode=\"none\">\n {props.label}:&nbsp;\n </text>\n <text fg={props.valueColor} flexGrow={1} overflow=\"hidden\" wrapMode=\"none\">\n {props.value}\n </text>\n </box>\n);\n\nconst Panel = (props: {\n title: string;\n theme: TuiPluginApi['theme']['current'];\n onOpen: () => void;\n children: JSX.Element;\n}) => (\n <box width=\"100%\" flexDirection=\"column\" paddingRight={1} onMouseUp={props.onOpen}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box flexShrink={0}>\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{props.title}</b>\n </text>\n </box>\n <box flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n open\n </text>\n </box>\n </box>\n {props.children}\n </box>\n);\n\nconst StatusContent = (props: { status: StatusState; theme: TuiPluginApi['theme']['current'] }) => {\n if (props.status.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n loading…\n </text>\n );\n }\n\n if (props.status.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(props.status.message)}\n </text>\n );\n }\n\n return <ReadyRows snapshot={props.status.snapshot} theme={props.theme} />;\n};\n\nconst SkillsRows = (props: { api: TuiPluginApi; status: () => StatusState }) => {\n const theme = createMemo(() => props.api.theme.current);\n const statusContent = () => {\n const currentStatus = props.status();\n\n return <StatusContent status={currentStatus} theme={theme()} />;\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusContent()}\n </box>\n );\n};\n\nconst CatalogBullet = (props: { value: string; theme: TuiPluginApi['theme']['current'] }) => (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {' - '}{props.value}\n </text>\n);\n\ntype PublishedSkillSummary = NonNullable<PluginStatusSnapshot['catalog']>['skills'][number];\ntype SkillRowState = 'global-scope' | 'project-scope' | 'user-scope' | 'installable';\ntype SkillDialogRow = {\n skill: PublishedSkillSummary;\n ignored: boolean;\n state: SkillRowState;\n};\ntype RefreshStatus = (options?: { showLoading?: boolean }) => void;\ntype PreferenceActionNotice =\n | {\n kind: 'idle';\n }\n | {\n kind: 'pending';\n message: string;\n }\n | {\n kind: 'success';\n message: string;\n }\n | {\n kind: 'error';\n message: string;\n };\n\nconst getSkillDisplayName = (skill: PublishedSkillSummary): string => skill.artifactName || skill.skillName || skill.skillSlug;\n\nconst getSkillDescription = (skill: PublishedSkillSummary): string | null => {\n if (skill.whenToUse) return skill.whenToUse;\n if (skill.artifactDescription) return skill.artifactDescription;\n\n return null;\n};\n\nconst getSkillTags = (skill: PublishedSkillSummary): string => {\n const tagLabels = skill.tags.map((tag) => tag.label || tag.slug).filter(Boolean).slice(0, MAX_SKILL_TAGS);\n if (tagLabels.length === 0) return 'no tags';\n\n return tagLabels.join(', ');\n};\n\nconst isUserScopeAssignment = (assignmentSource: string): boolean =>\n assignmentSource === 'USER' || assignmentSource === 'USER_GLOBAL' || assignmentSource === 'USER_WORKSPACE';\n\nconst getSkillScopeLabel = (skill: PublishedSkillSummary, state: SkillRowState): string => {\n if (state === 'installable') return 'AVAILABLE';\n if (isUserScopeAssignment(skill.assignmentSource) || state === 'user-scope') return 'USER SCOPE';\n if (state === 'global-scope' || skill.contextKind === 'global') return 'GLOBAL SCOPE';\n\n return 'PROJECT SCOPE';\n};\n\nconst getSkillPreferenceScope = (skill: PublishedSkillSummary): 'global' | 'project' => {\n if (skill.assignmentSource === 'USER_GLOBAL') return 'global';\n if (skill.assignmentSource === 'USER_WORKSPACE') return 'project';\n if (skill.contextKind === 'global') return 'global';\n\n return 'project';\n};\n\nconst getSkillMeta = (skill: PublishedSkillSummary, state: SkillRowState): string =>\n `${getSkillScopeLabel(skill, state)} · ${skill.assignmentLabel} · ${skill.policyLabel} · ${getSkillTags(skill)}`;\n\nconst getRowStateLabel = (row: SkillDialogRow): string => {\n const scopeLabel = getSkillScopeLabel(row.skill, row.state);\n if (row.ignored) return `ignored · ${scopeLabel}`;\n if (row.state === 'installable') return 'not installed';\n return `active · ${scopeLabel}`;\n};\n\nconst getSkillRowState = (skill: PublishedSkillSummary): SkillRowState => {\n if (isUserScopeAssignment(skill.assignmentSource)) return 'user-scope';\n if (skill.contextKind === 'global') return 'global-scope';\n\n return 'project-scope';\n};\n\nconst getErrorMessage = (error: unknown): string => {\n if (error instanceof Error && error.message) return error.message;\n return 'Preference update failed. Check plugin auth/backend status and try again.';\n};\n\nconst SkillCatalogRow = (props: {\n row: SkillDialogRow;\n theme: TuiPluginApi['theme']['current'];\n onIgnore: (row: SkillDialogRow) => void;\n onInstall: (row: SkillDialogRow, preferenceScope: 'global' | 'project') => 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\">GLOBAL SCOPE</text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\"> / </text>\n <box onMouseUp={() => props.onInstall(props.row, 'project')} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">PROJECT SCOPE</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\"> / </text>\n <box onMouseUp={() => props.onUninstall(props.row)} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">Uninstall</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\nconst WizardSkillsDialogContent = (props: {\n status: () => StatusState;\n actionNotice: () => PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n onIgnoreSkill: (row: SkillDialogRow) => void;\n onInstallSkill: (row: SkillDialogRow, preferenceScope: 'global' | 'project') => 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 activeSkillSlugs = new Set(catalog.skills.map((skill) => skill.skillSlug));\n const ignoredSkillSlugs = new Set(currentStatus.snapshot.ignoredPublishedSkills.skills.map((skill) => skill.skillSlug));\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 ...(currentStatus.snapshot.installableCatalog?.skills ?? [])\n .filter((skill) => !activeSkillSlugs.has(skill.skillSlug) && !ignoredSkillSlugs.has(skill.skillSlug))\n .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 &nbsp;· {catalog.assignmentCounts.global} GLOBAL SCOPE · {catalog.assignmentCounts.project} PROJECT SCOPE\n &nbsp;· {catalog.assignmentCounts.user} USER SCOPE\n &nbsp;· {currentStatus.snapshot.ignoredPublishedSkills.count} ignored\n &nbsp;· {currentStatus.snapshot.installableCatalog?.count ?? 0} installable\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\nconst PreferenceActionNoticeRow = (props: {\n notice: PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n}) => {\n if (props.notice.kind === 'idle') return null;\n\n return (\n <text\n fg={props.notice.kind === 'error' ? props.theme.warning : props.theme.textMuted}\n wrapMode=\"none\"\n overflow=\"hidden\"\n >\n {compactStatusMessage(props.notice.message)}\n </text>\n );\n};\n\nconst ReadyRows = (props: { snapshot: PluginStatusSnapshot; theme: TuiPluginApi['theme']['current'] }) => {\n const statusRows = (\n <>\n <Row label=\"url\" value={formatBackendOriginLabel(props.snapshot.backendOrigin)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n <Row label=\"auth\" value={formatAuthStatus(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </>\n );\n\n if (!props.snapshot.catalog) {\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <Row label=\"catalog\" value={formatSkillsCatalogUnavailableMessage(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </box>\n );\n }\n\n const counts = props.snapshot.catalog.assignmentCounts;\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog:\n </text>\n <CatalogBullet value={`${props.snapshot.catalog.publishedSkillCount} loaded`} theme={props.theme} />\n <CatalogBullet value={`${counts.global} GLOBAL SCOPE`} theme={props.theme} />\n <CatalogBullet value={`${counts.project} PROJECT SCOPE`} theme={props.theme} />\n <CatalogBullet value={`${counts.user} USER SCOPE`} theme={props.theme} />\n <CatalogBullet value={`${props.snapshot.ignoredPublishedSkills.count} ignored`} theme={props.theme} />\n </box>\n );\n};\n\nconst 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: 'global' | 'project'): 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\nconst openWizardSkillsDialog = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): void => {\n const dialog = api.ui?.dialog;\n if (!dialog?.replace) return;\n\n refreshStatus({ showLoading: true });\n\n dialog.replace(\n () => (\n <WizardSkillsDialog\n api={api}\n status={status}\n refreshStatus={refreshStatus}\n onClose={() => {\n dialog.clear?.();\n requestRender(api);\n }}\n />\n ),\n () => {\n requestRender(api);\n },\n );\n\n requestRender(api);\n};\n\nconst createWizardStatusSlot = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): TuiSlotPlugin => ({\n order: 240,\n slots: {\n home_bottom: () => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n sidebar_content: (_ctx: TuiSlotContext, _value: { session_id: string }) => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n },\n});\n\nconst loadStatus = async (api: TuiPluginApi): Promise<StatusState> => {\n try {\n const snapshot = await resolvePluginStatusSnapshotWithAuthBootstrap({\n worktree: api.state.path.worktree,\n directory: api.state.path.directory,\n signal: AbortSignal.timeout(STATUS_TIMEOUT_MS),\n });\n\n return {\n kind: 'ready',\n snapshot,\n };\n } catch (error) {\n return {\n kind: 'error',\n message: error instanceof Error ? error.message : 'Unable to load opencode-wizard status.',\n };\n }\n};\n\nconst tui: TuiPlugin = async (api) => {\n const [status, setStatus] = createSignal<StatusState>({ kind: 'loading' });\n const refreshStatus: RefreshStatus = (options) => {\n if (options?.showLoading) {\n setStatus({ kind: 'loading' });\n requestRender(api);\n }\n\n void loadStatus(api).then((nextStatus) => {\n setStatus(nextStatus);\n requestRender(api);\n });\n };\n\n api.slots.register(createWizardStatusSlot(api, status, refreshStatus));\n refreshStatus();\n setInterval(refreshStatus, STATUS_REFRESH_INTERVAL_MS);\n};\n\nexport default {\n id: PLUGIN_ID,\n tui,\n};\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aexol/opencode-wizard",
3
- "version": "0.1.16",
3
+ "version": "0.2.0",
4
4
  "description": "OpenCode plugin for opencode-wizard published skills",
5
5
  "type": "module",
6
6
  "oc-plugin": [