@tutti-os/workspace-issue-manager 0.0.1
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/LICENSE +202 -0
- package/README.md +15 -0
- package/dist/assets/workspace-dock-task.d.ts +3 -0
- package/dist/assets/workspace-dock-task.png +0 -0
- package/dist/chunk-3XE7PXVP.js +14 -0
- package/dist/chunk-3XE7PXVP.js.map +1 -0
- package/dist/chunk-4B2P64PY.js +938 -0
- package/dist/chunk-4B2P64PY.js.map +1 -0
- package/dist/chunk-DLB2WIV6.js +5033 -0
- package/dist/chunk-DLB2WIV6.js.map +1 -0
- package/dist/chunk-JDYJIVGG.js +445 -0
- package/dist/chunk-JDYJIVGG.js.map +1 -0
- package/dist/chunk-LEL6VWU4.js +1 -0
- package/dist/chunk-LEL6VWU4.js.map +1 -0
- package/dist/chunk-T5TTRS5M.js +1 -0
- package/dist/chunk-T5TTRS5M.js.map +1 -0
- package/dist/chunk-WJSZFKUD.js +292 -0
- package/dist/chunk-WJSZFKUD.js.map +1 -0
- package/dist/contracts/index.d.ts +492 -0
- package/dist/contracts/index.js +1 -0
- package/dist/contracts/index.js.map +1 -0
- package/dist/core/index.d.ts +81 -0
- package/dist/core/index.js +66 -0
- package/dist/core/index.js.map +1 -0
- package/dist/feature-D16xMEZU.d.ts +47 -0
- package/dist/i18n/index.d.ts +18 -0
- package/dist/i18n/index.js +14 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +95 -0
- package/dist/index.js.map +1 -0
- package/dist/issueManagerControllerService.interface-D8Z1B9k4.d.ts +106 -0
- package/dist/latestRunStatusRenderer-B_9yU0CM.d.ts +14 -0
- package/dist/services/index.d.ts +13 -0
- package/dist/services/index.js +24 -0
- package/dist/services/index.js.map +1 -0
- package/dist/ui/index.d.ts +58 -0
- package/dist/ui/index.js +12 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/workbench/constants.d.ts +6 -0
- package/dist/workbench/constants.js +9 -0
- package/dist/workbench/constants.js.map +1 -0
- package/dist/workbench/index.d.ts +76 -0
- package/dist/workbench/index.js +276 -0
- package/dist/workbench/index.js.map +1 -0
- package/openapi/issue-manager.v1.yaml +1682 -0
- package/package.json +93 -0
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { I18nRuntime } from '@tutti-os/ui-i18n-runtime';
|
|
2
|
+
import { IssueManagerI18nRuntime } from './i18n/index.js';
|
|
3
|
+
import { IssueManagerAgentBreakdownLauncher, IssueManagerAnalyticsAdapter, IssueManagerAgentProviderOptionsAdapter, IssueManagerAgentSessionOpener, IssueManagerAgentRunner, IssueManagerBackend, IssueManagerEventSource, IssueManagerExecutionDirectoryPicker, IssueManagerFileAdapter, IssueManagerIdentityAdapter, IssueManagerShareAdapter, IssueManagerNodeState } from './contracts/index.js';
|
|
4
|
+
|
|
5
|
+
interface IssueManagerNotificationSink {
|
|
6
|
+
tips(title: string): void;
|
|
7
|
+
}
|
|
8
|
+
interface IssueManagerFeatureUIConfig {
|
|
9
|
+
showInviteCollaborator: boolean;
|
|
10
|
+
}
|
|
11
|
+
interface IssueManagerFeature {
|
|
12
|
+
agentBreakdownLauncher?: IssueManagerAgentBreakdownLauncher;
|
|
13
|
+
analytics?: IssueManagerAnalyticsAdapter;
|
|
14
|
+
agentProviderOptions?: IssueManagerAgentProviderOptionsAdapter;
|
|
15
|
+
agentSessionOpener?: IssueManagerAgentSessionOpener;
|
|
16
|
+
agentRunner: IssueManagerAgentRunner;
|
|
17
|
+
backend: IssueManagerBackend;
|
|
18
|
+
eventSource?: IssueManagerEventSource;
|
|
19
|
+
executionDirectoryPicker?: IssueManagerExecutionDirectoryPicker;
|
|
20
|
+
fileAdapter?: IssueManagerFileAdapter;
|
|
21
|
+
i18n: IssueManagerI18nRuntime;
|
|
22
|
+
identityAdapter: IssueManagerIdentityAdapter;
|
|
23
|
+
notifications?: IssueManagerNotificationSink;
|
|
24
|
+
shareAdapter?: IssueManagerShareAdapter;
|
|
25
|
+
ui: IssueManagerFeatureUIConfig;
|
|
26
|
+
}
|
|
27
|
+
interface CreateIssueManagerFeatureInput {
|
|
28
|
+
agentBreakdownLauncher?: IssueManagerAgentBreakdownLauncher;
|
|
29
|
+
analytics?: IssueManagerAnalyticsAdapter;
|
|
30
|
+
agentProviderOptions?: IssueManagerAgentProviderOptionsAdapter;
|
|
31
|
+
agentSessionOpener?: IssueManagerAgentSessionOpener;
|
|
32
|
+
agentRunner: IssueManagerAgentRunner;
|
|
33
|
+
backend: IssueManagerBackend;
|
|
34
|
+
eventSource?: IssueManagerEventSource;
|
|
35
|
+
executionDirectoryPicker?: IssueManagerExecutionDirectoryPicker;
|
|
36
|
+
fileAdapter?: IssueManagerFileAdapter;
|
|
37
|
+
i18n?: I18nRuntime<string>;
|
|
38
|
+
identityAdapter: IssueManagerIdentityAdapter;
|
|
39
|
+
notifications?: IssueManagerNotificationSink;
|
|
40
|
+
shareAdapter?: IssueManagerShareAdapter;
|
|
41
|
+
ui?: Partial<IssueManagerFeatureUIConfig>;
|
|
42
|
+
}
|
|
43
|
+
declare const defaultIssueManagerNodeState: IssueManagerNodeState;
|
|
44
|
+
declare function createIssueManagerFeature(input: CreateIssueManagerFeatureInput): IssueManagerFeature;
|
|
45
|
+
declare function normalizeIssueManagerNodeState(state: Partial<IssueManagerNodeState> | null | undefined): IssueManagerNodeState;
|
|
46
|
+
|
|
47
|
+
export { type CreateIssueManagerFeatureInput as C, type IssueManagerFeature as I, type IssueManagerNotificationSink as a, createIssueManagerFeature as c, defaultIssueManagerNodeState as d, normalizeIssueManagerNodeState as n };
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as _tutti_os_ui_i18n_runtime from '@tutti-os/ui-i18n-runtime';
|
|
2
|
+
import { I18nRuntime, I18nDictionary } from '@tutti-os/ui-i18n-runtime';
|
|
3
|
+
|
|
4
|
+
declare const issueManagerI18nNamespace = "issueManager";
|
|
5
|
+
declare const issueManagerI18nModule: _tutti_os_ui_i18n_runtime.ScopedLocaleObjectsI18nModuleManifest;
|
|
6
|
+
type IssueManagerI18nKey = string;
|
|
7
|
+
type IssueManagerI18nRuntime = I18nRuntime<IssueManagerI18nKey>;
|
|
8
|
+
declare const issueManagerI18nResources: {
|
|
9
|
+
readonly en: {
|
|
10
|
+
readonly issueManager: I18nDictionary;
|
|
11
|
+
};
|
|
12
|
+
readonly "zh-CN": {
|
|
13
|
+
readonly issueManager: I18nDictionary;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
declare function createIssueManagerI18nRuntime(runtime: I18nRuntime<string> | undefined): IssueManagerI18nRuntime;
|
|
17
|
+
|
|
18
|
+
export { type IssueManagerI18nKey, type IssueManagerI18nRuntime, createIssueManagerI18nRuntime, issueManagerI18nModule, issueManagerI18nNamespace, issueManagerI18nResources };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import "../chunk-T5TTRS5M.js";
|
|
2
|
+
import {
|
|
3
|
+
createIssueManagerI18nRuntime,
|
|
4
|
+
issueManagerI18nModule,
|
|
5
|
+
issueManagerI18nNamespace,
|
|
6
|
+
issueManagerI18nResources
|
|
7
|
+
} from "../chunk-JDYJIVGG.js";
|
|
8
|
+
export {
|
|
9
|
+
createIssueManagerI18nRuntime,
|
|
10
|
+
issueManagerI18nModule,
|
|
11
|
+
issueManagerI18nNamespace,
|
|
12
|
+
issueManagerI18nResources
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export { C as CreateIssueManagerFeatureInput, I as IssueManagerFeature, a as IssueManagerNotificationSink, c as createIssueManagerFeature, d as defaultIssueManagerNodeState, n as normalizeIssueManagerNodeState } from './feature-D16xMEZU.js';
|
|
2
|
+
export { BuildWorkspaceIssueMentionHrefInput, IssueManagerMentionAttrs, IssueManagerMentionRef, IssueManagerWorkspaceFileLinkInput, IssueManagerWorkspaceFileLinkRef, ParsedWorkspaceIssueMention, WorkspaceIssueMentionMode, appendIssueManagerWorkspaceFileLinksToContent, buildIssueManagerRunPrompt, buildIssueManagerTaskBreakdownPrompt, buildWorkspaceIssueMentionHref, clampIssueManagerSidebarWidth, createIssueManagerMentionHref, createIssueManagerMentionMarkdown, createIssueManagerWorkspaceFileLinkMarkdown, extractIssueManagerMentionsFromContent, extractIssueManagerPlainTextFromContent, extractIssueManagerPlainTextWithoutFilesFromContent, extractIssueManagerWorkspaceFileLinksFromContent, issueManagerDefaultNodeFrameWidth, issueManagerExpandedFrameMinWidth, issueManagerMainMinWidth, issueManagerSidebarDefaultWidth, issueManagerSidebarMaxWidth, issueManagerSidebarMinWidth, normalizeIssueManagerContent, normalizeIssueManagerWorkspaceFileLinkHref, parseIssueManagerMentionHref, parseWorkspaceIssueMentionHref, removeIssueManagerMentionFromContent, removeIssueManagerWorkspaceFileLinkFromContent, resolveIssueManagerExpandedFrame, resolveIssueManagerWorkspaceRuntimePath, shouldAutoCollapseIssueManagerSidebar } from './core/index.js';
|
|
3
|
+
export { IssueManagerI18nKey, IssueManagerI18nRuntime, createIssueManagerI18nRuntime, issueManagerI18nModule, issueManagerI18nNamespace, issueManagerI18nResources } from './i18n/index.js';
|
|
4
|
+
export { A as AsyncCollectionState, C as CreateIssueManagerControllerRuntimeInput, C as CreateIssueManagerControllerSessionInput, I as IssueDraft, a as IssueManagerControllerRuntime, b as IssueManagerControllerService, a as IssueManagerControllerSession, S as IssueManagerControllerSessionSyncInput, c as IssueManagerControllerSnapshot, d as IssueManagerDetailCollections, e as IssueManagerEditorMode, f as IssueManagerNotificationState, g as IssueManagerNotificationTone, h as IssueManagerReferenceTarget, S as SyncIssueManagerControllerRuntimeInput, T as TaskDraft, i as createIssueManagerDate, j as formatIssueManagerDate, k as formatIssueManagerTimestamp, p as parentDirectoryPath, r as resolveIssueManagerPriorityLabel, l as resolveIssueManagerStatusLabel, u as uniqueIssueManagerFileReferences } from './issueManagerControllerService.interface-D8Z1B9k4.js';
|
|
5
|
+
export { createIssueManagerControllerService } from './services/index.js';
|
|
6
|
+
import '@tutti-os/ui-i18n-runtime';
|
|
7
|
+
import './contracts/index.js';
|
|
8
|
+
import '@tutti-os/workspace-file-reference/contracts';
|
|
9
|
+
import '@tutti-os/workspace-user-project/contracts';
|
|
10
|
+
import '@tutti-os/ui-rich-text/core';
|
|
11
|
+
import '@tutti-os/ui-rich-text/types';
|
|
12
|
+
import 'react';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import "./chunk-T5TTRS5M.js";
|
|
2
|
+
import "./chunk-LEL6VWU4.js";
|
|
3
|
+
import {
|
|
4
|
+
createIssueManagerControllerService,
|
|
5
|
+
createIssueManagerDate,
|
|
6
|
+
formatIssueManagerDate,
|
|
7
|
+
formatIssueManagerTimestamp,
|
|
8
|
+
parentDirectoryPath,
|
|
9
|
+
resolveIssueManagerPriorityLabel,
|
|
10
|
+
resolveIssueManagerStatusLabel,
|
|
11
|
+
uniqueIssueManagerFileReferences
|
|
12
|
+
} from "./chunk-4B2P64PY.js";
|
|
13
|
+
import {
|
|
14
|
+
appendIssueManagerWorkspaceFileLinksToContent,
|
|
15
|
+
buildIssueManagerRunPrompt,
|
|
16
|
+
buildIssueManagerTaskBreakdownPrompt,
|
|
17
|
+
buildWorkspaceIssueMentionHref,
|
|
18
|
+
clampIssueManagerSidebarWidth,
|
|
19
|
+
createIssueManagerFeature,
|
|
20
|
+
createIssueManagerMentionHref,
|
|
21
|
+
createIssueManagerMentionMarkdown,
|
|
22
|
+
createIssueManagerWorkspaceFileLinkMarkdown,
|
|
23
|
+
defaultIssueManagerNodeState,
|
|
24
|
+
extractIssueManagerMentionsFromContent,
|
|
25
|
+
extractIssueManagerPlainTextFromContent,
|
|
26
|
+
extractIssueManagerPlainTextWithoutFilesFromContent,
|
|
27
|
+
extractIssueManagerWorkspaceFileLinksFromContent,
|
|
28
|
+
issueManagerDefaultNodeFrameWidth,
|
|
29
|
+
issueManagerExpandedFrameMinWidth,
|
|
30
|
+
issueManagerMainMinWidth,
|
|
31
|
+
issueManagerSidebarDefaultWidth,
|
|
32
|
+
issueManagerSidebarMaxWidth,
|
|
33
|
+
issueManagerSidebarMinWidth,
|
|
34
|
+
normalizeIssueManagerContent,
|
|
35
|
+
normalizeIssueManagerNodeState,
|
|
36
|
+
normalizeIssueManagerWorkspaceFileLinkHref,
|
|
37
|
+
parseIssueManagerMentionHref,
|
|
38
|
+
parseWorkspaceIssueMentionHref,
|
|
39
|
+
removeIssueManagerMentionFromContent,
|
|
40
|
+
removeIssueManagerWorkspaceFileLinkFromContent,
|
|
41
|
+
resolveIssueManagerExpandedFrame,
|
|
42
|
+
resolveIssueManagerWorkspaceRuntimePath,
|
|
43
|
+
shouldAutoCollapseIssueManagerSidebar
|
|
44
|
+
} from "./chunk-WJSZFKUD.js";
|
|
45
|
+
import {
|
|
46
|
+
createIssueManagerI18nRuntime,
|
|
47
|
+
issueManagerI18nModule,
|
|
48
|
+
issueManagerI18nNamespace,
|
|
49
|
+
issueManagerI18nResources
|
|
50
|
+
} from "./chunk-JDYJIVGG.js";
|
|
51
|
+
export {
|
|
52
|
+
appendIssueManagerWorkspaceFileLinksToContent,
|
|
53
|
+
buildIssueManagerRunPrompt,
|
|
54
|
+
buildIssueManagerTaskBreakdownPrompt,
|
|
55
|
+
buildWorkspaceIssueMentionHref,
|
|
56
|
+
clampIssueManagerSidebarWidth,
|
|
57
|
+
createIssueManagerControllerService,
|
|
58
|
+
createIssueManagerDate,
|
|
59
|
+
createIssueManagerFeature,
|
|
60
|
+
createIssueManagerI18nRuntime,
|
|
61
|
+
createIssueManagerMentionHref,
|
|
62
|
+
createIssueManagerMentionMarkdown,
|
|
63
|
+
createIssueManagerWorkspaceFileLinkMarkdown,
|
|
64
|
+
defaultIssueManagerNodeState,
|
|
65
|
+
extractIssueManagerMentionsFromContent,
|
|
66
|
+
extractIssueManagerPlainTextFromContent,
|
|
67
|
+
extractIssueManagerPlainTextWithoutFilesFromContent,
|
|
68
|
+
extractIssueManagerWorkspaceFileLinksFromContent,
|
|
69
|
+
formatIssueManagerDate,
|
|
70
|
+
formatIssueManagerTimestamp,
|
|
71
|
+
issueManagerDefaultNodeFrameWidth,
|
|
72
|
+
issueManagerExpandedFrameMinWidth,
|
|
73
|
+
issueManagerI18nModule,
|
|
74
|
+
issueManagerI18nNamespace,
|
|
75
|
+
issueManagerI18nResources,
|
|
76
|
+
issueManagerMainMinWidth,
|
|
77
|
+
issueManagerSidebarDefaultWidth,
|
|
78
|
+
issueManagerSidebarMaxWidth,
|
|
79
|
+
issueManagerSidebarMinWidth,
|
|
80
|
+
normalizeIssueManagerContent,
|
|
81
|
+
normalizeIssueManagerNodeState,
|
|
82
|
+
normalizeIssueManagerWorkspaceFileLinkHref,
|
|
83
|
+
parentDirectoryPath,
|
|
84
|
+
parseIssueManagerMentionHref,
|
|
85
|
+
parseWorkspaceIssueMentionHref,
|
|
86
|
+
removeIssueManagerMentionFromContent,
|
|
87
|
+
removeIssueManagerWorkspaceFileLinkFromContent,
|
|
88
|
+
resolveIssueManagerExpandedFrame,
|
|
89
|
+
resolveIssueManagerPriorityLabel,
|
|
90
|
+
resolveIssueManagerStatusLabel,
|
|
91
|
+
resolveIssueManagerWorkspaceRuntimePath,
|
|
92
|
+
shouldAutoCollapseIssueManagerSidebar,
|
|
93
|
+
uniqueIssueManagerFileReferences
|
|
94
|
+
};
|
|
95
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
import { SetStateAction } from 'react';
|
|
2
|
+
import { IssueManagerPriority, IssueManagerStatus, IssueManagerFileReference, IssueManagerStatusCounts, IssueManagerIssueDetail, IssueManagerTaskDetail, IssueManagerOpenSource, IssueManagerNodeState, IssueManagerIssueSummary, IssueManagerTopic } from './contracts/index.js';
|
|
3
|
+
import { I as IssueManagerFeature } from './feature-D16xMEZU.js';
|
|
4
|
+
import { IssueManagerI18nRuntime } from './i18n/index.js';
|
|
5
|
+
|
|
6
|
+
type IssueManagerEditorMode = "read" | "create" | "edit";
|
|
7
|
+
type IssueManagerReferenceTarget = {
|
|
8
|
+
mode: "attach";
|
|
9
|
+
parentKind: "issue";
|
|
10
|
+
} | {
|
|
11
|
+
mode: "attach";
|
|
12
|
+
parentKind: "task";
|
|
13
|
+
taskId: string;
|
|
14
|
+
} | {
|
|
15
|
+
mode: "insert";
|
|
16
|
+
parentKind: "issue";
|
|
17
|
+
} | {
|
|
18
|
+
mode: "insert";
|
|
19
|
+
parentKind: "task";
|
|
20
|
+
taskId: string;
|
|
21
|
+
};
|
|
22
|
+
declare function createIssueManagerDate(value: number | null | undefined): Date | null;
|
|
23
|
+
declare function formatIssueManagerTimestamp(value: number | null | undefined): string | null;
|
|
24
|
+
declare function formatIssueManagerDate(value: number | null | undefined): string;
|
|
25
|
+
declare function resolveIssueManagerStatusLabel(copy: IssueManagerI18nRuntime, status: IssueManagerStatus | null | undefined): string;
|
|
26
|
+
declare function resolveIssueManagerPriorityLabel(copy: IssueManagerI18nRuntime, priority: IssueManagerPriority | null | undefined): string;
|
|
27
|
+
declare function uniqueIssueManagerFileReferences(refs: readonly IssueManagerFileReference[]): IssueManagerFileReference[];
|
|
28
|
+
declare function parentDirectoryPath(path: string): string | null;
|
|
29
|
+
|
|
30
|
+
interface IssueDraft {
|
|
31
|
+
content: string;
|
|
32
|
+
title: string;
|
|
33
|
+
}
|
|
34
|
+
interface TaskDraft {
|
|
35
|
+
content: string;
|
|
36
|
+
priority: IssueManagerPriority;
|
|
37
|
+
title: string;
|
|
38
|
+
}
|
|
39
|
+
interface AsyncCollectionState<TValue> {
|
|
40
|
+
error: string | null;
|
|
41
|
+
hasResolved?: boolean;
|
|
42
|
+
isLoading: boolean;
|
|
43
|
+
statusCounts?: IssueManagerStatusCounts;
|
|
44
|
+
value: TValue;
|
|
45
|
+
}
|
|
46
|
+
type IssueManagerNotificationTone = "default" | "destructive";
|
|
47
|
+
interface IssueManagerNotificationState {
|
|
48
|
+
id: number;
|
|
49
|
+
title: string;
|
|
50
|
+
tone: IssueManagerNotificationTone;
|
|
51
|
+
}
|
|
52
|
+
interface IssueManagerDetailCollections {
|
|
53
|
+
issueDetail: AsyncCollectionState<IssueManagerIssueDetail | null>;
|
|
54
|
+
taskDetail: AsyncCollectionState<IssueManagerTaskDetail | null>;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
interface IssueManagerControllerSnapshot {
|
|
58
|
+
issueDetail: AsyncCollectionState<IssueManagerIssueDetail | null>;
|
|
59
|
+
issueDraft: IssueDraft;
|
|
60
|
+
issueEditorMode: IssueManagerEditorMode;
|
|
61
|
+
issues: AsyncCollectionState<IssueManagerIssueSummary[]>;
|
|
62
|
+
isRunningTask: boolean;
|
|
63
|
+
nodeState: IssueManagerNodeState;
|
|
64
|
+
notification: IssueManagerNotificationState | null;
|
|
65
|
+
referenceTarget: IssueManagerReferenceTarget | null;
|
|
66
|
+
taskDetail: AsyncCollectionState<IssueManagerTaskDetail | null>;
|
|
67
|
+
taskDraft: TaskDraft;
|
|
68
|
+
taskEditorMode: IssueManagerEditorMode;
|
|
69
|
+
topics: AsyncCollectionState<IssueManagerTopic[]>;
|
|
70
|
+
}
|
|
71
|
+
interface CreateIssueManagerControllerRuntimeInput {
|
|
72
|
+
feature: IssueManagerFeature;
|
|
73
|
+
openSource?: IssueManagerOpenSource;
|
|
74
|
+
state?: Partial<IssueManagerNodeState> | null;
|
|
75
|
+
workspaceId: string;
|
|
76
|
+
}
|
|
77
|
+
interface SyncIssueManagerControllerRuntimeInput {
|
|
78
|
+
deferredIssueSearch: string;
|
|
79
|
+
onStateChange?: (state: IssueManagerNodeState) => void;
|
|
80
|
+
taskListCollapsed: boolean;
|
|
81
|
+
}
|
|
82
|
+
interface IssueManagerControllerRuntime {
|
|
83
|
+
getSnapshot(): IssueManagerControllerSnapshot;
|
|
84
|
+
refreshAll(): void;
|
|
85
|
+
refreshDetails(): void;
|
|
86
|
+
release(): void;
|
|
87
|
+
reportIssueSearchUsage(query: string): void;
|
|
88
|
+
retain(): void;
|
|
89
|
+
readonly store: IssueManagerControllerSnapshot;
|
|
90
|
+
setIsRunningTask(update: SetStateAction<boolean>): void;
|
|
91
|
+
setIssueDraftInternal(update: SetStateAction<IssueDraft>): void;
|
|
92
|
+
setIssueEditorModeState(update: SetStateAction<IssueManagerEditorMode>): void;
|
|
93
|
+
setReferenceTarget(update: SetStateAction<IssueManagerReferenceTarget | null>): void;
|
|
94
|
+
setNotification(update: SetStateAction<IssueManagerNotificationState | null>): void;
|
|
95
|
+
setTaskDraftInternal(update: SetStateAction<TaskDraft>): void;
|
|
96
|
+
setTaskEditorModeState(update: SetStateAction<IssueManagerEditorMode>): void;
|
|
97
|
+
subscribe(listener: () => void): () => void;
|
|
98
|
+
syncInput(input: SyncIssueManagerControllerRuntimeInput): void;
|
|
99
|
+
updateNodeState(updater: Partial<IssueManagerNodeState> | ((current: IssueManagerNodeState) => IssueManagerNodeState)): void;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
interface IssueManagerControllerService {
|
|
103
|
+
createSession(input: CreateIssueManagerControllerRuntimeInput): IssueManagerControllerRuntime;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export { type AsyncCollectionState as A, type CreateIssueManagerControllerRuntimeInput as C, type IssueDraft as I, type SyncIssueManagerControllerRuntimeInput as S, type TaskDraft as T, type IssueManagerControllerRuntime as a, type IssueManagerControllerService as b, type IssueManagerControllerSnapshot as c, type IssueManagerDetailCollections as d, type IssueManagerEditorMode as e, type IssueManagerNotificationState as f, type IssueManagerNotificationTone as g, type IssueManagerReferenceTarget as h, createIssueManagerDate as i, formatIssueManagerDate as j, formatIssueManagerTimestamp as k, resolveIssueManagerStatusLabel as l, parentDirectoryPath as p, resolveIssueManagerPriorityLabel as r, uniqueIssueManagerFileReferences as u };
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { IssueManagerRun } from './contracts/index.js';
|
|
3
|
+
import { IssueManagerI18nRuntime } from './i18n/index.js';
|
|
4
|
+
|
|
5
|
+
interface IssueManagerLatestRunStatusRenderInput {
|
|
6
|
+
canOpenAgentSession: boolean;
|
|
7
|
+
copy: IssueManagerI18nRuntime;
|
|
8
|
+
latestRun: IssueManagerRun;
|
|
9
|
+
title: string;
|
|
10
|
+
onOpenAgentSession?: (run: IssueManagerRun) => Promise<void>;
|
|
11
|
+
}
|
|
12
|
+
type IssueManagerLatestRunStatusRenderer = (input: IssueManagerLatestRunStatusRenderInput) => ReactNode;
|
|
13
|
+
|
|
14
|
+
export type { IssueManagerLatestRunStatusRenderInput as I, IssueManagerLatestRunStatusRenderer as a };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { b as IssueManagerControllerService } from '../issueManagerControllerService.interface-D8Z1B9k4.js';
|
|
2
|
+
export { A as AsyncCollectionState, C as CreateIssueManagerControllerRuntimeInput, C as CreateIssueManagerControllerSessionInput, I as IssueDraft, a as IssueManagerControllerRuntime, a as IssueManagerControllerSession, S as IssueManagerControllerSessionSyncInput, c as IssueManagerControllerSnapshot, d as IssueManagerDetailCollections, e as IssueManagerEditorMode, f as IssueManagerNotificationState, g as IssueManagerNotificationTone, h as IssueManagerReferenceTarget, S as SyncIssueManagerControllerRuntimeInput, T as TaskDraft, i as createIssueManagerDate, j as formatIssueManagerDate, k as formatIssueManagerTimestamp, p as parentDirectoryPath, r as resolveIssueManagerPriorityLabel, l as resolveIssueManagerStatusLabel, u as uniqueIssueManagerFileReferences } from '../issueManagerControllerService.interface-D8Z1B9k4.js';
|
|
3
|
+
import 'react';
|
|
4
|
+
import '../contracts/index.js';
|
|
5
|
+
import '@tutti-os/workspace-file-reference/contracts';
|
|
6
|
+
import '@tutti-os/workspace-user-project/contracts';
|
|
7
|
+
import '../feature-D16xMEZU.js';
|
|
8
|
+
import '@tutti-os/ui-i18n-runtime';
|
|
9
|
+
import '../i18n/index.js';
|
|
10
|
+
|
|
11
|
+
declare function createIssueManagerControllerService(): IssueManagerControllerService;
|
|
12
|
+
|
|
13
|
+
export { IssueManagerControllerService, createIssueManagerControllerService };
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import "../chunk-LEL6VWU4.js";
|
|
2
|
+
import {
|
|
3
|
+
createIssueManagerControllerService,
|
|
4
|
+
createIssueManagerDate,
|
|
5
|
+
formatIssueManagerDate,
|
|
6
|
+
formatIssueManagerTimestamp,
|
|
7
|
+
parentDirectoryPath,
|
|
8
|
+
resolveIssueManagerPriorityLabel,
|
|
9
|
+
resolveIssueManagerStatusLabel,
|
|
10
|
+
uniqueIssueManagerFileReferences
|
|
11
|
+
} from "../chunk-4B2P64PY.js";
|
|
12
|
+
import "../chunk-WJSZFKUD.js";
|
|
13
|
+
import "../chunk-JDYJIVGG.js";
|
|
14
|
+
export {
|
|
15
|
+
createIssueManagerControllerService,
|
|
16
|
+
createIssueManagerDate,
|
|
17
|
+
formatIssueManagerDate,
|
|
18
|
+
formatIssueManagerTimestamp,
|
|
19
|
+
parentDirectoryPath,
|
|
20
|
+
resolveIssueManagerPriorityLabel,
|
|
21
|
+
resolveIssueManagerStatusLabel,
|
|
22
|
+
uniqueIssueManagerFileReferences
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { ReactNode, JSX, HTMLAttributes } from 'react';
|
|
2
|
+
import { IssueManagerI18nRuntime } from '../i18n/index.js';
|
|
3
|
+
import { IssueManagerOpenSource, IssueManagerNodeState } from '../contracts/index.js';
|
|
4
|
+
import { a as IssueManagerLatestRunStatusRenderer } from '../latestRunStatusRenderer-B_9yU0CM.js';
|
|
5
|
+
export { I as IssueManagerLatestRunStatusRenderInput } from '../latestRunStatusRenderer-B_9yU0CM.js';
|
|
6
|
+
import { RichTextAtProvider } from '@tutti-os/ui-rich-text/types';
|
|
7
|
+
import { I as IssueManagerFeature } from '../feature-D16xMEZU.js';
|
|
8
|
+
import { b as IssueManagerControllerService } from '../issueManagerControllerService.interface-D8Z1B9k4.js';
|
|
9
|
+
import '@tutti-os/ui-i18n-runtime';
|
|
10
|
+
import '@tutti-os/workspace-file-reference/contracts';
|
|
11
|
+
import '@tutti-os/workspace-user-project/contracts';
|
|
12
|
+
|
|
13
|
+
type IssueManagerRichTextSurface = "issue" | "task";
|
|
14
|
+
|
|
15
|
+
interface UseIssueManagerNodeViewInput {
|
|
16
|
+
emptyIllustration?: ReactNode;
|
|
17
|
+
feature: IssueManagerFeature;
|
|
18
|
+
nodeId: string;
|
|
19
|
+
openSource?: IssueManagerOpenSource;
|
|
20
|
+
onStateChange?: (state: IssueManagerNodeState) => void;
|
|
21
|
+
resolveRichTextAtProviders?: (input: {
|
|
22
|
+
surface: IssueManagerRichTextSurface;
|
|
23
|
+
workspaceId: string;
|
|
24
|
+
}) => readonly RichTextAtProvider[];
|
|
25
|
+
service?: IssueManagerControllerService;
|
|
26
|
+
state?: Partial<IssueManagerNodeState> | null;
|
|
27
|
+
workspaceId: string;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
interface IssueManagerNodeOpenRequest {
|
|
31
|
+
issueId: string;
|
|
32
|
+
mode?: "breakdown" | "execute";
|
|
33
|
+
outputDir?: string;
|
|
34
|
+
requestId: string;
|
|
35
|
+
runId?: string;
|
|
36
|
+
taskId?: string;
|
|
37
|
+
topicId?: string;
|
|
38
|
+
}
|
|
39
|
+
type IssueManagerNodeProps = UseIssueManagerNodeViewInput & {
|
|
40
|
+
openRequest?: IssueManagerNodeOpenRequest | null;
|
|
41
|
+
openSource?: IssueManagerOpenSource;
|
|
42
|
+
renderLatestRunStatus?: IssueManagerLatestRunStatusRenderer;
|
|
43
|
+
};
|
|
44
|
+
declare function IssueManagerNode({ emptyIllustration, feature, nodeId, openSource, openRequest, onStateChange, renderLatestRunStatus, resolveRichTextAtProviders, service, state, workspaceId }: IssueManagerNodeProps): JSX.Element;
|
|
45
|
+
interface IssueManagerNodeHeaderProps extends HTMLAttributes<HTMLElement> {
|
|
46
|
+
activeTopicId?: string | null;
|
|
47
|
+
copy: IssueManagerI18nRuntime;
|
|
48
|
+
defaultActions?: ReactNode;
|
|
49
|
+
isSidebarAutoCollapsed: boolean;
|
|
50
|
+
isSidebarCollapsed: boolean;
|
|
51
|
+
nodeId: string;
|
|
52
|
+
onToggleSidebar: (nextCollapsed: boolean) => void;
|
|
53
|
+
title?: string;
|
|
54
|
+
workspaceId: string;
|
|
55
|
+
}
|
|
56
|
+
declare function IssueManagerNodeHeader({ activeTopicId, className, copy, defaultActions, isSidebarAutoCollapsed, isSidebarCollapsed, nodeId, onToggleSidebar, title, workspaceId, ...headerProps }: IssueManagerNodeHeaderProps): JSX.Element;
|
|
57
|
+
|
|
58
|
+
export { IssueManagerLatestRunStatusRenderer, IssueManagerNode, IssueManagerNodeHeader, type IssueManagerNodeProps };
|
package/dist/ui/index.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import {
|
|
2
|
+
IssueManagerNode,
|
|
3
|
+
IssueManagerNodeHeader
|
|
4
|
+
} from "../chunk-DLB2WIV6.js";
|
|
5
|
+
import "../chunk-4B2P64PY.js";
|
|
6
|
+
import "../chunk-WJSZFKUD.js";
|
|
7
|
+
import "../chunk-JDYJIVGG.js";
|
|
8
|
+
export {
|
|
9
|
+
IssueManagerNode,
|
|
10
|
+
IssueManagerNodeHeader
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { WorkbenchFrame } from '@tutti-os/workbench-surface';
|
|
2
|
+
|
|
3
|
+
declare const defaultIssueManagerWorkbenchTypeId = "issue-manager";
|
|
4
|
+
declare const defaultIssueManagerNodeFrame: WorkbenchFrame;
|
|
5
|
+
|
|
6
|
+
export { defaultIssueManagerNodeFrame, defaultIssueManagerWorkbenchTypeId };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { RichTextAtProvider } from '@tutti-os/ui-rich-text/types';
|
|
3
|
+
import { WorkbenchHostActivation, WorkbenchHostExternalStateSource, WorkbenchFrame, WorkbenchHostDockEntry, WorkbenchContribution, WorkbenchHostLaunchRequest, WorkbenchHostLaunchResult, WorkbenchHostNodeDefinition } from '@tutti-os/workbench-surface';
|
|
4
|
+
import { IssueManagerNodeState } from '../contracts/index.js';
|
|
5
|
+
import { I as IssueManagerFeature } from '../feature-D16xMEZU.js';
|
|
6
|
+
import { b as IssueManagerControllerService } from '../issueManagerControllerService.interface-D8Z1B9k4.js';
|
|
7
|
+
import { a as IssueManagerLatestRunStatusRenderer } from '../latestRunStatusRenderer-B_9yU0CM.js';
|
|
8
|
+
export { defaultIssueManagerNodeFrame, defaultIssueManagerWorkbenchTypeId } from './constants.js';
|
|
9
|
+
import '@tutti-os/workspace-file-reference/contracts';
|
|
10
|
+
import '@tutti-os/workspace-user-project/contracts';
|
|
11
|
+
import '@tutti-os/ui-i18n-runtime';
|
|
12
|
+
import '../i18n/index.js';
|
|
13
|
+
|
|
14
|
+
declare const issueManagerOpenActivationType = "open-workspace-issue";
|
|
15
|
+
interface IssueManagerOpenActivationPayload {
|
|
16
|
+
issueId: string;
|
|
17
|
+
mode?: "breakdown" | "execute";
|
|
18
|
+
outputDir?: string;
|
|
19
|
+
runId?: string;
|
|
20
|
+
taskId?: string;
|
|
21
|
+
topicId?: string;
|
|
22
|
+
}
|
|
23
|
+
declare function readIssueManagerOpenActivationPayload(activation: WorkbenchHostActivation | null): IssueManagerOpenActivationPayload | null;
|
|
24
|
+
|
|
25
|
+
interface IssueManagerExternalWorkspaceState {
|
|
26
|
+
workspaceId?: string | null;
|
|
27
|
+
}
|
|
28
|
+
interface CreateIssueManagerWorkbenchNodeDefinitionInput {
|
|
29
|
+
emptyIllustration?: ReactNode;
|
|
30
|
+
feature: IssueManagerFeature;
|
|
31
|
+
frame?: WorkbenchFrame;
|
|
32
|
+
onStateChange?: (input: {
|
|
33
|
+
instanceId: string;
|
|
34
|
+
instanceKey?: string | null;
|
|
35
|
+
nodeId: string;
|
|
36
|
+
state: IssueManagerNodeState;
|
|
37
|
+
workspaceState: IssueManagerExternalWorkspaceState;
|
|
38
|
+
}) => void;
|
|
39
|
+
resolveRichTextAtProviders?: (input: {
|
|
40
|
+
surface: "issue" | "task";
|
|
41
|
+
workspaceId: string;
|
|
42
|
+
}) => readonly RichTextAtProvider[];
|
|
43
|
+
renderLatestRunStatus?: IssueManagerLatestRunStatusRenderer;
|
|
44
|
+
service?: IssueManagerControllerService;
|
|
45
|
+
title?: string;
|
|
46
|
+
typeId?: string;
|
|
47
|
+
}
|
|
48
|
+
interface CreateIssueManagerWorkbenchLaunchHandlerInput {
|
|
49
|
+
frame?: WorkbenchFrame;
|
|
50
|
+
title?: string;
|
|
51
|
+
typeId?: string;
|
|
52
|
+
}
|
|
53
|
+
interface CreateIssueManagerDockEntryInput {
|
|
54
|
+
dockIcon?: ReactNode;
|
|
55
|
+
feature: IssueManagerFeature;
|
|
56
|
+
id?: string;
|
|
57
|
+
order?: number;
|
|
58
|
+
separatorAfter?: boolean;
|
|
59
|
+
sectionId?: string;
|
|
60
|
+
typeId?: string;
|
|
61
|
+
}
|
|
62
|
+
interface CreateIssueManagerWorkbenchContributionInput {
|
|
63
|
+
contributionId?: string;
|
|
64
|
+
dockEntry?: Omit<CreateIssueManagerDockEntryInput, "feature">;
|
|
65
|
+
externalStateSource?: WorkbenchHostExternalStateSource<Partial<IssueManagerNodeState> | null, IssueManagerExternalWorkspaceState>;
|
|
66
|
+
feature: IssueManagerFeature;
|
|
67
|
+
node?: Omit<CreateIssueManagerWorkbenchNodeDefinitionInput, "feature">;
|
|
68
|
+
typeId?: string;
|
|
69
|
+
}
|
|
70
|
+
declare function createIssueManagerWorkbenchNodeDefinition<TExternalWorkspaceState extends IssueManagerExternalWorkspaceState = IssueManagerExternalWorkspaceState>({ emptyIllustration, feature, frame, onStateChange, resolveRichTextAtProviders, renderLatestRunStatus, service, title, typeId }: CreateIssueManagerWorkbenchNodeDefinitionInput): WorkbenchHostNodeDefinition<Partial<IssueManagerNodeState> | null, TExternalWorkspaceState>;
|
|
71
|
+
declare function createIssueManagerDockEntry({ dockIcon, feature, id, order, separatorAfter, sectionId, typeId }: CreateIssueManagerDockEntryInput): WorkbenchHostDockEntry;
|
|
72
|
+
declare function createIssueManagerDockIconImage(src: string): ReactNode;
|
|
73
|
+
declare function createIssueManagerWorkbenchLaunchHandler({ frame, title, typeId }?: CreateIssueManagerWorkbenchLaunchHandlerInput): (request: WorkbenchHostLaunchRequest) => Promise<WorkbenchHostLaunchResult | null>;
|
|
74
|
+
declare function createIssueManagerWorkbenchContribution({ contributionId, dockEntry, externalStateSource, feature, node, typeId }: CreateIssueManagerWorkbenchContributionInput): WorkbenchContribution;
|
|
75
|
+
|
|
76
|
+
export { type CreateIssueManagerDockEntryInput, type CreateIssueManagerWorkbenchContributionInput, type CreateIssueManagerWorkbenchLaunchHandlerInput, type CreateIssueManagerWorkbenchNodeDefinitionInput, type IssueManagerExternalWorkspaceState, type IssueManagerOpenActivationPayload, createIssueManagerDockEntry, createIssueManagerDockIconImage, createIssueManagerWorkbenchContribution, createIssueManagerWorkbenchLaunchHandler, createIssueManagerWorkbenchNodeDefinition, issueManagerOpenActivationType, readIssueManagerOpenActivationPayload };
|