@keak/sdk 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +131 -0
  2. package/dist/Conversion.d.ts +13 -0
  3. package/dist/Conversion.d.ts.map +1 -0
  4. package/dist/KeakToolbarShadow.d.ts +21 -0
  5. package/dist/KeakToolbarShadow.d.ts.map +1 -0
  6. package/dist/components/ui/card.d.ts +9 -0
  7. package/dist/components/ui/card.d.ts.map +1 -0
  8. package/dist/components/ui/html-preview.d.ts +9 -0
  9. package/dist/components/ui/html-preview.d.ts.map +1 -0
  10. package/dist/components/ui/simple-tabs.d.ts +26 -0
  11. package/dist/components/ui/simple-tabs.d.ts.map +1 -0
  12. package/dist/components/ui/spinner.d.ts +6 -0
  13. package/dist/components/ui/spinner.d.ts.map +1 -0
  14. package/dist/components/ui/tabs.d.ts +13 -0
  15. package/dist/components/ui/tabs.d.ts.map +1 -0
  16. package/dist/components/ui/textarea.d.ts +6 -0
  17. package/dist/components/ui/textarea.d.ts.map +1 -0
  18. package/dist/index.cjs.js +17407 -0
  19. package/dist/index.cjs.js.map +1 -0
  20. package/dist/index.d.ts +101 -0
  21. package/dist/index.d.ts.map +1 -0
  22. package/dist/index.js +17395 -0
  23. package/dist/index.js.map +1 -0
  24. package/dist/runtime/sourceInjector.d.ts +2 -0
  25. package/dist/runtime/sourceInjector.d.ts.map +1 -0
  26. package/dist/scripts/sourcePathInjection.d.ts +11 -0
  27. package/dist/scripts/sourcePathInjection.d.ts.map +1 -0
  28. package/dist/services/index.d.ts +7 -0
  29. package/dist/services/index.d.ts.map +1 -0
  30. package/dist/services/telemetry/index.d.ts +20 -0
  31. package/dist/services/telemetry/index.d.ts.map +1 -0
  32. package/dist/services/telemetry/telemetryService.d.ts +66 -0
  33. package/dist/services/telemetry/telemetryService.d.ts.map +1 -0
  34. package/dist/services/telemetry/types.d.ts +64 -0
  35. package/dist/services/telemetry/types.d.ts.map +1 -0
  36. package/dist/toolbar/AIPromptPanel.d.ts +9 -0
  37. package/dist/toolbar/AIPromptPanel.d.ts.map +1 -0
  38. package/dist/toolbar/ElementSelector.d.ts +8 -0
  39. package/dist/toolbar/ElementSelector.d.ts.map +1 -0
  40. package/dist/toolbar/ExperimentPanel.d.ts +9 -0
  41. package/dist/toolbar/ExperimentPanel.d.ts.map +1 -0
  42. package/dist/toolbar/KeakToolbar.d.ts +10 -0
  43. package/dist/toolbar/KeakToolbar.d.ts.map +1 -0
  44. package/dist/toolbar/MetricsPanel.d.ts +7 -0
  45. package/dist/toolbar/MetricsPanel.d.ts.map +1 -0
  46. package/dist/toolbar/PageScanPanel.d.ts +15 -0
  47. package/dist/toolbar/PageScanPanel.d.ts.map +1 -0
  48. package/dist/toolbar/components/PrimaryButton.d.ts +12 -0
  49. package/dist/toolbar/components/PrimaryButton.d.ts.map +1 -0
  50. package/dist/toolbar/components/WarningButton.d.ts +12 -0
  51. package/dist/toolbar/components/WarningButton.d.ts.map +1 -0
  52. package/dist/toolbar/components/icons/index.d.ts +13 -0
  53. package/dist/toolbar/components/icons/index.d.ts.map +1 -0
  54. package/dist/toolbar/components/ui/Badge.d.ts +10 -0
  55. package/dist/toolbar/components/ui/Badge.d.ts.map +1 -0
  56. package/dist/toolbar/components/ui/Button.d.ts +12 -0
  57. package/dist/toolbar/components/ui/Button.d.ts.map +1 -0
  58. package/dist/toolbar/components/ui/Progress.d.ts +5 -0
  59. package/dist/toolbar/components/ui/Progress.d.ts.map +1 -0
  60. package/dist/toolbar/components/ui/Tabs.d.ts +44 -0
  61. package/dist/toolbar/components/ui/Tabs.d.ts.map +1 -0
  62. package/dist/toolbar/components/ui/dropdown-menu.d.ts +28 -0
  63. package/dist/toolbar/components/ui/dropdown-menu.d.ts.map +1 -0
  64. package/dist/toolbar/lib/utils.d.ts +3 -0
  65. package/dist/toolbar/lib/utils.d.ts.map +1 -0
  66. package/dist/toolbar/utils/fiberSource.d.ts +64 -0
  67. package/dist/toolbar/utils/fiberSource.d.ts.map +1 -0
  68. package/dist/toolbar/utils/keakCodeClient.d.ts +104 -0
  69. package/dist/toolbar/utils/keakCodeClient.d.ts.map +1 -0
  70. package/dist/toolbar.css +1 -0
  71. package/dist/toolbar.js +1257 -0
  72. package/dist/toolbar.js.map +1 -0
  73. package/dist/utils/generateElementId.d.ts +44 -0
  74. package/dist/utils/generateElementId.d.ts.map +1 -0
  75. package/dist/utils/injectDataId.d.ts +33 -0
  76. package/dist/utils/injectDataId.d.ts.map +1 -0
  77. package/package.json +152 -0
  78. package/src/cli/ai-helper.js +206 -0
  79. package/src/cli/code-transformer.js +354 -0
  80. package/src/cli/conversion-detector.js +716 -0
  81. package/src/cli/framework-config.js +477 -0
  82. package/src/cli/install.js +618 -0
  83. package/src/cli/keak-setup.js +43 -0
  84. package/src/cli/revert-conversions.js +264 -0
  85. package/src/cli/safe-transformer.js +456 -0
  86. package/src/cli/simple-transformer.js +339 -0
  87. package/src/plugins/README.md +131 -0
  88. package/src/plugins/babel-source-inject.cjs +170 -0
  89. package/src/plugins/next.cjs +145 -0
@@ -0,0 +1,2 @@
1
+ export declare function injectSourceLocations(): void;
2
+ //# sourceMappingURL=sourceInjector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourceInjector.d.ts","sourceRoot":"","sources":["../../src/runtime/sourceInjector.ts"],"names":[],"mappings":"AA2QA,wBAAgB,qBAAqB,SA2IpC"}
@@ -0,0 +1,11 @@
1
+ export type SourceInfo = {
2
+ element: string;
3
+ file: string;
4
+ line?: number;
5
+ column?: number;
6
+ content?: string;
7
+ context?: string;
8
+ };
9
+ export type SourceMapping = Record<string, SourceInfo>;
10
+ export declare function buildSourcePathInjection(mapping: SourceMapping): string;
11
+ //# sourceMappingURL=sourcePathInjection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sourcePathInjection.d.ts","sourceRoot":"","sources":["../../src/scripts/sourcePathInjection.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAAG;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AA4bvD,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAGvE"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Services Index
3
+ *
4
+ * Central export point for all Keak SDK services.
5
+ */
6
+ export * from './telemetry';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,aAAa,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Telemetry Service
3
+ *
4
+ * Handles all telemetry tracking for the Keak SDK, including:
5
+ * - Session management
6
+ * - Generation tracking (AI requests)
7
+ * - Variant management (AI outputs)
8
+ * - User interactions (previews, accepts, rejects)
9
+ */
10
+ import { TelemetryService } from "./telemetryService";
11
+ import { GenerationType, VariantOutcome } from "./types";
12
+ import type { InitialVariantData as _InitialVariantData } from "./types";
13
+ export declare const telemetry: TelemetryService & {
14
+ GenerationType: typeof GenerationType;
15
+ VariantOutcome: typeof VariantOutcome;
16
+ };
17
+ export declare namespace TelemetryTypes {
18
+ type InitialVariantData = _InitialVariantData;
19
+ }
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/telemetry/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,IAAI,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAKzE,eAAO,MAAM,SAAS;;;CAGpB,CAAC;AAMH,yBAAiB,cAAc,CAAC;IAC9B,KAAY,kBAAkB,GAAG,mBAAmB,CAAC;CACtD"}
@@ -0,0 +1,66 @@
1
+ import { ChatStartEvent, TelemetryConfig, UserContext } from './types';
2
+ import { GenerationStartEvent, GenerationCompleteEvent, VariantUpdates } from './types';
3
+ export declare class TelemetryService {
4
+ private supabase;
5
+ private enabled;
6
+ private currentSessionId;
7
+ /**
8
+ * Initialize the telemetry service
9
+ */
10
+ initialize(config: TelemetryConfig): void;
11
+ /**
12
+ * Check if telemetry is enabled and configured
13
+ */
14
+ private isReady;
15
+ /**
16
+ * Handle errors gracefully
17
+ */
18
+ private handleError;
19
+ /**
20
+ * Start a new session or return existing session ID
21
+ */
22
+ startSession(userContext?: UserContext): Promise<string | null>;
23
+ /**
24
+ * Get the current session ID
25
+ */
26
+ getCurrentSessionId(): string | null;
27
+ /**
28
+ * End the current session
29
+ */
30
+ endSession(): void;
31
+ /**
32
+ * Start a new chat or select existing chat
33
+ */
34
+ trackChatStart(event: ChatStartEvent): Promise<{
35
+ chatId: string | null;
36
+ }>;
37
+ /**
38
+ * Track the start of a generation (AI request)
39
+ * Creates chat if needed and generation record
40
+ */
41
+ trackGenerationStart(event: GenerationStartEvent): Promise<{
42
+ generationId: string | null;
43
+ }>;
44
+ /**
45
+ * Track the completion of a generation
46
+ * Updates generation with metrics, inserts variants, and updates context with complexity
47
+ */
48
+ trackGenerationComplete(event: GenerationCompleteEvent): Promise<{
49
+ variantId: string | null;
50
+ }>;
51
+ updateVariant(variantId: string, updates: VariantUpdates): Promise<void>;
52
+ trackVariantAccept(variantId: string): Promise<void>;
53
+ trackVariantRetry(variantId: string): Promise<void>;
54
+ trackVariantFollowup(variantId: string): Promise<void>;
55
+ trackVariantPreview(variantId: string, new_code: string): Promise<void>;
56
+ trackChatClear(chatId: string): Promise<void>;
57
+ /**
58
+ * Disable telemetry
59
+ */
60
+ disable(): void;
61
+ /**
62
+ * Enable telemetry
63
+ */
64
+ enable(): void;
65
+ }
66
+ //# sourceMappingURL=telemetryService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetryService.d.ts","sourceRoot":"","sources":["../../../src/services/telemetry/telemetryService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAkB,MAAM,SAAS,CAAC;AACvF,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAMxF,qBAAa,gBAAgB;IACzB,OAAO,CAAC,QAAQ,CAA+B;IAC/C,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,gBAAgB,CAAuB;IAE/C;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAoBzC;;OAEG;IACH,OAAO,CAAC,OAAO;IAOf;;OAEG;IACH,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACG,YAAY,CAAC,WAAW,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA2BrE;;OAEG;IACH,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAIpC;;OAEG;IACH,UAAU,IAAI,IAAI;IAQlB;;MAEE;IACI,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IAoC/E;;;OAGG;IACG,oBAAoB,CAAC,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC;QAC7D,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAC9B,CAAC;IAsBF;;;OAGG;IACG,uBAAuB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC;IA0C9F,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBxE,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIpD,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAInD,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAItD,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvE,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBnD;;OAEG;IACH,OAAO,IAAI,IAAI;IAIf;;OAEG;IACH,MAAM,IAAI,IAAI;CAKjB"}
@@ -0,0 +1,64 @@
1
+ export interface TelemetryConfig {
2
+ supabaseUrl: string;
3
+ supabaseKey: string;
4
+ enabled?: boolean;
5
+ }
6
+ export interface UserContext {
7
+ userId?: string;
8
+ metadata?: Record<string, any>;
9
+ }
10
+ export interface ChatStartEvent {
11
+ sessionId: string;
12
+ elementSelector: string;
13
+ originalCode: string;
14
+ }
15
+ export interface GenerationStartEvent {
16
+ chatId: string;
17
+ userPrompt: string;
18
+ generationType: GenerationType;
19
+ llmModel: string;
20
+ modelTier: string;
21
+ }
22
+ export interface GenerationCompleteEvent {
23
+ generationId: string;
24
+ durationMs: number;
25
+ inputTokens: number;
26
+ outputTokens: number;
27
+ variant: InitialVariantData;
28
+ complexity?: ComplexityScores;
29
+ }
30
+ export interface ComplexityScores {
31
+ overall: number;
32
+ structural: number;
33
+ content: number;
34
+ technical: number;
35
+ }
36
+ export interface InitialVariantData {
37
+ generationId: string;
38
+ chatId: string;
39
+ variantCode: string;
40
+ validationScore: number;
41
+ }
42
+ export declare enum GenerationType {
43
+ INITIAL = "INITIAL",
44
+ RETRY = "RETRY",
45
+ FOLLOWUP = "FOLLOWUP"
46
+ }
47
+ export declare enum VariantOutcome {
48
+ PENDING = "PENDING",
49
+ EDITED = "EDITED",
50
+ ACCEPTED = "ACCEPTED",
51
+ REPLACED = "REPLACED",// Retried
52
+ CLEARED = "CLEARED",
53
+ SKIPPED = "SKIPPED"
54
+ }
55
+ export interface VariantUpdates {
56
+ variant_code?: string;
57
+ validation_score?: number | null;
58
+ final_code?: string | null;
59
+ has_edits?: boolean;
60
+ outcome?: VariantOutcome;
61
+ preview_count?: number;
62
+ last_previewed_at?: string;
63
+ }
64
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/services/telemetry/types.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,eAAe;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CAExB;AAED,MAAM,WAAW,oBAAoB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,cAAc,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,uBAAuB;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,oBAAY,cAAc;IACtB,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,QAAQ,aAAa;CACxB;AACD,oBAAY,cAAc;IACtB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,QAAQ,aAAa,CAAE,UAAU;IACjC,OAAO,YAAY;IACnB,OAAO,YAAY;CACtB;AAED,MAAM,WAAW,cAAc;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface AIPromptPanelProps {
3
+ selectedElement: HTMLElement | null;
4
+ aiModel: 'keak' | 'copilot' | 'cursor';
5
+ onClose: () => void;
6
+ }
7
+ export declare const AIPromptPanel: React.FC<AIPromptPanelProps>;
8
+ export {};
9
+ //# sourceMappingURL=AIPromptPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AIPromptPanel.d.ts","sourceRoot":"","sources":["../../src/toolbar/AIPromptPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAU3D,UAAU,kBAAkB;IAC1B,eAAe,EAAE,WAAW,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;IACvC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAy7CtD,CAAC"}
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ interface ElementSelectorProps {
3
+ onElementSelected: (element: HTMLElement) => void;
4
+ onCancel: () => void;
5
+ }
6
+ export declare const ElementSelector: React.FC<ElementSelectorProps>;
7
+ export {};
8
+ //# sourceMappingURL=ElementSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElementSelector.d.ts","sourceRoot":"","sources":["../../src/toolbar/ElementSelector.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAG3D,UAAU,oBAAoB;IAC5B,iBAAiB,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAClD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CA8V1D,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from 'react';
2
+ interface ExperimentPanelProps {
3
+ selectedElement: HTMLElement | null;
4
+ onClose: () => void;
5
+ onSelectElement: () => void;
6
+ }
7
+ export declare const ExperimentPanel: React.FC<ExperimentPanelProps>;
8
+ export {};
9
+ //# sourceMappingURL=ExperimentPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExperimentPanel.d.ts","sourceRoot":"","sources":["../../src/toolbar/ExperimentPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAKnD,UAAU,oBAAoB;IAC5B,eAAe,EAAE,WAAW,GAAG,IAAI,CAAC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,MAAM,IAAI,CAAC;CAC7B;AAUD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAuP1D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import '../styles.css';
3
+ import './styles/toolbar.css';
4
+ interface KeakToolbarProps {
5
+ position?: 'top-center' | 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
6
+ theme?: 'light' | 'dark' | 'auto';
7
+ }
8
+ export declare const KeakToolbar: React.FC<KeakToolbarProps>;
9
+ export {};
10
+ //# sourceMappingURL=KeakToolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeakToolbar.d.ts","sourceRoot":"","sources":["../../src/toolbar/KeakToolbar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAMxE,OAAO,eAAe,CAAC;AACvB,OAAO,sBAAsB,CAAC;AAE9B,UAAU,gBAAgB;IACxB,QAAQ,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,aAAa,CAAC;IACpF,KAAK,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAkYlD,CAAC"}
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ interface MetricsPanelProps {
3
+ onClose: () => void;
4
+ }
5
+ export declare const MetricsPanel: React.FC<MetricsPanelProps>;
6
+ export {};
7
+ //# sourceMappingURL=MetricsPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricsPanel.d.ts","sourceRoot":"","sources":["../../src/toolbar/MetricsPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAC;AAMnD,UAAU,iBAAiB;IACzB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AA0BD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CA4XpD,CAAC"}
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ interface PageScanPanelProps {
3
+ scannedElements: Array<{
4
+ element: HTMLElement;
5
+ suggestions: string[];
6
+ priority: number;
7
+ }>;
8
+ isScanning: boolean;
9
+ scanProgress?: number;
10
+ onNavigateToElement: (element: HTMLElement) => void;
11
+ onClose: () => void;
12
+ }
13
+ export declare const PageScanPanel: React.FC<PageScanPanelProps>;
14
+ export {};
15
+ //# sourceMappingURL=PageScanPanel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PageScanPanel.d.ts","sourceRoot":"","sources":["../../src/toolbar/PageScanPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,UAAU,kBAAkB;IAC1B,eAAe,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,WAAW,CAAC;QAAC,WAAW,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;IACxF,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,EAAE,CAAC,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IACpD,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA0CtD,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ interface PrimaryButtonProps {
3
+ onClick?: () => void;
4
+ children: React.ReactNode;
5
+ disabled?: boolean;
6
+ icon?: React.ReactNode;
7
+ fullWidth?: boolean;
8
+ type?: 'button' | 'submit' | 'reset';
9
+ }
10
+ export declare const PrimaryButton: React.FC<PrimaryButtonProps>;
11
+ export {};
12
+ //# sourceMappingURL=PrimaryButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PrimaryButton.d.ts","sourceRoot":"","sources":["../../../src/toolbar/components/PrimaryButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,kBAAkB;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;CACtC;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAuDtD,CAAC"}
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ interface WarningButtonProps {
3
+ onClick?: () => void;
4
+ children: React.ReactNode;
5
+ disabled?: boolean;
6
+ icon?: React.ReactNode;
7
+ fullWidth?: boolean;
8
+ type?: 'button' | 'submit' | 'reset';
9
+ }
10
+ export declare const WarningButton: React.FC<WarningButtonProps>;
11
+ export {};
12
+ //# sourceMappingURL=WarningButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WarningButton.d.ts","sourceRoot":"","sources":["../../../src/toolbar/components/WarningButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,UAAU,kBAAkB;IAC1B,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;CACtC;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAkDtD,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare const KeakIcon: ({ size }: {
2
+ size?: number;
3
+ }) => import("react/jsx-runtime").JSX.Element;
4
+ export declare const CopilotIcon: ({ size }: {
5
+ size?: number;
6
+ }) => import("react/jsx-runtime").JSX.Element;
7
+ export declare const CursorIcon: ({ size }: {
8
+ size?: number;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ export declare const VSCodeIcon: ({ size }: {
11
+ size?: number;
12
+ }) => import("react/jsx-runtime").JSX.Element;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/toolbar/components/icons/index.tsx"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ,GAAI,UAAe;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,4CAUxD,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,UAAe;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,4CAU3D,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,UAAe;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,4CAsB1D,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,UAAe;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,4CAI1D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import * as React from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ declare const badgeVariants: (props?: ({
4
+ variant?: "default" | "destructive" | "outline" | "secondary" | null | undefined;
5
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
6
+ export interface BadgeProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof badgeVariants> {
7
+ }
8
+ declare function Badge({ className, variant, ...props }: BadgeProps): import("react/jsx-runtime").JSX.Element;
9
+ export { Badge, badgeVariants };
10
+ //# sourceMappingURL=Badge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Badge.d.ts","sourceRoot":"","sources":["../../../../src/toolbar/components/ui/Badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,aAAa;;8EAkBlB,CAAA;AAED,MAAM,WAAW,UACf,SAAQ,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAC1C,YAAY,CAAC,OAAO,aAAa,CAAC;CAAG;AAEzC,iBAAS,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,2CAI1D;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAA"}
@@ -0,0 +1,12 @@
1
+ import * as React from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ declare const buttonVariants: (props?: ({
4
+ variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
5
+ size?: "default" | "sm" | "lg" | "icon" | null | undefined;
6
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
7
+ export interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, VariantProps<typeof buttonVariants> {
8
+ asChild?: boolean;
9
+ }
10
+ declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
11
+ export { Button, buttonVariants };
12
+ //# sourceMappingURL=Button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/toolbar/components/ui/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,cAAc;;;8EA2BnB,CAAA;AAED,MAAM,WAAW,WACf,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EACnD,YAAY,CAAC,OAAO,cAAc,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,QAAA,MAAM,MAAM,uFAWX,CAAA;AAGD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
@@ -0,0 +1,5 @@
1
+ import * as React from "react";
2
+ import * as ProgressPrimitive from "@radix-ui/react-progress";
3
+ declare function Progress({ className, value, ...props }: React.ComponentProps<typeof ProgressPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
4
+ export { Progress };
5
+ //# sourceMappingURL=Progress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Progress.d.ts","sourceRoot":"","sources":["../../../../src/toolbar/components/ui/Progress.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,iBAAiB,MAAM,0BAA0B,CAAA;AAI7D,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,iBAAiB,CAAC,IAAI,CAAC,2CAiBrD;AAED,OAAO,EAAE,QAAQ,EAAE,CAAA"}
@@ -0,0 +1,44 @@
1
+ import * as React from 'react';
2
+ import { type HTMLMotionProps } from 'framer-motion';
3
+ type TabsContextType<T extends string> = {
4
+ activeValue: T;
5
+ handleValueChange: (value: T) => void;
6
+ registerTrigger: (value: T, node: HTMLElement | null) => void;
7
+ };
8
+ declare function useTabs<T extends string = string>(): TabsContextType<T>;
9
+ type BaseTabsProps = React.ComponentProps<'div'> & {
10
+ children: React.ReactNode;
11
+ };
12
+ type UnControlledTabsProps<T extends string = string> = BaseTabsProps & {
13
+ defaultValue?: T;
14
+ value?: never;
15
+ onValueChange?: never;
16
+ };
17
+ type ControlledTabsProps<T extends string = string> = BaseTabsProps & {
18
+ value: T;
19
+ onValueChange?: (value: T) => void;
20
+ defaultValue?: never;
21
+ };
22
+ type TabsProps<T extends string = string> = UnControlledTabsProps<T> | ControlledTabsProps<T>;
23
+ declare function Tabs<T extends string = string>({ defaultValue, value, onValueChange, children, className, ...props }: TabsProps<T>): import("react/jsx-runtime").JSX.Element;
24
+ type TabsListProps = React.ComponentProps<'div'> & {
25
+ children: React.ReactNode;
26
+ activeClassName?: string;
27
+ };
28
+ declare function TabsList({ children, className, activeClassName, ...props }: TabsListProps): import("react/jsx-runtime").JSX.Element;
29
+ type TabsTriggerProps = HTMLMotionProps<'button'> & {
30
+ value: string;
31
+ children: React.ReactNode;
32
+ };
33
+ declare function TabsTrigger({ ref, value, children, className, ...props }: TabsTriggerProps): import("react/jsx-runtime").JSX.Element;
34
+ type TabsContentsProps = React.ComponentProps<'div'> & {
35
+ children: React.ReactNode;
36
+ };
37
+ declare function TabsContents({ children, className, ...props }: TabsContentsProps): import("react/jsx-runtime").JSX.Element;
38
+ type TabsContentProps = HTMLMotionProps<'div'> & {
39
+ value: string;
40
+ children: React.ReactNode;
41
+ };
42
+ declare function TabsContent({ children, value, className, ...props }: TabsContentProps): import("react/jsx-runtime").JSX.Element;
43
+ export { Tabs, TabsList, TabsTrigger, TabsContents, TabsContent, useTabs, type TabsContextType, type TabsProps, type TabsListProps, type TabsTriggerProps, type TabsContentsProps, type TabsContentProps, };
44
+ //# sourceMappingURL=Tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tabs.d.ts","sourceRoot":"","sources":["../../../../src/toolbar/components/ui/Tabs.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import * as React from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ declare const DropdownMenu: React.FC<DropdownMenuPrimitive.DropdownMenuProps>;
4
+ declare const DropdownMenuTrigger: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuTriggerProps & React.RefAttributes<HTMLButtonElement>>;
5
+ declare const DropdownMenuGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuGroupProps & React.RefAttributes<HTMLDivElement>>;
6
+ declare const DropdownMenuPortal: React.FC<DropdownMenuPrimitive.DropdownMenuPortalProps>;
7
+ declare const DropdownMenuSub: React.FC<DropdownMenuPrimitive.DropdownMenuSubProps>;
8
+ declare const DropdownMenuRadioGroup: React.ForwardRefExoticComponent<DropdownMenuPrimitive.DropdownMenuRadioGroupProps & React.RefAttributes<HTMLDivElement>>;
9
+ declare const DropdownMenuSubTrigger: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubTriggerProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
10
+ inset?: boolean;
11
+ } & React.RefAttributes<HTMLDivElement>>;
12
+ declare const DropdownMenuSubContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSubContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
13
+ declare const DropdownMenuContent: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
14
+ declare const DropdownMenuItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
15
+ inset?: boolean;
16
+ } & React.RefAttributes<HTMLDivElement>>;
17
+ declare const DropdownMenuCheckboxItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuCheckboxItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
18
+ declare const DropdownMenuRadioItem: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuRadioItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
19
+ declare const DropdownMenuLabel: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuLabelProps & React.RefAttributes<HTMLDivElement>, "ref"> & {
20
+ inset?: boolean;
21
+ } & React.RefAttributes<HTMLDivElement>>;
22
+ declare const DropdownMenuSeparator: React.ForwardRefExoticComponent<Omit<DropdownMenuPrimitive.DropdownMenuSeparatorProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
23
+ declare const DropdownMenuShortcut: {
24
+ ({ className, ...props }: React.HTMLAttributes<HTMLSpanElement>): import("react/jsx-runtime").JSX.Element;
25
+ displayName: string;
26
+ };
27
+ export { DropdownMenu, DropdownMenuTrigger, DropdownMenuContent, DropdownMenuItem, DropdownMenuCheckboxItem, DropdownMenuRadioItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuGroup, DropdownMenuPortal, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuRadioGroup, };
28
+ //# sourceMappingURL=dropdown-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdown-menu.d.ts","sourceRoot":"","sources":["../../../../src/toolbar/components/ui/dropdown-menu.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,qBAAqB,MAAM,+BAA+B,CAAA;AAKtE,QAAA,MAAM,YAAY,mDAA6B,CAAA;AAE/C,QAAA,MAAM,mBAAmB,0HAAgC,CAAA;AAEzD,QAAA,MAAM,iBAAiB,qHAA8B,CAAA;AAErD,QAAA,MAAM,kBAAkB,yDAA+B,CAAA;AAEvD,QAAA,MAAM,eAAe,sDAA4B,CAAA;AAEjD,QAAA,MAAM,sBAAsB,0HAAmC,CAAA;AAE/D,QAAA,MAAM,sBAAsB;YAGhB,OAAO;wCAejB,CAAA;AAIF,QAAA,MAAM,sBAAsB,6KAY1B,CAAA;AAIF,QAAA,MAAM,mBAAmB,0KAevB,CAAA;AAGF,QAAA,MAAM,gBAAgB;YAGV,OAAO;wCAYjB,CAAA;AAGF,QAAA,MAAM,wBAAwB,+KAoB5B,CAAA;AAIF,QAAA,MAAM,qBAAqB,4KAmBzB,CAAA;AAGF,QAAA,MAAM,iBAAiB;YAGX,OAAO;wCAYjB,CAAA;AAGF,QAAA,MAAM,qBAAqB,4KASzB,CAAA;AAGF,QAAA,MAAM,oBAAoB;8BAGvB,KAAK,CAAC,cAAc,CAAC,eAAe,CAAC;;CAOvC,CAAA;AAGD,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,EACxB,qBAAqB,EACrB,iBAAiB,EACjB,qBAAqB,EACrB,oBAAoB,EACpB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,GACvB,CAAA"}
@@ -0,0 +1,3 @@
1
+ import { type ClassValue } from "clsx";
2
+ export declare function cn(...inputs: ClassValue[]): string;
3
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/toolbar/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAA;AAG5C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * React Fiber Source Extraction Utilities
3
+ *
4
+ * These utilities extract source location information from React's internal Fiber tree.
5
+ * React adds debug source information in development mode that includes the original
6
+ * file path, line number, and column number where a component was defined.
7
+ */
8
+ export interface FiberSourceInfo {
9
+ fileName: string;
10
+ lineNumber: number;
11
+ columnNumber: number;
12
+ componentName?: string;
13
+ }
14
+ export interface ReactFiber {
15
+ _debugSource?: {
16
+ fileName: string;
17
+ lineNumber: number;
18
+ columnNumber?: number;
19
+ };
20
+ __source?: {
21
+ fileName: string;
22
+ lineNumber: number;
23
+ columnNumber?: number;
24
+ };
25
+ return?: ReactFiber;
26
+ _debugOwner?: ReactFiber;
27
+ child?: ReactFiber;
28
+ sibling?: ReactFiber;
29
+ type?: any;
30
+ elementType?: any;
31
+ stateNode?: any;
32
+ }
33
+ /**
34
+ * Extract React Fiber from a DOM element
35
+ */
36
+ export declare function getReactFiberFromElement(element: HTMLElement): ReactFiber | null;
37
+ /**
38
+ * Extract source information from React Fiber
39
+ *
40
+ * This function traverses the Fiber tree bidirectionally to find source location information.
41
+ * It prioritizes:
42
+ * 1. Source from the current fiber (lowest depth = most specific)
43
+ * 2. Source from parent fibers (going up the tree)
44
+ * 3. Source from child/sibling fibers (going down/across the tree)
45
+ * Skips layout files entirely - only returns actual component sources
46
+ */
47
+ export declare function extractSourceFromFiber(fiber: ReactFiber | null): FiberSourceInfo | null;
48
+ /**
49
+ * Main function to get source information from a DOM element
50
+ */
51
+ export declare function getReactFiberSource(element: HTMLElement): FiberSourceInfo | null;
52
+ /**
53
+ * Get parent element info for fallback searching
54
+ */
55
+ export declare function getParentInfo(element: HTMLElement): {
56
+ tagName: string;
57
+ className: string;
58
+ childIndex: number;
59
+ } | null;
60
+ /**
61
+ * Determine confidence level of source mapping
62
+ */
63
+ export declare function getSourceConfidence(sourceInfo: FiberSourceInfo | null): 'high' | 'medium' | 'low';
64
+ //# sourceMappingURL=fiberSource.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fiberSource.d.ts","sourceRoot":"","sources":["../../../src/toolbar/utils/fiberSource.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,YAAY,CAAC,EAAE;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,UAAU,GAAG,IAAI,CAehF;AAyGD;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,eAAe,GAAG,IAAI,CA8GvF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,eAAe,GAAG,IAAI,CAyBhF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,WAAW,GAAG;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAcP;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,eAAe,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAmBjG"}