@navios/commander-tui 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +25 -0
- package/{src/__tests__/mocks/scm-mock.ts → dist/base/src/__tests__/mocks/scm-mock.d.ts} +3 -1
- package/dist/base/src/__tests__/mocks/scm-mock.d.ts.map +1 -0
- package/dist/base/src/__tests__/setup.d.ts +2 -0
- package/dist/base/src/__tests__/setup.d.ts.map +1 -0
- package/dist/base/src/__tests__/utils/factories.d.ts +67 -0
- package/dist/base/src/__tests__/utils/factories.d.ts.map +1 -0
- package/dist/base/src/__tests__/utils/render-utils.d.ts +21 -0
- package/dist/base/src/__tests__/utils/render-utils.d.ts.map +1 -0
- package/dist/base/src/__tests__/utils/test-container.d.ts +20 -0
- package/dist/base/src/__tests__/utils/test-container.d.ts.map +1 -0
- package/dist/base/src/adapters/interface.d.ts +9 -2
- package/dist/base/src/adapters/interface.d.ts.map +1 -1
- package/dist/base/src/overrides/missing-adapter.override.d.ts +10 -0
- package/dist/base/src/overrides/missing-adapter.override.d.ts.map +1 -1
- package/dist/base/src/schemas/logger-options.d.ts +1 -1
- package/dist/base/src/services/index.d.ts +1 -0
- package/dist/base/src/services/index.d.ts.map +1 -1
- package/dist/base/src/services/logger.d.ts.map +1 -1
- package/dist/base/src/services/readline_prompt.d.ts +27 -0
- package/dist/base/src/services/readline_prompt.d.ts.map +1 -0
- package/dist/base/src/services/screen.d.ts +14 -8
- package/dist/base/src/services/screen.d.ts.map +1 -1
- package/dist/base/src/services/screen_manager.d.ts +62 -12
- package/dist/base/src/services/screen_manager.d.ts.map +1 -1
- package/dist/base/src/types/events.types.d.ts +40 -0
- package/dist/base/src/types/events.types.d.ts.map +1 -0
- package/dist/base/src/types/index.d.ts +1 -0
- package/dist/base/src/types/index.d.ts.map +1 -1
- package/dist/base/src/types/screen.types.d.ts +28 -0
- package/dist/base/src/types/screen.types.d.ts.map +1 -1
- package/dist/base/src/utils/colors/helpers.d.ts +0 -16
- package/dist/base/src/utils/colors/helpers.d.ts.map +1 -1
- package/dist/base/src/utils/index.d.ts +2 -0
- package/dist/base/src/utils/index.d.ts.map +1 -1
- package/dist/base/src/utils/prompt.d.ts +7 -0
- package/dist/base/src/utils/prompt.d.ts.map +1 -0
- package/dist/base/src/utils/runtime.d.ts +10 -0
- package/dist/base/src/utils/runtime.d.ts.map +1 -0
- package/dist/base/src/utils/stdout-printer.d.ts +5 -0
- package/dist/base/src/utils/stdout-printer.d.ts.map +1 -1
- package/dist/base/tsconfig.base.tsbuildinfo +1 -1
- package/dist/base/tsconfig.tsbuildinfo +1 -0
- package/dist/ink/src/adapters/ink/components/file/file_log.d.ts +28 -0
- package/dist/ink/src/adapters/ink/components/file/file_log.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/file/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/components/file/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/filter/filter_bar.d.ts +7 -0
- package/dist/ink/src/adapters/ink/components/filter/filter_bar.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/filter/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/components/filter/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/help/help_overlay.d.ts +6 -0
- package/dist/ink/src/adapters/ink/components/help/help_overlay.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/help/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/components/help/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/index.d.ts +9 -0
- package/dist/ink/src/adapters/ink/components/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/log/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/components/log/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/log/log_message.d.ts +15 -0
- package/dist/ink/src/adapters/ink/components/log/log_message.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/prompt/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/components/prompt/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/prompt/prompt_renderer.d.ts +6 -0
- package/dist/ink/src/adapters/ink/components/prompt/prompt_renderer.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/group_renderer.d.ts +14 -0
- package/dist/ink/src/adapters/ink/components/screen/group_renderer.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/index.d.ts +7 -0
- package/dist/ink/src/adapters/ink/components/screen/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/loading_message.d.ts +6 -0
- package/dist/ink/src/adapters/ink/components/screen/loading_message.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/message_renderer.d.ts +6 -0
- package/dist/ink/src/adapters/ink/components/screen/message_renderer.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/progress_message.d.ts +6 -0
- package/dist/ink/src/adapters/ink/components/screen/progress_message.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/screen_bridge.d.ts +14 -0
- package/dist/ink/src/adapters/ink/components/screen/screen_bridge.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen/table_message.d.ts +6 -0
- package/dist/ink/src/adapters/ink/components/screen/table_message.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/screen_manager_bridge.d.ts +8 -0
- package/dist/ink/src/adapters/ink/components/screen_manager_bridge.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/sidebar/index.d.ts +4 -0
- package/dist/ink/src/adapters/ink/components/sidebar/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/sidebar/sidebar.d.ts +11 -0
- package/dist/ink/src/adapters/ink/components/sidebar/sidebar.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/sidebar/sidebar_item.d.ts +9 -0
- package/dist/ink/src/adapters/ink/components/sidebar/sidebar_item.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/components/sidebar/sidebar_separator.d.ts +2 -0
- package/dist/ink/src/adapters/ink/components/sidebar/sidebar_separator.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/context/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/context/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/context/logger_context.d.ts +33 -0
- package/dist/ink/src/adapters/ink/context/logger_context.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/hooks/index.d.ts +2 -0
- package/dist/ink/src/adapters/ink/hooks/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/hooks/use_theme.d.ts +7 -0
- package/dist/ink/src/adapters/ink/hooks/use_theme.d.ts.map +1 -0
- package/dist/ink/src/adapters/ink/index.d.ts +18 -0
- package/dist/ink/src/adapters/ink/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/react-shared/hooks/index.d.ts +4 -0
- package/dist/ink/src/adapters/react-shared/hooks/index.d.ts.map +1 -0
- package/dist/ink/src/adapters/react-shared/hooks/use_filter_state.d.ts +18 -0
- package/dist/ink/src/adapters/react-shared/hooks/use_filter_state.d.ts.map +1 -0
- package/dist/ink/src/adapters/react-shared/hooks/use_keyboard_manager.d.ts +26 -0
- package/dist/ink/src/adapters/react-shared/hooks/use_keyboard_manager.d.ts.map +1 -0
- package/dist/ink/src/adapters/react-shared/hooks/use_manager_subscription.d.ts +7 -0
- package/dist/ink/src/adapters/react-shared/hooks/use_manager_subscription.d.ts.map +1 -0
- package/dist/ink/src/adapters/react-shared/index.d.ts +2 -0
- package/dist/ink/src/adapters/react-shared/index.d.ts.map +1 -0
- package/dist/ink/tsconfig.ink.tsbuildinfo +1 -0
- package/dist/react/src/adapters/react-shared/hooks/index.d.ts +4 -0
- package/dist/react/src/adapters/react-shared/hooks/index.d.ts.map +1 -0
- package/dist/react/src/adapters/react-shared/hooks/use_filter_state.d.ts +18 -0
- package/dist/react/src/adapters/react-shared/hooks/use_filter_state.d.ts.map +1 -0
- package/dist/react/src/adapters/react-shared/hooks/use_keyboard_manager.d.ts +26 -0
- package/dist/react/src/adapters/react-shared/hooks/use_keyboard_manager.d.ts.map +1 -0
- package/dist/react/src/adapters/react-shared/hooks/use_manager_subscription.d.ts +7 -0
- package/dist/react/src/adapters/react-shared/hooks/use_manager_subscription.d.ts.map +1 -0
- package/dist/react/src/adapters/react-shared/index.d.ts +2 -0
- package/dist/react/src/adapters/react-shared/index.d.ts.map +1 -0
- package/dist/react/tsconfig.react.tsbuildinfo +1 -1
- package/dist/solid/tsconfig.solid.tsbuildinfo +1 -1
- package/lib/index.cjs +2177 -178
- package/lib/index.cjs.map +1 -1
- package/lib/index.d.cts +942 -78
- package/lib/index.d.cts.map +1 -0
- package/lib/index.d.mts +902 -38
- package/lib/index.d.mts.map +1 -0
- package/lib/index.mjs +2098 -135
- package/lib/index.mjs.map +1 -1
- package/package.json +1 -31
- package/src/__tests__/services/logger.spec.ts +32 -0
- package/src/__tests__/services/screen.spec.ts +106 -95
- package/src/__tests__/utils/factories.ts +2 -0
- package/src/adapters/interface.ts +10 -2
- package/src/overrides/missing-adapter.override.ts +16 -6
- package/src/services/index.ts +1 -0
- package/src/services/logger.ts +7 -1
- package/src/services/readline_prompt.ts +194 -0
- package/src/services/screen.ts +106 -54
- package/src/services/screen_manager.ts +282 -74
- package/src/types/events.types.ts +84 -0
- package/src/types/index.ts +3 -0
- package/src/types/screen.types.ts +34 -0
- package/src/utils/colors/helpers.ts +0 -25
- package/src/utils/index.ts +6 -0
- package/src/utils/prompt.ts +18 -0
- package/src/utils/runtime.ts +14 -0
- package/src/utils/stdout-printer.ts +16 -5
- package/tsconfig.base.json +1 -17
- package/tsconfig.json +1 -6
- package/tsdown.config.mts +13 -70
- package/lib/adapters/react/index.cjs +0 -1768
- package/lib/adapters/react/index.cjs.map +0 -1
- package/lib/adapters/react/index.d.cts +0 -80
- package/lib/adapters/react/index.d.mts +0 -80
- package/lib/adapters/react/index.mjs +0 -1760
- package/lib/adapters/react/index.mjs.map +0 -1
- package/lib/adapters/solid/index.cjs +0 -3855
- package/lib/adapters/solid/index.cjs.map +0 -1
- package/lib/adapters/solid/index.d.cts +0 -74
- package/lib/adapters/solid/index.d.mts +0 -74
- package/lib/adapters/solid/index.mjs +0 -3847
- package/lib/adapters/solid/index.mjs.map +0 -1
- package/lib/filter_engine-DXqu9Vaq.cjs +0 -1836
- package/lib/filter_engine-DXqu9Vaq.cjs.map +0 -1
- package/lib/filter_engine-DmqhEhpA.mjs +0 -1609
- package/lib/filter_engine-DmqhEhpA.mjs.map +0 -1
- package/lib/interface-CTHQ08aY.d.mts +0 -699
- package/lib/interface-DQEIz9Mb.d.cts +0 -699
- package/src/__tests__/components/__snapshots__/filter_bar.spec.tsx.snap +0 -2293
- package/src/__tests__/components/__snapshots__/loading_message.spec.tsx.snap +0 -1414
- package/src/__tests__/components/__snapshots__/log_message.spec.tsx.snap +0 -3245
- package/src/__tests__/components/__snapshots__/progress_message.spec.tsx.snap +0 -1783
- package/src/__tests__/components/__snapshots__/prompt_renderer.spec.tsx.snap +0 -3203
- package/src/__tests__/components/__snapshots__/sidebar.spec.tsx.snap +0 -2857
- package/src/__tests__/components/filter_bar.spec.tsx +0 -190
- package/src/__tests__/components/loading_message.spec.tsx +0 -110
- package/src/__tests__/components/log_message.spec.tsx +0 -166
- package/src/__tests__/components/progress_message.spec.tsx +0 -147
- package/src/__tests__/components/prompt_renderer.spec.tsx +0 -274
- package/src/__tests__/components/sidebar.spec.tsx +0 -322
- package/src/__tests__/utils/render-utils.tsx +0 -39
- package/src/adapters/react/components/file/file_log.tsx +0 -241
- package/src/adapters/react/components/file/index.ts +0 -1
- package/src/adapters/react/components/filter/filter_bar.tsx +0 -79
- package/src/adapters/react/components/filter/index.ts +0 -1
- package/src/adapters/react/components/help/help_overlay.tsx +0 -100
- package/src/adapters/react/components/help/index.ts +0 -1
- package/src/adapters/react/components/log/index.ts +0 -1
- package/src/adapters/react/components/log/log_message.tsx +0 -102
- package/src/adapters/react/components/prompt/index.ts +0 -2
- package/src/adapters/react/components/prompt/prompt_renderer.tsx +0 -346
- package/src/adapters/react/components/screen/group_renderer.tsx +0 -64
- package/src/adapters/react/components/screen/index.ts +0 -6
- package/src/adapters/react/components/screen/loading_message.tsx +0 -43
- package/src/adapters/react/components/screen/message_renderer.tsx +0 -108
- package/src/adapters/react/components/screen/progress_message.tsx +0 -60
- package/src/adapters/react/components/screen/screen_bridge.tsx +0 -149
- package/src/adapters/react/components/screen/table_message.tsx +0 -57
- package/src/adapters/react/components/screen_manager_bridge.tsx +0 -245
- package/src/adapters/react/components/sidebar/index.ts +0 -3
- package/src/adapters/react/components/sidebar/sidebar.tsx +0 -102
- package/src/adapters/react/components/sidebar/sidebar_item.tsx +0 -50
- package/src/adapters/react/components/sidebar/sidebar_separator.tsx +0 -13
- package/src/adapters/react/context/index.ts +0 -1
- package/src/adapters/react/context/logger_context.tsx +0 -109
- package/src/adapters/react/hooks/index.ts +0 -1
- package/src/adapters/react/hooks/use_theme.ts +0 -12
- package/src/adapters/react/index.ts +0 -39
- package/src/adapters/solid/components/file/file_log.tsx +0 -221
- package/src/adapters/solid/components/file/index.ts +0 -1
- package/src/adapters/solid/components/filter/filter_bar.tsx +0 -84
- package/src/adapters/solid/components/filter/index.ts +0 -1
- package/src/adapters/solid/components/help/help_overlay.tsx +0 -106
- package/src/adapters/solid/components/help/index.ts +0 -1
- package/src/adapters/solid/components/log/index.ts +0 -1
- package/src/adapters/solid/components/log/log_message.tsx +0 -92
- package/src/adapters/solid/components/prompt/index.ts +0 -2
- package/src/adapters/solid/components/prompt/prompt_renderer.tsx +0 -350
- package/src/adapters/solid/components/screen/group_renderer.tsx +0 -61
- package/src/adapters/solid/components/screen/index.ts +0 -6
- package/src/adapters/solid/components/screen/loading_message.tsx +0 -39
- package/src/adapters/solid/components/screen/message_renderer.tsx +0 -122
- package/src/adapters/solid/components/screen/progress_message.tsx +0 -61
- package/src/adapters/solid/components/screen/screen_bridge.tsx +0 -155
- package/src/adapters/solid/components/screen/table_message.tsx +0 -58
- package/src/adapters/solid/components/screen_manager_bridge.tsx +0 -243
- package/src/adapters/solid/components/sidebar/index.ts +0 -3
- package/src/adapters/solid/components/sidebar/sidebar.tsx +0 -108
- package/src/adapters/solid/components/sidebar/sidebar_item.tsx +0 -55
- package/src/adapters/solid/components/sidebar/sidebar_separator.tsx +0 -13
- package/src/adapters/solid/context/index.ts +0 -2
- package/src/adapters/solid/context/logger_context.tsx +0 -95
- package/src/adapters/solid/hooks/index.ts +0 -1
- package/src/adapters/solid/hooks/use_theme.ts +0 -12
- package/src/adapters/solid/index.tsx +0 -43
- package/src/adapters/solid/jsx.d.ts +0 -98
- package/tsconfig.react.json +0 -16
- package/tsconfig.solid.json +0 -16
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,31 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [1.4.0] - 2026-01-15
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- **Event Types** - New `events.types.ts` module with typed event definitions for screen and prompt interactions
|
|
13
|
+
- **Readline Prompt Service** - New `ReadlinePromptService` for handling interactive prompts in non-TUI environments
|
|
14
|
+
- **Prompt Utilities** - New `prompt.ts` utility module for prompt-related helper functions
|
|
15
|
+
|
|
16
|
+
### Changed
|
|
17
|
+
|
|
18
|
+
- **Adapter Extraction** - UI framework adapters moved to dedicated packages:
|
|
19
|
+
- `@navios/tui-adapter-ink` - Ink/React terminal adapter (new)
|
|
20
|
+
- `@navios/tui-adapter-react` - OpenTUI React web adapter (new)
|
|
21
|
+
- `@navios/tui-adapter-solid` - OpenTUI Solid.js web adapter (new)
|
|
22
|
+
- **Screen Manager** - Refactored to support external adapter packages via `TuiAdapterInterface`
|
|
23
|
+
- **Screen Service** - Enhanced with new event handling and state management
|
|
24
|
+
- **Build Configuration** - Simplified to single TypeScript config, removed framework-specific configs
|
|
25
|
+
- **Package Dependencies** - Removed direct UI framework dependencies (now in adapter packages)
|
|
26
|
+
|
|
27
|
+
### Removed
|
|
28
|
+
|
|
29
|
+
- **Built-in Adapters** - Removed `src/adapters/` directory (moved to separate packages)
|
|
30
|
+
- **Framework-specific Configs** - Removed `tsconfig.ink.json`, `tsconfig.react.json`, `tsconfig.solid.json`
|
|
31
|
+
- **Component Tests** - Removed component-level tests (moved to adapter packages)
|
|
32
|
+
|
|
8
33
|
## [1.3.0] - 2026-01-13
|
|
9
34
|
|
|
10
35
|
### Added
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scm-mock.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/mocks/scm-mock.ts"],"names":[],"mappings":"AAAA;;;GAGG;wBACY,EAAE;AAAjB,wBAAiB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/setup.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { vi } from 'vitest';
|
|
2
|
+
import type { ChoicePromptData, ConfirmPromptData, DiffMessageData, FileErrorMessageData, FileMessageData, FilterState, GroupMessageData, InputPromptData, KeyboardContext, LoadingMessageData, LogMessageData, MultiChoicePromptData, ProgressMessageData, TableMessageData, Theme } from '../../types/index.ts';
|
|
3
|
+
/**
|
|
4
|
+
* Fixed timestamp for snapshot tests.
|
|
5
|
+
* Using a stable date ensures snapshots don't change between runs.
|
|
6
|
+
*/
|
|
7
|
+
export declare const STABLE_TIMESTAMP: Date;
|
|
8
|
+
export declare function createLogMessage(overrides?: Partial<LogMessageData>): LogMessageData;
|
|
9
|
+
export declare function createFileMessage(overrides?: Partial<FileMessageData>): FileMessageData;
|
|
10
|
+
export declare function createDiffMessage(overrides?: Partial<DiffMessageData>): DiffMessageData;
|
|
11
|
+
export declare function createFileErrorMessage(overrides?: Partial<FileErrorMessageData>): FileErrorMessageData;
|
|
12
|
+
export declare function createLoadingMessage(overrides?: Partial<LoadingMessageData>): LoadingMessageData;
|
|
13
|
+
export declare function createProgressMessage(overrides?: Partial<ProgressMessageData>): ProgressMessageData;
|
|
14
|
+
export declare function createGroupMessage(overrides?: Partial<GroupMessageData>): GroupMessageData;
|
|
15
|
+
export declare function createTableMessage(overrides?: Partial<TableMessageData>): TableMessageData;
|
|
16
|
+
export declare function createChoicePrompt(overrides?: Partial<ChoicePromptData>): ChoicePromptData;
|
|
17
|
+
export declare function createConfirmPrompt(overrides?: Partial<ConfirmPromptData>): ConfirmPromptData;
|
|
18
|
+
export declare function createInputPrompt(overrides?: Partial<InputPromptData>): InputPromptData;
|
|
19
|
+
export declare function createMultiChoicePrompt(overrides?: Partial<MultiChoicePromptData>): MultiChoicePromptData;
|
|
20
|
+
export declare function createFilterState(overrides?: Partial<FilterState>): FilterState;
|
|
21
|
+
export declare function createKeyboardContext(overrides?: Partial<KeyboardContext>): KeyboardContext;
|
|
22
|
+
export declare function createTheme(): Theme;
|
|
23
|
+
export interface MockScreenInstance {
|
|
24
|
+
getId: ReturnType<typeof vi.fn>;
|
|
25
|
+
getName: ReturnType<typeof vi.fn>;
|
|
26
|
+
getIcon: ReturnType<typeof vi.fn>;
|
|
27
|
+
getBadgeCount: ReturnType<typeof vi.fn>;
|
|
28
|
+
setBadgeCount: ReturnType<typeof vi.fn>;
|
|
29
|
+
isHidden: ReturnType<typeof vi.fn>;
|
|
30
|
+
setHidden: ReturnType<typeof vi.fn>;
|
|
31
|
+
show: ReturnType<typeof vi.fn>;
|
|
32
|
+
hide: ReturnType<typeof vi.fn>;
|
|
33
|
+
getStatus: ReturnType<typeof vi.fn>;
|
|
34
|
+
setStatus: ReturnType<typeof vi.fn>;
|
|
35
|
+
isComplete: ReturnType<typeof vi.fn>;
|
|
36
|
+
hasPrintedToConsole: ReturnType<typeof vi.fn>;
|
|
37
|
+
isLogLevelEnabled: ReturnType<typeof vi.fn>;
|
|
38
|
+
getMessages: ReturnType<typeof vi.fn>;
|
|
39
|
+
addMessage: ReturnType<typeof vi.fn>;
|
|
40
|
+
updateMessage: ReturnType<typeof vi.fn>;
|
|
41
|
+
updateProgressMessage: ReturnType<typeof vi.fn>;
|
|
42
|
+
clear: ReturnType<typeof vi.fn>;
|
|
43
|
+
_addPrompt: ReturnType<typeof vi.fn>;
|
|
44
|
+
getActivePrompt: ReturnType<typeof vi.fn>;
|
|
45
|
+
hasActivePrompt: ReturnType<typeof vi.fn>;
|
|
46
|
+
updatePromptSelection: ReturnType<typeof vi.fn>;
|
|
47
|
+
promptNavigateUp: ReturnType<typeof vi.fn>;
|
|
48
|
+
promptNavigateDown: ReturnType<typeof vi.fn>;
|
|
49
|
+
promptNavigateLeft: ReturnType<typeof vi.fn>;
|
|
50
|
+
promptNavigateRight: ReturnType<typeof vi.fn>;
|
|
51
|
+
promptToggleSelection: ReturnType<typeof vi.fn>;
|
|
52
|
+
promptEnterInputMode: ReturnType<typeof vi.fn>;
|
|
53
|
+
promptExitInputMode: ReturnType<typeof vi.fn>;
|
|
54
|
+
isPromptInInputMode: ReturnType<typeof vi.fn>;
|
|
55
|
+
promptUpdateInput: ReturnType<typeof vi.fn>;
|
|
56
|
+
promptAppendInput: ReturnType<typeof vi.fn>;
|
|
57
|
+
promptDeleteLastChar: ReturnType<typeof vi.fn>;
|
|
58
|
+
canSubmitPrompt: ReturnType<typeof vi.fn>;
|
|
59
|
+
promptSubmit: ReturnType<typeof vi.fn>;
|
|
60
|
+
onChange: ReturnType<typeof vi.fn>;
|
|
61
|
+
_setManager: ReturnType<typeof vi.fn>;
|
|
62
|
+
_setPrintFn: ReturnType<typeof vi.fn>;
|
|
63
|
+
_flushToConsole: ReturnType<typeof vi.fn>;
|
|
64
|
+
}
|
|
65
|
+
export declare function createMockScreenInstance(overrides?: Partial<MockScreenInstance>): MockScreenInstance;
|
|
66
|
+
export declare function resetIdCounter(): void;
|
|
67
|
+
//# sourceMappingURL=factories.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"factories.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/utils/factories.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import type { Theme, LogLevelColorMap } from '../../types/index.ts';
|
|
3
|
+
export interface RenderContextOptions {
|
|
4
|
+
theme?: Theme;
|
|
5
|
+
levelColors?: Partial<LogLevelColorMap>;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Wrap a component with LoggerProvider for testing.
|
|
9
|
+
* Returns the wrapped component tree.
|
|
10
|
+
*/
|
|
11
|
+
export declare function wrapWithContext(component: ReactNode, options?: RenderContextOptions): ReactNode;
|
|
12
|
+
/**
|
|
13
|
+
* Create a default context value for testing components outside LoggerProvider.
|
|
14
|
+
*/
|
|
15
|
+
export declare function createMockContextValue(overrides?: Partial<RenderContextOptions>): {
|
|
16
|
+
syntaxStyle: undefined;
|
|
17
|
+
treeSitterClient: undefined;
|
|
18
|
+
levelColors: Record<"log" | "verbose" | "debug" | "warn" | "error" | "fatal", import("../../index.ts").LogLevelTheme>;
|
|
19
|
+
theme: Theme;
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=render-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"render-utils.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/utils/render-utils.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AACtC,OAAO,KAAK,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAEnE,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,WAAW,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;CACxC;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,oBAAyB,GACjC,SAAS,CAQX;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,GAAE,OAAO,CAAC,oBAAoB,CAAM;;;;;EAOnF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { TestContainer } from '@navios/core/testing';
|
|
2
|
+
import { Screen, ScreenLogger, Prompt } from '../../tokens/index.ts';
|
|
3
|
+
import type { MockScreenInstance } from './factories.ts';
|
|
4
|
+
/**
|
|
5
|
+
* Create a pre-configured TestContainer for commander-tui tests.
|
|
6
|
+
* Includes common bindings for Screen token with a mock instance.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createTestContainer(): TestContainer;
|
|
9
|
+
/**
|
|
10
|
+
* Bind a mock ScreenInstance to the Screen token.
|
|
11
|
+
* Returns the mock for assertions.
|
|
12
|
+
*/
|
|
13
|
+
export declare function bindMockScreen(container: TestContainer, overrides?: Partial<MockScreenInstance>): MockScreenInstance;
|
|
14
|
+
/**
|
|
15
|
+
* Rebind a mock ScreenInstance to the Screen token.
|
|
16
|
+
* Must invalidate the previous instance first.
|
|
17
|
+
*/
|
|
18
|
+
export declare function rebindMockScreen(container: TestContainer, previousInstance: MockScreenInstance, overrides?: Partial<MockScreenInstance>): MockScreenInstance;
|
|
19
|
+
export { TestContainer, Screen, ScreenLogger, Prompt };
|
|
20
|
+
//# sourceMappingURL=test-container.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-container.d.ts","sourceRoot":"","sources":["../../../../../src/__tests__/utils/test-container.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAKpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAExD;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CAEnD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,aAAa,EACxB,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACtC,kBAAkB,CAKpB;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,aAAa,EACxB,gBAAgB,EAAE,kBAAkB,EACpC,SAAS,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACtC,kBAAkB,CAMpB;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAA"}
|
|
@@ -28,12 +28,19 @@ export interface AdapterRenderProps {
|
|
|
28
28
|
* Implementations provide framework-specific rendering capabilities.
|
|
29
29
|
*/
|
|
30
30
|
export interface AdapterInterface {
|
|
31
|
+
/**
|
|
32
|
+
* Whether this adapter handles its own rendering without requiring
|
|
33
|
+
* the ScreenManager to create an OpenTUI CliRenderer.
|
|
34
|
+
* When true, createRoot() will be called without a renderer argument.
|
|
35
|
+
* @default false
|
|
36
|
+
*/
|
|
37
|
+
readonly handlesOwnRenderer?: boolean;
|
|
31
38
|
/**
|
|
32
39
|
* Create a root instance for rendering.
|
|
33
|
-
* @param renderer - CLI renderer from @opentui/core
|
|
40
|
+
* @param renderer - CLI renderer from @opentui/core (undefined if handlesOwnRenderer is true)
|
|
34
41
|
* @returns Root instance with render/unmount methods, or a Promise that resolves to one
|
|
35
42
|
*/
|
|
36
|
-
createRoot(renderer
|
|
43
|
+
createRoot(renderer?: CliRenderer): AdapterRoot | Promise<AdapterRoot>;
|
|
37
44
|
/**
|
|
38
45
|
* Render the adapter's internal bridge component to the root.
|
|
39
46
|
* The adapter owns its bridge component - no component is passed in.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../../src/adapters/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAE9C;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IAE9B;;OAEG;IACH,OAAO,IAAI,IAAI,CAAA;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../../src/adapters/interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAEhD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAE9C;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAA;IAE9B;;OAEG;IACH,OAAO,IAAI,IAAI,CAAA;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,KAAK,CAAA;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAErC;;;;OAIG;IACH,UAAU,CAAC,QAAQ,CAAC,EAAE,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;IAEtE;;;;;OAKG;IACH,YAAY,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI,CAAA;CACjE"}
|
|
@@ -1,5 +1,15 @@
|
|
|
1
1
|
import type { AdapterInterface, AdapterRoot } from '../adapters/index.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Fallback adapter that is used when no TUI adapter is registered.
|
|
4
|
+
* The `isMissingAdapter` marker allows ScreenManager to detect this
|
|
5
|
+
* and gracefully fall back to stdout mode instead of throwing.
|
|
6
|
+
*/
|
|
2
7
|
export declare class MissingAdapterOverride implements AdapterInterface {
|
|
8
|
+
/**
|
|
9
|
+
* Marker property to identify this as the missing adapter fallback.
|
|
10
|
+
* Used by ScreenManager.bind() to detect and handle graceful fallback.
|
|
11
|
+
*/
|
|
12
|
+
readonly isMissingAdapter = true;
|
|
3
13
|
createRoot(): AdapterRoot;
|
|
4
14
|
renderToRoot(): void;
|
|
5
15
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"missing-adapter.override.d.ts","sourceRoot":"","sources":["../../../../src/overrides/missing-adapter.override.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"missing-adapter.override.d.ts","sourceRoot":"","sources":["../../../../src/overrides/missing-adapter.override.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAKzE;;;;GAIG;AACH,qBACa,sBAAuB,YAAW,gBAAgB;IAC7D;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,QAAO;IAEhC,UAAU,IAAI,WAAW;IAIzB,YAAY,IAAI,IAAI;CAGrB"}
|
|
@@ -9,9 +9,9 @@ export declare const LoggerOptionsSchema: z.ZodObject<{
|
|
|
9
9
|
}, z.core.$strip>, z.ZodString]>>>;
|
|
10
10
|
context: z.ZodOptional<z.ZodString>;
|
|
11
11
|
enabledLevels: z.ZodDefault<z.ZodArray<z.ZodEnum<{
|
|
12
|
+
log: "log";
|
|
12
13
|
verbose: "verbose";
|
|
13
14
|
debug: "debug";
|
|
14
|
-
log: "log";
|
|
15
15
|
warn: "warn";
|
|
16
16
|
error: "error";
|
|
17
17
|
fatal: "fatal";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/services/logger.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAK3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAKV,aAAa,EAIb,cAAc,EAEd,cAAc,EAEf,MAAM,mBAAmB,CAAA;AAS1B,qBAGa,oBAAqB,YAAW,aAAa;IACxD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAQ;IACxB,OAAO,CAAC,aAAa,CAAe;gBAExB,OAAO,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/services/logger.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAK3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAKV,aAAa,EAIb,cAAc,EAEd,cAAc,EAEf,MAAM,mBAAmB,CAAA;AAS1B,qBAGa,oBAAqB,YAAW,aAAa;IACxD,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAAC,CAAQ;IACxB,OAAO,CAAC,aAAa,CAAe;gBAExB,OAAO,EAAE,aAAa;IAelC,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAInD,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE;IAK/B,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAKjD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAI/C,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAInD,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIhD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjD,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAIjD,OAAO,CAAC,KAAK;IA8Bb,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAgBzC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,IAAI;IAiBzE,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,SAAS,GAAE,MAAU,GAAG,IAAI;IAsB3F;;OAEG;IACG,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAyC7E;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAgCvC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,cAAc;IAyCnE;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAa1B;;OAEG;IACH,QAAQ,IAAI,IAAI;IAiBhB;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;CAuB3E"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { PromptData } from '../types/index.ts';
|
|
2
|
+
/**
|
|
3
|
+
* Readline-based prompt service for stdout mode.
|
|
4
|
+
* Provides basic interactive prompts when TUI adapter is not available.
|
|
5
|
+
*/
|
|
6
|
+
export declare class ReadlinePromptService {
|
|
7
|
+
private rl;
|
|
8
|
+
private promptQueue;
|
|
9
|
+
private isProcessing;
|
|
10
|
+
private ensureInterface;
|
|
11
|
+
/**
|
|
12
|
+
* Handle a prompt interactively via readline.
|
|
13
|
+
* Prompts are queued and processed sequentially.
|
|
14
|
+
*/
|
|
15
|
+
handlePrompt(prompt: PromptData): Promise<string | boolean | string[]>;
|
|
16
|
+
private processQueue;
|
|
17
|
+
private processPrompt;
|
|
18
|
+
private handleChoice;
|
|
19
|
+
private handleConfirm;
|
|
20
|
+
private handleInput;
|
|
21
|
+
private handleMultiChoice;
|
|
22
|
+
/**
|
|
23
|
+
* Cleanup readline interface
|
|
24
|
+
*/
|
|
25
|
+
destroy(): void;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=readline_prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"readline_prompt.d.ts","sourceRoot":"","sources":["../../../../src/services/readline_prompt.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAKV,UAAU,EACX,MAAM,mBAAmB,CAAA;AAE1B;;;GAGG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,EAAE,CAAkC;IAC5C,OAAO,CAAC,WAAW,CAGZ;IACP,OAAO,CAAC,YAAY,CAAQ;IAE5B,OAAO,CAAC,eAAe;IAUvB;;;OAGG;IACG,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAC;YAO9D,YAAY;YAcZ,aAAa;YAab,YAAY;YAsCZ,aAAa;YAgBb,WAAW;YAYX,iBAAiB;IA8C/B;;OAEG;IACH,OAAO,IAAI,IAAI;CAQhB"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
+
import { EventEmitter } from 'node:events';
|
|
2
|
+
import type { LogLevel } from '@navios/core';
|
|
1
3
|
import type { ScreenOptions } from '../schemas/index.ts';
|
|
2
|
-
import type { LoadingMessageData, MessageData, ProgressMessageData, PromptData, ScreenStatus } from '../types/index.ts';
|
|
4
|
+
import type { LoadingMessageData, MessageData, ProgressMessageData, PromptData, ScreenEventMap, ScreenStatus } from '../types/index.ts';
|
|
3
5
|
import type { ScreenManagerInstance } from './screen_manager.ts';
|
|
4
|
-
export declare class ScreenInstance {
|
|
6
|
+
export declare class ScreenInstance extends EventEmitter<ScreenEventMap> {
|
|
5
7
|
private id;
|
|
6
8
|
private name;
|
|
7
9
|
private icon?;
|
|
@@ -10,7 +12,6 @@ export declare class ScreenInstance {
|
|
|
10
12
|
private hidden;
|
|
11
13
|
private messages;
|
|
12
14
|
private manager;
|
|
13
|
-
private changeListeners;
|
|
14
15
|
private printFn;
|
|
15
16
|
private hasPrinted;
|
|
16
17
|
private version;
|
|
@@ -38,7 +39,12 @@ export declare class ScreenInstance {
|
|
|
38
39
|
hide(): this;
|
|
39
40
|
getStatus(): ScreenStatus;
|
|
40
41
|
/**
|
|
41
|
-
*
|
|
42
|
+
* Check if a log level is enabled globally via the ScreenManager.
|
|
43
|
+
* Returns true if no manager is set or if the level is allowed.
|
|
44
|
+
*/
|
|
45
|
+
isLogLevelEnabled(level: LogLevel): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Set screen status. When success/fail and not in TUI mode, prints to stdout/stderr
|
|
42
48
|
*/
|
|
43
49
|
setStatus(status: ScreenStatus): this;
|
|
44
50
|
/**
|
|
@@ -46,7 +52,8 @@ export declare class ScreenInstance {
|
|
|
46
52
|
*/
|
|
47
53
|
isComplete(): boolean;
|
|
48
54
|
/**
|
|
49
|
-
* Check if this screen has been printed to console
|
|
55
|
+
* Check if this screen has been printed to console.
|
|
56
|
+
* Static screens in non-TUI modes are considered printed as they print incrementally.
|
|
50
57
|
*/
|
|
51
58
|
hasPrintedToConsole(): boolean;
|
|
52
59
|
/**
|
|
@@ -149,10 +156,9 @@ export declare class ScreenInstance {
|
|
|
149
156
|
*/
|
|
150
157
|
private activateNextPrompt;
|
|
151
158
|
/**
|
|
152
|
-
*
|
|
159
|
+
* Print a single message immediately to stdout (for static screens in stdout mode)
|
|
153
160
|
*/
|
|
154
|
-
|
|
155
|
-
private notifyChange;
|
|
161
|
+
private printSingleMessageToConsole;
|
|
156
162
|
/**
|
|
157
163
|
* Print all messages to stdout/stderr with ANSI colors
|
|
158
164
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../../src/services/screen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../../src/services/screen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,21 +1,27 @@
|
|
|
1
|
+
import { EventEmitter } from 'node:events';
|
|
1
2
|
import { type OnServiceDestroy } from '@navios/core';
|
|
3
|
+
import type { LogLevel } from '@navios/core';
|
|
2
4
|
import type { ScreenOptions } from '../schemas/index.ts';
|
|
3
|
-
import
|
|
5
|
+
import { RenderMode } from '../types/index.ts';
|
|
6
|
+
import type { BindOptions, FocusArea, PromptData, ScreenManagerEventMap, SetupOptions, Theme } from '../types/index.ts';
|
|
4
7
|
import { ScreenInstance } from './screen.ts';
|
|
5
|
-
export declare class ScreenManagerInstance implements OnServiceDestroy {
|
|
8
|
+
export declare class ScreenManagerInstance extends EventEmitter<ScreenManagerEventMap> implements OnServiceDestroy {
|
|
6
9
|
private screens;
|
|
7
10
|
private screenOrder;
|
|
8
11
|
private activeScreenId;
|
|
9
12
|
private renderer;
|
|
10
13
|
private root;
|
|
11
14
|
private adapter;
|
|
12
|
-
private
|
|
13
|
-
private
|
|
15
|
+
private container;
|
|
16
|
+
private mode;
|
|
17
|
+
private readlinePromptService;
|
|
14
18
|
private bindOptions;
|
|
15
19
|
private autoCloseTimer;
|
|
16
20
|
private theme;
|
|
21
|
+
private globalLogLevels;
|
|
17
22
|
focusArea: FocusArea;
|
|
18
23
|
selectedIndex: number;
|
|
24
|
+
constructor();
|
|
19
25
|
/**
|
|
20
26
|
* Create a new screen and return it
|
|
21
27
|
*/
|
|
@@ -29,24 +35,73 @@ export declare class ScreenManagerInstance implements OnServiceDestroy {
|
|
|
29
35
|
* Non-blocking bind - starts TUI rendering in background
|
|
30
36
|
*/
|
|
31
37
|
bind(options?: BindOptions): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Get the current render mode
|
|
40
|
+
*/
|
|
41
|
+
getRenderMode(): RenderMode;
|
|
42
|
+
/**
|
|
43
|
+
* Check if TUI is interactive (any mode except UNBOUND).
|
|
44
|
+
* In interactive modes, prompts can be handled via readline or TUI.
|
|
45
|
+
*/
|
|
46
|
+
isInteractive(): boolean;
|
|
47
|
+
/**
|
|
48
|
+
* Check if TUI rendering is active (TUI_ACTIVE mode).
|
|
49
|
+
* When true, screens are rendered in the TUI and not printed to stdout.
|
|
50
|
+
*/
|
|
51
|
+
hasTuiRenderer(): boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Handle a prompt via readline (for stdout modes)
|
|
54
|
+
*/
|
|
55
|
+
handleReadlinePrompt(prompt: PromptData): Promise<string | boolean | string[]>;
|
|
32
56
|
/**
|
|
33
57
|
* Get the configured theme
|
|
34
58
|
*/
|
|
35
59
|
getTheme(): Theme | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Setup global configuration for the screen manager.
|
|
62
|
+
* Can be called before or after bind() to configure theme and log levels.
|
|
63
|
+
*/
|
|
64
|
+
setup(options: SetupOptions): void;
|
|
65
|
+
/**
|
|
66
|
+
* Check if a log level is enabled globally.
|
|
67
|
+
* Returns true if no global filter is set, or if the level is in the allowed set.
|
|
68
|
+
*/
|
|
69
|
+
isLogLevelEnabled(level: LogLevel): boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Get the current global log levels filter.
|
|
72
|
+
* Returns null if no filter is set (all levels allowed).
|
|
73
|
+
*/
|
|
74
|
+
getGlobalLogLevels(): LogLevel[] | null;
|
|
36
75
|
onServiceDestroy(): void;
|
|
37
76
|
/**
|
|
38
77
|
* Stop TUI rendering and cleanup
|
|
39
|
-
* Flushes
|
|
78
|
+
* Flushes screens to stdout/stderr based on mode
|
|
40
79
|
*/
|
|
41
80
|
unbind(): void;
|
|
42
81
|
/**
|
|
43
|
-
*
|
|
82
|
+
* Flush screens on exit based on the mode we're exiting from
|
|
44
83
|
*/
|
|
45
|
-
private
|
|
84
|
+
private flushScreensOnExit;
|
|
85
|
+
/**
|
|
86
|
+
* Flush any remaining non-hidden screens that haven't been printed.
|
|
87
|
+
* Called on destroy even in UNBOUND mode to handle forgotten completions.
|
|
88
|
+
*/
|
|
89
|
+
private flushRemainingScreens;
|
|
46
90
|
/**
|
|
47
91
|
* Check if TUI is currently bound
|
|
92
|
+
* @deprecated Use isInteractive() instead
|
|
48
93
|
*/
|
|
49
94
|
isTuiBound(): boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Check if TUI rendering is active (has renderer or self-rendering adapter).
|
|
97
|
+
* @deprecated Use hasTuiRenderer() instead
|
|
98
|
+
*/
|
|
99
|
+
isTuiRendererActive(): boolean;
|
|
100
|
+
/**
|
|
101
|
+
* Check if OpenTUI rendering is active (has renderer).
|
|
102
|
+
* @deprecated Use hasTuiRenderer() instead
|
|
103
|
+
*/
|
|
104
|
+
isOpenTUIActive(): boolean;
|
|
50
105
|
/**
|
|
51
106
|
* Called by Screen when a prompt becomes active
|
|
52
107
|
* Focuses the screen and switches to content area
|
|
@@ -120,11 +175,6 @@ export declare class ScreenManagerInstance implements OnServiceDestroy {
|
|
|
120
175
|
* Toggle focus between sidebar and content
|
|
121
176
|
*/
|
|
122
177
|
toggleFocus(): void;
|
|
123
|
-
/**
|
|
124
|
-
* Register a change listener for re-renders
|
|
125
|
-
*/
|
|
126
|
-
onChange(listener: () => void): () => void;
|
|
127
|
-
private notifyChange;
|
|
128
178
|
private render;
|
|
129
179
|
}
|
|
130
180
|
//# sourceMappingURL=screen_manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen_manager.d.ts","sourceRoot":"","sources":["../../../../src/services/screen_manager.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"screen_manager.d.ts","sourceRoot":"","sources":["../../../../src/services/screen_manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { FocusArea, RenderMode, ScreenStatus } from './screen.types.ts';
|
|
2
|
+
export interface ScreenManagerEventMap {
|
|
3
|
+
'screen:added': [screenId: string];
|
|
4
|
+
'screen:removed': [screenId: string];
|
|
5
|
+
'screen:reordered': [];
|
|
6
|
+
'activeScreen:changed': [screenId: string | null];
|
|
7
|
+
'focus:changed': [area: FocusArea];
|
|
8
|
+
'sidebar:indexChanged': [index: number];
|
|
9
|
+
'mode:changed': [mode: RenderMode];
|
|
10
|
+
}
|
|
11
|
+
export type ScreenManagerEventType = keyof ScreenManagerEventMap;
|
|
12
|
+
/**
|
|
13
|
+
* All manager events that adapters typically subscribe to for re-renders.
|
|
14
|
+
*/
|
|
15
|
+
export declare const MANAGER_EVENTS: ScreenManagerEventType[];
|
|
16
|
+
export interface ScreenEventMap {
|
|
17
|
+
'message:added': [messageId: string];
|
|
18
|
+
'message:updated': [messageId: string];
|
|
19
|
+
'messages:cleared': [];
|
|
20
|
+
'status:changed': [status: ScreenStatus];
|
|
21
|
+
'visibility:changed': [hidden: boolean];
|
|
22
|
+
'badge:changed': [count: number];
|
|
23
|
+
'prompt:activated': [];
|
|
24
|
+
'prompt:updated': [];
|
|
25
|
+
'prompt:resolved': [];
|
|
26
|
+
}
|
|
27
|
+
export type ScreenEventType = keyof ScreenEventMap;
|
|
28
|
+
/**
|
|
29
|
+
* All screen events that adapters typically subscribe to for re-renders.
|
|
30
|
+
*/
|
|
31
|
+
export declare const SCREEN_EVENTS: ScreenEventType[];
|
|
32
|
+
/**
|
|
33
|
+
* Sidebar-specific events that require re-render.
|
|
34
|
+
*/
|
|
35
|
+
export declare const SIDEBAR_EVENTS: ScreenManagerEventType[];
|
|
36
|
+
/**
|
|
37
|
+
* Content area events that affect active screen changes.
|
|
38
|
+
*/
|
|
39
|
+
export declare const CONTENT_MANAGER_EVENTS: ScreenManagerEventType[];
|
|
40
|
+
//# sourceMappingURL=events.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.types.d.ts","sourceRoot":"","sources":["../../../../src/types/events.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAO5E,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IAClC,gBAAgB,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;IACpC,kBAAkB,EAAE,EAAE,CAAA;IACtB,sBAAsB,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC,CAAA;IACjD,eAAe,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IAClC,sBAAsB,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACvC,cAAc,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;CACnC;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,qBAAqB,CAAA;AAEhE;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,sBAAsB,EAQlD,CAAA;AAMD,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACpC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACtC,kBAAkB,EAAE,EAAE,CAAA;IACtB,gBAAgB,EAAE,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;IACxC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACvC,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IAChC,kBAAkB,EAAE,EAAE,CAAA;IACtB,gBAAgB,EAAE,EAAE,CAAA;IACpB,iBAAiB,EAAE,EAAE,CAAA;CACtB;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,cAAc,CAAA;AAElD;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,eAAe,EAU1C,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,sBAAsB,EAOlD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,sBAAsB,EAG1D,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAG9B,cAAc,iBAAiB,CAAA;AAG/B,cAAc,mBAAmB,CAAA;AAGjC,cAAc,oBAAoB,CAAA;AAGlC,cAAc,mBAAmB,CAAA;AAGjC,cAAc,kBAAkB,CAAA;AAGhC,cAAc,qBAAqB,CAAA;AAGnC,cAAc,mBAAmB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAG9B,cAAc,iBAAiB,CAAA;AAG/B,cAAc,mBAAmB,CAAA;AAGjC,cAAc,oBAAoB,CAAA;AAGlC,cAAc,mBAAmB,CAAA;AAGjC,cAAc,kBAAkB,CAAA;AAGhC,cAAc,qBAAqB,CAAA;AAGnC,cAAc,mBAAmB,CAAA;AAGjC,cAAc,mBAAmB,CAAA"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { LogLevel } from '@navios/core';
|
|
1
2
|
import type { RGBA, SyntaxStyle, TreeSitterClient } from '@opentui/core';
|
|
2
3
|
import type { ReactNode } from 'react';
|
|
3
4
|
import type { LogLevelColorMap } from './log.types.ts';
|
|
@@ -64,6 +65,20 @@ export interface LoggerContextValue {
|
|
|
64
65
|
theme: Theme;
|
|
65
66
|
}
|
|
66
67
|
export type ScreenStatus = 'waiting' | 'pending' | 'success' | 'fail' | 'static';
|
|
68
|
+
/**
|
|
69
|
+
* Render mode determines how the TUI operates.
|
|
70
|
+
* This is set during bind() and affects prompts, screen printing, and exit behavior.
|
|
71
|
+
*/
|
|
72
|
+
export declare enum RenderMode {
|
|
73
|
+
/** bind() never called - screens print on completion, prompts return defaults */
|
|
74
|
+
UNBOUND = "unbound",
|
|
75
|
+
/** bind() called with useOpenTUI: false - stdout mode with readline prompts */
|
|
76
|
+
STDOUT_INTERACTIVE = "stdout",
|
|
77
|
+
/** bind() called with useOpenTUI: true but adapter unavailable - fallback to stdout with warning */
|
|
78
|
+
STDOUT_FALLBACK = "fallback",
|
|
79
|
+
/** Full TUI rendering active with adapter */
|
|
80
|
+
TUI_ACTIVE = "tui"
|
|
81
|
+
}
|
|
67
82
|
export interface BindOptions {
|
|
68
83
|
exitOnCtrlC?: boolean;
|
|
69
84
|
sidebarWidth?: number;
|
|
@@ -75,5 +90,18 @@ export interface BindOptions {
|
|
|
75
90
|
theme?: Theme | ThemePreset;
|
|
76
91
|
/** Enable mouse support (default: true) */
|
|
77
92
|
useMouse?: boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Use OpenTUI for terminal rendering.
|
|
95
|
+
* When true: Full TUI with sidebar, scrolling, interactive prompts.
|
|
96
|
+
* When false: Stdout mode - static screens print immediately, others on completion.
|
|
97
|
+
* Default: true for Node.js, false for Bun (OpenTUI not supported).
|
|
98
|
+
*/
|
|
99
|
+
useOpenTUI?: boolean;
|
|
100
|
+
}
|
|
101
|
+
export interface SetupOptions {
|
|
102
|
+
/** Theme to use for the TUI (theme object or preset name) */
|
|
103
|
+
theme?: Theme | ThemePreset;
|
|
104
|
+
/** Global log levels filter - only these levels will be displayed across all loggers */
|
|
105
|
+
logLevels?: LogLevel[];
|
|
78
106
|
}
|
|
79
107
|
//# sourceMappingURL=screen.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screen.types.d.ts","sourceRoot":"","sources":["../../../../src/types/screen.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEtC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAM1D,MAAM,WAAW,WAAW;IAC1B,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAA;IAEZ,mCAAmC;IACnC,QAAQ,EAAE,SAAS,CAAA;IAEnB,kDAAkD;IAClD,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB,qCAAqC;IACrC,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAE7B,qCAAqC;IACrC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAErC,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAE/B,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,CAAA;IAEjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,IAAI,CAAA;CAC7D;AAMD,MAAM,WAAW,gBAAgB;IAC/B,+BAA+B;IAC/B,EAAE,EAAE,MAAM,CAAA;IAEV,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAA;IAEZ,oCAAoC;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb,gCAAgC;IAChC,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,yCAAyC;IACzC,OAAO,EAAE,gBAAgB,EAAE,CAAA;IAE3B,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAA;IAEtB,6CAA6C;IAC7C,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IAE3C,gFAAgF;IAChF,QAAQ,EAAE,SAAS,CAAA;IAEnB,wDAAwD;IACxD,cAAc,CAAC,EAAE,OAAO,CAAA;IAExB,+CAA+C;IAC/C,yBAAyB,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;IAEtD,8BAA8B;IAC9B,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,uBAAuB;IACvB,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAElC,uCAAuC;IACvC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IAEzB,2BAA2B;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;AAM7C,MAAM,WAAW,kBAAkB;IACjC,wDAAwD;IACxD,WAAW,CAAC,EAAE,WAAW,CAAA;IAEzB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAEnC,qFAAqF;IACrF,WAAW,EAAE,gBAAgB,CAAA;IAE7B,oBAAoB;IACpB,KAAK,EAAE,KAAK,CAAA;CACb;AAMD,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAA;
|
|
1
|
+
{"version":3,"file":"screen.types.d.ts","sourceRoot":"","sources":["../../../../src/types/screen.types.ts"],"names":[],"mappings":"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"}
|