@courseecho/ai-core-sdk 1.0.3 → 1.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -4,7 +4,8 @@
4
4
  */
5
5
  export * from './models';
6
6
  export { AiCommunicationService, ApiError } from './communication-service';
7
- export { ChatStateManager, ContextStateManager, ChartManager, } from './state-manager';
7
+ export { ChatStateManager, ContextStateManager, ChartManager, SuggestionManager, } from './state-manager';
8
+ export { PageContentScanner, AiSuggestionGenerator, type PageContent, } from './auto-suggestion-generator';
8
9
  export { AiWidgetSDK } from './sdk';
9
10
  export type { StateListener } from './state-manager';
10
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGpC,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,UAAU,CAAC;AAGzB,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,KAAK,WAAW,GACjB,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAGpC,YAAY,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -6,7 +6,9 @@
6
6
  export * from './models';
7
7
  // Services
8
8
  export { AiCommunicationService, ApiError } from './communication-service';
9
- export { ChatStateManager, ContextStateManager, ChartManager, } from './state-manager';
9
+ export { ChatStateManager, ContextStateManager, ChartManager, SuggestionManager, } from './state-manager';
10
+ // Auto-suggestion & page scanning
11
+ export { PageContentScanner, AiSuggestionGenerator, } from './auto-suggestion-generator';
10
12
  // Main SDK
11
13
  export { AiWidgetSDK } from './sdk';
12
14
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,SAAS;AACT,cAAc,UAAU,CAAC;AAEzB,WAAW;AACX,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,WAAW;AACX,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,SAAS;AACT,cAAc,UAAU,CAAC;AAEzB,WAAW;AACX,OAAO,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,kCAAkC;AAClC,OAAO,EACL,kBAAkB,EAClB,qBAAqB,GAEtB,MAAM,6BAA6B,CAAC;AAErC,WAAW;AACX,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC"}
package/dist/models.d.ts CHANGED
@@ -57,6 +57,7 @@ export interface AiContextConfig {
57
57
  position?: 'bottom-right' | 'bottom-left' | 'top-right' | 'top-left';
58
58
  enableCharts?: boolean;
59
59
  enableExport?: boolean;
60
+ suggestionConfig?: SuggestionConfig;
60
61
  }
61
62
  export interface AiQueryRequest {
62
63
  userQuery: string;
@@ -89,4 +90,49 @@ export interface ChatExportData {
89
90
  charts: AiChart[];
90
91
  exportedAt: Date;
91
92
  }
93
+ /**
94
+ * Suggestion Models for Auto-suggestion Feature
95
+ */
96
+ export interface AiSuggestion {
97
+ id: string;
98
+ text: string;
99
+ category?: string;
100
+ icon?: string;
101
+ description?: string;
102
+ metadata?: Record<string, any>;
103
+ }
104
+ export interface SuggestionGroup {
105
+ category: string;
106
+ suggestions: AiSuggestion[];
107
+ icon?: string;
108
+ }
109
+ export interface PageScanConfig {
110
+ enabled?: boolean;
111
+ autoScan?: boolean;
112
+ scanInterval?: number;
113
+ maxTextLength?: number;
114
+ excludeSelectors?: string[];
115
+ cacheDuration?: number;
116
+ mergeWithUserSuggestions?: boolean;
117
+ }
118
+ export interface AiSuggestionGeneratorConfig {
119
+ enabled?: boolean;
120
+ tier?: 'free' | 'premium';
121
+ backendUrl?: string;
122
+ apiKey?: string;
123
+ timeoutMs?: number;
124
+ }
125
+ export interface SuggestionConfig {
126
+ enabled: boolean;
127
+ suggestions?: AiSuggestion[];
128
+ categories?: SuggestionGroup[];
129
+ maxVisibleSuggestions?: number;
130
+ showOnFocus?: boolean;
131
+ showOnClick?: boolean;
132
+ customSuggestions?: (query: string) => Promise<AiSuggestion[]>;
133
+ autoGenerate?: boolean;
134
+ autoGenerateFreeTier?: boolean;
135
+ pageScanning?: PageScanConfig;
136
+ aiConfig?: AiSuggestionGeneratorConfig;
137
+ }
92
138
  //# sourceMappingURL=models.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../src/models.ts"],"names":[],"mappings":"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"}
package/dist/sdk.d.ts CHANGED
@@ -3,15 +3,24 @@
3
3
  * Main orchestrator that ties everything together
4
4
  */
5
5
  import { AiCommunicationService } from './communication-service';
6
- import { ChatStateManager, ContextStateManager, ChartManager } from './state-manager';
7
- import { AiContextConfig, AiMessage } from './models';
6
+ import { ChatStateManager, ContextStateManager, ChartManager, SuggestionManager } from './state-manager';
7
+ import { AiContextConfig, AiMessage, AiSuggestion } from './models';
8
+ import { PageContentScanner, AiSuggestionGenerator } from './auto-suggestion-generator';
8
9
  export declare class AiWidgetSDK {
9
10
  private communicationService;
10
11
  private chatStateManager;
11
12
  private contextStateManager;
12
13
  private chartManager;
14
+ private suggestionManager;
15
+ private pageContentScanner;
16
+ private suggestionGenerator;
13
17
  private config;
18
+ private autoSuggestionInterval?;
14
19
  constructor(config: AiContextConfig);
20
+ /**
21
+ * Initialize auto-suggestions based on page content
22
+ */
23
+ initializeAutoSuggestions(): Promise<void>;
15
24
  /**
16
25
  * Validate configuration
17
26
  */
@@ -80,6 +89,46 @@ export declare class AiWidgetSDK {
80
89
  * Subscribe to context changes
81
90
  */
82
91
  onContextChange(listener: (context: any) => void): () => void;
92
+ /**
93
+ * Get all suggestions
94
+ */
95
+ getSuggestions(): AiSuggestion[];
96
+ /**
97
+ * Filter suggestions based on query
98
+ */
99
+ filterSuggestions(query: string): AiSuggestion[];
100
+ /**
101
+ * Get suggestions by category
102
+ */
103
+ getSuggestionsByCategory(category: string): AiSuggestion[];
104
+ /**
105
+ * Add a suggestion
106
+ */
107
+ addSuggestion(suggestion: AiSuggestion): void;
108
+ /**
109
+ * Add multiple suggestions
110
+ */
111
+ addSuggestions(suggestions: AiSuggestion[]): void;
112
+ /**
113
+ * Remove a suggestion by id
114
+ */
115
+ removeSuggestion(id: string): void;
116
+ /**
117
+ * Clear all suggestions
118
+ */
119
+ clearSuggestions(): void;
120
+ /**
121
+ * Update suggestion
122
+ */
123
+ updateSuggestion(id: string, updates: Partial<AiSuggestion>): void;
124
+ /**
125
+ * Subscribe to suggestion changes
126
+ */
127
+ onSuggestionsChange(listener: (suggestions: AiSuggestion[]) => void): () => void;
128
+ /**
129
+ * Get suggestion manager for advanced use
130
+ */
131
+ getSuggestionManager(): SuggestionManager;
83
132
  /**
84
133
  * Get internal services (for advanced use)
85
134
  */
@@ -88,7 +137,24 @@ export declare class AiWidgetSDK {
88
137
  chatState: ChatStateManager;
89
138
  contextState: ContextStateManager;
90
139
  charts: ChartManager;
140
+ suggestions: SuggestionManager;
91
141
  };
142
+ /**
143
+ * Trigger manual page scan for auto-suggestions
144
+ */
145
+ triggerAutoSuggestions(): Promise<void>;
146
+ /**
147
+ * Get page content scanner
148
+ */
149
+ getPageContentScanner(): PageContentScanner;
150
+ /**
151
+ * Get suggestion generator
152
+ */
153
+ getSuggestionGenerator(): AiSuggestionGenerator;
154
+ /**
155
+ * Stop auto-suggestion scanning
156
+ */
157
+ stopAutoSuggestions(): void;
92
158
  /**
93
159
  * Private helper to generate unique IDs
94
160
  */
package/dist/sdk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,sBAAsB,EAAY,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,eAAe,EACf,SAAS,EAGV,MAAM,UAAU,CAAC;AAElB,qBAAa,WAAW;IACtB,OAAO,CAAC,oBAAoB,CAAyB;IACrD,OAAO,CAAC,gBAAgB,CAAmB;IAC3C,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,MAAM,CAAkB;gBAEpB,MAAM,EAAE,eAAe;IAcnC;;OAEG;IACH,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAIhC;;OAEG;IACG,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IA0DtD;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,IAAI;IAQ9D;;OAEG;IACH,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAIpD;;OAEG;IACH,UAAU;IAIV;;OAEG;IACH,gBAAgB,IAAI,IAAI;IAKxB;;OAEG;IACH,WAAW,IAAI,SAAS,EAAE;IAI1B;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,IAAI;IAIzB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,WAAW,CAAC,MAAM,GAAE,MAAM,GAAG,KAAc,GAAG,MAAM;IA2BpD;;OAEG;IACH,YAAY,CAAC,MAAM,GAAE,MAAM,GAAG,KAAc,GAAG,MAAM;IAQrD;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,IAAI,GAAG,MAAM,IAAI;IAIvE;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,GAAG,MAAM,IAAI;IAInE;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,GAAG,MAAM,IAAI;IAInE;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,IAAI,GAAG,MAAM,IAAI;IAI7D;;OAEG;IACH,WAAW;;;;;;IASX;;OAEG;IACH,OAAO,CAAC,UAAU;IAIlB;;OAEG;IACH,OAAO,CAAC,eAAe;CAkBxB"}
1
+ {"version":3,"file":"sdk.d.ts","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
package/dist/sdk.js CHANGED
@@ -3,7 +3,8 @@
3
3
  * Main orchestrator that ties everything together
4
4
  */
5
5
  import { AiCommunicationService, ApiError } from './communication-service';
6
- import { ChatStateManager, ContextStateManager, ChartManager, } from './state-manager';
6
+ import { ChatStateManager, ContextStateManager, ChartManager, SuggestionManager, } from './state-manager';
7
+ import { PageContentScanner, AiSuggestionGenerator, } from './auto-suggestion-generator';
7
8
  export class AiWidgetSDK {
8
9
  constructor(config) {
9
10
  this.validateConfig(config);
@@ -13,6 +14,57 @@ export class AiWidgetSDK {
13
14
  this.chatStateManager = new ChatStateManager(config.maxChatHistory ?? 100);
14
15
  this.contextStateManager = new ContextStateManager(config.context);
15
16
  this.chartManager = new ChartManager();
17
+ this.suggestionManager = new SuggestionManager(config.suggestionConfig);
18
+ // Initialize auto-suggestion components
19
+ this.pageContentScanner = new PageContentScanner(config.suggestionConfig?.pageScanning);
20
+ this.suggestionGenerator = new AiSuggestionGenerator(config.suggestionConfig?.aiConfig, this.pageContentScanner);
21
+ // Initialize auto-suggestions if enabled
22
+ this.initializeAutoSuggestions();
23
+ }
24
+ /**
25
+ * Initialize auto-suggestions based on page content
26
+ */
27
+ async initializeAutoSuggestions() {
28
+ const suggestionConfig = this.config.suggestionConfig;
29
+ // Check if auto-generation is enabled
30
+ if (!suggestionConfig?.autoGenerate) {
31
+ return;
32
+ }
33
+ // Check tier: free tier gets suggestions automatically
34
+ if (suggestionConfig.autoGenerateFreeTier !== false) {
35
+ try {
36
+ const autoSuggestions = await this.suggestionGenerator.generateSuggestions();
37
+ // Merge with user-provided suggestions if configured
38
+ if (suggestionConfig.pageScanning?.mergeWithUserSuggestions !== false) {
39
+ const existingSuggestions = this.suggestionManager.getSuggestions();
40
+ this.suggestionManager.addSuggestions(autoSuggestions);
41
+ }
42
+ else {
43
+ // Replace with auto-generated suggestions
44
+ this.suggestionManager.clearSuggestions();
45
+ this.suggestionManager.addSuggestions(autoSuggestions);
46
+ }
47
+ }
48
+ catch (error) {
49
+ console.error('Error generating auto-suggestions:', error);
50
+ }
51
+ }
52
+ // Set up periodic re-scanning if configured
53
+ if (suggestionConfig.pageScanning?.autoScan) {
54
+ const scanInterval = suggestionConfig.pageScanning.scanInterval || 60000; // 60 seconds default
55
+ this.autoSuggestionInterval = setInterval(async () => {
56
+ try {
57
+ const freshSuggestions = await this.suggestionGenerator.generateSuggestions();
58
+ if (suggestionConfig.pageScanning?.mergeWithUserSuggestions === false) {
59
+ this.suggestionManager.clearSuggestions();
60
+ }
61
+ this.suggestionManager.addSuggestions(freshSuggestions);
62
+ }
63
+ catch (error) {
64
+ console.error('Error refreshing auto-suggestions:', error);
65
+ }
66
+ }, scanInterval);
67
+ }
16
68
  }
17
69
  /**
18
70
  * Validate configuration
@@ -200,6 +252,66 @@ export class AiWidgetSDK {
200
252
  onContextChange(listener) {
201
253
  return this.contextStateManager.onContextChange(listener);
202
254
  }
255
+ /**
256
+ * Get all suggestions
257
+ */
258
+ getSuggestions() {
259
+ return this.suggestionManager.getSuggestions();
260
+ }
261
+ /**
262
+ * Filter suggestions based on query
263
+ */
264
+ filterSuggestions(query) {
265
+ return this.suggestionManager.filterSuggestions(query);
266
+ }
267
+ /**
268
+ * Get suggestions by category
269
+ */
270
+ getSuggestionsByCategory(category) {
271
+ return this.suggestionManager.getSuggestionsByCategory(category);
272
+ }
273
+ /**
274
+ * Add a suggestion
275
+ */
276
+ addSuggestion(suggestion) {
277
+ this.suggestionManager.addSuggestion(suggestion);
278
+ }
279
+ /**
280
+ * Add multiple suggestions
281
+ */
282
+ addSuggestions(suggestions) {
283
+ this.suggestionManager.addSuggestions(suggestions);
284
+ }
285
+ /**
286
+ * Remove a suggestion by id
287
+ */
288
+ removeSuggestion(id) {
289
+ this.suggestionManager.removeSuggestion(id);
290
+ }
291
+ /**
292
+ * Clear all suggestions
293
+ */
294
+ clearSuggestions() {
295
+ this.suggestionManager.clearSuggestions();
296
+ }
297
+ /**
298
+ * Update suggestion
299
+ */
300
+ updateSuggestion(id, updates) {
301
+ this.suggestionManager.updateSuggestion(id, updates);
302
+ }
303
+ /**
304
+ * Subscribe to suggestion changes
305
+ */
306
+ onSuggestionsChange(listener) {
307
+ return this.suggestionManager.onSuggestionsChange(listener);
308
+ }
309
+ /**
310
+ * Get suggestion manager for advanced use
311
+ */
312
+ getSuggestionManager() {
313
+ return this.suggestionManager;
314
+ }
203
315
  /**
204
316
  * Get internal services (for advanced use)
205
317
  */
@@ -209,8 +321,45 @@ export class AiWidgetSDK {
209
321
  chatState: this.chatStateManager,
210
322
  contextState: this.contextStateManager,
211
323
  charts: this.chartManager,
324
+ suggestions: this.suggestionManager,
212
325
  };
213
326
  }
327
+ /**
328
+ * Trigger manual page scan for auto-suggestions
329
+ */
330
+ async triggerAutoSuggestions() {
331
+ try {
332
+ const suggestions = await this.suggestionGenerator.generateSuggestions();
333
+ if (this.config.suggestionConfig?.pageScanning?.mergeWithUserSuggestions === false) {
334
+ this.suggestionManager.clearSuggestions();
335
+ }
336
+ this.suggestionManager.addSuggestions(suggestions);
337
+ }
338
+ catch (error) {
339
+ console.error('Error triggering auto-suggestions:', error);
340
+ }
341
+ }
342
+ /**
343
+ * Get page content scanner
344
+ */
345
+ getPageContentScanner() {
346
+ return this.pageContentScanner;
347
+ }
348
+ /**
349
+ * Get suggestion generator
350
+ */
351
+ getSuggestionGenerator() {
352
+ return this.suggestionGenerator;
353
+ }
354
+ /**
355
+ * Stop auto-suggestion scanning
356
+ */
357
+ stopAutoSuggestions() {
358
+ if (this.autoSuggestionInterval) {
359
+ clearInterval(this.autoSuggestionInterval);
360
+ this.autoSuggestionInterval = undefined;
361
+ }
362
+ }
214
363
  /**
215
364
  * Private helper to generate unique IDs
216
365
  */
package/dist/sdk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * AI Widget SDK - Core Chat State Manager
3
3
  * Manage chat messages, loading state, errors - framework-agnostic
4
4
  */
5
- import { AiMessage, AiChart, AiContext } from './models';
5
+ import { AiMessage, AiChart, AiContext, AiSuggestion, SuggestionConfig } from './models';
6
6
  export type StateListener<T> = (state: T) => void;
7
7
  /**
8
8
  * Core Chat State - manages messages and loading states
@@ -136,4 +136,66 @@ export declare class ChartManager {
136
136
  */
137
137
  exportToJSON(): string;
138
138
  }
139
+ /**
140
+ * Suggestion Manager - manage suggestions for chat queries
141
+ */
142
+ export declare class SuggestionManager {
143
+ private suggestions;
144
+ private config;
145
+ private suggestionListeners;
146
+ constructor(config?: SuggestionConfig);
147
+ /**
148
+ * Get all suggestions
149
+ */
150
+ getSuggestions(): AiSuggestion[];
151
+ /**
152
+ * Filter suggestions based on query
153
+ */
154
+ filterSuggestions(query: string): AiSuggestion[];
155
+ /**
156
+ * Get suggestions by category
157
+ */
158
+ getSuggestionsByCategory(category: string): AiSuggestion[];
159
+ /**
160
+ * Add a suggestion
161
+ */
162
+ addSuggestion(suggestion: AiSuggestion): void;
163
+ /**
164
+ * Add multiple suggestions
165
+ */
166
+ addSuggestions(suggestions: AiSuggestion[]): void;
167
+ /**
168
+ * Remove a suggestion by id
169
+ */
170
+ removeSuggestion(id: string): void;
171
+ /**
172
+ * Clear all suggestions
173
+ */
174
+ clearSuggestions(): void;
175
+ /**
176
+ * Update suggestion
177
+ */
178
+ updateSuggestion(id: string, updates: Partial<AiSuggestion>): void;
179
+ /**
180
+ * Check if suggestions are enabled
181
+ */
182
+ isEnabled(): boolean;
183
+ /**
184
+ * Toggle suggestions on/off
185
+ */
186
+ toggleEnabled(): void;
187
+ /**
188
+ * Subscribe to suggestion changes
189
+ */
190
+ onSuggestionsChange(listener: StateListener<AiSuggestion[]>): () => void;
191
+ /**
192
+ * Get config
193
+ */
194
+ getConfig(): SuggestionConfig;
195
+ /**
196
+ * Update config
197
+ */
198
+ updateConfig(config: Partial<SuggestionConfig>): void;
199
+ private notifySuggestionListeners;
200
+ }
139
201
  //# sourceMappingURL=state-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"state-manager.d.ts","sourceRoot":"","sources":["../src/state-manager.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAEzD,MAAM,MAAM,aAAa,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;AAElD;;GAEG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAmB;IACnC,OAAO,CAAC,cAAc,CAAe;IACrC,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,gBAAgB,CAAoC;IAC5D,OAAO,CAAC,gBAAgB,CAAgC;IACxD,OAAO,CAAC,cAAc,CAAsC;gBAEhD,cAAc,GAAE,MAAY;IAIxC;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAWpC;;OAEG;IACH,WAAW,IAAI,SAAS,EAAE;IAI1B;;OAEG;IACH,aAAa,IAAI,IAAI;IAOrB;;OAEG;IACH,UAAU,CAAC,SAAS,EAAE,OAAO,GAAG,IAAI;IAKpC;;OAEG;IACH,cAAc,IAAI,OAAO;IAIzB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI;IAKpC;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,IAAI;IAIzB;;OAEG;IACH,cAAc,IAAI,SAAS,GAAG,SAAS;IAIvC;;OAEG;IACH,eAAe,IAAI,MAAM;IAIzB;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,GAAG,MAAM,IAAI;IAOlE;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,OAAO,CAAC,GAAG,MAAM,IAAI;IAO7D;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,MAAM,IAAI;IAOjE,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,sBAAsB;IAI9B,OAAO,CAAC,oBAAoB;CAG7B;AAED;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,OAAO,CAAY;IAC3B,OAAO,CAAC,cAAc,CAAmB;IACzC,OAAO,CAAC,gBAAgB,CAAkC;gBAE9C,cAAc,EAAE,SAAS;IAKrC;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI;IAMpC;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,IAAI;IAS7C;;OAEG;IACH,UAAU,IAAI,SAAS;IAIvB;;OAEG;IACH,UAAU,IAAI,SAAS,EAAE;IAIzB;;OAEG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG;IAI7B;;OAEG;IACH,eAAe,CAAC,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,GAAG,MAAM,IAAI;IAS/D;;OAEG;IACH,SAAS,IAAI,MAAM;IAInB,OAAO,CAAC,sBAAsB;CAG/B;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAmC;IAEjD;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAI5C;;OAEG;IACH,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAKzC;;OAEG;IACH,YAAY,IAAI,OAAO,EAAE;IAIzB;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,WAAW,CAAC,QAAQ,GAAE,MAAqB,GAAG,MAAM;IAwBpD;;OAEG;IACH,YAAY,IAAI,MAAM;CAGvB"}
1
+ {"version":3,"file":"state-manager.d.ts","sourceRoot":"","sources":["../src/state-manager.ts"],"names":[],"mappings":"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"}
@@ -245,4 +245,125 @@ export class ChartManager {
245
245
  return JSON.stringify(this.getAllCharts(), null, 2);
246
246
  }
247
247
  }
248
+ /**
249
+ * Suggestion Manager - manage suggestions for chat queries
250
+ */
251
+ export class SuggestionManager {
252
+ constructor(config) {
253
+ this.suggestions = [];
254
+ this.suggestionListeners = [];
255
+ this.config = config || {
256
+ enabled: true,
257
+ maxVisibleSuggestions: 5,
258
+ showOnFocus: true,
259
+ showOnClick: true,
260
+ };
261
+ // Initialize with default suggestions if provided
262
+ if (this.config.suggestions) {
263
+ this.suggestions = [...this.config.suggestions];
264
+ }
265
+ }
266
+ /**
267
+ * Get all suggestions
268
+ */
269
+ getSuggestions() {
270
+ return [...this.suggestions];
271
+ }
272
+ /**
273
+ * Filter suggestions based on query
274
+ */
275
+ filterSuggestions(query) {
276
+ if (!query.trim()) {
277
+ return this.suggestions.slice(0, this.config.maxVisibleSuggestions);
278
+ }
279
+ const lowerQuery = query.toLowerCase();
280
+ return this.suggestions
281
+ .filter((s) => s.text.toLowerCase().includes(lowerQuery) ||
282
+ s.category?.toLowerCase().includes(lowerQuery) ||
283
+ s.description?.toLowerCase().includes(lowerQuery))
284
+ .slice(0, this.config.maxVisibleSuggestions);
285
+ }
286
+ /**
287
+ * Get suggestions by category
288
+ */
289
+ getSuggestionsByCategory(category) {
290
+ return this.suggestions.filter((s) => s.category === category);
291
+ }
292
+ /**
293
+ * Add a suggestion
294
+ */
295
+ addSuggestion(suggestion) {
296
+ this.suggestions.push(suggestion);
297
+ this.notifySuggestionListeners();
298
+ }
299
+ /**
300
+ * Add multiple suggestions
301
+ */
302
+ addSuggestions(suggestions) {
303
+ this.suggestions.push(...suggestions);
304
+ this.notifySuggestionListeners();
305
+ }
306
+ /**
307
+ * Remove a suggestion by id
308
+ */
309
+ removeSuggestion(id) {
310
+ this.suggestions = this.suggestions.filter((s) => s.id !== id);
311
+ this.notifySuggestionListeners();
312
+ }
313
+ /**
314
+ * Clear all suggestions
315
+ */
316
+ clearSuggestions() {
317
+ this.suggestions = [];
318
+ this.notifySuggestionListeners();
319
+ }
320
+ /**
321
+ * Update suggestion
322
+ */
323
+ updateSuggestion(id, updates) {
324
+ const suggestion = this.suggestions.find((s) => s.id === id);
325
+ if (suggestion) {
326
+ Object.assign(suggestion, updates);
327
+ this.notifySuggestionListeners();
328
+ }
329
+ }
330
+ /**
331
+ * Check if suggestions are enabled
332
+ */
333
+ isEnabled() {
334
+ return this.config.enabled;
335
+ }
336
+ /**
337
+ * Toggle suggestions on/off
338
+ */
339
+ toggleEnabled() {
340
+ if (this.config) {
341
+ this.config.enabled = !this.config.enabled;
342
+ }
343
+ }
344
+ /**
345
+ * Subscribe to suggestion changes
346
+ */
347
+ onSuggestionsChange(listener) {
348
+ this.suggestionListeners.push(listener);
349
+ return () => {
350
+ this.suggestionListeners = this.suggestionListeners.filter((l) => l !== listener);
351
+ };
352
+ }
353
+ /**
354
+ * Get config
355
+ */
356
+ getConfig() {
357
+ return { ...this.config };
358
+ }
359
+ /**
360
+ * Update config
361
+ */
362
+ updateConfig(config) {
363
+ this.config = { ...this.config, ...config };
364
+ }
365
+ notifySuggestionListeners() {
366
+ this.suggestionListeners.forEach((listener) => listener(this.getSuggestions()));
367
+ }
368
+ }
248
369
  //# sourceMappingURL=state-manager.js.map