@vybestack/llxprt-code 0.1.18-nightly.250808.f9b79d74 → 0.1.18-nightly.250811.b0db22c6

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.
Files changed (194) hide show
  1. package/dist/package.json +5 -3
  2. package/dist/src/auth/gemini-oauth-provider.d.ts +15 -0
  3. package/dist/src/auth/gemini-oauth-provider.js +33 -0
  4. package/dist/src/auth/gemini-oauth-provider.js.map +1 -0
  5. package/dist/src/auth/oauth-manager.d.ts +103 -0
  6. package/dist/src/auth/oauth-manager.js +326 -0
  7. package/dist/src/auth/oauth-manager.js.map +1 -0
  8. package/dist/src/auth/oauth-manager.spec.d.ts +6 -0
  9. package/dist/src/auth/oauth-manager.spec.js +523 -0
  10. package/dist/src/auth/oauth-manager.spec.js.map +1 -0
  11. package/dist/src/auth/qwen-oauth-provider.d.ts +14 -0
  12. package/dist/src/auth/qwen-oauth-provider.js +75 -0
  13. package/dist/src/auth/qwen-oauth-provider.js.map +1 -0
  14. package/dist/src/auth/types.d.ts +7 -0
  15. package/dist/src/auth/types.js +7 -0
  16. package/dist/src/auth/types.js.map +1 -0
  17. package/dist/src/config/auth.js +9 -0
  18. package/dist/src/config/auth.js.map +1 -1
  19. package/dist/src/config/config.js +93 -43
  20. package/dist/src/config/config.js.map +1 -1
  21. package/dist/src/config/keyBindings.d.ts +66 -0
  22. package/dist/src/config/keyBindings.js +136 -0
  23. package/dist/src/config/keyBindings.js.map +1 -0
  24. package/dist/src/config/settings.d.ts +3 -59
  25. package/dist/src/config/settings.js +17 -1
  26. package/dist/src/config/settings.js.map +1 -1
  27. package/dist/src/config/settingsSchema.d.ts +587 -0
  28. package/dist/src/config/settingsSchema.js +565 -0
  29. package/dist/src/config/settingsSchema.js.map +1 -0
  30. package/dist/src/gemini.js +12 -109
  31. package/dist/src/gemini.js.map +1 -1
  32. package/dist/src/generated/git-commit.d.ts +1 -1
  33. package/dist/src/generated/git-commit.js +1 -1
  34. package/dist/src/nonInteractiveCli.js +0 -1
  35. package/dist/src/nonInteractiveCli.js.map +1 -1
  36. package/dist/src/providers/logging/git-stats-service-impl.d.ts +19 -0
  37. package/dist/src/providers/logging/git-stats-service-impl.js +25 -0
  38. package/dist/src/providers/logging/git-stats-service-impl.js.map +1 -0
  39. package/dist/src/providers/logging/git-stats.d.ts +43 -0
  40. package/dist/src/providers/logging/git-stats.js +137 -0
  41. package/dist/src/providers/logging/git-stats.js.map +1 -0
  42. package/dist/src/providers/providerManagerInstance.js +39 -4
  43. package/dist/src/providers/providerManagerInstance.js.map +1 -1
  44. package/dist/src/services/BuiltinCommandLoader.js +4 -0
  45. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  46. package/dist/src/services/todo-continuation/todoContinuationService.d.ts +172 -0
  47. package/dist/src/services/todo-continuation/todoContinuationService.js +387 -0
  48. package/dist/src/services/todo-continuation/todoContinuationService.js.map +1 -0
  49. package/dist/src/services/todo-continuation/todoContinuationService.spec.d.ts +6 -0
  50. package/dist/src/services/todo-continuation/todoContinuationService.spec.js +385 -0
  51. package/dist/src/services/todo-continuation/todoContinuationService.spec.js.map +1 -0
  52. package/dist/src/ui/App.js +76 -26
  53. package/dist/src/ui/App.js.map +1 -1
  54. package/dist/src/ui/colors.d.ts +5 -0
  55. package/dist/src/ui/colors.js +51 -0
  56. package/dist/src/ui/colors.js.map +1 -1
  57. package/dist/src/ui/commands/authCommand.d.ts +11 -1
  58. package/dist/src/ui/commands/authCommand.js +143 -48
  59. package/dist/src/ui/commands/authCommand.js.map +1 -1
  60. package/dist/src/ui/commands/chatCommand.js +16 -0
  61. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  62. package/dist/src/ui/commands/ideCommand.js +67 -31
  63. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  64. package/dist/src/ui/commands/keyfileCommand.js +15 -12
  65. package/dist/src/ui/commands/keyfileCommand.js.map +1 -1
  66. package/dist/src/ui/commands/loggingCommand.d.ts +15 -0
  67. package/dist/src/ui/commands/loggingCommand.js +421 -0
  68. package/dist/src/ui/commands/loggingCommand.js.map +1 -0
  69. package/dist/src/ui/commands/privacyCommand.d.ts +3 -0
  70. package/dist/src/ui/commands/privacyCommand.js +6 -3
  71. package/dist/src/ui/commands/privacyCommand.js.map +1 -1
  72. package/dist/src/ui/commands/settingsCommand.d.ts +7 -0
  73. package/dist/src/ui/commands/settingsCommand.js +16 -0
  74. package/dist/src/ui/commands/settingsCommand.js.map +1 -0
  75. package/dist/src/ui/commands/setupGithubCommand.js +21 -2
  76. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  77. package/dist/src/ui/commands/types.d.ts +14 -2
  78. package/dist/src/ui/commands/types.js.map +1 -1
  79. package/dist/src/ui/components/AuthDialog.js +13 -56
  80. package/dist/src/ui/components/AuthDialog.js.map +1 -1
  81. package/dist/src/ui/components/AuthInProgress.js +3 -3
  82. package/dist/src/ui/components/AuthInProgress.js.map +1 -1
  83. package/dist/src/ui/components/ContextUsageDisplay.d.ts +10 -0
  84. package/dist/src/ui/components/ContextUsageDisplay.js +27 -0
  85. package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -0
  86. package/dist/src/ui/components/FolderTrustDialog.d.ts +16 -0
  87. package/dist/src/ui/components/FolderTrustDialog.js +38 -0
  88. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -0
  89. package/dist/src/ui/components/Footer.js +132 -15
  90. package/dist/src/ui/components/Footer.js.map +1 -1
  91. package/dist/src/ui/components/InputPrompt.d.ts +1 -0
  92. package/dist/src/ui/components/InputPrompt.js +87 -31
  93. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  94. package/dist/src/ui/components/LoggingDialog.d.ts +37 -0
  95. package/dist/src/ui/components/LoggingDialog.js +155 -0
  96. package/dist/src/ui/components/LoggingDialog.js.map +1 -0
  97. package/dist/src/ui/components/MemoryUsageDisplay.js +6 -4
  98. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
  99. package/dist/src/ui/components/ProviderDialog.js +100 -26
  100. package/dist/src/ui/components/ProviderDialog.js.map +1 -1
  101. package/dist/src/ui/components/ProviderModelDialog.js +99 -27
  102. package/dist/src/ui/components/ProviderModelDialog.js.map +1 -1
  103. package/dist/src/ui/components/SettingsDialog.d.ts +14 -0
  104. package/dist/src/ui/components/SettingsDialog.js +247 -0
  105. package/dist/src/ui/components/SettingsDialog.js.map +1 -0
  106. package/dist/src/ui/components/ThemeDialog.js +4 -15
  107. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  108. package/dist/src/ui/components/TodoPanel.js +93 -18
  109. package/dist/src/ui/components/TodoPanel.js.map +1 -1
  110. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +85 -7
  111. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  112. package/dist/src/ui/contexts/SettingsContext.d.ts +9 -0
  113. package/dist/src/ui/contexts/SettingsContext.js +15 -0
  114. package/dist/src/ui/contexts/SettingsContext.js.map +1 -0
  115. package/dist/src/ui/hooks/atCommandProcessor.js +21 -0
  116. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  117. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +6 -2
  118. package/dist/src/ui/hooks/slashCommandProcessor.js +142 -113
  119. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  120. package/dist/src/ui/hooks/useAtCompletion.js +1 -1
  121. package/dist/src/ui/hooks/useAuthCommand.js +14 -0
  122. package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
  123. package/dist/src/ui/hooks/useConsoleMessages.js +7 -0
  124. package/dist/src/ui/hooks/useConsoleMessages.js.map +1 -1
  125. package/dist/src/ui/hooks/useFolderTrust.d.ts +11 -0
  126. package/dist/src/ui/hooks/useFolderTrust.js +22 -0
  127. package/dist/src/ui/hooks/useFolderTrust.js.map +1 -0
  128. package/dist/src/ui/hooks/useGeminiStream.js +14 -3
  129. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  130. package/dist/src/ui/hooks/useResponsive.d.ts +14 -0
  131. package/dist/src/ui/hooks/useResponsive.js +19 -0
  132. package/dist/src/ui/hooks/useResponsive.js.map +1 -0
  133. package/dist/src/ui/hooks/useSettingsCommand.d.ts +10 -0
  134. package/dist/src/ui/hooks/useSettingsCommand.js +21 -0
  135. package/dist/src/ui/hooks/useSettingsCommand.js.map +1 -0
  136. package/dist/src/ui/hooks/useTodoContinuation.d.ts +31 -0
  137. package/dist/src/ui/hooks/useTodoContinuation.js +148 -0
  138. package/dist/src/ui/hooks/useTodoContinuation.js.map +1 -0
  139. package/dist/src/ui/hooks/useTodoContinuation.spec.d.ts +6 -0
  140. package/dist/src/ui/hooks/useTodoContinuation.spec.js +378 -0
  141. package/dist/src/ui/hooks/useTodoContinuation.spec.js.map +1 -0
  142. package/dist/src/ui/keyMatchers.d.ts +26 -0
  143. package/dist/src/ui/keyMatchers.js +68 -0
  144. package/dist/src/ui/keyMatchers.js.map +1 -0
  145. package/dist/src/ui/privacy/PrivacyNotice.js +10 -4
  146. package/dist/src/ui/privacy/PrivacyNotice.js.map +1 -1
  147. package/dist/src/ui/themes/semantic-resolver.d.ts +12 -0
  148. package/dist/src/ui/themes/semantic-resolver.js +32 -0
  149. package/dist/src/ui/themes/semantic-resolver.js.map +1 -0
  150. package/dist/src/ui/themes/semantic-tokens.d.ts +52 -0
  151. package/dist/src/ui/themes/semantic-tokens.js +7 -0
  152. package/dist/src/ui/themes/semantic-tokens.js.map +1 -0
  153. package/dist/src/ui/themes/theme-compat.d.ts +34 -0
  154. package/dist/src/ui/themes/theme-compat.js +65 -0
  155. package/dist/src/ui/themes/theme-compat.js.map +1 -0
  156. package/dist/src/ui/themes/theme-manager.d.ts +8 -0
  157. package/dist/src/ui/themes/theme-manager.js +18 -0
  158. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  159. package/dist/src/ui/utils/CodeColorizer.d.ts +2 -1
  160. package/dist/src/ui/utils/CodeColorizer.js +4 -3
  161. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  162. package/dist/src/ui/utils/MarkdownDisplay.js +4 -2
  163. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  164. package/dist/src/ui/utils/commandUtils.d.ts +1 -0
  165. package/dist/src/ui/utils/commandUtils.js +22 -1
  166. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  167. package/dist/src/ui/utils/responsive.d.ts +16 -0
  168. package/dist/src/ui/utils/responsive.js +111 -0
  169. package/dist/src/ui/utils/responsive.js.map +1 -0
  170. package/dist/src/utils/cleanup.d.ts +2 -2
  171. package/dist/src/utils/cleanup.js +2 -2
  172. package/dist/src/utils/cleanup.js.map +1 -1
  173. package/dist/src/utils/dialogScopeUtils.d.ts +31 -0
  174. package/dist/src/utils/dialogScopeUtils.js +48 -0
  175. package/dist/src/utils/dialogScopeUtils.js.map +1 -0
  176. package/dist/src/utils/gitUtils.d.ts +9 -0
  177. package/dist/src/utils/gitUtils.js +17 -0
  178. package/dist/src/utils/gitUtils.js.map +1 -1
  179. package/dist/src/utils/privacy/ConversationDataRedactor.d.ts +75 -0
  180. package/dist/src/utils/privacy/ConversationDataRedactor.js +412 -0
  181. package/dist/src/utils/privacy/ConversationDataRedactor.js.map +1 -0
  182. package/dist/src/utils/privacy/PrivacyManager.d.ts +58 -0
  183. package/dist/src/utils/privacy/PrivacyManager.js +133 -0
  184. package/dist/src/utils/privacy/PrivacyManager.js.map +1 -0
  185. package/dist/src/utils/sandbox.js +10 -0
  186. package/dist/src/utils/sandbox.js.map +1 -1
  187. package/dist/src/utils/settingsUtils.d.ts +126 -0
  188. package/dist/src/utils/settingsUtils.js +327 -0
  189. package/dist/src/utils/settingsUtils.js.map +1 -0
  190. package/dist/tsconfig.tsbuildinfo +1 -1
  191. package/package.json +5 -3
  192. package/dist/src/ui/components/IDEContextDetailDisplay.d.ts +0 -12
  193. package/dist/src/ui/components/IDEContextDetailDisplay.js +0 -17
  194. package/dist/src/ui/components/IDEContextDetailDisplay.js.map +0 -1
@@ -20,11 +20,13 @@ import { initCommand } from '../ui/commands/initCommand.js';
20
20
  import { mcpCommand } from '../ui/commands/mcpCommand.js';
21
21
  import { memoryCommand } from '../ui/commands/memoryCommand.js';
22
22
  import { privacyCommand } from '../ui/commands/privacyCommand.js';
23
+ import { loggingCommand } from '../ui/commands/loggingCommand.js';
23
24
  import { quitCommand } from '../ui/commands/quitCommand.js';
24
25
  import { restoreCommand } from '../ui/commands/restoreCommand.js';
25
26
  import { statsCommand } from '../ui/commands/statsCommand.js';
26
27
  import { themeCommand } from '../ui/commands/themeCommand.js';
27
28
  import { toolsCommand } from '../ui/commands/toolsCommand.js';
29
+ import { settingsCommand } from '../ui/commands/settingsCommand.js';
28
30
  import { vimCommand } from '../ui/commands/vimCommand.js';
29
31
  import { providerCommand } from '../ui/commands/providerCommand.js';
30
32
  import { modelCommand } from '../ui/commands/modelCommand.js';
@@ -71,11 +73,13 @@ export class BuiltinCommandLoader {
71
73
  mcpCommand,
72
74
  memoryCommand,
73
75
  privacyCommand,
76
+ loggingCommand,
74
77
  quitCommand,
75
78
  restoreCommand(this.config),
76
79
  statsCommand,
77
80
  themeCommand,
78
81
  toolsCommand,
82
+ settingsCommand,
79
83
  vimCommand,
80
84
  providerCommand,
81
85
  modelCommand,
@@ -1 +1 @@
1
- {"version":3,"file":"BuiltinCommandLoader.js","sourceRoot":"","sources":["../../../src/services/BuiltinCommandLoader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuiltinCommandLoader.js","sourceRoot":"","sources":["../../../src/services/BuiltinCommandLoader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,172 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Config } from '@vybestack/llxprt-code-core';
7
+ import type { Todo } from '@vybestack/llxprt-code-core';
8
+ /**
9
+ * Configuration for generating continuation prompts
10
+ */
11
+ export interface ContinuationPromptConfig {
12
+ readonly taskDescription: string;
13
+ readonly isYoloMode: boolean;
14
+ readonly attemptCount?: number;
15
+ readonly previousFailure?: string;
16
+ }
17
+ /**
18
+ * Context information for evaluating continuation conditions
19
+ */
20
+ export interface ContinuationContext {
21
+ readonly todos: readonly Todo[];
22
+ readonly hadToolCalls: boolean;
23
+ readonly isResponding: boolean;
24
+ readonly config: Config;
25
+ readonly currentState: ContinuationState;
26
+ }
27
+ /**
28
+ * Result of evaluating continuation conditions
29
+ */
30
+ export interface ContinuationEvaluation {
31
+ readonly shouldContinue: boolean;
32
+ readonly reason: string;
33
+ readonly activeTodo?: Todo;
34
+ readonly conditions: ConditionSet;
35
+ }
36
+ /**
37
+ * State tracking for continuation attempts
38
+ */
39
+ export interface ContinuationState {
40
+ isActive: boolean;
41
+ attemptCount: number;
42
+ taskDescription?: string;
43
+ lastPromptTime?: Date;
44
+ }
45
+ /**
46
+ * Set of conditions evaluated for continuation
47
+ */
48
+ export interface ConditionSet {
49
+ readonly hasActiveTodos: boolean;
50
+ readonly noToolCallsMade: boolean;
51
+ readonly continuationEnabled: boolean;
52
+ readonly notCurrentlyContinuing: boolean;
53
+ readonly withinAttemptLimits: boolean;
54
+ readonly withinTimeConstraints: boolean;
55
+ }
56
+ /**
57
+ * Template structure for continuation prompts
58
+ */
59
+ export interface ContinuationPromptTemplates {
60
+ readonly standard: {
61
+ readonly base: string;
62
+ readonly retry: string;
63
+ };
64
+ readonly yolo: {
65
+ readonly base: string;
66
+ readonly retry: string;
67
+ readonly urgent: string;
68
+ };
69
+ }
70
+ /**
71
+ * Service responsible for generating continuation prompts and managing continuation logic
72
+ */
73
+ export declare class TodoContinuationService {
74
+ private static readonly MAX_CONTINUATION_ATTEMPTS;
75
+ private static readonly MIN_CONTINUATION_INTERVAL_MS;
76
+ private static readonly CONTINUATION_TIMEOUT_MS;
77
+ private static readonly MAX_TASK_DESCRIPTION_LENGTH;
78
+ /**
79
+ * Generates a continuation prompt based on the provided configuration
80
+ * @param config Configuration for prompt generation
81
+ * @returns Formatted continuation prompt string
82
+ */
83
+ generateContinuationPrompt(config: ContinuationPromptConfig): string;
84
+ /**
85
+ * Evaluates whether continuation should occur based on current conditions
86
+ * @param context Current continuation context
87
+ * @returns Evaluation result with decision and reasoning
88
+ */
89
+ checkContinuationConditions(context: ContinuationContext): ContinuationEvaluation;
90
+ /**
91
+ * Formats a todo item's content into a task description
92
+ * @param todo Todo item to format
93
+ * @returns Formatted task description string
94
+ */
95
+ formatTaskDescription(todo: Todo): string;
96
+ /**
97
+ * Checks if continuation should be allowed based on configuration and state
98
+ * @param config Application configuration
99
+ * @param state Current continuation state
100
+ * @returns Whether continuation is allowed
101
+ */
102
+ shouldAllowContinuation(config: Config, state: ContinuationState): boolean;
103
+ /**
104
+ * Creates a new, empty continuation state
105
+ * @returns Initial continuation state
106
+ */
107
+ createContinuationState(): ContinuationState;
108
+ /**
109
+ * Checks whether continuation should occur based on settings, todos, and tool calls
110
+ * @param settings Application settings/config
111
+ * @param hasActiveTodos Whether there are active todos
112
+ * @param hasToolCalls Whether tool calls were made
113
+ * @returns Whether continuation should proceed
114
+ */
115
+ shouldContinue(settings: Config, hasActiveTodos: boolean, hasToolCalls: boolean): boolean;
116
+ /**
117
+ * Formats a prompt for task description and YOLO mode
118
+ * @param taskDescription Description of the task to continue
119
+ * @param isYoloMode Whether YOLO mode is enabled
120
+ * @returns Formatted prompt string
121
+ */
122
+ formatPrompt(taskDescription: string, isYoloMode: boolean): string;
123
+ /**
124
+ * Private method to truncate task descriptions to acceptable length
125
+ * @param description Task description to truncate
126
+ * @returns Truncated description
127
+ */
128
+ private truncateTaskDescription;
129
+ /**
130
+ * Private method to generate standard continuation prompt
131
+ * @param taskDescription Task description
132
+ * @param attemptCount Optional attempt count
133
+ * @returns Standard prompt string
134
+ */
135
+ private generateStandardPrompt;
136
+ /**
137
+ * Private method to generate YOLO mode continuation prompt
138
+ * @param taskDescription Task description
139
+ * @param attemptCount Optional attempt count
140
+ * @returns YOLO mode prompt string
141
+ */
142
+ private generateYoloModePrompt;
143
+ /**
144
+ * Private method to evaluate all continuation conditions
145
+ * @param context Continuation context
146
+ * @returns Evaluated condition set
147
+ */
148
+ private evaluateAllConditions;
149
+ /**
150
+ * Private method to check if there are any active todos
151
+ * @param todos Array of todos to check
152
+ * @returns Whether active todos exist
153
+ */
154
+ private hasAnyActiveTodos;
155
+ /**
156
+ * Private method to find the best active todo to continue
157
+ * @param todos Array of todos to search
158
+ * @returns Best active todo or undefined
159
+ */
160
+ private findBestActiveTodo;
161
+ /**
162
+ * Private method to check time constraints for continuation
163
+ * @param lastPromptTime Time of last continuation prompt
164
+ * @returns Whether time constraints are satisfied
165
+ */
166
+ private checkTimeConstraints;
167
+ }
168
+ /**
169
+ * Factory function to create a new TodoContinuationService instance
170
+ * @returns New service instance
171
+ */
172
+ export declare function createTodoContinuationService(): TodoContinuationService;
@@ -0,0 +1,387 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ /**
7
+ * Type guard to check if config has continuation enabled property (test mock)
8
+ */
9
+ function isMockConfig(config) {
10
+ return (typeof config === 'object' &&
11
+ config !== null &&
12
+ 'continuationEnabled' in config);
13
+ }
14
+ /**
15
+ * Service responsible for generating continuation prompts and managing continuation logic
16
+ */
17
+ export class TodoContinuationService {
18
+ static MAX_CONTINUATION_ATTEMPTS = 3;
19
+ static MIN_CONTINUATION_INTERVAL_MS = 1000;
20
+ static CONTINUATION_TIMEOUT_MS = 30000;
21
+ static MAX_TASK_DESCRIPTION_LENGTH = 200;
22
+ /**
23
+ * Generates a continuation prompt based on the provided configuration
24
+ * @param config Configuration for prompt generation
25
+ * @returns Formatted continuation prompt string
26
+ */
27
+ generateContinuationPrompt(config) {
28
+ if (!config) {
29
+ throw new Error('Configuration is required');
30
+ }
31
+ const taskDescription = this.truncateTaskDescription(config.taskDescription || '');
32
+ if (config.isYoloMode) {
33
+ return this.generateYoloModePrompt(taskDescription, config.attemptCount, config.previousFailure);
34
+ }
35
+ else {
36
+ return this.generateStandardPrompt(taskDescription, config.attemptCount, config.previousFailure);
37
+ }
38
+ }
39
+ /**
40
+ * Evaluates whether continuation should occur based on current conditions
41
+ * @param context Current continuation context
42
+ * @returns Evaluation result with decision and reasoning
43
+ */
44
+ checkContinuationConditions(context) {
45
+ if (!context) {
46
+ throw new Error('Context is required');
47
+ }
48
+ const conditions = this.evaluateAllConditions(context);
49
+ // Check each condition and provide specific feedback
50
+ if (!conditions.continuationEnabled) {
51
+ return {
52
+ shouldContinue: false,
53
+ reason: 'Todo continuation is disabled in ephemeral settings',
54
+ conditions,
55
+ };
56
+ }
57
+ if (!conditions.hasActiveTodos) {
58
+ return {
59
+ shouldContinue: false,
60
+ reason: 'No active todos found (pending or in_progress)',
61
+ conditions,
62
+ };
63
+ }
64
+ if (!conditions.noToolCallsMade) {
65
+ return {
66
+ shouldContinue: false,
67
+ reason: 'Tool calls were made during stream - no continuation needed',
68
+ conditions,
69
+ };
70
+ }
71
+ if (!conditions.notCurrentlyContinuing) {
72
+ return {
73
+ shouldContinue: false,
74
+ reason: 'Already continuing task',
75
+ conditions,
76
+ };
77
+ }
78
+ if (!conditions.withinAttemptLimits) {
79
+ return {
80
+ shouldContinue: false,
81
+ reason: 'Continuation attempt limit reached',
82
+ conditions,
83
+ };
84
+ }
85
+ if (!conditions.withinTimeConstraints) {
86
+ return {
87
+ shouldContinue: false,
88
+ reason: 'Time constraint violated - too soon since last attempt',
89
+ conditions,
90
+ };
91
+ }
92
+ // Find the active todo to continue
93
+ const activeTodo = this.findBestActiveTodo(context.todos);
94
+ if (!activeTodo) {
95
+ return {
96
+ shouldContinue: false,
97
+ reason: 'No suitable active todo found',
98
+ conditions,
99
+ };
100
+ }
101
+ // All conditions met
102
+ return {
103
+ shouldContinue: true,
104
+ reason: 'Active todo found and all continuation conditions satisfied',
105
+ conditions,
106
+ activeTodo,
107
+ };
108
+ }
109
+ /**
110
+ * Formats a todo item's content into a task description
111
+ * @param todo Todo item to format
112
+ * @returns Formatted task description string
113
+ */
114
+ formatTaskDescription(todo) {
115
+ if (!todo || !todo.content) {
116
+ return 'Complete task';
117
+ }
118
+ let description = todo.content.trim();
119
+ if (description.length === 0) {
120
+ return 'Complete task';
121
+ }
122
+ // Clean up formatting
123
+ description = description.replace(/\s+/g, ' '); // Normalize whitespace
124
+ description = description.replace(/^[-*+]\s*/, ''); // Remove list markers
125
+ // Truncate if too long
126
+ if (description.length > TodoContinuationService.MAX_TASK_DESCRIPTION_LENGTH) {
127
+ description =
128
+ description.substring(0, TodoContinuationService.MAX_TASK_DESCRIPTION_LENGTH - 3) + '...';
129
+ }
130
+ return description;
131
+ }
132
+ /**
133
+ * Checks if continuation should be allowed based on configuration and state
134
+ * @param config Application configuration
135
+ * @param state Current continuation state
136
+ * @returns Whether continuation is allowed
137
+ */
138
+ shouldAllowContinuation(config, state) {
139
+ // Check ephemeral setting safely
140
+ let continuationEnabled = true;
141
+ if (config && typeof config.getEphemeralSetting === 'function') {
142
+ continuationEnabled = config.getEphemeralSetting('todo-continuation');
143
+ }
144
+ else if (isMockConfig(config)) {
145
+ continuationEnabled = config.continuationEnabled;
146
+ }
147
+ if (continuationEnabled === false) {
148
+ return false;
149
+ }
150
+ // Check attempt limits
151
+ if (state.attemptCount >= TodoContinuationService.MAX_CONTINUATION_ATTEMPTS) {
152
+ return false;
153
+ }
154
+ // Check time constraints
155
+ if (state.lastPromptTime) {
156
+ const timeSinceLastPrompt = Date.now() - state.lastPromptTime.getTime();
157
+ if (timeSinceLastPrompt <
158
+ TodoContinuationService.MIN_CONTINUATION_INTERVAL_MS) {
159
+ return false;
160
+ }
161
+ }
162
+ return true;
163
+ }
164
+ /**
165
+ * Creates a new, empty continuation state
166
+ * @returns Initial continuation state
167
+ */
168
+ createContinuationState() {
169
+ return {
170
+ isActive: false,
171
+ attemptCount: 0,
172
+ taskDescription: undefined,
173
+ lastPromptTime: undefined,
174
+ };
175
+ }
176
+ // Additional method mentioned in requirements but not in original pseudocode
177
+ /**
178
+ * Checks whether continuation should occur based on settings, todos, and tool calls
179
+ * @param settings Application settings/config
180
+ * @param hasActiveTodos Whether there are active todos
181
+ * @param hasToolCalls Whether tool calls were made
182
+ * @returns Whether continuation should proceed
183
+ */
184
+ shouldContinue(settings, hasActiveTodos, hasToolCalls) {
185
+ // Don't continue if tool calls were made
186
+ if (hasToolCalls) {
187
+ return false;
188
+ }
189
+ // Don't continue if no active todos
190
+ if (!hasActiveTodos) {
191
+ return false;
192
+ }
193
+ // Check if continuation is enabled safely
194
+ let continuationEnabled = true;
195
+ if (settings && typeof settings.getEphemeralSetting === 'function') {
196
+ continuationEnabled = settings.getEphemeralSetting('todo-continuation');
197
+ }
198
+ else if (isMockConfig(settings)) {
199
+ continuationEnabled = settings.continuationEnabled;
200
+ }
201
+ return continuationEnabled !== false;
202
+ }
203
+ // Additional method mentioned in requirements but not in original pseudocode
204
+ /**
205
+ * Formats a prompt for task description and YOLO mode
206
+ * @param taskDescription Description of the task to continue
207
+ * @param isYoloMode Whether YOLO mode is enabled
208
+ * @returns Formatted prompt string
209
+ */
210
+ formatPrompt(taskDescription, isYoloMode) {
211
+ const truncatedDescription = this.truncateTaskDescription(taskDescription);
212
+ if (isYoloMode) {
213
+ return this.generateYoloModePrompt(truncatedDescription);
214
+ }
215
+ else {
216
+ return this.generateStandardPrompt(truncatedDescription);
217
+ }
218
+ }
219
+ /**
220
+ * Private method to truncate task descriptions to acceptable length
221
+ * @param description Task description to truncate
222
+ * @returns Truncated description
223
+ */
224
+ truncateTaskDescription(description) {
225
+ if (!description || description.length === 0) {
226
+ return 'Complete task';
227
+ }
228
+ if (description.length <= TodoContinuationService.MAX_TASK_DESCRIPTION_LENGTH) {
229
+ return description;
230
+ }
231
+ // Try to truncate at word boundary
232
+ const truncated = description.substring(0, TodoContinuationService.MAX_TASK_DESCRIPTION_LENGTH);
233
+ const lastSpaceIndex = truncated.lastIndexOf(' ');
234
+ if (lastSpaceIndex >
235
+ TodoContinuationService.MAX_TASK_DESCRIPTION_LENGTH * 0.8) {
236
+ // Good word boundary found
237
+ return truncated.substring(0, lastSpaceIndex) + '...';
238
+ }
239
+ else {
240
+ // No good word boundary, hard truncate
241
+ return (truncated.substring(0, TodoContinuationService.MAX_TASK_DESCRIPTION_LENGTH - 3) + '...');
242
+ }
243
+ }
244
+ /**
245
+ * Private method to generate standard continuation prompt
246
+ * @param taskDescription Task description
247
+ * @param attemptCount Optional attempt count
248
+ * @returns Standard prompt string
249
+ */
250
+ generateStandardPrompt(taskDescription, attemptCount, previousFailure) {
251
+ const basePrompt = [
252
+ 'You have an active task that needs completion:',
253
+ `'${taskDescription}'`,
254
+ '',
255
+ "Continue working on this task. Call todo_pause('reason') ONLY if there's an error preventing you from continuing.",
256
+ '',
257
+ 'Remember to:',
258
+ '- Focus on the specific task described',
259
+ '- Make concrete progress toward completion',
260
+ '- Update the task status when appropriate',
261
+ '- Use todo_pause() if you encounter blockers',
262
+ ].join('\n');
263
+ let result = basePrompt;
264
+ if (previousFailure) {
265
+ result += `\n\nPrevious failure information: ${previousFailure}`;
266
+ }
267
+ if (attemptCount && attemptCount > 1) {
268
+ const retryNote = `\n\nNote: This is continuation attempt #${attemptCount}. Please make sure to take concrete action.`;
269
+ result += retryNote;
270
+ }
271
+ return result;
272
+ }
273
+ /**
274
+ * Private method to generate YOLO mode continuation prompt
275
+ * @param taskDescription Task description
276
+ * @param attemptCount Optional attempt count
277
+ * @returns YOLO mode prompt string
278
+ */
279
+ generateYoloModePrompt(taskDescription, attemptCount, previousFailure) {
280
+ const basePrompt = [
281
+ 'CONTINUE TASK IMMEDIATELY:',
282
+ `'${taskDescription}'`,
283
+ '',
284
+ "You MUST continue working on this task. Call todo_pause('reason') ONLY if there's an error preventing you from proceeding.",
285
+ '',
286
+ 'YOLO MODE - Take action now:',
287
+ '- Execute the task without asking for confirmation',
288
+ '- Make concrete progress immediately',
289
+ '- Only pause if there are actual blocking errors',
290
+ '- Update task status when complete',
291
+ ].join('\n');
292
+ let result = basePrompt;
293
+ if (previousFailure) {
294
+ result += `\n\nPrevious failure information: ${previousFailure}`;
295
+ }
296
+ if (attemptCount && attemptCount > 1) {
297
+ const urgentRetry = `\n\nATTEMPT #${attemptCount} - YOU MUST TAKE ACTION NOW. No more analysis, proceed with execution.`;
298
+ result += urgentRetry;
299
+ }
300
+ return result;
301
+ }
302
+ /**
303
+ * Private method to evaluate all continuation conditions
304
+ * @param context Continuation context
305
+ * @returns Evaluated condition set
306
+ */
307
+ evaluateAllConditions(context) {
308
+ // Safely get ephemeral setting with fallback
309
+ let continuationSetting = true;
310
+ if (context.config &&
311
+ typeof context.config.getEphemeralSetting === 'function') {
312
+ continuationSetting =
313
+ context.config.getEphemeralSetting('todo-continuation');
314
+ }
315
+ else if (isMockConfig(context.config)) {
316
+ // Support test mock structure
317
+ continuationSetting = context.config.continuationEnabled;
318
+ }
319
+ return {
320
+ hasActiveTodos: this.hasAnyActiveTodos(context.todos),
321
+ noToolCallsMade: !context.hadToolCalls,
322
+ continuationEnabled: continuationSetting !== false,
323
+ notCurrentlyContinuing: !context.currentState.isActive,
324
+ withinAttemptLimits: context.currentState.attemptCount <
325
+ TodoContinuationService.MAX_CONTINUATION_ATTEMPTS,
326
+ withinTimeConstraints: this.checkTimeConstraints(context.currentState.lastPromptTime),
327
+ };
328
+ }
329
+ /**
330
+ * Private method to check if there are any active todos
331
+ * @param todos Array of todos to check
332
+ * @returns Whether active todos exist
333
+ */
334
+ hasAnyActiveTodos(todos) {
335
+ return todos.some((todo) => todo.status === 'pending' || todo.status === 'in_progress');
336
+ }
337
+ /**
338
+ * Private method to find the best active todo to continue
339
+ * @param todos Array of todos to search
340
+ * @returns Best active todo or undefined
341
+ */
342
+ findBestActiveTodo(todos) {
343
+ // Priority 1: Find in_progress todos (should be max 1)
344
+ const inProgressTodos = todos.filter((todo) => todo.status === 'in_progress');
345
+ if (inProgressTodos.length > 0) {
346
+ return inProgressTodos[0];
347
+ }
348
+ // Priority 2: Find pending todos, prioritize by priority
349
+ const pendingTodos = todos.filter((todo) => todo.status === 'pending');
350
+ if (pendingTodos.length > 0) {
351
+ // Sort by priority: high > medium > low
352
+ const priorityOrder = {
353
+ high: 3,
354
+ medium: 2,
355
+ low: 1,
356
+ };
357
+ pendingTodos.sort((a, b) => {
358
+ const aPriority = priorityOrder[a.priority || 'medium'] || 2;
359
+ const bPriority = priorityOrder[b.priority || 'medium'] || 2;
360
+ return bPriority - aPriority; // Descending order (high to low)
361
+ });
362
+ return pendingTodos[0];
363
+ }
364
+ return undefined;
365
+ }
366
+ /**
367
+ * Private method to check time constraints for continuation
368
+ * @param lastPromptTime Time of last continuation prompt
369
+ * @returns Whether time constraints are satisfied
370
+ */
371
+ checkTimeConstraints(lastPromptTime) {
372
+ if (!lastPromptTime) {
373
+ return true; // No previous attempt, allowed
374
+ }
375
+ const timeSinceLastPrompt = Date.now() - lastPromptTime.getTime();
376
+ return (timeSinceLastPrompt >=
377
+ TodoContinuationService.MIN_CONTINUATION_INTERVAL_MS);
378
+ }
379
+ }
380
+ /**
381
+ * Factory function to create a new TodoContinuationService instance
382
+ * @returns New service instance
383
+ */
384
+ export function createTodoContinuationService() {
385
+ return new TodoContinuationService();
386
+ }
387
+ //# sourceMappingURL=todoContinuationService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"todoContinuationService.js","sourceRoot":"","sources":["../../../../src/services/todo-continuation/todoContinuationService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAYH;;GAEG;AACH,SAAS,YAAY,CAAC,MAAe;IACnC,OAAO,CACL,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,KAAK,IAAI;QACf,qBAAqB,IAAI,MAAM,CAChC,CAAC;AACJ,CAAC;AAsED;;GAEG;AACH,MAAM,OAAO,uBAAuB;IAC1B,MAAM,CAAU,yBAAyB,GAAG,CAAC,CAAC;IAC9C,MAAM,CAAU,4BAA4B,GAAG,IAAI,CAAC;IACpD,MAAM,CAAU,uBAAuB,GAAG,KAAK,CAAC;IAChD,MAAM,CAAU,2BAA2B,GAAG,GAAG,CAAC;IAE1D;;;;OAIG;IACH,0BAA0B,CAAC,MAAgC;QACzD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAClD,MAAM,CAAC,eAAe,IAAI,EAAE,CAC7B,CAAC;QAEF,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,sBAAsB,CAChC,eAAe,EACf,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,eAAe,CACvB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,sBAAsB,CAChC,eAAe,EACf,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,eAAe,CACvB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,2BAA2B,CACzB,OAA4B;QAE5B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAEvD,qDAAqD;QACrD,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC;YACpC,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,qDAAqD;gBAC7D,UAAU;aACX,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;YAC/B,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,gDAAgD;gBACxD,UAAU;aACX,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,eAAe,EAAE,CAAC;YAChC,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,6DAA6D;gBACrE,UAAU;aACX,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,sBAAsB,EAAE,CAAC;YACvC,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,yBAAyB;gBACjC,UAAU;aACX,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,CAAC;YACpC,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,oCAAoC;gBAC5C,UAAU;aACX,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,qBAAqB,EAAE,CAAC;YACtC,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,wDAAwD;gBAChE,UAAU;aACX,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO;gBACL,cAAc,EAAE,KAAK;gBACrB,MAAM,EAAE,+BAA+B;gBACvC,UAAU;aACX,CAAC;QACJ,CAAC;QAED,qBAAqB;QACrB,OAAO;YACL,cAAc,EAAE,IAAI;YACpB,MAAM,EAAE,6DAA6D;YACrE,UAAU;YACV,UAAU;SACX,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,IAAU;QAC9B,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAC3B,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,IAAI,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEtC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,sBAAsB;QACtB,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,uBAAuB;QACvE,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,sBAAsB;QAE1E,uBAAuB;QACvB,IACE,WAAW,CAAC,MAAM,GAAG,uBAAuB,CAAC,2BAA2B,EACxE,CAAC;YACD,WAAW;gBACT,WAAW,CAAC,SAAS,CACnB,CAAC,EACD,uBAAuB,CAAC,2BAA2B,GAAG,CAAC,CACxD,GAAG,KAAK,CAAC;QACd,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,uBAAuB,CAAC,MAAc,EAAE,KAAwB;QAC9D,iCAAiC;QACjC,IAAI,mBAAmB,GAAY,IAAI,CAAC;QACxC,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;YAC/D,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;QACxE,CAAC;aAAM,IAAI,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,mBAAmB,GAAG,MAAM,CAAC,mBAAmB,CAAC;QACnD,CAAC;QAED,IAAI,mBAAmB,KAAK,KAAK,EAAE,CAAC;YAClC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,uBAAuB;QACvB,IACE,KAAK,CAAC,YAAY,IAAI,uBAAuB,CAAC,yBAAyB,EACvE,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,yBAAyB;QACzB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;YACxE,IACE,mBAAmB;gBACnB,uBAAuB,CAAC,4BAA4B,EACpD,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;OAGG;IACH,uBAAuB;QACrB,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,YAAY,EAAE,CAAC;YACf,eAAe,EAAE,SAAS;YAC1B,cAAc,EAAE,SAAS;SAC1B,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E;;;;;;OAMG;IACH,cAAc,CACZ,QAAgB,EAChB,cAAuB,EACvB,YAAqB;QAErB,yCAAyC;QACzC,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,oCAAoC;QACpC,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,KAAK,CAAC;QACf,CAAC;QAED,0CAA0C;QAC1C,IAAI,mBAAmB,GAAY,IAAI,CAAC;QACxC,IAAI,QAAQ,IAAI,OAAO,QAAQ,CAAC,mBAAmB,KAAK,UAAU,EAAE,CAAC;YACnE,mBAAmB,GAAG,QAAQ,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;QAC1E,CAAC;aAAM,IAAI,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,mBAAmB,GAAG,QAAQ,CAAC,mBAAmB,CAAC;QACrD,CAAC;QAED,OAAO,mBAAmB,KAAK,KAAK,CAAC;IACvC,CAAC;IAED,6EAA6E;IAC7E;;;;;OAKG;IACH,YAAY,CAAC,eAAuB,EAAE,UAAmB;QACvD,MAAM,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,CAAC,eAAe,CAAC,CAAC;QAE3E,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,uBAAuB,CAAC,WAAmB;QACjD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,IACE,WAAW,CAAC,MAAM,IAAI,uBAAuB,CAAC,2BAA2B,EACzE,CAAC;YACD,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,mCAAmC;QACnC,MAAM,SAAS,GAAG,WAAW,CAAC,SAAS,CACrC,CAAC,EACD,uBAAuB,CAAC,2BAA2B,CACpD,CAAC;QACF,MAAM,cAAc,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAElD,IACE,cAAc;YACd,uBAAuB,CAAC,2BAA2B,GAAG,GAAG,EACzD,CAAC;YACD,2BAA2B;YAC3B,OAAO,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,KAAK,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,uCAAuC;YACvC,OAAO,CACL,SAAS,CAAC,SAAS,CACjB,CAAC,EACD,uBAAuB,CAAC,2BAA2B,GAAG,CAAC,CACxD,GAAG,KAAK,CACV,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAC5B,eAAuB,EACvB,YAAqB,EACrB,eAAwB;QAExB,MAAM,UAAU,GAAG;YACjB,gDAAgD;YAChD,IAAI,eAAe,GAAG;YACtB,EAAE;YACF,mHAAmH;YACnH,EAAE;YACF,cAAc;YACd,wCAAwC;YACxC,4CAA4C;YAC5C,2CAA2C;YAC3C,8CAA8C;SAC/C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,IAAI,MAAM,GAAG,UAAU,CAAC;QAExB,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,qCAAqC,eAAe,EAAE,CAAC;QACnE,CAAC;QAED,IAAI,YAAY,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,SAAS,GAAG,2CAA2C,YAAY,6CAA6C,CAAC;YACvH,MAAM,IAAI,SAAS,CAAC;QACtB,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACK,sBAAsB,CAC5B,eAAuB,EACvB,YAAqB,EACrB,eAAwB;QAExB,MAAM,UAAU,GAAG;YACjB,4BAA4B;YAC5B,IAAI,eAAe,GAAG;YACtB,EAAE;YACF,4HAA4H;YAC5H,EAAE;YACF,8BAA8B;YAC9B,oDAAoD;YACpD,sCAAsC;YACtC,kDAAkD;YAClD,oCAAoC;SACrC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,IAAI,MAAM,GAAG,UAAU,CAAC;QAExB,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,IAAI,qCAAqC,eAAe,EAAE,CAAC;QACnE,CAAC;QAED,IAAI,YAAY,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrC,MAAM,WAAW,GAAG,gBAAgB,YAAY,wEAAwE,CAAC;YACzH,MAAM,IAAI,WAAW,CAAC;QACxB,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,qBAAqB,CAAC,OAA4B;QACxD,6CAA6C;QAC7C,IAAI,mBAAmB,GAAY,IAAI,CAAC;QACxC,IACE,OAAO,CAAC,MAAM;YACd,OAAO,OAAO,CAAC,MAAM,CAAC,mBAAmB,KAAK,UAAU,EACxD,CAAC;YACD,mBAAmB;gBACjB,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;QAC5D,CAAC;aAAM,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACxC,8BAA8B;YAC9B,mBAAmB,GAAG,OAAO,CAAC,MAAM,CAAC,mBAAmB,CAAC;QAC3D,CAAC;QAED,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC;YACrD,eAAe,EAAE,CAAC,OAAO,CAAC,YAAY;YACtC,mBAAmB,EAAE,mBAAmB,KAAK,KAAK;YAClD,sBAAsB,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ;YACtD,mBAAmB,EACjB,OAAO,CAAC,YAAY,CAAC,YAAY;gBACjC,uBAAuB,CAAC,yBAAyB;YACnD,qBAAqB,EAAE,IAAI,CAAC,oBAAoB,CAC9C,OAAO,CAAC,YAAY,CAAC,cAAc,CACpC;SACF,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,KAAsB;QAC9C,OAAO,KAAK,CAAC,IAAI,CACf,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,CACrE,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,kBAAkB,CAAC,KAAsB;QAC/C,uDAAuD;QACvD,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAClC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa,CACxC,CAAC;QACF,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,OAAO,eAAe,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;QAED,yDAAyD;QACzD,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;QACvE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,wCAAwC;YACxC,MAAM,aAAa,GAA2B;gBAC5C,IAAI,EAAE,CAAC;gBACP,MAAM,EAAE,CAAC;gBACT,GAAG,EAAE,CAAC;aACP,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACzB,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC7D,MAAM,SAAS,GAAG,aAAa,CAAC,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC7D,OAAO,SAAS,GAAG,SAAS,CAAC,CAAC,iCAAiC;YACjE,CAAC,CAAC,CAAC;YACH,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;OAIG;IACK,oBAAoB,CAAC,cAAqB;QAChD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,CAAC,+BAA+B;QAC9C,CAAC;QAED,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC;QAClE,OAAO,CACL,mBAAmB;YACnB,uBAAuB,CAAC,4BAA4B,CACrD,CAAC;IACJ,CAAC;;AAGH;;;GAGG;AACH,MAAM,UAAU,6BAA6B;IAC3C,OAAO,IAAI,uBAAuB,EAAE,CAAC;AACvC,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Vybestack LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};