@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 @@
1
+ {"version":3,"file":"toolbar.js","sources":["../src/toolbar/utils/fiberSource.ts","../src/toolbar/ElementSelector.tsx","../node_modules/lucide-react/dist/esm/shared/src/utils.js","../node_modules/lucide-react/dist/esm/defaultAttributes.js","../node_modules/lucide-react/dist/esm/Icon.js","../node_modules/lucide-react/dist/esm/createLucideIcon.js","../node_modules/lucide-react/dist/esm/icons/chevron-right.js","../node_modules/lucide-react/dist/esm/icons/grip-vertical.js","../node_modules/lucide-react/dist/esm/icons/zoom-in.js","../src/toolbar/utils/keakCodeClient.ts","../src/toolbar/components/icons/index.tsx","../node_modules/style-inject/dist/style-inject.es.js","../src/toolbar/KeakToolbar.tsx"],"sourcesContent":[null,null,"/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nconst toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, \"$1-$2\").toLowerCase();\nconst toCamelCase = (string) => string.replace(\n /^([A-Z])|[\\s-_]+(\\w)/g,\n (match, p1, p2) => p2 ? p2.toUpperCase() : p1.toLowerCase()\n);\nconst toPascalCase = (string) => {\n const camelCase = toCamelCase(string);\n return camelCase.charAt(0).toUpperCase() + camelCase.slice(1);\n};\nconst mergeClasses = (...classes) => classes.filter((className, index, array) => {\n return Boolean(className) && className.trim() !== \"\" && array.indexOf(className) === index;\n}).join(\" \").trim();\nconst hasA11yProp = (props) => {\n for (const prop in props) {\n if (prop.startsWith(\"aria-\") || prop === \"role\" || prop === \"title\") {\n return true;\n }\n }\n};\n\nexport { hasA11yProp, mergeClasses, toCamelCase, toKebabCase, toPascalCase };\n//# sourceMappingURL=utils.js.map\n","/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nvar defaultAttributes = {\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 24,\n height: 24,\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n};\n\nexport { defaultAttributes as default };\n//# sourceMappingURL=defaultAttributes.js.map\n","/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport defaultAttributes from './defaultAttributes.js';\nimport { mergeClasses, hasA11yProp } from './shared/src/utils.js';\n\nconst Icon = forwardRef(\n ({\n color = \"currentColor\",\n size = 24,\n strokeWidth = 2,\n absoluteStrokeWidth,\n className = \"\",\n children,\n iconNode,\n ...rest\n }, ref) => createElement(\n \"svg\",\n {\n ref,\n ...defaultAttributes,\n width: size,\n height: size,\n stroke: color,\n strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,\n className: mergeClasses(\"lucide\", className),\n ...!children && !hasA11yProp(rest) && { \"aria-hidden\": \"true\" },\n ...rest\n },\n [\n ...iconNode.map(([tag, attrs]) => createElement(tag, attrs)),\n ...Array.isArray(children) ? children : [children]\n ]\n )\n);\n\nexport { Icon as default };\n//# sourceMappingURL=Icon.js.map\n","/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport { forwardRef, createElement } from 'react';\nimport { mergeClasses, toKebabCase, toPascalCase } from './shared/src/utils.js';\nimport Icon from './Icon.js';\n\nconst createLucideIcon = (iconName, iconNode) => {\n const Component = forwardRef(\n ({ className, ...props }, ref) => createElement(Icon, {\n ref,\n iconNode,\n className: mergeClasses(\n `lucide-${toKebabCase(toPascalCase(iconName))}`,\n `lucide-${iconName}`,\n className\n ),\n ...props\n })\n );\n Component.displayName = toPascalCase(iconName);\n return Component;\n};\n\nexport { createLucideIcon as default };\n//# sourceMappingURL=createLucideIcon.js.map\n","/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [[\"path\", { d: \"m9 18 6-6-6-6\", key: \"mthhwq\" }]];\nconst ChevronRight = createLucideIcon(\"chevron-right\", __iconNode);\n\nexport { __iconNode, ChevronRight as default };\n//# sourceMappingURL=chevron-right.js.map\n","/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"9\", cy: \"12\", r: \"1\", key: \"1vctgf\" }],\n [\"circle\", { cx: \"9\", cy: \"5\", r: \"1\", key: \"hp0tcf\" }],\n [\"circle\", { cx: \"9\", cy: \"19\", r: \"1\", key: \"fkjjf6\" }],\n [\"circle\", { cx: \"15\", cy: \"12\", r: \"1\", key: \"1tmaij\" }],\n [\"circle\", { cx: \"15\", cy: \"5\", r: \"1\", key: \"19l28e\" }],\n [\"circle\", { cx: \"15\", cy: \"19\", r: \"1\", key: \"f4zoj3\" }]\n];\nconst GripVertical = createLucideIcon(\"grip-vertical\", __iconNode);\n\nexport { __iconNode, GripVertical as default };\n//# sourceMappingURL=grip-vertical.js.map\n","/**\n * @license lucide-react v0.542.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"11\", cy: \"11\", r: \"8\", key: \"4ej97u\" }],\n [\"line\", { x1: \"21\", x2: \"16.65\", y1: \"21\", y2: \"16.65\", key: \"13gj7c\" }],\n [\"line\", { x1: \"11\", x2: \"11\", y1: \"8\", y2: \"14\", key: \"1vmskp\" }],\n [\"line\", { x1: \"8\", x2: \"14\", y1: \"11\", y2: \"11\", key: \"durymu\" }]\n];\nconst ZoomIn = createLucideIcon(\"zoom-in\", __iconNode);\n\nexport { __iconNode, ZoomIn as default };\n//# sourceMappingURL=zoom-in.js.map\n",null,null,"function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n",null],"names":["_jsxs","_jsx","__iconNode","_Fragment"],"mappings":"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","x_google_ignoreList":[2,3,4,5,6,7,8,11]}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Generates unique, readable data-keak-id attributes for elements
3
+ * Used for stable element tracking and matching
4
+ */
5
+ export interface ElementIdOptions {
6
+ useExistingId?: boolean;
7
+ useText?: boolean;
8
+ useClasses?: boolean;
9
+ prefix?: string;
10
+ }
11
+ /**
12
+ * Generate a unique, readable ID for an element
13
+ *
14
+ * Priority:
15
+ * 1. Existing element.id
16
+ * 2. Text content (for buttons, links, etc.)
17
+ * 3. First meaningful className
18
+ * 4. Tag name + random hash
19
+ *
20
+ * Examples:
21
+ * - Button with text "Get Started" → "get-started-button"
22
+ * - Link with text "Learn More" → "learn-more-link"
23
+ * - Div with class "hero-section" → "div-hero-section"
24
+ * - Empty div → "div-a3f9k2"
25
+ */
26
+ export declare function generateElementId(element: HTMLElement, options?: ElementIdOptions): string;
27
+ /**
28
+ * Check if an element already has a data-keak-id
29
+ */
30
+ export declare function hasKeakId(element: HTMLElement): boolean;
31
+ /**
32
+ * Get existing data-keak-id from element
33
+ */
34
+ export declare function getKeakId(element: HTMLElement): string | null;
35
+ /**
36
+ * Generate ID from element info (for use in IDE without access to actual element)
37
+ */
38
+ export declare function generateIdFromElementInfo(elementInfo: {
39
+ tagName: string;
40
+ textContent?: string;
41
+ className?: string;
42
+ id?: string;
43
+ }): string;
44
+ //# sourceMappingURL=generateElementId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateElementId.d.ts","sourceRoot":"","sources":["../../src/utils/generateElementId.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAyBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,WAAW,EACpB,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAiER;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAEvD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAE7D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb,GAAG,MAAM,CAgDT"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Code transformer to inject data-keak-id attributes into JSX source code
3
+ */
4
+ export interface InjectDataIdOptions {
5
+ keakId: string;
6
+ searchText?: string;
7
+ className?: string;
8
+ }
9
+ /**
10
+ * Find the JSX opening tag in source code and inject data-keak-id
11
+ *
12
+ * Handles various JSX formats:
13
+ * - <button>...</button>
14
+ * - <button className="...">...</button>
15
+ * - <button
16
+ * className="..."
17
+ * >...</button>
18
+ */
19
+ export declare function injectDataIdIntoSource(sourceCode: string, options: InjectDataIdOptions): {
20
+ success: boolean;
21
+ code?: string;
22
+ error?: string;
23
+ line?: number;
24
+ };
25
+ /**
26
+ * Search for element by data-keak-id in source code
27
+ */
28
+ export declare function findElementByKeakId(sourceCode: string, keakId: string): {
29
+ found: boolean;
30
+ line?: number;
31
+ column?: number;
32
+ };
33
+ //# sourceMappingURL=injectDataId.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectDataId.d.ts","sourceRoot":"","sources":["../../src/utils/injectDataId.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CA4HpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAkBpD"}
package/package.json ADDED
@@ -0,0 +1,152 @@
1
+ {
2
+ "name": "@keak/sdk",
3
+ "version": "1.0.1",
4
+ "description": "Production-ready A/B testing and experimentation SDK for React applications with visual editing, source mapping, and real-time variant testing",
5
+ "author": "Keak Team",
6
+ "homepage": "https://www.keak.com/",
7
+ "bugs": {
8
+ "url": "https://platform.keak.com/docs"
9
+ },
10
+ "license": "MIT",
11
+ "main": "dist/index.cjs.js",
12
+ "module": "dist/index.js",
13
+ "types": "dist/index.d.ts",
14
+ "type": "module",
15
+ "sideEffects": [
16
+ "*.css"
17
+ ],
18
+ "exports": {
19
+ ".": {
20
+ "types": "./dist/index.d.ts",
21
+ "import": "./dist/index.js",
22
+ "require": "./dist/index.cjs.js",
23
+ "default": "./dist/index.js"
24
+ },
25
+ "./toolbar": {
26
+ "types": "./dist/toolbar/KeakToolbar.d.ts",
27
+ "import": "./dist/toolbar.js",
28
+ "default": "./dist/toolbar.js"
29
+ },
30
+ "./toolbar/KeakToolbarNew": {
31
+ "types": "./dist/toolbar/KeakToolbarNew.d.ts",
32
+ "import": "./dist/toolbar/KeakToolbarNew.js",
33
+ "default": "./dist/toolbar/KeakToolbarNew.js"
34
+ },
35
+ "./toolbar.css": "./dist/toolbar.css",
36
+ "./keak-toolbar.css": "./dist/keak-toolbar.css",
37
+ "./plugins/next": "./src/plugins/next.cjs",
38
+ "./plugins/babel-source-inject": "./src/plugins/babel-source-inject.cjs",
39
+ "./package.json": "./package.json"
40
+ },
41
+ "files": [
42
+ "dist",
43
+ "src/cli",
44
+ "src/plugins",
45
+ "README.md",
46
+ "LICENSE",
47
+ "CHANGELOG.md"
48
+ ],
49
+ "bin": {
50
+ "keak-setup": "src/cli/keak-setup.js"
51
+ },
52
+ "scripts": {
53
+ "build": "npm run build:js && npm run build:css",
54
+ "build:js": "rollup -c",
55
+ "build:css": "tailwindcss -c tailwind.config.ts -i ./src/toolbar/styles/toolbar.css -o ./dist/toolbar.css --minify",
56
+ "build:fast": "npm run build:js:fast && npm run build:css",
57
+ "build:js:fast": "rollup -c rollup.config.dev.js",
58
+ "dev": "concurrently \"npm run watch:js\" \"npm run watch:css\"",
59
+ "dev:js": "rollup -c --watch",
60
+ "dev:css": "tailwindcss -c tailwind.config.ts -i ./src/toolbar/styles/toolbar.css -o ./dist/toolbar.css --watch",
61
+ "dev:watch": "concurrently \"npm run watch:js\" \"npm run watch:css\" \"npm run watch:publish\"",
62
+ "watch:js": "rollup -c --watch",
63
+ "watch:css": "tailwindcss -c tailwind.config.ts -i ./src/toolbar/styles/toolbar.css -o ./dist/toolbar.css --watch",
64
+ "watch:publish": "chokidar 'dist/**/*' -c 'yalc push --replace --changed' --initial",
65
+ "prepublishOnly": "npm run build",
66
+ "postinstall": "node src/cli/install.js",
67
+ "keak-setup": "node src/cli/install.js",
68
+ "test": "echo \"Error: no test specified\" && exit 1"
69
+ },
70
+ "peerDependencies": {
71
+ "react": ">=16.8.0",
72
+ "react-dom": ">=16.8.0"
73
+ },
74
+ "peerDependenciesMeta": {
75
+ "react": {
76
+ "optional": false
77
+ },
78
+ "react-dom": {
79
+ "optional": false
80
+ }
81
+ },
82
+ "dependencies": {
83
+ "@jsx-tool/jsx-tool": "^0.0.21",
84
+ "@radix-ui/react-dropdown-menu": "^2.1.16",
85
+ "@radix-ui/react-progress": "^1.1.7",
86
+ "@radix-ui/react-slot": "^1.2.3",
87
+ "@supabase/supabase-js": "^2.86.0",
88
+ "class-variance-authority": "^0.7.1",
89
+ "clsx": "^2.1.1",
90
+ "framer-motion": "^12.23.12",
91
+ "lucide-react": "^0.542.0",
92
+ "tailwind-merge": "^3.3.1",
93
+ "tw-animate-css": "^1.3.8"
94
+ },
95
+ "devDependencies": {
96
+ "@rollup/plugin-commonjs": "^28.0.6",
97
+ "@rollup/plugin-node-resolve": "^16.0.1",
98
+ "@rollup/plugin-terser": "^0.4.4",
99
+ "@rollup/plugin-typescript": "^12.1.4",
100
+ "@types/node": "^24.3.0",
101
+ "@types/react": "^18.0.0",
102
+ "@types/react-dom": "^18.3.7",
103
+ "autoprefixer": "^10.4.0",
104
+ "chokidar-cli": "^3.0.0",
105
+ "concurrently": "^8.2.2",
106
+ "postcss": "^8.4.0",
107
+ "react": "^18.0.0",
108
+ "react-dom": "^18.0.0",
109
+ "rollup": "^4.50.0",
110
+ "rollup-plugin-peer-deps-external": "^2.2.4",
111
+ "rollup-plugin-postcss": "^4.0.2",
112
+ "rollup-plugin-preserve-directives": "^0.4.0",
113
+ "tailwindcss": "^3.4.0",
114
+ "typescript": "^5.0.0",
115
+ "vite": "^5.0.0"
116
+ },
117
+ "keywords": [
118
+ "react",
119
+ "ab-testing",
120
+ "a/b-testing",
121
+ "split-testing",
122
+ "experiments",
123
+ "experimentation",
124
+ "variants",
125
+ "testing",
126
+ "optimization",
127
+ "conversion",
128
+ "cro",
129
+ "conversion-rate-optimization",
130
+ "feature-flags",
131
+ "feature-testing",
132
+ "nextjs",
133
+ "next.js",
134
+ "vite",
135
+ "create-react-app",
136
+ "visual-editing",
137
+ "source-mapping",
138
+ "jsx-tool",
139
+ "babel-plugin",
140
+ "toolbar",
141
+ "ui-testing",
142
+ "component-testing"
143
+ ],
144
+ "engines": {
145
+ "node": ">=16.0.0",
146
+ "npm": ">=7.0.0"
147
+ },
148
+ "publishConfig": {
149
+ "access": "public",
150
+ "registry": "https://registry.npmjs.org/"
151
+ }
152
+ }
@@ -0,0 +1,206 @@
1
+ import https from 'https';
2
+
3
+ class AIHelper {
4
+ constructor() {
5
+ // Use Keak's AI service endpoint (no API key needed)
6
+ this.apiEndpoint = 'https://api.keak.dev/v1/install-helper';
7
+ }
8
+
9
+ async getInstallationHelp(fileContent, filePath, framework) {
10
+ return new Promise((resolve, reject) => {
11
+ const payload = JSON.stringify({
12
+ content: fileContent,
13
+ fileName: filePath.split('/').pop(),
14
+ framework: framework,
15
+ task: 'add_keak_provider'
16
+ });
17
+
18
+ const options = {
19
+ hostname: 'api.keak.dev',
20
+ port: 443,
21
+ path: '/v1/install-helper',
22
+ method: 'POST',
23
+ headers: {
24
+ 'Content-Type': 'application/json',
25
+ 'Content-Length': payload.length,
26
+ 'User-Agent': 'keak-sdk-installer'
27
+ }
28
+ };
29
+
30
+ const req = https.request(options, (res) => {
31
+ let data = '';
32
+
33
+ res.on('data', (chunk) => {
34
+ data += chunk;
35
+ });
36
+
37
+ res.on('end', () => {
38
+ try {
39
+ const response = JSON.parse(data);
40
+ if (response.success && response.modifiedCode) {
41
+ resolve(response.modifiedCode);
42
+ } else {
43
+ reject(new Error(response.error || 'AI assistance failed'));
44
+ }
45
+ } catch (error) {
46
+ reject(error);
47
+ }
48
+ });
49
+ });
50
+
51
+ req.on('error', (error) => {
52
+ reject(error);
53
+ });
54
+
55
+ req.write(payload);
56
+ req.end();
57
+ });
58
+ }
59
+
60
+ async analyzeProjectStructure(files) {
61
+ // Analyze project structure to find the best integration point
62
+ const prompt = {
63
+ files: files.map(f =({
64
+ path: f.path,
65
+ preview: f.content.substring(0, 500)
66
+ })),
67
+ task: 'find_integration_point'
68
+ };
69
+
70
+ return new Promise((resolve, reject) => {
71
+ const payload = JSON.stringify(prompt);
72
+
73
+ const options = {
74
+ hostname: 'api.keak.dev',
75
+ port: 443,
76
+ path: '/v1/analyze-structure',
77
+ method: 'POST',
78
+ headers: {
79
+ 'Content-Type': 'application/json',
80
+ 'Content-Length': payload.length,
81
+ 'User-Agent': 'keak-sdk-installer'
82
+ }
83
+ };
84
+
85
+ const req = https.request(options, (res) => {
86
+ let data = '';
87
+
88
+ res.on('data', (chunk) => {
89
+ data += chunk;
90
+ });
91
+
92
+ res.on('end', () => {
93
+ try {
94
+ const response = JSON.parse(data);
95
+ resolve(response.recommendation || null);
96
+ } catch (error) {
97
+ resolve(null);
98
+ }
99
+ });
100
+ });
101
+
102
+ req.on('error', () => {
103
+ resolve(null);
104
+ });
105
+
106
+ req.write(payload);
107
+ req.end();
108
+ });
109
+ }
110
+ }
111
+
112
+ // Fallback AI logic when API is not available
113
+ class LocalAIHelper {
114
+ addKeakProvider(content, isTypeScript = false) {
115
+ const lines = content.split('\n');
116
+ const result = [];
117
+ let importAdded = false;
118
+ let inJSXReturn = false;
119
+ let jsxDepth = 0;
120
+ let lastImportLine = -1;
121
+
122
+ // First pass: find last import
123
+ for (let i = 0; i < lines.length; i++) {
124
+ if (lines[i].includes('import ')) {
125
+ lastImportLine = i;
126
+ }
127
+ }
128
+
129
+ // Add import after last import
130
+ for (let i = 0; i < lines.length; i++) {
131
+ result.push(lines[i]);
132
+
133
+ if (i === lastImportLine && !importAdded) {
134
+ result.push("import { KeakProvider } from 'keak-sdk';");
135
+ importAdded = true;
136
+ }
137
+ }
138
+
139
+ // If no imports found, add at the beginning
140
+ if (!importAdded) {
141
+ result.unshift("import { KeakProvider } from 'keak-sdk';");
142
+ }
143
+
144
+ // Now wrap the appropriate component
145
+ const finalContent = result.join('\n');
146
+
147
+ // Try different wrapping strategies
148
+ if (finalContent.includes('ReactDOM.render')) {
149
+ return this.wrapReactDOMRender(finalContent);
150
+ } else if (finalContent.includes('createRoot')) {
151
+ return this.wrapCreateRoot(finalContent);
152
+ } else if (finalContent.includes('export default function')) {
153
+ return this.wrapDefaultExport(finalContent);
154
+ } else {
155
+ return this.wrapGenericComponent(finalContent);
156
+ }
157
+ }
158
+
159
+ wrapReactDOMRender(content) {
160
+ return content.replace(
161
+ /ReactDOM\.render\s*\(\s*(<[\s\S]*?[\s\S]*?<\/[\s\S]*?)\s*,/,
162
+ `ReactDOM.render(
163
+ <KeakProvider config={{ apiKey: 'demo', debug: true }}$1
164
+ </KeakProvider,`
165
+ );
166
+ }
167
+
168
+ wrapCreateRoot(content) {
169
+ return content.replace(
170
+ /root\.render\s*\(\s*(<[\s\S]*?[\s\S]*?<\/[\s\S]*?)\s*\)/,
171
+ `root.render(
172
+ <KeakProvider config={{ apiKey: 'demo', debug: true }}$1
173
+ </KeakProvider)`
174
+ );
175
+ }
176
+
177
+ wrapDefaultExport(content) {
178
+ // Find the return statement in the default export function
179
+ const functionMatch = content.match(/(export\s+default\s+function\s+\w+\s*\([^)]*\)\s*{[\s\S]*?return\s+)\(?([\s\S]*?)\)?(\s*;?\s*})/);
180
+
181
+ if (functionMatch) {
182
+ const wrapped = `${functionMatch[1]}(
183
+ <KeakProvider config={{ apiKey: 'demo', debug: true }}${functionMatch[2]}
184
+ </KeakProvider)${functionMatch[3]}`;
185
+ return content.replace(functionMatch[0], wrapped);
186
+ }
187
+
188
+ return content;
189
+ }
190
+
191
+ wrapGenericComponent(content) {
192
+ // Try to find any return statement with JSX
193
+ const returnMatch = content.match(/(return\s+)\(?([\s\S]*?<[\s\S]*?[\s\S]*?<\/[\s\S]*?)\)?(\s*;?)/);
194
+
195
+ if (returnMatch) {
196
+ const wrapped = `${returnMatch[1]}(
197
+ <KeakProvider config={{ apiKey: 'demo', debug: true }}${returnMatch[2]}
198
+ </KeakProvider)${returnMatch[3]}`;
199
+ return content.replace(returnMatch[0], wrapped);
200
+ }
201
+
202
+ return content;
203
+ }
204
+ }
205
+
206
+ export { AIHelper, LocalAIHelper };