@allpepper/task-orchestrator-tui 1.0.0 → 1.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/README.md CHANGED
@@ -76,3 +76,4 @@ The relationship is managed through a file: dependency in package.json:
76
76
  - Data hooks for efficient data fetching
77
77
  - Direct adapter for in-process data access
78
78
  - Support for dark and light themes
79
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@allpepper/task-orchestrator-tui",
3
- "version": "1.0.0",
3
+ "version": "1.0.1",
4
4
  "description": "Terminal UI for task orchestration - Kanban boards, tree views, and task management",
5
5
  "type": "module",
6
6
  "bin": {
@@ -19,7 +19,15 @@
19
19
  "type": "git",
20
20
  "url": "git+https://github.com/alioshr/task-orchestrator-tui.git"
21
21
  },
22
- "keywords": ["cli", "tui", "task-manager", "kanban", "ink", "react", "bun"],
22
+ "keywords": [
23
+ "cli",
24
+ "tui",
25
+ "task-manager",
26
+ "kanban",
27
+ "ink",
28
+ "react",
29
+ "bun"
30
+ ],
23
31
  "author": "alioshr",
24
32
  "license": "MIT",
25
33
  "bugs": {
@@ -37,9 +45,9 @@
37
45
  "prepublishOnly": "bun test"
38
46
  },
39
47
  "dependencies": {
40
- "@allpepper/task-orchestrator": "^0.1.0",
41
- "ink": "^6.6.0",
48
+ "@allpepper/task-orchestrator": "^1.0.2",
42
49
  "@inkjs/ui": "^2.0.0",
50
+ "ink": "^6.6.0",
43
51
  "react": "^19.2.4"
44
52
  },
45
53
  "devDependencies": {
@@ -1,6 +1,6 @@
1
1
  import React, { useState } from 'react';
2
2
  import { Box, Text, useInput } from 'ink';
3
- import type { Task } from 'task-orchestrator-bun/src/domain/types';
3
+ import type { Task } from '@allpepper/task-orchestrator';
4
4
  import type { DependencyInfo } from '../../ui/lib/types';
5
5
  import { StatusBadge } from './status-badge';
6
6
  import { useTheme } from '../../ui/context/theme-context';
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import { Box, Text } from 'ink';
3
3
  import type { BoardFeature } from '../../ui/lib/types';
4
- import type { Task } from 'task-orchestrator-bun/src/domain/types';
4
+ import type { Task } from '@allpepper/task-orchestrator';
5
5
  import { PriorityBadge } from './priority-badge';
6
6
  import { StatusBadge } from './status-badge';
7
7
  import { useTheme } from '../../ui/context/theme-context';
@@ -1,6 +1,6 @@
1
1
  import React, { useState } from 'react';
2
2
  import { Box, Text, useInput } from 'ink';
3
- import type { Section } from 'task-orchestrator-bun/src/domain/types';
3
+ import type { Section } from '@allpepper/task-orchestrator';
4
4
  import { useTheme } from '../../ui/context/theme-context';
5
5
 
6
6
  export interface SectionListProps {
@@ -3,7 +3,7 @@ import { Box, Text, useInput } from 'ink';
3
3
  import { StatusBadge } from './status-badge';
4
4
  import { PriorityBadge } from './priority-badge';
5
5
  import { useTheme } from '../../ui/context/theme-context';
6
- import type { Feature, Task } from 'task-orchestrator-bun/src/domain/types';
6
+ import type { Feature, Task } from '@allpepper/task-orchestrator';
7
7
 
8
8
  export type TreeRow =
9
9
  | { type: 'feature'; feature: Feature; taskCount: number; expanded: boolean; expandable?: boolean }
package/src/tui/index.tsx CHANGED
@@ -18,7 +18,7 @@ async function main() {
18
18
  const [{ render }, React, { runMigrations }, { App }] = await Promise.all([
19
19
  import('ink'),
20
20
  import('react'),
21
- import('task-orchestrator-bun/src/db/migrate'),
21
+ import('@allpepper/task-orchestrator/src/db/migrate'),
22
22
  import('./app'),
23
23
  ]);
24
24
 
@@ -11,7 +11,7 @@ import { ConfirmDialog } from '../components/confirm-dialog';
11
11
  import { ErrorMessage } from '../components/error-message';
12
12
  import { EmptyState } from '../components/empty-state';
13
13
  import { FormDialog } from '../components/form-dialog';
14
- import type { ProjectStatus } from 'task-orchestrator-bun/src/domain/types';
14
+ import type { ProjectStatus } from '@allpepper/task-orchestrator';
15
15
 
16
16
  interface DashboardProps {
17
17
  selectedIndex: number;
@@ -2,7 +2,7 @@ import React, { useState } from 'react';
2
2
  import { Box, Text, useInput } from 'ink';
3
3
  import { useAdapter } from '../../ui/context/adapter-context';
4
4
  import { useFeature } from '../../ui/hooks/use-data';
5
- import type { FeatureStatus, Priority } from 'task-orchestrator-bun/src/domain/types';
5
+ import type { FeatureStatus, Priority } from '@allpepper/task-orchestrator';
6
6
  import { StatusBadge } from '../components/status-badge';
7
7
  import { PriorityBadge } from '../components/priority-badge';
8
8
  import { SectionList } from '../components/section-list';
@@ -1,7 +1,7 @@
1
1
  import React, { useState, useEffect } from 'react';
2
2
  import { Box, Text, useInput } from 'ink';
3
3
  import { useAdapter } from '../../ui/context/adapter-context';
4
- import type { Project, Feature, ProjectStatus, Section, EntityType } from 'task-orchestrator-bun/src/domain/types';
4
+ import type { Project, Feature, ProjectStatus, Section, EntityType } from '@allpepper/task-orchestrator';
5
5
  import { StatusBadge } from '../components/status-badge';
6
6
  import { timeAgo } from '../../ui/lib/format';
7
7
  import { FormDialog } from '../components/form-dialog';
@@ -10,7 +10,7 @@ import { ConfirmDialog } from '../components/confirm-dialog';
10
10
  import { FormDialog } from '../components/form-dialog';
11
11
  import { ErrorMessage } from '../components/error-message';
12
12
  import { EmptyState } from '../components/empty-state';
13
- import type { FeatureStatus, Priority } from 'task-orchestrator-bun/src/domain/types';
13
+ import type { FeatureStatus, Priority } from '@allpepper/task-orchestrator';
14
14
 
15
15
  interface ProjectViewProps {
16
16
  projectId: string;
@@ -9,7 +9,7 @@ import { SectionList } from '../components/section-list';
9
9
  import { DependencyList } from '../components/dependency-list';
10
10
  import { StatusActions } from '../components/status-actions';
11
11
  import { timeAgo } from '../../ui/lib/format';
12
- import type { TaskStatus, Priority } from 'task-orchestrator-bun/src/domain/types';
12
+ import type { TaskStatus, Priority } from '@allpepper/task-orchestrator';
13
13
  import { FormDialog } from '../components/form-dialog';
14
14
  import { ConfirmDialog } from '../components/confirm-dialog';
15
15
  import { ErrorMessage } from '../components/error-message';
@@ -22,7 +22,7 @@ import type {
22
22
  Priority,
23
23
  Section,
24
24
  EntityType,
25
- } from 'task-orchestrator-bun/src/domain/types';
25
+ } from '@allpepper/task-orchestrator';
26
26
  import type {
27
27
  SearchResults,
28
28
  DependencyInfo,
@@ -31,15 +31,15 @@ import type {
31
31
  } from '../lib/types';
32
32
 
33
33
  // Import repos individually since barrel export is incomplete
34
- import * as projects from 'task-orchestrator-bun/src/repos/projects';
35
- import * as features from 'task-orchestrator-bun/src/repos/features';
36
- import * as tasks from 'task-orchestrator-bun/src/repos/tasks';
37
- import * as sections from 'task-orchestrator-bun/src/repos/sections';
38
- import * as dependencies from 'task-orchestrator-bun/src/repos/dependencies';
34
+ import * as projects from '@allpepper/task-orchestrator/src/repos/projects';
35
+ import * as features from '@allpepper/task-orchestrator/src/repos/features';
36
+ import * as tasks from '@allpepper/task-orchestrator/src/repos/tasks';
37
+ import * as sections from '@allpepper/task-orchestrator/src/repos/sections';
38
+ import * as dependencies from '@allpepper/task-orchestrator/src/repos/dependencies';
39
39
  import {
40
40
  getAllowedTransitions,
41
41
  type ContainerType,
42
- } from 'task-orchestrator-bun/src/services/status-validator';
42
+ } from '@allpepper/task-orchestrator/src/services/status-validator';
43
43
 
44
44
  /**
45
45
  * DirectAdapter implementation
@@ -15,7 +15,7 @@ import type {
15
15
  Section,
16
16
  EntityType,
17
17
  Priority,
18
- } from 'task-orchestrator-bun/src/domain/types';
18
+ } from '@allpepper/task-orchestrator';
19
19
 
20
20
  import type {
21
21
  SearchResults,
@@ -1,6 +1,6 @@
1
1
  import { useState, useEffect, useCallback, useMemo } from 'react';
2
2
  import { useAdapter } from '../context/adapter-context';
3
- import type { Project, Task, Section, EntityType, TaskStatus, Priority, FeatureStatus } from 'task-orchestrator-bun/src/domain/types';
3
+ import type { Project, Task, Section, EntityType, TaskStatus, Priority, FeatureStatus } from '@allpepper/task-orchestrator';
4
4
  import type { FeatureWithTasks, ProjectOverview, SearchResults, DependencyInfo, BoardCard, BoardTask } from '../lib/types';
5
5
  import type { TreeRow } from '../../tui/components/tree-view';
6
6
 
@@ -1,6 +1,6 @@
1
1
  import { useState, useEffect, useCallback, useMemo } from 'react';
2
2
  import { useAdapter } from '../context/adapter-context';
3
- import type { Feature, FeatureStatus } from 'task-orchestrator-bun/src/domain/types';
3
+ import type { Feature, FeatureStatus } from '@allpepper/task-orchestrator';
4
4
  import type { BoardFeature, FeatureBoardColumn } from '../lib/types';
5
5
 
6
6
  /**
@@ -37,7 +37,7 @@ interface UseFeatureKanbanReturn {
37
37
  export function useFeatureKanban(projectId: string): UseFeatureKanbanReturn {
38
38
  const { adapter } = useAdapter();
39
39
  const [features, setFeatures] = useState<Feature[]>([]);
40
- const [tasksByFeature, setTasksByFeature] = useState<Map<string, import('task-orchestrator-bun/src/domain/types').Task[]>>(new Map());
40
+ const [tasksByFeature, setTasksByFeature] = useState<Map<string, import('@allpepper/task-orchestrator/src/domain/types').Task[]>>(new Map());
41
41
  const [loading, setLoading] = useState(true);
42
42
  const [error, setError] = useState<string | null>(null);
43
43
  const [refreshTrigger, setRefreshTrigger] = useState(0);
@@ -70,7 +70,7 @@ export function useFeatureKanban(projectId: string): UseFeatureKanbanReturn {
70
70
  setFeatures(featuresResult.data);
71
71
 
72
72
  // Group tasks by featureId
73
- const grouped = new Map<string, import('task-orchestrator-bun/src/domain/types').Task[]>();
73
+ const grouped = new Map<string, import('@allpepper/task-orchestrator/src/domain/types').Task[]>();
74
74
  for (const task of tasksResult.data) {
75
75
  if (task.featureId) {
76
76
  const list = grouped.get(task.featureId) || [];
@@ -1,6 +1,6 @@
1
1
  import { useMemo, useCallback } from 'react';
2
2
  import { useAdapter } from '../context/adapter-context';
3
- import type { Task } from 'task-orchestrator-bun/src/domain/types';
3
+ import type { Task } from '@allpepper/task-orchestrator';
4
4
  import type { BoardColumn } from '../lib/types';
5
5
  import { useBoardData } from './use-data';
6
6
 
@@ -1,5 +1,5 @@
1
1
  import type { Theme, StatusKey } from '../themes/types';
2
- import type { Priority } from 'task-orchestrator-bun/src/domain/types';
2
+ import type { Priority } from '@allpepper/task-orchestrator';
3
3
 
4
4
  /**
5
5
  * Get the color for a status value
@@ -1,4 +1,4 @@
1
- import type { Task, Feature, Priority } from 'task-orchestrator-bun/src/domain/types';
1
+ import type { Task, Feature, Priority } from '@allpepper/task-orchestrator';
2
2
 
3
3
  /**
4
4
  * Navigation screens for the TUI
@@ -1,5 +1,5 @@
1
1
  import type { Theme } from './types';
2
- import { Priority } from 'task-orchestrator-bun/src/domain/types';
2
+ import { Priority } from '@allpepper/task-orchestrator';
3
3
 
4
4
  export const darkTheme: Theme = {
5
5
  name: 'dark',
@@ -1,5 +1,5 @@
1
1
  import type { Theme } from './types';
2
- import { Priority } from 'task-orchestrator-bun/src/domain/types';
2
+ import { Priority } from '@allpepper/task-orchestrator';
3
3
 
4
4
  export const lightTheme: Theme = {
5
5
  name: 'light',
@@ -1,4 +1,4 @@
1
- import type { Priority } from 'task-orchestrator-bun/src/domain/types';
1
+ import type { Priority } from '@allpepper/task-orchestrator';
2
2
 
3
3
  /**
4
4
  * All possible status values across Project, Feature, and Task