@tutti-os/workspace-issue-manager 0.0.2 → 0.0.4
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/{chunk-4B2P64PY.js → chunk-FZXBXPXT.js} +2 -2
- package/dist/{chunk-JDYJIVGG.js → chunk-LZL5SEKE.js} +1 -9
- package/dist/chunk-LZL5SEKE.js.map +1 -0
- package/dist/{chunk-WJSZFKUD.js → chunk-QRRPA7TH.js} +7 -3
- package/dist/chunk-QRRPA7TH.js.map +1 -0
- package/dist/{chunk-DLB2WIV6.js → chunk-RJX54QWL.js} +249 -235
- package/dist/chunk-RJX54QWL.js.map +1 -0
- package/dist/core/index.d.ts +2 -1
- package/dist/core/index.js +2 -2
- package/dist/{feature-D16xMEZU.d.ts → feature-D1XjdnWx.d.ts} +2 -0
- package/dist/i18n/index.js +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.js +3 -3
- package/dist/{issueManagerControllerService.interface-D8Z1B9k4.d.ts → issueManagerControllerService.interface-DsqD_RrN.d.ts} +1 -1
- package/dist/services/index.d.ts +4 -3
- package/dist/services/index.js +3 -3
- package/dist/ui/index.d.ts +3 -2
- package/dist/ui/index.js +4 -4
- package/dist/workbench/index.d.ts +3 -2
- package/dist/workbench/index.js +4 -4
- package/package.json +11 -10
- package/dist/chunk-DLB2WIV6.js.map +0 -1
- package/dist/chunk-JDYJIVGG.js.map +0 -1
- package/dist/chunk-WJSZFKUD.js.map +0 -1
- /package/dist/{chunk-4B2P64PY.js.map → chunk-FZXBXPXT.js.map} +0 -0
|
@@ -23,7 +23,7 @@ import {
|
|
|
23
23
|
resolveIssueManagerTopicDeleteErrorMessage,
|
|
24
24
|
toContextRefInput,
|
|
25
25
|
toIssueManagerWorkspaceFileLinkInput
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-FZXBXPXT.js";
|
|
27
27
|
import {
|
|
28
28
|
appendIssueManagerWorkspaceFileLinksToContent,
|
|
29
29
|
clampIssueManagerSidebarWidth,
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
issueManagerSidebarMinWidth,
|
|
35
35
|
normalizeIssueManagerContent,
|
|
36
36
|
shouldAutoCollapseIssueManagerSidebar
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-QRRPA7TH.js";
|
|
38
38
|
|
|
39
39
|
// src/ui/react/internal/shell/IssueManagerNodeState.ts
|
|
40
40
|
import { useEffect, useEffectEvent, useState } from "react";
|
|
@@ -1850,6 +1850,7 @@ function useIssueManagerController({
|
|
|
1850
1850
|
notification,
|
|
1851
1851
|
providerOptions,
|
|
1852
1852
|
executionDirectoryProjectService: feature.executionDirectoryPicker?.service ?? null,
|
|
1853
|
+
workspaceUserProjectI18n: feature.workspaceUserProjectI18n,
|
|
1853
1854
|
listExecutionDirectoryProjects: () => feature.executionDirectoryPicker?.list() ?? Promise.resolve({ projects: [] }),
|
|
1854
1855
|
referenceTarget,
|
|
1855
1856
|
selectTopic(topicId) {
|
|
@@ -2110,20 +2111,20 @@ function IssueManagerDetailTextSection({
|
|
|
2110
2111
|
const bodyText = stripIssueManagerDescriptionTerminalPunctuation(body);
|
|
2111
2112
|
const metaText = meta ? stripIssueManagerDescriptionTerminalPunctuation(meta) : null;
|
|
2112
2113
|
const bodyClassName = cn(
|
|
2113
|
-
"max-w-full whitespace-normal break-words text-[
|
|
2114
|
+
"max-w-full whitespace-normal break-words text-[13px] leading-5 [overflow-wrap:anywhere]",
|
|
2114
2115
|
isPlaceholder ? "font-normal text-[var(--text-secondary)]" : tone === "destructive" ? "font-semibold text-[var(--state-danger)]" : "font-semibold text-[var(--text-primary)]"
|
|
2115
2116
|
);
|
|
2116
2117
|
if (isPlaceholder) {
|
|
2117
2118
|
return /* @__PURE__ */ jsxs3("section", { className: "grid gap-2.5", children: [
|
|
2118
|
-
/* @__PURE__ */ jsx3("h3", { className: "text-
|
|
2119
|
+
/* @__PURE__ */ jsx3("h3", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: label }),
|
|
2119
2120
|
/* @__PURE__ */ jsx3("p", { className: bodyClassName, children: bodyText })
|
|
2120
2121
|
] });
|
|
2121
2122
|
}
|
|
2122
2123
|
return /* @__PURE__ */ jsxs3("section", { className: "grid gap-2.5", children: [
|
|
2123
|
-
/* @__PURE__ */ jsx3("h3", { className: "text-
|
|
2124
|
+
/* @__PURE__ */ jsx3("h3", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: label }),
|
|
2124
2125
|
/* @__PURE__ */ jsxs3("div", { className: "min-w-0 rounded-[12px] border border-[var(--line-2)] px-4 py-3", children: [
|
|
2125
2126
|
/* @__PURE__ */ jsx3("p", { className: bodyClassName, children: bodyText }),
|
|
2126
|
-
metaText ? /* @__PURE__ */ jsx3("p", { className: "mt-1 truncate text-
|
|
2127
|
+
metaText ? /* @__PURE__ */ jsx3("p", { className: "mt-1 truncate text-[11px] font-normal text-[var(--text-secondary)]", children: metaText }) : null
|
|
2127
2128
|
] })
|
|
2128
2129
|
] });
|
|
2129
2130
|
}
|
|
@@ -2161,7 +2162,7 @@ function IssueManagerLatestRunStatusSection({
|
|
|
2161
2162
|
}) : null;
|
|
2162
2163
|
if (renderedLatestRunStatus !== null && renderedLatestRunStatus !== void 0) {
|
|
2163
2164
|
return /* @__PURE__ */ jsxs3("section", { className: "grid gap-2.5", children: [
|
|
2164
|
-
/* @__PURE__ */ jsx3("h3", { className: "text-
|
|
2165
|
+
/* @__PURE__ */ jsx3("h3", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: copy.t("labels.latestRunStatus") }),
|
|
2165
2166
|
renderedLatestRunStatus
|
|
2166
2167
|
] });
|
|
2167
2168
|
}
|
|
@@ -2184,7 +2185,7 @@ function IssueManagerLatestRunStatusSection({
|
|
|
2184
2185
|
"p",
|
|
2185
2186
|
{
|
|
2186
2187
|
className: cn(
|
|
2187
|
-
"min-w-0 flex-1 text-[
|
|
2188
|
+
"min-w-0 flex-1 text-[13px] font-semibold leading-5 text-[var(--text-primary)] [overflow-wrap:anywhere]",
|
|
2188
2189
|
agentSessionId ? "font-mono" : ""
|
|
2189
2190
|
),
|
|
2190
2191
|
children: primaryText
|
|
@@ -2192,9 +2193,9 @@ function IssueManagerLatestRunStatusSection({
|
|
|
2192
2193
|
),
|
|
2193
2194
|
/* @__PURE__ */ jsx3(Badge, { variant: issueManagerStatusBadgeVariant(latestRun.status), children: statusLabel })
|
|
2194
2195
|
] }),
|
|
2195
|
-
summary && agentSessionId ? /* @__PURE__ */ jsx3("p", { className: "mt-1 text-
|
|
2196
|
-
timestamp ? /* @__PURE__ */ jsx3("p", { className: "mt-1 truncate text-
|
|
2197
|
-
errorMessage ? /* @__PURE__ */ jsx3("p", { className: "mt-2 text-
|
|
2196
|
+
summary && agentSessionId ? /* @__PURE__ */ jsx3("p", { className: "mt-1 text-[11px] font-normal leading-5 text-[var(--text-secondary)] [overflow-wrap:anywhere]", children: summary }) : null,
|
|
2197
|
+
timestamp ? /* @__PURE__ */ jsx3("p", { className: "mt-1 truncate text-[11px] font-normal text-[var(--text-secondary)]", children: timestamp }) : null,
|
|
2198
|
+
errorMessage ? /* @__PURE__ */ jsx3("p", { className: "mt-2 text-[11px] font-medium leading-5 text-[var(--state-danger)] [overflow-wrap:anywhere]", children: errorMessage }) : null
|
|
2198
2199
|
] })
|
|
2199
2200
|
] });
|
|
2200
2201
|
const cardClassName = cn(
|
|
@@ -2202,7 +2203,7 @@ function IssueManagerLatestRunStatusSection({
|
|
|
2202
2203
|
canOpenAgentSession ? "w-full bg-transparent text-left transition-colors hover:bg-transparency-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/25 focus-visible:ring-inset" : "bg-transparent"
|
|
2203
2204
|
);
|
|
2204
2205
|
return /* @__PURE__ */ jsxs3("section", { className: "grid gap-2.5", children: [
|
|
2205
|
-
/* @__PURE__ */ jsx3("h3", { className: "text-
|
|
2206
|
+
/* @__PURE__ */ jsx3("h3", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: copy.t("labels.latestRunStatus") }),
|
|
2206
2207
|
canOpenAgentSession ? /* @__PURE__ */ jsx3(
|
|
2207
2208
|
"button",
|
|
2208
2209
|
{
|
|
@@ -2224,8 +2225,8 @@ function IssueManagerOutputSection({
|
|
|
2224
2225
|
outputs
|
|
2225
2226
|
}) {
|
|
2226
2227
|
return /* @__PURE__ */ jsxs3("section", { className: "grid gap-2.5", children: [
|
|
2227
|
-
/* @__PURE__ */ jsx3("h3", { className: "text-
|
|
2228
|
-
outputs.length === 0 ? /* @__PURE__ */ jsx3("p", { className: "text-
|
|
2228
|
+
/* @__PURE__ */ jsx3("h3", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: copy.t("labels.executionOutputs") }),
|
|
2229
|
+
outputs.length === 0 ? /* @__PURE__ */ jsx3("p", { className: "text-[13px] font-normal leading-6 text-[var(--text-secondary)]", children: copy.t("messages.noExecutionOutputs") }) : /* @__PURE__ */ jsx3("div", { className: "overflow-hidden rounded-[12px] border border-[var(--line-2)] bg-transparent", children: outputs.map((output) => /* @__PURE__ */ jsxs3(
|
|
2229
2230
|
"button",
|
|
2230
2231
|
{
|
|
2231
2232
|
className: "flex w-full items-start justify-between gap-4 border-b border-[var(--line-2)] px-4 py-3 text-left transition-colors last:border-b-0 hover:bg-transparency-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/25 focus-visible:ring-inset",
|
|
@@ -2239,10 +2240,10 @@ function IssueManagerOutputSection({
|
|
|
2239
2240
|
},
|
|
2240
2241
|
children: [
|
|
2241
2242
|
/* @__PURE__ */ jsxs3("span", { className: "min-w-0 flex-1", children: [
|
|
2242
|
-
/* @__PURE__ */ jsx3("span", { className: "block truncate text-
|
|
2243
|
-
/* @__PURE__ */ jsx3("span", { className: "mt-1 block truncate text-
|
|
2243
|
+
/* @__PURE__ */ jsx3("span", { className: "block truncate text-[13px] font-semibold text-[var(--text-primary)]", children: output.displayName }),
|
|
2244
|
+
/* @__PURE__ */ jsx3("span", { className: "mt-1 block truncate text-[11px] font-normal text-[var(--text-secondary)]", children: output.path })
|
|
2244
2245
|
] }),
|
|
2245
|
-
/* @__PURE__ */ jsx3("span", { className: "shrink-0 text-
|
|
2246
|
+
/* @__PURE__ */ jsx3("span", { className: "shrink-0 text-[11px] font-normal text-[var(--text-secondary)]", children: formatIssueManagerTimestamp(output.createdAtUnix) || "" })
|
|
2246
2247
|
]
|
|
2247
2248
|
},
|
|
2248
2249
|
output.outputId
|
|
@@ -2258,13 +2259,13 @@ function IssueManagerSubtaskSection({
|
|
|
2258
2259
|
}) {
|
|
2259
2260
|
return /* @__PURE__ */ jsxs3("section", { className: "grid gap-2.5", children: [
|
|
2260
2261
|
/* @__PURE__ */ jsxs3("div", { className: "flex items-center justify-between gap-3", children: [
|
|
2261
|
-
/* @__PURE__ */ jsx3("h3", { className: "text-
|
|
2262
|
+
/* @__PURE__ */ jsx3("h3", { className: "text-[13px] font-semibold text-[var(--text-primary)]", children: copy.t("labels.subtasks") }),
|
|
2262
2263
|
/* @__PURE__ */ jsxs3(Button2, { size: "dialog", type: "button", variant: "ghost", onClick: onCreate, children: [
|
|
2263
2264
|
/* @__PURE__ */ jsx3(FileCreateIcon2, { size: 14 }),
|
|
2264
2265
|
copy.t("actions.add")
|
|
2265
2266
|
] })
|
|
2266
2267
|
] }),
|
|
2267
|
-
tasks.length === 0 ? /* @__PURE__ */ jsx3("p", { className: "text-
|
|
2268
|
+
tasks.length === 0 ? /* @__PURE__ */ jsx3("p", { className: "text-[13px] font-normal leading-6 text-[var(--text-secondary)]", children: copy.t("messages.noSubtasksForIssue") }) : /* @__PURE__ */ jsx3("div", { className: "overflow-hidden rounded-lg border border-[var(--line-2)] bg-transparent", children: tasks.map((task) => /* @__PURE__ */ jsxs3(
|
|
2268
2269
|
"button",
|
|
2269
2270
|
{
|
|
2270
2271
|
className: cn(
|
|
@@ -2276,15 +2277,15 @@ function IssueManagerSubtaskSection({
|
|
|
2276
2277
|
children: [
|
|
2277
2278
|
/* @__PURE__ */ jsxs3("div", { className: "min-w-0 flex-1", children: [
|
|
2278
2279
|
/* @__PURE__ */ jsxs3("div", { className: "flex min-w-0 items-center gap-2.5", children: [
|
|
2279
|
-
/* @__PURE__ */ jsx3(IssueManagerTitleTooltip, { title: task.title, children: /* @__PURE__ */ jsx3("span", { className: "truncate text-
|
|
2280
|
+
/* @__PURE__ */ jsx3(IssueManagerTitleTooltip, { title: task.title, children: /* @__PURE__ */ jsx3("span", { className: "truncate text-[13px] font-semibold text-[var(--text-primary)]", children: task.title }) }),
|
|
2280
2281
|
/* @__PURE__ */ jsx3(Badge, { variant: issueManagerStatusBadgeVariant(task.status), children: resolveIssueManagerStatusLabel(copy, task.status) })
|
|
2281
2282
|
] }),
|
|
2282
|
-
/* @__PURE__ */ jsx3("p", { className: "mt-2 line-clamp-2 text-[
|
|
2283
|
+
/* @__PURE__ */ jsx3("p", { className: "mt-2 line-clamp-2 text-[11px] font-normal leading-[1.5] text-[var(--text-secondary)]", children: summarizeIssueManagerContent(
|
|
2283
2284
|
task.content,
|
|
2284
2285
|
copy.t("messages.taskContentEmpty")
|
|
2285
2286
|
) })
|
|
2286
2287
|
] }),
|
|
2287
|
-
/* @__PURE__ */ jsx3("span", { className: "shrink-0 text-
|
|
2288
|
+
/* @__PURE__ */ jsx3("span", { className: "shrink-0 text-[11px] font-normal text-[var(--text-secondary)]", children: formatIssueManagerTimestamp(
|
|
2288
2289
|
task.createdAtUnix ?? task.updatedAtUnix
|
|
2289
2290
|
) || "" })
|
|
2290
2291
|
]
|
|
@@ -2343,18 +2344,18 @@ function IssueManagerDescriptionSection({
|
|
|
2343
2344
|
}, [displayContent, variant]);
|
|
2344
2345
|
if (variant === "plain") {
|
|
2345
2346
|
return /* @__PURE__ */ jsxs4("section", { className: "grid gap-2", children: [
|
|
2346
|
-
/* @__PURE__ */ jsx4("span", { className: "text-
|
|
2347
|
-
displayContent ? /* @__PURE__ */ jsx4("div", { className: "max-w-3xl text-
|
|
2347
|
+
/* @__PURE__ */ jsx4("span", { className: "text-[13px] font-semibold leading-5 text-[var(--text-primary)]", children: label }),
|
|
2348
|
+
displayContent ? /* @__PURE__ */ jsx4("div", { className: "max-w-3xl text-[13px] font-normal leading-5 text-[var(--text-secondary)]", children: /* @__PURE__ */ jsx4(
|
|
2348
2349
|
IssueManagerDescriptionContent,
|
|
2349
2350
|
{
|
|
2350
2351
|
content: displayContent,
|
|
2351
2352
|
onOpen
|
|
2352
2353
|
}
|
|
2353
|
-
) }) : /* @__PURE__ */ jsx4("p", { className: "text-
|
|
2354
|
+
) }) : /* @__PURE__ */ jsx4("p", { className: "text-[13px] font-normal leading-5 text-[var(--text-secondary)]", children: emptyLabel })
|
|
2354
2355
|
] });
|
|
2355
2356
|
}
|
|
2356
2357
|
return /* @__PURE__ */ jsxs4("section", { className: "grid gap-2", children: [
|
|
2357
|
-
/* @__PURE__ */ jsx4("span", { className: "text-
|
|
2358
|
+
/* @__PURE__ */ jsx4("span", { className: "text-[13px] font-semibold leading-5 text-[var(--text-primary)]", children: label }),
|
|
2358
2359
|
/* @__PURE__ */ jsxs4(
|
|
2359
2360
|
"div",
|
|
2360
2361
|
{
|
|
@@ -2367,7 +2368,7 @@ function IssueManagerDescriptionSection({
|
|
|
2367
2368
|
"div",
|
|
2368
2369
|
{
|
|
2369
2370
|
className: cn2(
|
|
2370
|
-
"max-h-[18rem] overflow-y-auto pr-2 text-
|
|
2371
|
+
"max-h-[18rem] overflow-y-auto pr-2 text-[13px] font-normal leading-5 text-[var(--text-secondary)]",
|
|
2371
2372
|
isOverflowing && "pb-8"
|
|
2372
2373
|
),
|
|
2373
2374
|
ref: contentRef,
|
|
@@ -2416,8 +2417,8 @@ import { useEffect as useEffect5, useMemo as useMemo3, useRef as useRef2, useSta
|
|
|
2416
2417
|
import { RichTextAtEditor } from "@tutti-os/ui-rich-text/editor";
|
|
2417
2418
|
import { Button as Button3, LinkIcon, cn as cn3 } from "@tutti-os/ui-system";
|
|
2418
2419
|
import { jsx as jsx5, jsxs as jsxs5 } from "react/jsx-runtime";
|
|
2419
|
-
var issueManagerRichTextTextareaBaseClassName = "min-h-20 w-full rounded-[8px] border border-transparent bg-[var(--transparency-block)] p-3 text-
|
|
2420
|
-
var issueManagerRichTextPlaceholderBaseClassName = "min-h-20 w-full p-3 text-
|
|
2420
|
+
var issueManagerRichTextTextareaBaseClassName = "min-h-20 w-full rounded-[8px] border border-transparent bg-[var(--transparency-block)] p-3 text-[13px] font-normal leading-[1.3] text-[var(--text-primary)] transition-[background-color,border-color,color] outline-none shadow-none placeholder:text-[var(--text-placeholder)] hover:bg-[var(--transparency-hover)] focus:bg-[var(--transparency-hover)] focus-visible:border-transparent focus-visible:bg-[var(--transparency-hover)] focus-visible:ring-0 disabled:cursor-not-allowed disabled:bg-[var(--transparency-block)] disabled:text-[var(--text-disabled)] disabled:opacity-100 aria-invalid:border-[var(--state-danger)] aria-invalid:bg-[var(--transparency-block)] aria-invalid:hover:bg-[var(--transparency-hover)] aria-invalid:focus:bg-[var(--transparency-hover)] aria-invalid:focus-visible:bg-[var(--transparency-hover)] aria-invalid:ring-0 aria-invalid:shadow-none";
|
|
2421
|
+
var issueManagerRichTextPlaceholderBaseClassName = "min-h-20 w-full p-3 text-[13px] font-normal leading-[1.3] text-[var(--text-placeholder)]";
|
|
2421
2422
|
function IssueManagerRichTextTextarea({
|
|
2422
2423
|
controller,
|
|
2423
2424
|
onChange,
|
|
@@ -2576,54 +2577,61 @@ function IssueManagerIssuePane({
|
|
|
2576
2577
|
const [deleteBusy, setDeleteBusy] = useState5(false);
|
|
2577
2578
|
if (isCreatingIssue || isEditingIssue) {
|
|
2578
2579
|
return /* @__PURE__ */ jsxs6("div", { className: "flex h-full min-h-0 flex-col overflow-hidden", children: [
|
|
2579
|
-
/* @__PURE__ */ jsx7(
|
|
2580
|
-
|
|
2581
|
-
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
|
|
2587
|
-
|
|
2588
|
-
|
|
2589
|
-
|
|
2590
|
-
|
|
2591
|
-
|
|
2592
|
-
|
|
2593
|
-
|
|
2594
|
-
|
|
2595
|
-
|
|
2596
|
-
{
|
|
2597
|
-
|
|
2598
|
-
|
|
2599
|
-
|
|
2600
|
-
|
|
2601
|
-
|
|
2602
|
-
|
|
2603
|
-
|
|
2604
|
-
|
|
2605
|
-
|
|
2606
|
-
|
|
2607
|
-
|
|
2608
|
-
|
|
2609
|
-
|
|
2610
|
-
|
|
2611
|
-
|
|
2612
|
-
|
|
2613
|
-
{
|
|
2614
|
-
|
|
2615
|
-
|
|
2616
|
-
|
|
2617
|
-
|
|
2618
|
-
|
|
2619
|
-
|
|
2620
|
-
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
|
|
2625
|
-
|
|
2626
|
-
|
|
2580
|
+
/* @__PURE__ */ jsx7(
|
|
2581
|
+
ScrollArea2,
|
|
2582
|
+
{
|
|
2583
|
+
scrollbarMode: "native",
|
|
2584
|
+
className: "min-h-0 flex-1 [&_[data-orientation=vertical][data-slot=scroll-area-scrollbar]]:opacity-100 [&_[data-slot=scroll-area-viewport]]:overscroll-contain",
|
|
2585
|
+
children: /* @__PURE__ */ jsx7("div", { className: "flex min-h-full flex-col gap-[14px] px-7 py-8", children: /* @__PURE__ */ jsxs6("div", { className: "flex w-full min-w-0 flex-col gap-3", children: [
|
|
2586
|
+
/* @__PURE__ */ jsx7(
|
|
2587
|
+
"div",
|
|
2588
|
+
{
|
|
2589
|
+
className: `${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay0ClassName}`,
|
|
2590
|
+
children: /* @__PURE__ */ jsx7("h2", { className: "m-0 text-[15px] font-semibold leading-[1.35] text-[var(--text-primary)]", children: isCreatingIssue ? copy.t("actions.createIssue") : copy.t("actions.editIssue") })
|
|
2591
|
+
}
|
|
2592
|
+
),
|
|
2593
|
+
/* @__PURE__ */ jsxs6("div", { className: "flex w-full min-w-0 flex-col gap-6", children: [
|
|
2594
|
+
/* @__PURE__ */ jsxs6(
|
|
2595
|
+
"label",
|
|
2596
|
+
{
|
|
2597
|
+
className: `flex w-full min-w-0 flex-col gap-2 text-[13px] font-semibold text-[var(--text-secondary)] ${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay1ClassName}`,
|
|
2598
|
+
children: [
|
|
2599
|
+
/* @__PURE__ */ jsx7("span", { className: "leading-5", children: copy.t("labels.title") }),
|
|
2600
|
+
/* @__PURE__ */ jsx7(
|
|
2601
|
+
IssueManagerDraftTitleInput,
|
|
2602
|
+
{
|
|
2603
|
+
placeholder: copy.t("composer.issueTitlePlaceholder"),
|
|
2604
|
+
value: controller.issueDraft.title,
|
|
2605
|
+
onChange: controller.setIssueTitle
|
|
2606
|
+
}
|
|
2607
|
+
)
|
|
2608
|
+
]
|
|
2609
|
+
}
|
|
2610
|
+
),
|
|
2611
|
+
/* @__PURE__ */ jsxs6(
|
|
2612
|
+
"div",
|
|
2613
|
+
{
|
|
2614
|
+
className: `flex min-h-0 w-full min-w-0 flex-col gap-2 text-[13px] font-semibold text-[var(--text-secondary)] ${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay2ClassName}`,
|
|
2615
|
+
children: [
|
|
2616
|
+
/* @__PURE__ */ jsx7("span", { className: "leading-5", children: copy.t("labels.content") }),
|
|
2617
|
+
/* @__PURE__ */ jsx7(
|
|
2618
|
+
IssueManagerRichTextTextarea,
|
|
2619
|
+
{
|
|
2620
|
+
controller,
|
|
2621
|
+
surface: "issue",
|
|
2622
|
+
textareaClassName: "min-h-[180px] resize-none",
|
|
2623
|
+
placeholder: copy.t("composer.issueContentPlaceholder"),
|
|
2624
|
+
value: controller.issueDraft.content,
|
|
2625
|
+
onChange: controller.setIssueContent
|
|
2626
|
+
}
|
|
2627
|
+
)
|
|
2628
|
+
]
|
|
2629
|
+
}
|
|
2630
|
+
)
|
|
2631
|
+
] })
|
|
2632
|
+
] }) })
|
|
2633
|
+
}
|
|
2634
|
+
),
|
|
2627
2635
|
/* @__PURE__ */ jsx7(
|
|
2628
2636
|
"div",
|
|
2629
2637
|
{
|
|
@@ -2657,127 +2665,134 @@ function IssueManagerIssuePane({
|
|
|
2657
2665
|
if (!selectedIssue) {
|
|
2658
2666
|
return /* @__PURE__ */ jsx7("div", { className: "h-full min-h-0" });
|
|
2659
2667
|
}
|
|
2660
|
-
return /* @__PURE__ */ jsx7("div", { className: "flex h-full min-h-0 flex-col overflow-hidden", children: /* @__PURE__ */ jsx7(
|
|
2661
|
-
|
|
2662
|
-
|
|
2663
|
-
|
|
2664
|
-
|
|
2665
|
-
|
|
2666
|
-
|
|
2667
|
-
|
|
2668
|
-
|
|
2669
|
-
|
|
2670
|
-
|
|
2671
|
-
|
|
2672
|
-
|
|
2673
|
-
|
|
2674
|
-
|
|
2675
|
-
|
|
2676
|
-
|
|
2677
|
-
|
|
2678
|
-
|
|
2679
|
-
|
|
2680
|
-
|
|
2681
|
-
|
|
2682
|
-
|
|
2683
|
-
|
|
2684
|
-
|
|
2685
|
-
|
|
2686
|
-
|
|
2668
|
+
return /* @__PURE__ */ jsx7("div", { className: "flex h-full min-h-0 flex-col overflow-hidden", children: /* @__PURE__ */ jsx7(
|
|
2669
|
+
ScrollArea2,
|
|
2670
|
+
{
|
|
2671
|
+
scrollbarMode: "native",
|
|
2672
|
+
className: "min-h-0 flex-1 [&_[data-orientation=vertical][data-slot=scroll-area-scrollbar]]:opacity-100 [&_[data-slot=scroll-area-viewport]]:overscroll-contain",
|
|
2673
|
+
children: /* @__PURE__ */ jsx7("div", { className: "px-8 py-7", children: controller.issueDetail.isLoading && controller.issueDetail.value === null ? /* @__PURE__ */ jsx7(IssueManagerPaneLoadingState, {}) : /* @__PURE__ */ jsxs6("div", { className: "flex w-full min-w-0 flex-col gap-9", children: [
|
|
2674
|
+
/* @__PURE__ */ jsxs6("header", { className: "grid gap-3", children: [
|
|
2675
|
+
/* @__PURE__ */ jsxs6("div", { className: "flex items-center justify-between gap-6", children: [
|
|
2676
|
+
/* @__PURE__ */ jsx7(IssueManagerTitleTooltip, { title: selectedIssue.title, children: /* @__PURE__ */ jsx7("h2", { className: "line-clamp-2 min-w-0 flex-1 whitespace-normal text-[15px] font-semibold leading-6 text-[var(--text-primary)] [overflow-wrap:anywhere]", children: selectedIssue.title }) }),
|
|
2677
|
+
/* @__PURE__ */ jsxs6("div", { className: "flex shrink-0 items-center gap-2", children: [
|
|
2678
|
+
/* @__PURE__ */ jsx7(
|
|
2679
|
+
Button4,
|
|
2680
|
+
{
|
|
2681
|
+
type: "button",
|
|
2682
|
+
variant: "ghost",
|
|
2683
|
+
onClick: () => controller.setIssueEditorMode("edit"),
|
|
2684
|
+
children: copy.t("actions.edit")
|
|
2685
|
+
}
|
|
2686
|
+
),
|
|
2687
|
+
/* @__PURE__ */ jsx7(
|
|
2688
|
+
Button4,
|
|
2689
|
+
{
|
|
2690
|
+
className: "text-[var(--state-danger)] hover:bg-[var(--on-danger)] hover:text-[var(--state-danger)]",
|
|
2691
|
+
type: "button",
|
|
2692
|
+
variant: "ghost",
|
|
2693
|
+
onClick: () => setDeleteDialogOpen(true),
|
|
2694
|
+
children: copy.t("actions.delete")
|
|
2695
|
+
}
|
|
2696
|
+
)
|
|
2697
|
+
] })
|
|
2698
|
+
] }),
|
|
2699
|
+
/* @__PURE__ */ jsxs6("div", { className: "flex flex-wrap items-center gap-x-2 gap-y-2 text-[11px] font-normal leading-[1.3] text-[var(--text-secondary)]", children: [
|
|
2700
|
+
/* @__PURE__ */ jsx7(
|
|
2701
|
+
Badge2,
|
|
2702
|
+
{
|
|
2703
|
+
variant: issueManagerStatusBadgeVariant(
|
|
2704
|
+
selectedIssue.status
|
|
2705
|
+
),
|
|
2706
|
+
children: resolveIssueManagerStatusLabel(copy, selectedIssue.status)
|
|
2707
|
+
}
|
|
2708
|
+
),
|
|
2709
|
+
/* @__PURE__ */ jsx7(
|
|
2710
|
+
"span",
|
|
2711
|
+
{
|
|
2712
|
+
"aria-hidden": "true",
|
|
2713
|
+
className: "h-4 w-px shrink-0 bg-[var(--line-2)]"
|
|
2714
|
+
}
|
|
2715
|
+
),
|
|
2716
|
+
/* @__PURE__ */ jsxs6("span", { className: "text-[11px] font-normal leading-[1.3]", children: [
|
|
2717
|
+
copy.t("labels.creator"),
|
|
2718
|
+
" ",
|
|
2719
|
+
resolveIssueManagerCreatorLabel(selectedIssue)
|
|
2720
|
+
] }),
|
|
2721
|
+
/* @__PURE__ */ jsx7(
|
|
2722
|
+
"span",
|
|
2723
|
+
{
|
|
2724
|
+
"aria-hidden": "true",
|
|
2725
|
+
className: "h-4 w-px shrink-0 bg-[var(--line-2)]"
|
|
2726
|
+
}
|
|
2727
|
+
),
|
|
2728
|
+
/* @__PURE__ */ jsxs6("span", { className: "text-[11px] font-normal leading-[1.3]", children: [
|
|
2729
|
+
copy.t("labels.createdAt"),
|
|
2730
|
+
" ",
|
|
2731
|
+
formatIssueManagerTimestamp(selectedIssue.createdAtUnix) || "-"
|
|
2732
|
+
] })
|
|
2733
|
+
] })
|
|
2734
|
+
] }),
|
|
2687
2735
|
/* @__PURE__ */ jsx7(
|
|
2688
|
-
|
|
2736
|
+
ConfirmationDialog,
|
|
2689
2737
|
{
|
|
2690
|
-
|
|
2691
|
-
|
|
2692
|
-
),
|
|
2693
|
-
|
|
2738
|
+
cancelLabel: copy.t("actions.cancel"),
|
|
2739
|
+
confirmBusy: deleteBusy,
|
|
2740
|
+
confirmLabel: copy.t("actions.delete"),
|
|
2741
|
+
description: selectedIssue.title,
|
|
2742
|
+
open: deleteDialogOpen,
|
|
2743
|
+
title: copy.t("confirmations.deleteIssue"),
|
|
2744
|
+
tone: "destructive",
|
|
2745
|
+
onConfirm: () => {
|
|
2746
|
+
setDeleteBusy(true);
|
|
2747
|
+
void controller.deleteIssue({ skipConfirmation: true }).finally(() => {
|
|
2748
|
+
setDeleteBusy(false);
|
|
2749
|
+
setDeleteDialogOpen(false);
|
|
2750
|
+
});
|
|
2751
|
+
},
|
|
2752
|
+
onOpenChange: setDeleteDialogOpen
|
|
2694
2753
|
}
|
|
2695
2754
|
),
|
|
2696
2755
|
/* @__PURE__ */ jsx7(
|
|
2697
|
-
|
|
2756
|
+
IssueManagerDescriptionSection,
|
|
2698
2757
|
{
|
|
2699
|
-
|
|
2700
|
-
|
|
2758
|
+
content: issueContent,
|
|
2759
|
+
emptyLabel: copy.t("messages.issueContentEmpty"),
|
|
2760
|
+
label: copy.t("labels.description"),
|
|
2761
|
+
onOpen: controller.openReference,
|
|
2762
|
+
variant: "plain"
|
|
2701
2763
|
}
|
|
2702
2764
|
),
|
|
2703
|
-
/* @__PURE__ */ jsxs6("span", { className: "text-[12px] font-normal leading-[1.3]", children: [
|
|
2704
|
-
copy.t("labels.creator"),
|
|
2705
|
-
" ",
|
|
2706
|
-
resolveIssueManagerCreatorLabel(selectedIssue)
|
|
2707
|
-
] }),
|
|
2708
2765
|
/* @__PURE__ */ jsx7(
|
|
2709
|
-
|
|
2766
|
+
IssueManagerLatestRunStatusSection,
|
|
2710
2767
|
{
|
|
2711
|
-
|
|
2712
|
-
|
|
2768
|
+
copy,
|
|
2769
|
+
latestRun,
|
|
2770
|
+
onOpenAgentSession: controller.canOpenAgentSessions ? controller.openAgentSession : void 0,
|
|
2771
|
+
renderLatestRunStatus,
|
|
2772
|
+
title: selectedTask?.title ?? selectedIssue.title
|
|
2713
2773
|
}
|
|
2714
2774
|
),
|
|
2715
|
-
/* @__PURE__ */
|
|
2716
|
-
|
|
2717
|
-
|
|
2718
|
-
|
|
2719
|
-
|
|
2720
|
-
|
|
2721
|
-
|
|
2722
|
-
|
|
2723
|
-
|
|
2724
|
-
|
|
2725
|
-
|
|
2726
|
-
|
|
2727
|
-
|
|
2728
|
-
|
|
2729
|
-
|
|
2730
|
-
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
|
-
|
|
2734
|
-
|
|
2735
|
-
|
|
2736
|
-
setDeleteDialogOpen(false);
|
|
2737
|
-
});
|
|
2738
|
-
},
|
|
2739
|
-
onOpenChange: setDeleteDialogOpen
|
|
2740
|
-
}
|
|
2741
|
-
),
|
|
2742
|
-
/* @__PURE__ */ jsx7(
|
|
2743
|
-
IssueManagerDescriptionSection,
|
|
2744
|
-
{
|
|
2745
|
-
content: issueContent,
|
|
2746
|
-
emptyLabel: copy.t("messages.issueContentEmpty"),
|
|
2747
|
-
label: copy.t("labels.description"),
|
|
2748
|
-
onOpen: controller.openReference,
|
|
2749
|
-
variant: "plain"
|
|
2750
|
-
}
|
|
2751
|
-
),
|
|
2752
|
-
/* @__PURE__ */ jsx7(
|
|
2753
|
-
IssueManagerLatestRunStatusSection,
|
|
2754
|
-
{
|
|
2755
|
-
copy,
|
|
2756
|
-
latestRun,
|
|
2757
|
-
onOpenAgentSession: controller.canOpenAgentSessions ? controller.openAgentSession : void 0,
|
|
2758
|
-
renderLatestRunStatus,
|
|
2759
|
-
title: selectedTask?.title ?? selectedIssue.title
|
|
2760
|
-
}
|
|
2761
|
-
),
|
|
2762
|
-
/* @__PURE__ */ jsx7(
|
|
2763
|
-
IssueManagerOutputSection,
|
|
2764
|
-
{
|
|
2765
|
-
copy,
|
|
2766
|
-
outputs: latestOutputs,
|
|
2767
|
-
onOpen: controller.openReference
|
|
2768
|
-
}
|
|
2769
|
-
),
|
|
2770
|
-
/* @__PURE__ */ jsx7(
|
|
2771
|
-
IssueManagerSubtaskSection,
|
|
2772
|
-
{
|
|
2773
|
-
copy,
|
|
2774
|
-
onCreate: controller.createTaskDraft,
|
|
2775
|
-
onSelectTask: controller.selectTask,
|
|
2776
|
-
selectedTaskId: selectedTask?.taskId ?? null,
|
|
2777
|
-
tasks
|
|
2778
|
-
}
|
|
2779
|
-
)
|
|
2780
|
-
] }) }) }) });
|
|
2775
|
+
/* @__PURE__ */ jsx7(
|
|
2776
|
+
IssueManagerOutputSection,
|
|
2777
|
+
{
|
|
2778
|
+
copy,
|
|
2779
|
+
outputs: latestOutputs,
|
|
2780
|
+
onOpen: controller.openReference
|
|
2781
|
+
}
|
|
2782
|
+
),
|
|
2783
|
+
/* @__PURE__ */ jsx7(
|
|
2784
|
+
IssueManagerSubtaskSection,
|
|
2785
|
+
{
|
|
2786
|
+
copy,
|
|
2787
|
+
onCreate: controller.createTaskDraft,
|
|
2788
|
+
onSelectTask: controller.selectTask,
|
|
2789
|
+
selectedTaskId: selectedTask?.taskId ?? null,
|
|
2790
|
+
tasks
|
|
2791
|
+
}
|
|
2792
|
+
)
|
|
2793
|
+
] }) })
|
|
2794
|
+
}
|
|
2795
|
+
) });
|
|
2781
2796
|
}
|
|
2782
2797
|
|
|
2783
2798
|
// src/ui/internal/shell/IssueManagerBottomBar.tsx
|
|
@@ -2961,16 +2976,7 @@ function IssueManagerExecutionDirectoryTrigger({
|
|
|
2961
2976
|
},
|
|
2962
2977
|
contentAlign: "end",
|
|
2963
2978
|
disabled,
|
|
2964
|
-
|
|
2965
|
-
linkExistingProject: controller.copy.t(
|
|
2966
|
-
"actions.linkExistingExecutionDirectory"
|
|
2967
|
-
),
|
|
2968
|
-
loadingProjects: controller.copy.t(
|
|
2969
|
-
"labels.loadingExecutionDirectories"
|
|
2970
|
-
),
|
|
2971
|
-
noProject: controller.copy.t("labels.noProject"),
|
|
2972
|
-
projectLabel: controller.copy.t("actions.selectExecutionDirectory")
|
|
2973
|
-
},
|
|
2979
|
+
i18n: controller.workspaceUserProjectI18n,
|
|
2974
2980
|
service: controller.executionDirectoryProjectService,
|
|
2975
2981
|
selectedProjectPath: controller.nodeState.selectedExecutionDirectory,
|
|
2976
2982
|
unlistedProjectLabel: controller.copy.t(
|
|
@@ -3271,6 +3277,7 @@ function IssueManagerSidebarBody({
|
|
|
3271
3277
|
return /* @__PURE__ */ jsx11(
|
|
3272
3278
|
ScrollArea3,
|
|
3273
3279
|
{
|
|
3280
|
+
scrollbarMode: "native",
|
|
3274
3281
|
className: cn6("min-h-0", isNarrowLayout ? "flex-none" : "h-full flex-1"),
|
|
3275
3282
|
children: /* @__PURE__ */ jsx11(
|
|
3276
3283
|
"div",
|
|
@@ -3356,7 +3363,7 @@ function IssueManagerSearchField({
|
|
|
3356
3363
|
{
|
|
3357
3364
|
"aria-label": placeholder,
|
|
3358
3365
|
className: cn6(
|
|
3359
|
-
"box-border h-8 min-h-8 rounded-md border-0 bg-[var(--transparency-block)] px-3 text-
|
|
3366
|
+
"box-border h-8 min-h-8 rounded-md border-0 bg-[var(--transparency-block)] px-3 text-[13px] font-normal leading-normal text-[var(--text-primary)] shadow-none outline-none ring-0 transition-colors placeholder:text-[var(--text-placeholder)] hover:bg-[var(--transparency-hover)] focus:border-0 focus:bg-[var(--transparency-hover)] focus-visible:border-0 focus-visible:bg-[var(--transparency-hover)] focus-visible:ring-0 focus-visible:ring-offset-0 disabled:bg-[var(--transparency-block)] disabled:text-[var(--text-disabled)] disabled:opacity-100",
|
|
3360
3367
|
"[&::-webkit-search-cancel-button]:appearance-none [&::-webkit-search-decoration]:appearance-none",
|
|
3361
3368
|
searchInput.value ? "pr-9" : "pr-3"
|
|
3362
3369
|
),
|
|
@@ -3442,10 +3449,10 @@ function IssueManagerSidebarItem({
|
|
|
3442
3449
|
}
|
|
3443
3450
|
),
|
|
3444
3451
|
/* @__PURE__ */ jsxs9("div", { className: "min-w-0 space-y-2", children: [
|
|
3445
|
-
/* @__PURE__ */ jsx11("p", { className: "pr-28 text-[
|
|
3446
|
-
/* @__PURE__ */ jsx11("p", { className: "line-clamp-4 text-[
|
|
3452
|
+
/* @__PURE__ */ jsx11("p", { className: "pr-28 text-[11px] leading-[1.55] text-[var(--text-secondary)]", children: formatIssueManagerDate(issue.updatedAtUnix ?? issue.createdAtUnix) }),
|
|
3453
|
+
/* @__PURE__ */ jsx11("p", { className: "line-clamp-4 text-[13px] font-medium leading-[1.35rem] text-[var(--text-primary)]", children: issue.title })
|
|
3447
3454
|
] }),
|
|
3448
|
-
/* @__PURE__ */ jsx11("div", { className: "mt-2 text-[
|
|
3455
|
+
/* @__PURE__ */ jsx11("div", { className: "mt-2 text-[11px] leading-[1.55] text-[var(--text-secondary)]", children: copy.t("labels.taskCount", { count: issue.taskCount ?? 0 }) })
|
|
3449
3456
|
]
|
|
3450
3457
|
}
|
|
3451
3458
|
);
|
|
@@ -3495,7 +3502,7 @@ function IssueManagerSidebarEmptyState({
|
|
|
3495
3502
|
"p",
|
|
3496
3503
|
{
|
|
3497
3504
|
className: cn6(
|
|
3498
|
-
"max-w-sm text-
|
|
3505
|
+
"max-w-sm text-[13px] leading-5 text-[var(--text-secondary)]",
|
|
3499
3506
|
tone === "destructive" ? "text-[var(--state-danger)]" : "text-[var(--text-secondary)]"
|
|
3500
3507
|
),
|
|
3501
3508
|
children: title
|
|
@@ -3518,7 +3525,7 @@ function IssueManagerSidebarErrorState({
|
|
|
3518
3525
|
isNarrowLayout ? "h-24 max-h-24 min-h-24 w-full flex-[0_0_100%]" : "min-h-full"
|
|
3519
3526
|
),
|
|
3520
3527
|
children: [
|
|
3521
|
-
/* @__PURE__ */ jsx11("p", { className: "text-
|
|
3528
|
+
/* @__PURE__ */ jsx11("p", { className: "text-[13px] font-semibold leading-5 text-[var(--state-danger)]", children: title }),
|
|
3522
3529
|
/* @__PURE__ */ jsx11(
|
|
3523
3530
|
Button7,
|
|
3524
3531
|
{
|
|
@@ -3655,14 +3662,14 @@ function IssueManagerTaskComposerPane({
|
|
|
3655
3662
|
"div",
|
|
3656
3663
|
{
|
|
3657
3664
|
className: `${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay0ClassName}`,
|
|
3658
|
-
children: /* @__PURE__ */ jsx13("h2", { className: "m-0 text-[
|
|
3665
|
+
children: /* @__PURE__ */ jsx13("h2", { className: "m-0 text-[15px] font-semibold leading-[1.35] text-[var(--text-primary)]", children: copy.t("actions.addSubtask") })
|
|
3659
3666
|
}
|
|
3660
3667
|
),
|
|
3661
3668
|
/* @__PURE__ */ jsxs11("div", { className: "flex w-full min-w-0 flex-col gap-6", children: [
|
|
3662
3669
|
/* @__PURE__ */ jsxs11(
|
|
3663
3670
|
"label",
|
|
3664
3671
|
{
|
|
3665
|
-
className: `flex w-full min-w-0 flex-col gap-2 text-
|
|
3672
|
+
className: `flex w-full min-w-0 flex-col gap-2 text-[13px] font-semibold text-[var(--text-secondary)] ${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay1ClassName}`,
|
|
3666
3673
|
children: [
|
|
3667
3674
|
/* @__PURE__ */ jsx13("span", { className: "leading-5", children: copy.t("labels.title") }),
|
|
3668
3675
|
/* @__PURE__ */ jsx13(
|
|
@@ -3679,7 +3686,7 @@ function IssueManagerTaskComposerPane({
|
|
|
3679
3686
|
/* @__PURE__ */ jsxs11(
|
|
3680
3687
|
"div",
|
|
3681
3688
|
{
|
|
3682
|
-
className: `flex min-h-0 w-full min-w-0 flex-col gap-2 text-
|
|
3689
|
+
className: `flex min-h-0 w-full min-w-0 flex-col gap-2 text-[13px] font-semibold text-[var(--text-secondary)] ${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay2ClassName}`,
|
|
3683
3690
|
children: [
|
|
3684
3691
|
/* @__PURE__ */ jsx13("span", { className: "leading-5", children: copy.t("labels.requirementDescription") }),
|
|
3685
3692
|
/* @__PURE__ */ jsx13(
|
|
@@ -3747,7 +3754,7 @@ function IssueManagerTaskDrawerHeader({
|
|
|
3747
3754
|
return /* @__PURE__ */ jsxs12(Fragment2, { children: [
|
|
3748
3755
|
/* @__PURE__ */ jsxs12("div", { className: "grid gap-3 px-6 py-7", children: [
|
|
3749
3756
|
/* @__PURE__ */ jsxs12("div", { className: "flex items-center justify-between gap-6", children: [
|
|
3750
|
-
view.showTaskMetadata && selectedTask ? /* @__PURE__ */ jsx14(IssueManagerTitleTooltip, { title: view.title, children: /* @__PURE__ */ jsx14("h3", { className: "line-clamp-2 min-w-0 flex-1 whitespace-normal text-
|
|
3757
|
+
view.showTaskMetadata && selectedTask ? /* @__PURE__ */ jsx14(IssueManagerTitleTooltip, { title: view.title, children: /* @__PURE__ */ jsx14("h3", { className: "line-clamp-2 min-w-0 flex-1 whitespace-normal text-[15px] font-semibold leading-6 text-[var(--text-primary)] [overflow-wrap:anywhere]", children: view.title }) }) : /* @__PURE__ */ jsx14(IssueManagerTitleTooltip, { title: view.title, children: /* @__PURE__ */ jsx14("h3", { className: "line-clamp-2 min-w-0 flex-1 whitespace-normal text-[15px] font-semibold leading-[1.35] text-[var(--text-primary)] [overflow-wrap:anywhere]", children: view.title }) }),
|
|
3751
3758
|
/* @__PURE__ */ jsx14("div", { className: "flex shrink-0 items-center gap-2", children: view.showTaskActions && selectedTask ? /* @__PURE__ */ jsxs12(Fragment2, { children: [
|
|
3752
3759
|
/* @__PURE__ */ jsx14(
|
|
3753
3760
|
Button9,
|
|
@@ -3787,7 +3794,7 @@ function IssueManagerTaskDrawerHeader({
|
|
|
3787
3794
|
cancelLabel: copy.t("actions.cancel"),
|
|
3788
3795
|
confirmBusy: deleteBusy,
|
|
3789
3796
|
confirmLabel: copy.t("actions.delete"),
|
|
3790
|
-
description: selectedTask.title,
|
|
3797
|
+
description: /* @__PURE__ */ jsx14("span", { className: "block max-w-full whitespace-normal [overflow-wrap:anywhere]", children: selectedTask.title }),
|
|
3791
3798
|
open: deleteDialogOpen,
|
|
3792
3799
|
title: copy.t("confirmations.deleteTask"),
|
|
3793
3800
|
tone: "destructive",
|
|
@@ -3807,7 +3814,7 @@ function IssueManagerTaskMetadataRow({
|
|
|
3807
3814
|
copy,
|
|
3808
3815
|
selectedTask
|
|
3809
3816
|
}) {
|
|
3810
|
-
return /* @__PURE__ */ jsxs12("div", { className: "flex flex-wrap items-center gap-x-2 gap-y-2 text-[
|
|
3817
|
+
return /* @__PURE__ */ jsxs12("div", { className: "flex flex-wrap items-center gap-x-2 gap-y-2 text-[11px] font-normal leading-[1.3] text-[var(--text-secondary)]", children: [
|
|
3811
3818
|
/* @__PURE__ */ jsx14(Badge5, { variant: issueManagerStatusBadgeVariant(selectedTask.status), children: resolveIssueManagerStatusLabel(copy, selectedTask.status) }),
|
|
3812
3819
|
/* @__PURE__ */ jsx14(
|
|
3813
3820
|
"span",
|
|
@@ -3816,7 +3823,7 @@ function IssueManagerTaskMetadataRow({
|
|
|
3816
3823
|
className: "h-4 w-px shrink-0 bg-[var(--line-2)]"
|
|
3817
3824
|
}
|
|
3818
3825
|
),
|
|
3819
|
-
/* @__PURE__ */ jsxs12("span", { className: "text-[
|
|
3826
|
+
/* @__PURE__ */ jsxs12("span", { className: "text-[11px] font-normal leading-[1.3]", children: [
|
|
3820
3827
|
copy.t("labels.creator"),
|
|
3821
3828
|
" ",
|
|
3822
3829
|
resolveTaskCreatorLabel(selectedTask)
|
|
@@ -3828,7 +3835,7 @@ function IssueManagerTaskMetadataRow({
|
|
|
3828
3835
|
className: "h-4 w-px shrink-0 bg-[var(--line-2)]"
|
|
3829
3836
|
}
|
|
3830
3837
|
),
|
|
3831
|
-
/* @__PURE__ */ jsxs12("span", { className: "text-[
|
|
3838
|
+
/* @__PURE__ */ jsxs12("span", { className: "text-[11px] font-normal leading-[1.3]", children: [
|
|
3832
3839
|
copy.t("labels.createdAt"),
|
|
3833
3840
|
" ",
|
|
3834
3841
|
formatIssueManagerTimestamp(selectedTask.createdAtUnix) || "-"
|
|
@@ -3840,7 +3847,7 @@ function IssueManagerTaskAcceptanceCard({
|
|
|
3840
3847
|
}) {
|
|
3841
3848
|
const copy = controller.copy;
|
|
3842
3849
|
return /* @__PURE__ */ jsxs12("div", { className: "grid gap-2 rounded-md bg-[var(--transparency-block)] px-3 py-2", children: [
|
|
3843
|
-
/* @__PURE__ */ jsxs12("div", { className: "min-w-0 text-[
|
|
3850
|
+
/* @__PURE__ */ jsxs12("div", { className: "min-w-0 text-[11px] font-normal leading-[1.45] text-[var(--text-secondary)] [overflow-wrap:anywhere]", children: [
|
|
3844
3851
|
/* @__PURE__ */ jsx14("span", { className: "font-semibold text-[var(--text-primary)]", children: copy.t("labels.taskAcceptance") }),
|
|
3845
3852
|
/* @__PURE__ */ jsx14("span", { className: "mx-1 text-[var(--text-tertiary)]", children: "\xB7" }),
|
|
3846
3853
|
/* @__PURE__ */ jsx14("span", { children: copy.t("messages.taskAcceptanceHint") })
|
|
@@ -3849,7 +3856,7 @@ function IssueManagerTaskAcceptanceCard({
|
|
|
3849
3856
|
/* @__PURE__ */ jsx14(
|
|
3850
3857
|
Button9,
|
|
3851
3858
|
{
|
|
3852
|
-
className: "h-7 px-2 text-
|
|
3859
|
+
className: "h-7 px-2 text-[11px] text-[var(--state-danger)] hover:bg-[var(--on-danger)] hover:text-[var(--state-danger)]",
|
|
3853
3860
|
type: "button",
|
|
3854
3861
|
variant: "ghost",
|
|
3855
3862
|
onClick: () => void controller.setSelectedTaskStatus("not_started"),
|
|
@@ -3859,7 +3866,7 @@ function IssueManagerTaskAcceptanceCard({
|
|
|
3859
3866
|
/* @__PURE__ */ jsx14(
|
|
3860
3867
|
Button9,
|
|
3861
3868
|
{
|
|
3862
|
-
className: "h-7 px-2.5 text-
|
|
3869
|
+
className: "h-7 px-2.5 text-[11px]",
|
|
3863
3870
|
type: "button",
|
|
3864
3871
|
variant: "secondary",
|
|
3865
3872
|
onClick: () => void controller.setSelectedTaskStatus("completed"),
|
|
@@ -3910,14 +3917,14 @@ function IssueManagerTaskDrawerEditBody({
|
|
|
3910
3917
|
"div",
|
|
3911
3918
|
{
|
|
3912
3919
|
className: `${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay0ClassName}`,
|
|
3913
|
-
children: /* @__PURE__ */ jsx14("h2", { className: "m-0 text-[
|
|
3920
|
+
children: /* @__PURE__ */ jsx14("h2", { className: "m-0 text-[15px] font-semibold leading-[1.35] text-[var(--text-primary)]", children: title })
|
|
3914
3921
|
}
|
|
3915
3922
|
),
|
|
3916
3923
|
/* @__PURE__ */ jsxs12("div", { className: "flex w-full min-w-0 flex-col gap-6", children: [
|
|
3917
3924
|
/* @__PURE__ */ jsxs12(
|
|
3918
3925
|
"label",
|
|
3919
3926
|
{
|
|
3920
|
-
className: `flex w-full min-w-0 flex-col gap-2 text-
|
|
3927
|
+
className: `flex w-full min-w-0 flex-col gap-2 text-[13px] font-semibold text-[var(--text-secondary)] ${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay1ClassName}`,
|
|
3921
3928
|
children: [
|
|
3922
3929
|
/* @__PURE__ */ jsx14("span", { className: "leading-5", children: copy.t("labels.title") }),
|
|
3923
3930
|
/* @__PURE__ */ jsx14(
|
|
@@ -3934,7 +3941,7 @@ function IssueManagerTaskDrawerEditBody({
|
|
|
3934
3941
|
/* @__PURE__ */ jsxs12(
|
|
3935
3942
|
"div",
|
|
3936
3943
|
{
|
|
3937
|
-
className: `flex min-h-0 w-full min-w-0 flex-col gap-2 text-
|
|
3944
|
+
className: `flex min-h-0 w-full min-w-0 flex-col gap-2 text-[13px] font-semibold text-[var(--text-secondary)] ${issueManagerEditorRiseInClassName} ${issueManagerEditorRiseInDelay2ClassName}`,
|
|
3938
3945
|
children: [
|
|
3939
3946
|
/* @__PURE__ */ jsx14("span", { className: "leading-5", children: copy.t("labels.content") }),
|
|
3940
3947
|
/* @__PURE__ */ jsx14(
|
|
@@ -4121,24 +4128,31 @@ function IssueManagerTaskDrawer({
|
|
|
4121
4128
|
view
|
|
4122
4129
|
}
|
|
4123
4130
|
),
|
|
4124
|
-
/* @__PURE__ */ jsx15(
|
|
4125
|
-
|
|
4131
|
+
/* @__PURE__ */ jsx15(
|
|
4132
|
+
ScrollArea4,
|
|
4126
4133
|
{
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
view.bodyKind === "edit" ? "gap-[14px] px-6 py-8" : "gap-9 px-6 py-7"
|
|
4130
|
-
),
|
|
4134
|
+
scrollbarMode: "native",
|
|
4135
|
+
className: "min-h-0 flex-1 [&_[data-slot=scroll-area-viewport]]:overscroll-contain",
|
|
4131
4136
|
children: /* @__PURE__ */ jsx15(
|
|
4132
|
-
|
|
4137
|
+
"div",
|
|
4133
4138
|
{
|
|
4134
|
-
|
|
4135
|
-
|
|
4136
|
-
|
|
4137
|
-
|
|
4139
|
+
className: cn8(
|
|
4140
|
+
"flex flex-col",
|
|
4141
|
+
view.bodyKind === "edit" ? "gap-[14px] px-6 py-8" : "gap-9 px-6 py-7"
|
|
4142
|
+
),
|
|
4143
|
+
children: /* @__PURE__ */ jsx15(
|
|
4144
|
+
IssueManagerTaskDrawerBody,
|
|
4145
|
+
{
|
|
4146
|
+
controller,
|
|
4147
|
+
renderLatestRunStatus,
|
|
4148
|
+
taskContent,
|
|
4149
|
+
view
|
|
4150
|
+
}
|
|
4151
|
+
)
|
|
4138
4152
|
}
|
|
4139
4153
|
)
|
|
4140
4154
|
}
|
|
4141
|
-
)
|
|
4155
|
+
),
|
|
4142
4156
|
/* @__PURE__ */ jsx15(
|
|
4143
4157
|
IssueManagerTaskDrawerFooter,
|
|
4144
4158
|
{
|
|
@@ -4458,8 +4472,8 @@ function IssueManagerShellEmptyState({
|
|
|
4458
4472
|
}) {
|
|
4459
4473
|
return /* @__PURE__ */ jsx16("div", { className: "flex h-full min-h-[320px] items-center justify-center px-10 py-10", children: /* @__PURE__ */ jsxs14("div", { className: "grid max-w-[420px] justify-items-center gap-2 text-center", children: [
|
|
4460
4474
|
emptyIllustration ? /* @__PURE__ */ jsx16("div", { className: "mb-4", children: emptyIllustration }) : null,
|
|
4461
|
-
/* @__PURE__ */ jsx16("h2", { className: "text-[
|
|
4462
|
-
/* @__PURE__ */ jsx16("p", { className: "max-w-[420px] text-[
|
|
4475
|
+
/* @__PURE__ */ jsx16("h2", { className: "text-[13px] font-semibold leading-5 text-[var(--text-primary)]", children: controller.copy.t("messages.noIssues") }),
|
|
4476
|
+
/* @__PURE__ */ jsx16("p", { className: "max-w-[420px] text-[13px] leading-5 text-[var(--text-secondary)]", children: controller.copy.t("emptyState") }),
|
|
4463
4477
|
/* @__PURE__ */ jsxs14(
|
|
4464
4478
|
Button10,
|
|
4465
4479
|
{
|
|
@@ -4538,7 +4552,7 @@ function IssueManagerTopicSelector({
|
|
|
4538
4552
|
{
|
|
4539
4553
|
"aria-label": topicLabel,
|
|
4540
4554
|
className: cn10(
|
|
4541
|
-
"max-w-[220px] gap-1 rounded-md border-0 bg-transparent text-
|
|
4555
|
+
"max-w-[220px] gap-1 rounded-md border-0 bg-transparent text-[13px] font-normal shadow-none hover:bg-transparent focus:bg-transparent focus-visible:border-0 focus-visible:bg-transparent focus-visible:ring-0 active:bg-transparent aria-expanded:bg-transparent [&[data-state=open]>svg]:rotate-180",
|
|
4542
4556
|
className
|
|
4543
4557
|
),
|
|
4544
4558
|
size: "sm",
|
|
@@ -4655,7 +4669,7 @@ function IssueManagerTopicSelector({
|
|
|
4655
4669
|
] })
|
|
4656
4670
|
] }) }, topic.topicId);
|
|
4657
4671
|
}),
|
|
4658
|
-
topics.length === 0 ? /* @__PURE__ */ jsx17("div", { className: "px-3 py-2 text-
|
|
4672
|
+
topics.length === 0 ? /* @__PURE__ */ jsx17("div", { className: "px-3 py-2 text-[11px] leading-4 text-[var(--text-tertiary)]", children: copy.t("messages.topicListEmpty") }) : null,
|
|
4659
4673
|
/* @__PURE__ */ jsx17(DropdownMenuSeparator, {}),
|
|
4660
4674
|
/* @__PURE__ */ jsxs15(
|
|
4661
4675
|
DropdownMenuItem2,
|
|
@@ -4766,7 +4780,7 @@ function IssueManagerTopicDialog({
|
|
|
4766
4780
|
/* @__PURE__ */ jsx17(DialogHeader, { children: /* @__PURE__ */ jsx17(DialogTitle, { children: dialogTitle }) }),
|
|
4767
4781
|
/* @__PURE__ */ jsxs15("form", { className: "grid gap-4", onSubmit: submit, children: [
|
|
4768
4782
|
/* @__PURE__ */ jsxs15("label", { className: "grid gap-2", children: [
|
|
4769
|
-
/* @__PURE__ */ jsx17("span", { className: "text-
|
|
4783
|
+
/* @__PURE__ */ jsx17("span", { className: "text-[11px] font-medium leading-4 text-[var(--text-secondary)]", children: copy.t("labels.topicTitle") }),
|
|
4770
4784
|
/* @__PURE__ */ jsx17(
|
|
4771
4785
|
Input3,
|
|
4772
4786
|
{
|
|
@@ -4778,7 +4792,7 @@ function IssueManagerTopicDialog({
|
|
|
4778
4792
|
)
|
|
4779
4793
|
] }),
|
|
4780
4794
|
/* @__PURE__ */ jsxs15("label", { className: "grid gap-2", children: [
|
|
4781
|
-
/* @__PURE__ */ jsx17("span", { className: "text-
|
|
4795
|
+
/* @__PURE__ */ jsx17("span", { className: "text-[11px] font-medium leading-4 text-[var(--text-secondary)]", children: copy.t("labels.topicSummary") }),
|
|
4782
4796
|
/* @__PURE__ */ jsx17(
|
|
4783
4797
|
Textarea,
|
|
4784
4798
|
{
|
|
@@ -5030,4 +5044,4 @@ export {
|
|
|
5030
5044
|
IssueManagerNode,
|
|
5031
5045
|
IssueManagerNodeHeader
|
|
5032
5046
|
};
|
|
5033
|
-
//# sourceMappingURL=chunk-
|
|
5047
|
+
//# sourceMappingURL=chunk-RJX54QWL.js.map
|