@crownpeak/dqm-react-component-dev-mcp 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (444) hide show
  1. package/README.md +138 -0
  2. package/data/.env.example +22 -0
  3. package/data/.gitattributes +47 -0
  4. package/data/.glfrc.json +7 -0
  5. package/data/.husky/pre-commit +5 -0
  6. package/data/.nvmrc +1 -0
  7. package/data/CHANGELOG.md +75 -0
  8. package/data/CODE_OF_CONDUCT.md +129 -0
  9. package/data/CONTRIBUTING.md +203 -0
  10. package/data/DOCS-STRUCTURE.md +307 -0
  11. package/data/I18N.md +292 -0
  12. package/data/LICENSE +22 -0
  13. package/data/README.md +315 -0
  14. package/data/SECURITY.md +125 -0
  15. package/data/WIKI-DEPLOYMENT.md +348 -0
  16. package/data/docs/AI-FEATURES.md +610 -0
  17. package/data/docs/API-REFERENCE.md +1022 -0
  18. package/data/docs/AUTHENTICATION.md +301 -0
  19. package/data/docs/BACKEND-API.md +468 -0
  20. package/data/docs/DEVELOPMENT.md +375 -0
  21. package/data/docs/EXAMPLES.md +622 -0
  22. package/data/docs/MCP-SERVER.md +307 -0
  23. package/data/docs/MIGRATION-GUIDE.md +367 -0
  24. package/data/docs/NPM-PUBLISH.md +193 -0
  25. package/data/docs/QUICKSTART.md +206 -0
  26. package/data/docs/REDIS-SETUP.md +162 -0
  27. package/data/docs/SERVER.md +228 -0
  28. package/data/docs/TROUBLESHOOTING.md +657 -0
  29. package/data/docs/WIDGET-GUIDE.md +638 -0
  30. package/data/docs/WIKI-HOME.md +58 -0
  31. package/data/docs/WIKI-SIDEBAR.md +39 -0
  32. package/data/package.json +171 -0
  33. package/data/playwright.config.ts +64 -0
  34. package/data/probe/.cargo/config.toml +10 -0
  35. package/data/probe/.claude/commands/performance-review.md +15 -0
  36. package/data/probe/.clinerules +288 -0
  37. package/data/probe/.dockerignore +57 -0
  38. package/data/probe/.githooks/post-commit +11 -0
  39. package/data/probe/.githooks/pre-commit +99 -0
  40. package/data/probe/.githooks/pre-commit-vow +9 -0
  41. package/data/probe/.prompts/engineer.md +41 -0
  42. package/data/probe/.roomodes +28 -0
  43. package/data/probe/.windsurfrules +0 -0
  44. package/data/probe/BASH_TOOL_SUMMARY.md +148 -0
  45. package/data/probe/BENCHMARKING.md +256 -0
  46. package/data/probe/CLAUDE.md +226 -0
  47. package/data/probe/CODE_OF_CONDUCT.md +128 -0
  48. package/data/probe/CONTRIBUTING.md +193 -0
  49. package/data/probe/Cargo.toml +120 -0
  50. package/data/probe/Cross.toml +10 -0
  51. package/data/probe/DOCKER-README.md +224 -0
  52. package/data/probe/Dockerfile +32 -0
  53. package/data/probe/ENHANCED_DEBUG_TELEMETRY.md +188 -0
  54. package/data/probe/LICENSE +201 -0
  55. package/data/probe/Makefile +210 -0
  56. package/data/probe/README.md +824 -0
  57. package/data/probe/SECURITY.md +67 -0
  58. package/data/probe/WINDOWS-GUIDE.md +294 -0
  59. package/data/probe/benches/parsing_benchmarks.rs +370 -0
  60. package/data/probe/benches/search_benchmarks.rs +599 -0
  61. package/data/probe/benches/simd_benchmarks.rs +372 -0
  62. package/data/probe/benches/timing_benchmarks.rs +287 -0
  63. package/data/probe/build-windows.bat +229 -0
  64. package/data/probe/codex-config/config.toml +6 -0
  65. package/data/probe/docs/PERFORMANCE_OPTIMIZATION.md +161 -0
  66. package/data/probe/examples/cache_demo.rs +46 -0
  67. package/data/probe/examples/chat/.dockerignore +37 -0
  68. package/data/probe/examples/chat/ChatSessionManager.js +295 -0
  69. package/data/probe/examples/chat/Dockerfile +98 -0
  70. package/data/probe/examples/chat/LICENSE +201 -0
  71. package/data/probe/examples/chat/LOCAL_IMAGE_SUPPORT.md +195 -0
  72. package/data/probe/examples/chat/MCP_INTEGRATION.md +400 -0
  73. package/data/probe/examples/chat/README.md +338 -0
  74. package/data/probe/examples/chat/TRACING.md +226 -0
  75. package/data/probe/examples/chat/appTracer.js +968 -0
  76. package/data/probe/examples/chat/auth.js +76 -0
  77. package/data/probe/examples/chat/bin/probe-chat.js +13 -0
  78. package/data/probe/examples/chat/build.js +104 -0
  79. package/data/probe/examples/chat/cancelRequest.js +84 -0
  80. package/data/probe/examples/chat/demo-agentic-image-flow.js +88 -0
  81. package/data/probe/examples/chat/demo-local-images.js +128 -0
  82. package/data/probe/examples/chat/fileSpanExporter.js +181 -0
  83. package/data/probe/examples/chat/implement/README.md +228 -0
  84. package/data/probe/examples/chat/implement/backends/AiderBackend.js +750 -0
  85. package/data/probe/examples/chat/implement/backends/BaseBackend.js +276 -0
  86. package/data/probe/examples/chat/implement/backends/ClaudeCodeBackend.js +767 -0
  87. package/data/probe/examples/chat/implement/backends/MockBackend.js +237 -0
  88. package/data/probe/examples/chat/implement/backends/registry.js +85 -0
  89. package/data/probe/examples/chat/implement/core/BackendManager.js +567 -0
  90. package/data/probe/examples/chat/implement/core/ImplementTool.js +354 -0
  91. package/data/probe/examples/chat/implement/core/config.js +428 -0
  92. package/data/probe/examples/chat/implement/core/timeouts.js +58 -0
  93. package/data/probe/examples/chat/implement/core/utils.js +496 -0
  94. package/data/probe/examples/chat/implement/types/BackendTypes.js +126 -0
  95. package/data/probe/examples/chat/index.js +669 -0
  96. package/data/probe/examples/chat/mcpServer.js +341 -0
  97. package/data/probe/examples/chat/npm/LICENSE +15 -0
  98. package/data/probe/examples/chat/npm/README.md +168 -0
  99. package/data/probe/examples/chat/npm/bin/probe-chat.js +156 -0
  100. package/data/probe/examples/chat/npm/index.js +259 -0
  101. package/data/probe/examples/chat/npm/package.json +54 -0
  102. package/data/probe/examples/chat/package.json +102 -0
  103. package/data/probe/examples/chat/probeChat.js +456 -0
  104. package/data/probe/examples/chat/probeTool.js +491 -0
  105. package/data/probe/examples/chat/storage/JsonChatStorage.js +476 -0
  106. package/data/probe/examples/chat/telemetry.js +281 -0
  107. package/data/probe/examples/chat/test/integration/chatFlows.test.js +320 -0
  108. package/data/probe/examples/chat/test/integration/toolCalling.test.js +471 -0
  109. package/data/probe/examples/chat/test/mocks/mockLLMProvider.js +269 -0
  110. package/data/probe/examples/chat/test/test-backends.js +90 -0
  111. package/data/probe/examples/chat/test/testUtils.js +530 -0
  112. package/data/probe/examples/chat/test/unit/backendTimeout.test.js +161 -0
  113. package/data/probe/examples/chat/test/unit/packageFiles.test.js +120 -0
  114. package/data/probe/examples/chat/test/verify-tests.js +118 -0
  115. package/data/probe/examples/chat/test-agentic-image-loading.js +294 -0
  116. package/data/probe/examples/chat/test-ai-sdk-telemetry.js +204 -0
  117. package/data/probe/examples/chat/test-chat-tracing.js +38 -0
  118. package/data/probe/examples/chat/test-direct-function.js +49 -0
  119. package/data/probe/examples/chat/test-file-size-validation.js +103 -0
  120. package/data/probe/examples/chat/test-full-mcp-integration.js +258 -0
  121. package/data/probe/examples/chat/test-github-context.txt +12 -0
  122. package/data/probe/examples/chat/test-hierarchy.js +203 -0
  123. package/data/probe/examples/chat/test-image-spans.js +37 -0
  124. package/data/probe/examples/chat/test-local-image-reading.js +176 -0
  125. package/data/probe/examples/chat/test-mcp-integration.js +136 -0
  126. package/data/probe/examples/chat/test-mcp-probe-server.js +161 -0
  127. package/data/probe/examples/chat/test-mcp-with-ai.js +279 -0
  128. package/data/probe/examples/chat/test-multiple-allowed-dirs.js +111 -0
  129. package/data/probe/examples/chat/test-probe-mcp-server.js +110 -0
  130. package/data/probe/examples/chat/test-security-validation.js +145 -0
  131. package/data/probe/examples/chat/test-simple-tracing.js +32 -0
  132. package/data/probe/examples/chat/test-trace-verification.js +235 -0
  133. package/data/probe/examples/chat/test-tracing.js +114 -0
  134. package/data/probe/examples/chat/tokenCounter.js +419 -0
  135. package/data/probe/examples/chat/tokenUsageDisplay.js +134 -0
  136. package/data/probe/examples/chat/webServer.js +1103 -0
  137. package/data/probe/examples/reranker/Cargo.toml +33 -0
  138. package/data/probe/examples/reranker/DEBUG_OUTPUT_ANALYSIS.md +71 -0
  139. package/data/probe/examples/reranker/MODELS.md +66 -0
  140. package/data/probe/examples/reranker/MODEL_COMPARISON.md +60 -0
  141. package/data/probe/examples/reranker/MULTI_MODEL_ANALYSIS.md +176 -0
  142. package/data/probe/examples/reranker/PERFORMANCE_SUMMARY.md +156 -0
  143. package/data/probe/examples/reranker/README.md +347 -0
  144. package/data/probe/examples/reranker/RUST_BERT_COMPARISON.md +82 -0
  145. package/data/probe/examples/reranker/TOKENIZATION_GUIDE.md +120 -0
  146. package/data/probe/examples/reranker/check_rust_tokenizer.py +108 -0
  147. package/data/probe/examples/reranker/convert_to_torchscript.py +109 -0
  148. package/data/probe/examples/reranker/debug_scoring.py +189 -0
  149. package/data/probe/examples/reranker/debug_tokenization.py +154 -0
  150. package/data/probe/examples/reranker/download_models.sh +73 -0
  151. package/data/probe/examples/reranker/requirements.txt +13 -0
  152. package/data/probe/examples/reranker/run_comprehensive_benchmark.sh +83 -0
  153. package/data/probe/examples/reranker/rust_bert_test/Cargo.toml +12 -0
  154. package/data/probe/examples/reranker/rust_bert_test/README.md +54 -0
  155. package/data/probe/examples/reranker/simple_test.py +50 -0
  156. package/data/probe/examples/reranker/test_all_models.sh +63 -0
  157. package/data/probe/examples/reranker/test_bert_results.sh +44 -0
  158. package/data/probe/examples/reranker/test_cross_encoder.py +334 -0
  159. package/data/probe/examples/reranker/test_cross_encoder.sh +80 -0
  160. package/data/probe/examples/reranker/test_exact_comparison.py +151 -0
  161. package/data/probe/examples/reranker/test_parallel_performance.sh +56 -0
  162. package/data/probe/examples/reranker/test_scores.py +132 -0
  163. package/data/probe/install.ps1 +508 -0
  164. package/data/probe/install.sh +460 -0
  165. package/data/probe/npm/CLONE_METHOD_EXAMPLES.md +596 -0
  166. package/data/probe/npm/CONTEXT_COMPACTION.md +303 -0
  167. package/data/probe/npm/DELEGATE_TOOL_README.md +166 -0
  168. package/data/probe/npm/MAID_INTEGRATION.md +313 -0
  169. package/data/probe/npm/MCP_INTEGRATION_SUMMARY.md +241 -0
  170. package/data/probe/npm/README.md +824 -0
  171. package/data/probe/npm/bin/.gitignore +7 -0
  172. package/data/probe/npm/bin/.gitkeep +0 -0
  173. package/data/probe/npm/bin/README.md +12 -0
  174. package/data/probe/npm/bin/probe +167 -0
  175. package/data/probe/npm/docs/CLAUDE_CODE_INTEGRATION.md +414 -0
  176. package/data/probe/npm/docs/CODEX_INTEGRATION.md +502 -0
  177. package/data/probe/npm/docs/EDIT_CREATE_TOOLS.md +233 -0
  178. package/data/probe/npm/docs/RETRY_AND_FALLBACK.md +674 -0
  179. package/data/probe/npm/example-usage.js +335 -0
  180. package/data/probe/npm/examples/multi-engine-demo.js +117 -0
  181. package/data/probe/npm/examples/probe-agent-cli.js +113 -0
  182. package/data/probe/npm/examples/test-agent-edit.js +114 -0
  183. package/data/probe/npm/examples/test-edit-create.js +120 -0
  184. package/data/probe/npm/examples/test-edit-direct.js +114 -0
  185. package/data/probe/npm/index.d.ts +744 -0
  186. package/data/probe/npm/jest.config.js +52 -0
  187. package/data/probe/npm/package.json +117 -0
  188. package/data/probe/npm/scripts/build-agent.cjs +75 -0
  189. package/data/probe/npm/scripts/build-cjs.js +124 -0
  190. package/data/probe/npm/scripts/build-mcp.cjs +36 -0
  191. package/data/probe/npm/scripts/postinstall.js +216 -0
  192. package/data/probe/npm/test-codex-e2e.js +78 -0
  193. package/data/probe/npm/test-download-lock.js +109 -0
  194. package/data/probe/npm/test-grep-security.js +94 -0
  195. package/data/probe/npm/test-grep-simplified.js +63 -0
  196. package/data/probe/npm/test-grep.js +51 -0
  197. package/data/probe/npm/tests/README.md +96 -0
  198. package/data/probe/npm/tests/agent-compact-history.test.js +174 -0
  199. package/data/probe/npm/tests/allow-tests-default.test.js +151 -0
  200. package/data/probe/npm/tests/contextCompactor.test.js +498 -0
  201. package/data/probe/npm/tests/delegate-config.test.js +353 -0
  202. package/data/probe/npm/tests/delegate-integration.test.js +348 -0
  203. package/data/probe/npm/tests/extractor-integration.test.js +162 -0
  204. package/data/probe/npm/tests/extractor.test.js +317 -0
  205. package/data/probe/npm/tests/fixtures/sampleDiagrams.js +267 -0
  206. package/data/probe/npm/tests/integration/claude-code-auto-fallback.spec.js +148 -0
  207. package/data/probe/npm/tests/integration/claude-code-multi-step.spec.js +127 -0
  208. package/data/probe/npm/tests/integration/claude-code-tool-events.spec.js +163 -0
  209. package/data/probe/npm/tests/integration/codex-auto-fallback.spec.js +191 -0
  210. package/data/probe/npm/tests/integration/codex-tool-events.spec.js +147 -0
  211. package/data/probe/npm/tests/integration/examplesChatMcp.test.js +402 -0
  212. package/data/probe/npm/tests/integration/mcpDotenvSupport.test.js +174 -0
  213. package/data/probe/npm/tests/integration/mcpErrorHandling.test.js +566 -0
  214. package/data/probe/npm/tests/integration/mcpRobustness.test.js +564 -0
  215. package/data/probe/npm/tests/integration/mcpStdoutPurity.test.js +355 -0
  216. package/data/probe/npm/tests/integration/probeAgentMcp.test.js +398 -0
  217. package/data/probe/npm/tests/integration/retryFallback.test.js +368 -0
  218. package/data/probe/npm/tests/integration/schema-in-initial-message.test.js +318 -0
  219. package/data/probe/npm/tests/integration/schema-validation-loop-prevention.test.js +244 -0
  220. package/data/probe/npm/tests/integration/schemaRetryLogic.test.js +94 -0
  221. package/data/probe/npm/tests/integration/validationFlow.test.js +329 -0
  222. package/data/probe/npm/tests/manual/test-codex-basic.js +110 -0
  223. package/data/probe/npm/tests/mcp/mcpClientManager.test.js +614 -0
  224. package/data/probe/npm/tests/mcp/mcpConfig.test.js +359 -0
  225. package/data/probe/npm/tests/mcp/mcpXmlBridge.test.js +436 -0
  226. package/data/probe/npm/tests/mcp/mockMcpServer.js +510 -0
  227. package/data/probe/npm/tests/mcp-strict-syntax.test.js +319 -0
  228. package/data/probe/npm/tests/mermaidQuoteEscaping.test.js +214 -0
  229. package/data/probe/npm/tests/nestedQuoteFix.test.js +40 -0
  230. package/data/probe/npm/tests/setup.js +46 -0
  231. package/data/probe/npm/tests/unit/allowed-tools.test.js +513 -0
  232. package/data/probe/npm/tests/unit/attempt-completion-closing-tag-in-content.test.js +188 -0
  233. package/data/probe/npm/tests/unit/attemptCompletionJsonFix.test.js +238 -0
  234. package/data/probe/npm/tests/unit/attemptCompletionJsonIssue.test.js +128 -0
  235. package/data/probe/npm/tests/unit/backtickAutoFix.test.js +35 -0
  236. package/data/probe/npm/tests/unit/bash-probe-agent-integration.test.js +389 -0
  237. package/data/probe/npm/tests/unit/bash-simple-commands.test.js +324 -0
  238. package/data/probe/npm/tests/unit/bash-tool-comprehensive.test.js +371 -0
  239. package/data/probe/npm/tests/unit/bash-tool-integration.test.js +310 -0
  240. package/data/probe/npm/tests/unit/bash-tool.test.js +341 -0
  241. package/data/probe/npm/tests/unit/completion-prompt.test.js +379 -0
  242. package/data/probe/npm/tests/unit/cwd-path-options.test.js +287 -0
  243. package/data/probe/npm/tests/unit/delegate-limits.test.js +422 -0
  244. package/data/probe/npm/tests/unit/direct-content-attempt-completion.test.js +235 -0
  245. package/data/probe/npm/tests/unit/edit-create-tools.test.js +609 -0
  246. package/data/probe/npm/tests/unit/enhancedMermaidValidation.test.js +577 -0
  247. package/data/probe/npm/tests/unit/extract-content.test.js +83 -0
  248. package/data/probe/npm/tests/unit/extract-multiple-targets.test.js +89 -0
  249. package/data/probe/npm/tests/unit/fallbackManager.test.js +442 -0
  250. package/data/probe/npm/tests/unit/githubCompatibilityValidation.test.js +258 -0
  251. package/data/probe/npm/tests/unit/imageConfig.test.js +149 -0
  252. package/data/probe/npm/tests/unit/imagePathResolution.test.js +345 -0
  253. package/data/probe/npm/tests/unit/json-fixing-agent.test.js +238 -0
  254. package/data/probe/npm/tests/unit/json-validation-enhanced-errors.test.js +199 -0
  255. package/data/probe/npm/tests/unit/jsonValidationInfiniteLoopFix.test.js +228 -0
  256. package/data/probe/npm/tests/unit/maidIntegration.test.js +139 -0
  257. package/data/probe/npm/tests/unit/maxIterationsWarning.test.js +195 -0
  258. package/data/probe/npm/tests/unit/mermaidEdgeLabelFix.test.js +161 -0
  259. package/data/probe/npm/tests/unit/mermaidHtmlEntities.test.js +76 -0
  260. package/data/probe/npm/tests/unit/mermaidInfiniteLoopFix.test.js +64 -0
  261. package/data/probe/npm/tests/unit/mermaidValidation.test.js +723 -0
  262. package/data/probe/npm/tests/unit/mermaidValidationVisorExample.test.js +309 -0
  263. package/data/probe/npm/tests/unit/probe-agent-clone-realistic.test.js +643 -0
  264. package/data/probe/npm/tests/unit/probe-agent-clone.test.js +476 -0
  265. package/data/probe/npm/tests/unit/probe-agent-delegate.test.js +400 -0
  266. package/data/probe/npm/tests/unit/probe-agent-model-option.test.js +118 -0
  267. package/data/probe/npm/tests/unit/probeTool-security.test.js +283 -0
  268. package/data/probe/npm/tests/unit/readImageTool.test.js +418 -0
  269. package/data/probe/npm/tests/unit/retryManager.test.js +317 -0
  270. package/data/probe/npm/tests/unit/schema-aware-reminders.test.js +288 -0
  271. package/data/probe/npm/tests/unit/schemaDefinitionDetection.test.js +115 -0
  272. package/data/probe/npm/tests/unit/schemaUtils.test.js +1268 -0
  273. package/data/probe/npm/tests/unit/simpleTelemetry.test.js +282 -0
  274. package/data/probe/npm/tests/unit/simplified-attempt-completion.test.js +274 -0
  275. package/data/probe/npm/tests/unit/single-quote-json-bug.test.js +231 -0
  276. package/data/probe/npm/tests/unit/subgraphAutoFix.test.js +110 -0
  277. package/data/probe/npm/tests/unit/system-prompt.test.js +32 -0
  278. package/data/probe/npm/tests/unit/types-probe-agent-options.test.js +42 -0
  279. package/data/probe/npm/tests/unit/xmlParsing.test.js +720 -0
  280. package/data/probe/npm/tsconfig.json +21 -0
  281. package/data/probe/result1.txt +19 -0
  282. package/data/probe/result2.txt +26 -0
  283. package/data/probe/scripts/benchmark.sh +270 -0
  284. package/data/probe/scripts/cache_memory_analysis.rs +844 -0
  285. package/data/probe/scripts/claude-hook-wrapper.sh +56 -0
  286. package/data/probe/site/.env.example +10 -0
  287. package/data/probe/site/DEPLOYMENT.md +86 -0
  288. package/data/probe/site/README.md +183 -0
  289. package/data/probe/site/adding-languages.md +135 -0
  290. package/data/probe/site/ai-chat.md +427 -0
  291. package/data/probe/site/ai-integration.md +1488 -0
  292. package/data/probe/site/blog/agentic-flow-custom-xml-protocol.md +407 -0
  293. package/data/probe/site/blog/index.md +118 -0
  294. package/data/probe/site/blog/v0.6.0-release.md +426 -0
  295. package/data/probe/site/blog.md +8 -0
  296. package/data/probe/site/changelog.md +200 -0
  297. package/data/probe/site/cli-mode.md +437 -0
  298. package/data/probe/site/code-extraction.md +436 -0
  299. package/data/probe/site/contributing/README.md +9 -0
  300. package/data/probe/site/contributing/documentation-cross-references.md +215 -0
  301. package/data/probe/site/contributing/documentation-maintenance.md +275 -0
  302. package/data/probe/site/contributing/documentation-structure.md +75 -0
  303. package/data/probe/site/documentation-cross-references.md +215 -0
  304. package/data/probe/site/documentation-guide.md +132 -0
  305. package/data/probe/site/documentation-maintenance.md +275 -0
  306. package/data/probe/site/features.md +147 -0
  307. package/data/probe/site/how-it-works.md +118 -0
  308. package/data/probe/site/index.md +175 -0
  309. package/data/probe/site/index.md.bak +133 -0
  310. package/data/probe/site/installation.md +235 -0
  311. package/data/probe/site/integrations/docker.md +248 -0
  312. package/data/probe/site/integrations/github-actions.md +413 -0
  313. package/data/probe/site/language-support-overview.md +168 -0
  314. package/data/probe/site/mcp-integration.md +587 -0
  315. package/data/probe/site/mcp-server.md +304 -0
  316. package/data/probe/site/navigation-structure.md +76 -0
  317. package/data/probe/site/nodejs-sdk.md +798 -0
  318. package/data/probe/site/output-formats.md +625 -0
  319. package/data/probe/site/package.json +21 -0
  320. package/data/probe/site/public/_headers +28 -0
  321. package/data/probe/site/public/_redirects +11 -0
  322. package/data/probe/site/quick-start.md +289 -0
  323. package/data/probe/site/search-functionality.md +291 -0
  324. package/data/probe/site/search-reference.md +291 -0
  325. package/data/probe/site/supported-languages.md +215 -0
  326. package/data/probe/site/use-cases/README.md +8 -0
  327. package/data/probe/site/use-cases/advanced-cli.md +253 -0
  328. package/data/probe/site/use-cases/ai-code-editors.md +239 -0
  329. package/data/probe/site/use-cases/building-ai-tools.md +529 -0
  330. package/data/probe/site/use-cases/cli-ai-workflows.md +285 -0
  331. package/data/probe/site/use-cases/deploying-probe-web-interface.md +255 -0
  332. package/data/probe/site/use-cases/integrating-probe-into-ai-code-editors.md +161 -0
  333. package/data/probe/site/use-cases/nodejs-sdk.md +596 -0
  334. package/data/probe/site/use-cases/team-chat.md +350 -0
  335. package/data/probe/site/web-interface.md +434 -0
  336. package/data/probe/site/wrangler.toml +9 -0
  337. package/data/probe/test-api-key.sh +1 -0
  338. package/data/probe/test-probe-implementation/hello.js +7 -0
  339. package/data/probe/test_cases/demonstrate_early_termination_issues.sh +176 -0
  340. package/data/probe/test_cases/early_termination_issues.rs +533 -0
  341. package/data/probe/test_data/test_nested_struct.go +26 -0
  342. package/data/probe/tests/README.md +286 -0
  343. package/data/probe/tests/README_search_determinism_tests.md +116 -0
  344. package/data/probe/tests/adjacent_comment_test.rs +152 -0
  345. package/data/probe/tests/apostrophe_handling_tests.rs +132 -0
  346. package/data/probe/tests/block_filtering_with_ast_tests.rs +669 -0
  347. package/data/probe/tests/block_merging_tests.rs +396 -0
  348. package/data/probe/tests/c_outline_format_tests.rs +2179 -0
  349. package/data/probe/tests/cache_invalidation_issues.rs.disabled +682 -0
  350. package/data/probe/tests/cache_order_tests.rs +147 -0
  351. package/data/probe/tests/cache_query_scoping_tests.rs +221 -0
  352. package/data/probe/tests/cli_tests.rs +680 -0
  353. package/data/probe/tests/comment_context_integration_test.rs +240 -0
  354. package/data/probe/tests/common.rs +33 -0
  355. package/data/probe/tests/complex_block_merging_tests.rs +599 -0
  356. package/data/probe/tests/complex_query_block_filtering_tests.rs +422 -0
  357. package/data/probe/tests/control_flow_closing_braces_test.rs +91 -0
  358. package/data/probe/tests/cpp_outline_format_tests.rs +1507 -0
  359. package/data/probe/tests/csharp_outline_format_tests.rs +941 -0
  360. package/data/probe/tests/elastic_query_integration_tests.rs +922 -0
  361. package/data/probe/tests/extract_command_tests.rs +1848 -0
  362. package/data/probe/tests/extract_deduplication_tests.rs +146 -0
  363. package/data/probe/tests/extract_input_file_tests.rs +84 -0
  364. package/data/probe/tests/extract_prompt_tests.rs +102 -0
  365. package/data/probe/tests/filename_search_tests.rs +96 -0
  366. package/data/probe/tests/fixtures/user/AssemblyInfo.cs +3 -0
  367. package/data/probe/tests/github_extract_tests.rs +234 -0
  368. package/data/probe/tests/go_comment_test.rs +253 -0
  369. package/data/probe/tests/go_outline_format_tests.rs +2587 -0
  370. package/data/probe/tests/go_path_resolver_tests.rs +96 -0
  371. package/data/probe/tests/html_outline_format_tests.rs +637 -0
  372. package/data/probe/tests/integration_tests.rs +837 -0
  373. package/data/probe/tests/ip_whitelist_test.rs +148 -0
  374. package/data/probe/tests/java_outline_format_tests.rs +1611 -0
  375. package/data/probe/tests/javascript_extract_tests.rs +315 -0
  376. package/data/probe/tests/javascript_outline_format_tests.rs +1464 -0
  377. package/data/probe/tests/json_format_tests.rs +436 -0
  378. package/data/probe/tests/json_schema_validation_tests.rs +450 -0
  379. package/data/probe/tests/lib_usage.rs +60 -0
  380. package/data/probe/tests/line_comment_context_extension_test.rs +459 -0
  381. package/data/probe/tests/line_map_cache_tests.rs +114 -0
  382. package/data/probe/tests/markdown_integration_tests.rs +190 -0
  383. package/data/probe/tests/mocks/test_ip_whitelist.go +11 -0
  384. package/data/probe/tests/mocks/test_object.js +27 -0
  385. package/data/probe/tests/mocks/test_struct.go +50 -0
  386. package/data/probe/tests/multi_keyword_pattern_tests.rs +464 -0
  387. package/data/probe/tests/multi_language_syntax_integration_tests.rs +218 -0
  388. package/data/probe/tests/multiple_capture_groups_tests.rs +169 -0
  389. package/data/probe/tests/negative_compound_word_tests.rs +246 -0
  390. package/data/probe/tests/nested_symbol_extraction_tests.rs +99 -0
  391. package/data/probe/tests/outline_cross_file_interference_test.rs +335 -0
  392. package/data/probe/tests/outline_keyword_preservation_test.rs +67 -0
  393. package/data/probe/tests/output_format_edge_cases_tests.rs +693 -0
  394. package/data/probe/tests/parallel_extraction_tests.rs +178 -0
  395. package/data/probe/tests/parallel_search_tests.rs +355 -0
  396. package/data/probe/tests/path_resolver_tests.rs +698 -0
  397. package/data/probe/tests/php_outline_format_extended_tests.rs +928 -0
  398. package/data/probe/tests/php_outline_format_tests.rs +768 -0
  399. package/data/probe/tests/property_tests.proptest-regressions +9 -0
  400. package/data/probe/tests/property_tests.rs +118 -0
  401. package/data/probe/tests/python_outline_format_tests.rs +1538 -0
  402. package/data/probe/tests/query_command_json_tests.rs +438 -0
  403. package/data/probe/tests/query_command_tests.rs +232 -0
  404. package/data/probe/tests/query_command_xml_tests.rs +569 -0
  405. package/data/probe/tests/quoted_term_with_negative_keyword_tests.rs +216 -0
  406. package/data/probe/tests/required_terms_filename_tests.rs +116 -0
  407. package/data/probe/tests/ruby_outline_format_tests.rs +1011 -0
  408. package/data/probe/tests/rust_line_comment_context_test.rs +151 -0
  409. package/data/probe/tests/rust_outline_format_enhanced_tests.rs +725 -0
  410. package/data/probe/tests/rust_outline_format_tests.rs +843 -0
  411. package/data/probe/tests/schemas/xml_output_schema.xsd +38 -0
  412. package/data/probe/tests/search_determinism_tests.rs +451 -0
  413. package/data/probe/tests/search_hints_tests.rs +253 -0
  414. package/data/probe/tests/special_character_escaping_tests.rs +417 -0
  415. package/data/probe/tests/stemming_compound_word_filtering_tests.rs +535 -0
  416. package/data/probe/tests/strict_elastic_syntax_tests.rs +404 -0
  417. package/data/probe/tests/swift_outline_format_tests.rs +3319 -0
  418. package/data/probe/tests/symbols_tests.rs +166 -0
  419. package/data/probe/tests/test_file.rs +45 -0
  420. package/data/probe/tests/test_tokenize.rs +28 -0
  421. package/data/probe/tests/timeout_tests.rs +82 -0
  422. package/data/probe/tests/tokenization_tests.rs +195 -0
  423. package/data/probe/tests/tokenized_block_filtering_tests.rs +174 -0
  424. package/data/probe/tests/typescript_extract_tests.rs +214 -0
  425. package/data/probe/tests/typescript_outline_format_tests.rs +2188 -0
  426. package/data/probe/tests/xml_format_tests.rs +568 -0
  427. package/data/probe/tests/xml_schema_validation_tests.rs +497 -0
  428. package/data/scripts/postinstall.mjs +9 -0
  429. package/data/scripts/set-version.js +0 -0
  430. package/data/scripts/wiki-build.sh +111 -0
  431. package/data/scripts/wiki-deploy.sh +73 -0
  432. package/data/serve.json +12 -0
  433. package/data/test/demo-dynamic.html +134 -0
  434. package/data/test/demo-esm.html +105 -0
  435. package/data/test/demo-iife.html +78 -0
  436. package/data/tsconfig.json +7 -0
  437. package/data/vite.server.ts +483 -0
  438. package/data/vitest.config.ts +40 -0
  439. package/data/wiki/Home.md +58 -0
  440. package/data/wiki/_Sidebar.md +39 -0
  441. package/docs-mcp.config.json +20 -0
  442. package/package.json +56 -0
  443. package/src/config.js +111 -0
  444. package/src/index.js +395 -0
@@ -0,0 +1,307 @@
1
+ The Crownpeak DQM React Component provides an MCP (Model Context Protocol) server for AI-powered documentation search. This enables AI assistants like Claude, GitHub Copilot, and Cline to search and understand the DQM documentation.
2
+
3
+ ## Table of Contents
4
+
5
+ - [Overview](#overview)
6
+ - [Benefits](#benefits)
7
+ - [Installation](#installation)
8
+ - [Claude Desktop](#claude-desktop)
9
+ - [VS Code Copilot](#vs-code-copilot)
10
+ - [Cline](#cline)
11
+ - [OpenAI Codex CLI](#openai-codex-cli)
12
+ - [Usage](#usage)
13
+ - [Example Queries](#example-queries)
14
+ - [Dynamic Usage](#dynamic-usage)
15
+ - [Documentation Coverage](#documentation-coverage)
16
+ - [Troubleshooting](#troubleshooting)
17
+ - [Related Links](#related-links)
18
+
19
+ ---
20
+
21
+ ## Overview
22
+
23
+ | Feature | Description |
24
+ |---------|-------------|
25
+ | **Powered by** | [Probe](https://probeai.dev/) search engine |
26
+ | **Configuration** | Zero setup - just `npx` |
27
+ | **Tool Name** | `search_dqm_docs` |
28
+ | **Package** | `@crownpeak/dqm-react-component-dev-mcp` |
29
+
30
+ The MCP server indexes all DQM documentation and makes it searchable by AI assistants. When you ask a question about DQM, your AI assistant can automatically search the documentation to provide accurate, up-to-date answers.
31
+
32
+ ---
33
+
34
+ ## Benefits
35
+
36
+ ### For Developers Integrating DQM
37
+
38
+ The MCP server is especially useful when you're **integrating the DQM component into your application**:
39
+
40
+ - **Step-by-Step Guidance**: Ask your AI assistant "How do I add DQMSidebar to my React app?" and get accurate, contextual instructions
41
+ - **Configuration Help**: Get instant answers about props, overlay detection, authentication modes
42
+ - **Code Generation**: AI can generate correctly configured DQMSidebar code based on your specific requirements
43
+ - **Troubleshooting**: When something doesn't work, the AI can search the documentation for solutions
44
+
45
+ **Example workflow:**
46
+ ```
47
+ You: "I want to add DQM to my Next.js app with backend authentication"
48
+ AI: [searches docs] Here's how to set it up...
49
+ 1. Install the package
50
+ 2. Configure authBackendUrl
51
+ 3. Set up the backend server
52
+ [provides code examples from documentation]
53
+ ```
54
+
55
+ ### General Benefits
56
+
57
+ - **Faster Answers**: Get instant, accurate answers about DQMSidebar configuration, props, and usage patterns
58
+ - **Context-Aware Help**: AI understands the full documentation, not just snippets
59
+ - **Always Up-to-Date**: Pre-built documentation bundle ensures you get the latest information
60
+
61
+ ### For AI Assistants
62
+
63
+ - **Structured Search**: Semantic search across all documentation files
64
+ - **Code Examples**: Access to real code samples from the repository
65
+ - **Type Information**: Full TypeScript type definitions included
66
+
67
+ ---
68
+
69
+ ## Installation
70
+
71
+ ### Claude Desktop
72
+
73
+ Add to your Claude Desktop configuration:
74
+
75
+ **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
76
+ **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
77
+
78
+ ```json
79
+ {
80
+ "mcpServers": {
81
+ "dqm-docs": {
82
+ "command": "npx",
83
+ "args": [
84
+ "-y",
85
+ "@crownpeak/dqm-react-component-dev-mcp@latest"
86
+ ]
87
+ }
88
+ }
89
+ }
90
+ ```
91
+
92
+ Restart Claude Desktop after saving the configuration.
93
+
94
+ ---
95
+
96
+ ### VS Code Copilot
97
+
98
+ Add to your VS Code MCP configuration (`.vscode/mcp.json` in your project or workspace):
99
+
100
+ ```json
101
+ {
102
+ "servers": {
103
+ "dqm-docs": {
104
+ "command": "npx",
105
+ "args": ["-y", "@crownpeak/dqm-react-component-dev-mcp@latest"]
106
+ }
107
+ }
108
+ }
109
+ ```
110
+
111
+ ---
112
+
113
+ ### Cline
114
+
115
+ Add to your project's `.cline/mcp_config.json`:
116
+
117
+ ```json
118
+ {
119
+ "mcpServers": {
120
+ "dqm-docs": {
121
+ "command": "npx",
122
+ "args": ["-y", "@crownpeak/dqm-react-component-dev-mcp@latest"]
123
+ }
124
+ }
125
+ }
126
+ ```
127
+
128
+ ---
129
+
130
+ ### OpenAI Codex CLI
131
+
132
+ Add to your project's `codex.toml` or global `~/.codex/config.toml`:
133
+
134
+ ```toml
135
+ [mcp_servers.dqm-docs]
136
+ command = "npx"
137
+ args = ["-y", "@crownpeak/dqm-react-component-dev-mcp@latest"]
138
+ ```
139
+
140
+ Or with environment variables:
141
+
142
+ ```toml
143
+ [mcp_servers.dqm-docs]
144
+ command = "npx"
145
+ args = ["-y", "@crownpeak/dqm-react-component-dev-mcp@latest"]
146
+
147
+ [mcp_servers.dqm-docs.env]
148
+ NODE_ENV = "production"
149
+ ```
150
+
151
+ ---
152
+
153
+ ## Usage
154
+
155
+ Once configured, you can ask your AI assistant questions about DQM. The AI will automatically use the `search_dqm_docs` tool to find relevant documentation.
156
+
157
+ ### Example Queries
158
+
159
+ **Configuration Questions:**
160
+ - "How do I configure overlay detection in DQMSidebar?"
161
+ - "What props does DQMSidebar accept?"
162
+ - "How do I set up backend authentication?"
163
+
164
+ **Integration Questions:**
165
+ - "How do I integrate the widget bundle?"
166
+ - "How do I use DQM with Next.js?"
167
+ - "What's the difference between direct and backend authentication?"
168
+
169
+ **Troubleshooting:**
170
+ - "What is manualOffset and when should I use it?"
171
+ - "How do I fix z-index issues with the sidebar?"
172
+ - "Why isn't my overlay being detected?"
173
+
174
+ **Code Examples:**
175
+ - "Show me an example of DQMSidebar with AI translation"
176
+ - "How do I change the language programmatically?"
177
+
178
+ ### Search Keywords
179
+
180
+ For best results, try these search patterns:
181
+
182
+ ```
183
+ "DQMSidebar overlayConfig"
184
+ "backend authentication setup"
185
+ "widget bundle integration"
186
+ "manualOffset configuration"
187
+ "AI translation config"
188
+ "i18n language switch"
189
+ ```
190
+
191
+ ---
192
+
193
+ ## Dynamic Usage
194
+
195
+ Instead of the pre-built package, you can point directly to the GitHub repository for the most recent documentation:
196
+
197
+ ```json
198
+ {
199
+ "mcpServers": {
200
+ "dqm-docs": {
201
+ "command": "npx",
202
+ "args": [
203
+ "-y",
204
+ "@probelabs/docs-mcp@latest",
205
+ "--gitUrl",
206
+ "https://github.com/Crownpeak/dqm-react-component",
207
+ "--toolName",
208
+ "search_dqm_docs",
209
+ "--toolDescription",
210
+ "Search Crownpeak DQM React Component documentation"
211
+ ]
212
+ }
213
+ }
214
+ }
215
+ ```
216
+
217
+ > **Note:** Dynamic mode fetches from GitHub on each query, which may be slower than the pre-built package.
218
+
219
+ ---
220
+
221
+ ## Documentation Coverage
222
+
223
+ The MCP server indexes all documentation including:
224
+
225
+ | Source | Content |
226
+ |--------|---------|
227
+ | `README.md` | Overview and quick start |
228
+ | `docs/` | Full documentation (QUICKSTART, DEVELOPMENT, SERVER, EXAMPLES, AI-FEATURES, etc.) |
229
+ | `src/` | Source code with JSDoc comments |
230
+ | `.github/copilot-instructions.md` | AI agent integration guide |
231
+
232
+ ### Indexed Topics
233
+
234
+ - DQMSidebar component and props
235
+ - Authentication (direct and backend modes)
236
+ - AI features (translation, summaries)
237
+ - Internationalization (i18n)
238
+ - Overlay detection and positioning
239
+ - Widget bundle integration
240
+ - Backend server setup
241
+ - Redis session storage
242
+ - TypeScript types and interfaces
243
+
244
+ ---
245
+
246
+ ## Troubleshooting
247
+
248
+ ### MCP Server Not Starting
249
+
250
+ **Symptoms:** AI assistant doesn't recognize DQM-related questions or `search_dqm_docs` tool is not available.
251
+
252
+ **Solutions:**
253
+
254
+ 1. **Check Node.js**: Ensure Node.js 18+ is installed
255
+ ```bash
256
+ node --version # Should be v18.0.0 or higher
257
+ ```
258
+
259
+ 2. **Verify Configuration**: Ensure JSON syntax is correct
260
+ ```bash
261
+ # Test the command manually
262
+ npx -y @crownpeak/dqm-react-component-dev-mcp@latest
263
+ ```
264
+
265
+ 3. **Restart AI Client**: After configuration changes, restart Claude Desktop/VS Code
266
+
267
+ 4. **Check Logs**:
268
+ - Claude Desktop: View → Developer → Open Logs
269
+ - VS Code: Output panel → MCP
270
+
271
+ ### Search Returns No Results
272
+
273
+ **Solutions:**
274
+
275
+ 1. **Simplify Query**: Use shorter, more specific terms
276
+ ```
277
+ ❌ "How do I configure the overlay detection feature to work with my custom toolbar?"
278
+ ✅ "overlayConfig toolbar"
279
+ ```
280
+
281
+ 2. **Use Known Terms**: Reference actual API names
282
+ ```
283
+ ✅ "DQMSidebar props"
284
+ ✅ "manualOffset"
285
+ ✅ "authBackendUrl"
286
+ ```
287
+
288
+ ### Outdated Information
289
+
290
+ If documentation seems outdated:
291
+
292
+ 1. **Update Package**: Force latest version
293
+ ```bash
294
+ npx -y @crownpeak/dqm-react-component-dev-mcp@latest
295
+ ```
296
+
297
+ 2. **Use Dynamic Mode**: Point to GitHub repository directly (see [Dynamic Usage](#dynamic-usage))
298
+
299
+ ---
300
+
301
+ ## Related Links
302
+
303
+ - [DQM React Component on GitHub](https://github.com/Crownpeak/dqm-react-component)
304
+ - [Probe Search Engine](https://probeai.dev/)
305
+ - [Model Context Protocol](https://modelcontextprotocol.io/)
306
+ - [@probelabs/docs-mcp](https://github.com/probelabs/docs-mcp)
307
+ - [MCP Server Package on npm](https://www.npmjs.com/package/@crownpeak/dqm-react-component-dev-mcp)
@@ -0,0 +1,367 @@
1
+ This guide helps you upgrade between versions of `@crownpeak/dqm-react-component`.
2
+
3
+ ## Table of Contents
4
+
5
+ - [v1.1.0 → v1.2.0](#v110--v120)
6
+ - [v1.0.x → v1.1.0](#v10x--v110)
7
+
8
+ ---
9
+
10
+ ## v1.1.0 → v1.2.0
11
+
12
+ **Release Date:** January 7, 2026
13
+
14
+ **Upgrade Time:** ~5 minutes (no breaking changes)
15
+
16
+ **Breaking Changes:** None ✅
17
+
18
+ ### Overview*
19
+
20
+ Version 1.2.0 introduces powerful new features while maintaining full backward compatibility:
21
+
22
+ - ✨ **AI-Powered Translation** - Translate checkpoint descriptions via OpenAI
23
+ - ✨ **AI Summary Generation** - Generate concise bullet-point summaries
24
+ - 🌍 **Internationalization (i18n)** - UI in English, German, Spanish
25
+ - 🔄 **Redux Store** - Centralized state management (internal)
26
+ - 🔧 **Centralized Logging** - Debug mode for troubleshooting
27
+
28
+ ### Step 1: Update Package
29
+
30
+ ```bash
31
+ npm install @crownpeak/dqm-react-component@1.2.0
32
+ ```
33
+
34
+ Or with Yarn:
35
+
36
+ ```bash
37
+ yarn upgrade @crownpeak/dqm-react-component@1.2.0
38
+ ```
39
+
40
+ ### Step 2: Verify (No Changes Required)
41
+
42
+ Your existing code continues to work without modifications:
43
+
44
+ ```typescript
45
+ import { DQMSidebar } from '@crownpeak/dqm-react-component';
46
+
47
+ // This works exactly as before
48
+ <DQMSidebar
49
+ open={open}
50
+ onClose={() => setOpen(false)}
51
+ onOpen={() => setOpen(true)}
52
+ />
53
+ ```
54
+
55
+ ### New Features (Optional)
56
+
57
+ #### AI-Powered Translation
58
+
59
+ Translate checkpoint descriptions into any language:
60
+
61
+ ```typescript
62
+ <DQMSidebar
63
+ open={open}
64
+ onClose={() => setOpen(false)}
65
+ onOpen={() => setOpen(true)}
66
+ config={{
67
+ websiteId: '...',
68
+ apiKey: '...',
69
+ translation: {
70
+ enabled: true,
71
+ apiKey: 'sk-...', // OpenAI API key
72
+ model: 'gpt-4o-mini', // or 'gpt-4o', 'gpt-4.1'
73
+ targetLanguage: 'de', // Target language (ISO 639-1)
74
+ mode: 'fast', // 'fast' (15s) or 'full' (120s)
75
+ },
76
+ }}
77
+ />
78
+ ```
79
+
80
+ **Key Features:**
81
+ - Automatic IndexedDB + In-Memory caching
82
+ - Fast mode (15s timeout, fails gracefully) or Full mode (120s)
83
+ - ~2-5s for 50 checkpoints
84
+
85
+ See **[AI Features Guide](./AI-FEATURES.md)** for complete documentation.
86
+
87
+ #### AI Summary Generation
88
+
89
+ Generate concise summaries of analysis results:
90
+
91
+ ```typescript
92
+ <DQMSidebar
93
+ open={open}
94
+ onClose={() => setOpen(false)}
95
+ onOpen={() => setOpen(true)}
96
+ config={{
97
+ websiteId: '...',
98
+ apiKey: '...',
99
+ summary: {
100
+ enabled: true,
101
+ apiKey: 'sk-...',
102
+ model: 'gpt-4o-mini',
103
+ },
104
+ }}
105
+ />
106
+ ```
107
+
108
+ **Key Features:**
109
+ - Automatic chunking based on checkpoint count
110
+ - Persistent IndexedDB cache
111
+ - 3-7 bullet points highlighting key issues
112
+
113
+ #### Internationalization (i18n)
114
+
115
+ The UI now supports multiple languages:
116
+
117
+ - `en` - English (default)
118
+ - `de` - German (Deutsch)
119
+ - `es` - Spanish (Español)
120
+
121
+ Language preference is saved to `localStorage.getItem('dqm_locale')`.
122
+
123
+ #### Debug Logging
124
+
125
+ Enable debug logging for troubleshooting:
126
+
127
+ ```typescript
128
+ // Via localStorage
129
+ localStorage.setItem('dqm_debug', 'true');
130
+
131
+ // Or programmatically
132
+ import { logger } from '@crownpeak/dqm-react-component';
133
+ logger.setDebugMode(true);
134
+ ```
135
+
136
+ ### New TypeScript Types
137
+
138
+ ```typescript
139
+ import type {
140
+ // Existing types (unchanged)
141
+ DQMSidebarProps,
142
+ DQMConfig,
143
+ OverlayConfig,
144
+
145
+ // NEW in v1.2.0
146
+ TranslationConfig,
147
+ SummaryConfig,
148
+ TranslationProgress,
149
+ SummaryStats,
150
+ } from '@crownpeak/dqm-react-component';
151
+ ```
152
+
153
+ ### New localStorage Keys
154
+
155
+ | Key | Type | Default | Description |
156
+ |-----|------|---------|-------------|
157
+ | `dqm_translate_results_enabled` | boolean | false | Toggle translation |
158
+ | `dqm_target_language` | string | 'en' | Target language (ISO 639-1) |
159
+ | `dqm_ai_summary_enabled` | boolean | false | Toggle summary |
160
+ | `dqm_translation_mode` | 'fast'\|'full' | 'fast' | Translation mode |
161
+ | `dqm_openai_apiKey` | string | - | OpenAI API key |
162
+ | `dqm_openai_model` | string | 'gpt-4o-mini' | OpenAI model |
163
+ | `dqm_locale` | 'en'\|'de'\|'es' | 'en' | UI language |
164
+ | `dqm_debug` | boolean | false | Debug logging |
165
+
166
+ ---
167
+
168
+ ## v1.0.x → v1.1.0
169
+
170
+ **Release Date:** December 17, 2025
171
+
172
+ **Upgrade Time:** ~5 minutes (no breaking changes)
173
+
174
+ **Breaking Changes:** None ✅
175
+
176
+ ### Overview
177
+
178
+ Version 1.1.0 adds new features while maintaining full backward compatibility:
179
+
180
+ - ✨ **Overlay Configuration** - Customize toolbar/overlay detection
181
+ - ✨ **Standalone Widget Bundle** - IIFE + ESM bundles for embedding
182
+ - ✨ **Enhanced `useDomPresence` Hook** - Better element position detection
183
+ - ✨ **`disableLogout` Config Option** - Hide logout when managed externally
184
+
185
+ ### Step 1: Update Package
186
+
187
+ ```bash
188
+ npm install @crownpeak/dqm-react-component@1.1.0
189
+ ```
190
+
191
+ Or with Yarn:
192
+
193
+ ```bash
194
+ yarn upgrade @crownpeak/dqm-react-component@1.1.0
195
+ ```
196
+
197
+ ### Step 2: Verify (No Changes Required)
198
+
199
+ Your existing code continues to work without modifications:
200
+
201
+ ```typescript
202
+ import { DQMSidebar } from '@crownpeak/dqm-react-component';
203
+
204
+ // This works exactly as before
205
+ <DQMSidebar
206
+ open={open}
207
+ onClose={() => setOpen(false)}
208
+ onOpen={() => setOpen(true)}
209
+ />
210
+ ```
211
+
212
+ ### New Features (Optional)
213
+
214
+ #### Overlay Configuration
215
+
216
+ If you have toolbars or overlays that interfere with sidebar positioning:
217
+
218
+ ```typescript
219
+ <DQMSidebar
220
+ open={open}
221
+ onClose={() => setOpen(false)}
222
+ onOpen={() => setOpen(true)}
223
+ config={{
224
+ websiteId: '...',
225
+ apiKey: '...',
226
+ overlayConfig: {
227
+ selector: '.my-toolbar', // CSS selector for overlay
228
+ validateIframe: true, // Check iFrame contentWindow
229
+ pollMs: 1000, // Polling interval (ms)
230
+ manualOffset: { // Manual offset override
231
+ position: 'top',
232
+ pixels: 50,
233
+ },
234
+ },
235
+ }}
236
+ />
237
+ ```
238
+
239
+ #### Disable Logout Button
240
+
241
+ If your app manages authentication externally:
242
+
243
+ ```typescript
244
+ <DQMSidebar
245
+ open={open}
246
+ onClose={() => setOpen(false)}
247
+ onOpen={() => setOpen(true)}
248
+ config={{
249
+ websiteId: '...',
250
+ apiKey: '...',
251
+ disableLogout: true, // Hides the logout button
252
+ }}
253
+ />
254
+ ```
255
+
256
+ #### Standalone Widget Bundle
257
+
258
+ For embedding on external sites without React:
259
+
260
+ ```html
261
+ <!-- IIFE Bundle -->
262
+ <script src="https://unpkg.com/@crownpeak/dqm-react-component/dist/dqm-widget.iife.js"></script>
263
+ <script>
264
+ window.initDQMWidget({
265
+ websiteId: 'your-website-id',
266
+ apiKey: 'your-api-key',
267
+ });
268
+ </script>
269
+ ```
270
+
271
+ See **[Widget Bundle Guide](./WIDGET-GUIDE.md)** for complete documentation.
272
+
273
+ ### New TypeScript Types
274
+
275
+ ```typescript
276
+ import type {
277
+ // Existing types (unchanged)
278
+ DQMSidebarProps,
279
+ DQMConfig,
280
+
281
+ // NEW in v1.1.0
282
+ OverlayConfig,
283
+ OverlayOffsetPosition,
284
+ OverlayInfo,
285
+ OverlayPosition,
286
+ } from '@crownpeak/dqm-react-component';
287
+ ```
288
+
289
+ ### New Hooks
290
+
291
+ ```typescript
292
+ import { useOverlayResistant } from '@crownpeak/dqm-react-component';
293
+
294
+ // Returns overlay information for custom positioning
295
+ const overlayInfo = useOverlayResistant({
296
+ selector: '.my-toolbar',
297
+ validateIframe: true,
298
+ });
299
+ // overlayInfo.present: boolean
300
+ // overlayInfo.height: number
301
+ // overlayInfo.position: 'top' | 'bottom' | 'left' | 'right' | 'center'
302
+ // overlayInfo.contentOffset: { top, bottom, left, right }
303
+ ```
304
+
305
+ ---
306
+
307
+ ## Troubleshooting
308
+
309
+ ### Issue: Overlay not detected correctly
310
+
311
+ **Cause:** Cross-origin iFrame or complex DOM structure.
312
+
313
+ **Solution:** Use `manualOffset` configuration:
314
+
315
+ ```typescript
316
+ overlayConfig: {
317
+ selector: '.my-overlay',
318
+ manualOffset: {
319
+ position: 'top',
320
+ pixels: 60,
321
+ },
322
+ }
323
+ ```
324
+
325
+ ### Issue: Translation not working
326
+
327
+ **Cause:** Missing `translation.enabled` or invalid API key.
328
+
329
+ **Solution:** Verify configuration:
330
+
331
+ ```typescript
332
+ config={{
333
+ translation: {
334
+ enabled: true, // Must be true
335
+ apiKey: 'sk-...', // Valid OpenAI API key
336
+ model: 'gpt-4o-mini',
337
+ targetLanguage: 'de',
338
+ },
339
+ }}
340
+ ```
341
+
342
+ ### Issue: TypeScript errors after upgrade
343
+
344
+ **Cause:** Missing type imports.
345
+
346
+ **Solution:** Update imports:
347
+
348
+ ```typescript
349
+ import type {
350
+ DQMSidebarProps,
351
+ DQMConfig,
352
+ OverlayConfig, // v1.1.0+
353
+ TranslationConfig, // v1.2.0+
354
+ SummaryConfig, // v1.2.0+
355
+ } from '@crownpeak/dqm-react-component';
356
+ ```
357
+
358
+ ---
359
+
360
+ ## See Also
361
+
362
+ - **[AI Features Guide](./AI-FEATURES.md)** - Complete AI documentation (v1.2.0+)
363
+ - **[Widget Bundle Guide](./WIDGET-GUIDE.md)** - Standalone widget documentation (v1.1.0+)
364
+ - **[Quick Start Guide](./QUICKSTART.md)** - Getting started
365
+ - **[API Reference](./API-REFERENCE.md)** - Full TypeScript API
366
+ - **[Examples](./EXAMPLES.md)** - Integration examples
367
+ - **[Troubleshooting](./TROUBLESHOOTING.md)** - Common issues and solutions