{"_id":"@yushaw/sanqian-chat","_rev":"43-395d19988f1727b48c2c18bea33d48d1","name":"@yushaw/sanqian-chat","dist-tags":{"latest":"0.3.6"},"versions":{"0.1.1":{"name":"@yushaw/sanqian-chat","version":"0.1.1","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.1.1","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"774c129742831a73002558f7e03aadecdd6cba07","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.1.1.tgz","fileCount":15,"integrity":"sha512-LYi8+TOXABiDjKuTBezGFOa5uyyhAP/uVGjJCM6Bejxze+eWaXZlN9aNRaqjhFOeqx74IB47aCWyfAzHWQe3ww==","signatures":[{"sig":"MEQCIFEWbnVnY5ilS/npd1Vl9BMXjHpWSG1X+Fc8+17jyDz8AiBy7+9Mv26aS1m7V1n7+TA7Ih+k2T5JB11VBBiDgqmEsQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":157654},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"}},"gitHead":"cab7cbd1416df7195b60072287fb1fab6e65c5a5","scripts":{"dev":"tsup --watch","test":"vitest run","build":"tsup","clean":"rimraf dist","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0","@yushaw/sanqian-sdk":">=0.2.14"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.1.1_1766769295176_0.9950381940230977","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@yushaw/sanqian-chat","version":"0.2.0","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.0","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"13f60ebf2c045d8408a69b747a6c5aaf02028e40","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.0.tgz","fileCount":25,"integrity":"sha512-UtYJaciI/mlkqJ/pRztLUyyLw3S5G5aR2w878I0Cg+yg+bKHDfuz/KB85BdiVZ31PQxWf49t6/9JaT2oNCrsAA==","signatures":[{"sig":"MEQCIDVvw3pLd8Q+/OYN4oi/DVYFBUD79QmWVkBnauMalhRqAiA7f2qo09hKycuBjosRlbD4zBrdBC+jkge2t8XCdhNSyQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1071721},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"05e6d20680d3d34ddb644ce78d6621f0de09bf66","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"file:../sdk"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.0_1767442727788_0.9790379114924939","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@yushaw/sanqian-chat","version":"0.2.1","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.1","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"d945a1b752593be18a13eb1d7f463e7c696589ad","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.1.tgz","fileCount":25,"integrity":"sha512-kHSHSDhNvzlahTP3wR0eSJQqUZDg7KUL0y/FuCeEbc/rIeClbd8ZFMJt2Xv6zfLgPmYoqKeDw5fbKUuvKIVxqw==","signatures":[{"sig":"MEQCIBfNt9QL0c59XN7oTOirxhmQHcFBjdNr2GnffgecyDJsAiA+JP0SVcyseA4h0Z3ISA0SFd29FDHTvurQxBx3c4GgAw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1071716},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"05e6d20680d3d34ddb644ce78d6621f0de09bf66","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.1_1767443245777_0.5670927131068899","host":"s3://npm-registry-packages-npm-production"}},"0.2.2":{"name":"@yushaw/sanqian-chat","version":"0.2.2","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.2","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"ba44d04fba829ca968f0b9f171a67df51351bc71","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.2.tgz","fileCount":25,"integrity":"sha512-u4HzGXEaLosEIOvOEeD+Bm2svBnr4i/GRVCRLXWVYCsqK6KoEPI4/CGPpsbH4svOtHdT+Fbs6kP81iAlu089oQ==","signatures":[{"sig":"MEUCIC3fCMeLiBjTpHZzzQUSDe7aamBucfsESEPiEtTkayJqAiEAqcswBTUVFAbImJfCU9bjGUb+76QEIQA+kRJ1/x1SlyM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1075520},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"18acb9fc015c67432639c8097cfcb60d4b0c123e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.0"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.2_1767447530909_0.36518798007326914","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@yushaw/sanqian-chat","version":"0.2.3","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.3","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"d620cca31d8e0d99e858e945811c2f6189886acf","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.3.tgz","fileCount":25,"integrity":"sha512-P9oVjxRm3/s0MKo57LK4oRjSY5WzjsnW6LsrxerxdTrj7qui2lalXEkC0cqmj/5IBqSMczbv5Gjk8841/oOfHg==","signatures":[{"sig":"MEQCIE0OeXZ653n1S+R4pEVl6LOC8YqAMipKQ+QH0Es/mdI5AiBISa8ufs6WpGLN5eyjSYGn6TL2PkR5T2X6V45jS6KibA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1081114},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"06883e43d247b90ba4952667511e8e340902010a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.3_1767460743535_0.5092029381813163","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@yushaw/sanqian-chat","version":"0.2.4","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.4","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"add234549cf5bbca43d400ff86048242fd3da256","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.4.tgz","fileCount":25,"integrity":"sha512-WmOD4AV0NlHPaIEPUDhtCrvrbdKSomBWFb+FJ7oebNQLJjg5VYd1pLc80zhXP4VOc7FvxuPRZNwUz5vUv23ISQ==","signatures":[{"sig":"MEQCIFfM4JBm+rlKuank+FHHBcAgxuKho0a+SnRBwD2DuxA9AiBe/l5XwjWvFqqTEqwRwr4m6D7gXQl25ymqqK3PSK4TOg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1084878},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"87e41de50b146839da8b541ad2dfbd7e2c158ea3","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.4_1767581677804_0.3528161280057538","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@yushaw/sanqian-chat","version":"0.2.6","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.6","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"b9e3727589a0b2ebd9661ed79d707bc579ea8584","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.6.tgz","fileCount":25,"integrity":"sha512-tnbnINrHWJO8r5U3ZHBf38SDcUajEf+4U5l/fBDMuQ/q3r5nS3NhVL8isRcVGSb0OpLhQjaxKDDuX+Cgx7Me5Q==","signatures":[{"sig":"MEQCIAF2ZiBL2Xs+qZJoIyMG6J4m8fBK9Iq5owdqRhvXcCrdAiBA7z726UwaFD0zJNaKIlb4WBnNyG2C+4TY4qbd2CuwBQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1271670},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"6c1d658c02d15e4d090f2d447fcf1b61df7e2cc6","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.1"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.6_1767630079882_0.7147385060690747","host":"s3://npm-registry-packages-npm-production"}},"0.2.8":{"name":"@yushaw/sanqian-chat","version":"0.2.8","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.8","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"3705f15cf9c5d23feb548fae7da6b3464d20091c","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.8.tgz","fileCount":36,"integrity":"sha512-ElygQZRmxbopL0kwxjz8yDl+oeps5xvUv7dX+ZGELwEc+FjVix6ogAB2IkmleSGRmBEtlyenpS0NpfswwbMiYw==","signatures":[{"sig":"MEYCIQCUVq/kFPWaODiZcXmwhJsP5OZtXR9ZWqM9YUkxabDb2gIhAKwgMBrbd+XOyQpKQiytW3H1AN9S5pr7M20A3s/grQdO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1420161},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"623b6e1d6f3812898f86ee75acc0eb7f4d7aef0a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.3"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.8_1767697055644_0.9391458002942195","host":"s3://npm-registry-packages-npm-production"}},"0.2.9":{"name":"@yushaw/sanqian-chat","version":"0.2.9","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.9","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"6d445479e7bbe7c7d3638d3d78b0d91375fd23c6","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.9.tgz","fileCount":36,"integrity":"sha512-xnNElqD6kTXoyIRMNIjqUCMKsguo3IsUGndLV/CMAbQjpwFwzEu/uNzyI4hE15u2IPdawnGn6KG+EDcEUDtcWQ==","signatures":[{"sig":"MEYCIQCNB1CdjsjuxuKx79oDfUd4Axlg/JUMgNmvO9VswCr3DQIhAPuxZdssYZC4ZEtBE93WO2Q4csrpW+HG80yar4cPquPY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1420161},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"d2915a289c285e0fd446078c71d68d146aee9552","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.4"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.9_1767700686081_0.18943909585758267","host":"s3://npm-registry-packages-npm-production"}},"0.2.10":{"name":"@yushaw/sanqian-chat","version":"0.2.10","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.10","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"4710543d9f854e784105469d2411fd384a016e3b","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.10.tgz","fileCount":36,"integrity":"sha512-SAU5WkqGMaX0lmC3P0q0its0CcNqw7D17O6/0DcZl4/Ml4Fw7DpxUKktUjEFIJKONKZdJYNzY+odMtxrD2mKZw==","signatures":[{"sig":"MEYCIQCq8pQsLxA9FH5YacQwCUKA4mEqfl5C025TTTqzwzYhfwIhAJdaMprrlLjTXAG31hqIQM2N7XL6ba4qU/IAXBLAIV7Y","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1420910},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"78d962885013542c3e8d2f68c818ab68629789a3","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.4"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.10_1767720932155_0.8852853565316128","host":"s3://npm-registry-packages-npm-production"}},"0.2.11":{"name":"@yushaw/sanqian-chat","version":"0.2.11","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.11","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"9c78d42a24de276a73c2a064fdd35d656bf4d72c","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.11.tgz","fileCount":36,"integrity":"sha512-Gh79kKZLf36pZPY6vEBvPeC/11rNwsSJvqZaIpZ4KhsgxILPZnUy+6ZJ5EZMYIY6KRPIYgMI4Z3n9pay09TK6w==","signatures":[{"sig":"MEQCIAfaayQvok3z/XBEW7cWGAMhTMiK1229L2VHclppSlpOAiBxuo8DBgETdCtmjQStj6YVYeTfkJOb2mPA2pOOm+UPTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1420910},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"78d962885013542c3e8d2f68c818ab68629789a3","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.5"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.11_1767721038907_0.9231273557012818","host":"s3://npm-registry-packages-npm-production"}},"0.2.12":{"name":"@yushaw/sanqian-chat","version":"0.2.12","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.12","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"53c81d5c40d21eabf44b09d0cd979dad647106a4","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.12.tgz","fileCount":36,"integrity":"sha512-L7wawZ6w6dO6anuu6U/04ELOTu6F9rqneMsXBqIzyQWT3PhyWDEgDjQ4FB0bRkTUCglEtSAh42hjTMfGyrOsxg==","signatures":[{"sig":"MEUCIEFBKTOkz7Kqs5RX7mdnxkLkxHaYqQzxpXXerELRQzRrAiEA7+svxxQFQDjOKrCuB5PmILh8a1WX9Nr7ovZY0wRZEdA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1422408},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"6cc1a619ae0aab57de153e9cd5b67c742e529fbb","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.5"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.12_1767981242057_0.26626913937393537","host":"s3://npm-registry-packages-npm-production"}},"0.2.13":{"name":"@yushaw/sanqian-chat","version":"0.2.13","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.13","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"a2b4d9a535d44df4aaf6b9a40cb6bee1d263fb6e","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.13.tgz","fileCount":36,"integrity":"sha512-Mc0sne5RA/GN/lc5New6+NT+ceqB1OAQ7hww+Y/HIrkTcTwqLSBqqZwCFRPBwIp5+pdGfH490oNynHPDw1pkjw==","signatures":[{"sig":"MEYCIQCDwQgHOj3PBplNysm1cbr2pmdeLPSoU0saiC0XHXhG4QIhAKY5NpHgNNO0oIy59lzyExUhIXG+zpne+SElsNTKVZnq","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1422540},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"a6dd68de8c05a45529579213fa29aed4bf9b8577","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.5"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.13_1767983852989_0.5927178523826799","host":"s3://npm-registry-packages-npm-production"}},"0.2.14":{"name":"@yushaw/sanqian-chat","version":"0.2.14","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.14","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"c2bc1209d19273c00f6292fb06e6a479a397cb62","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.14.tgz","fileCount":36,"integrity":"sha512-lvXI5JFQaJGSSGuA7XEA8gXoGwhExVMcLkm0yL03finnvGRAQfuZcGtxpIiAHF4nKIV4nEG9qA+5x8xgpQNxFQ==","signatures":[{"sig":"MEUCIACKiTBJ9lS2ixM1OJJTo2JOUdsvDvkG4OLcJdlLylryAiEAxSuIH5p7wzDOLwybROhk5eoCQrD3DDqw6DqLSKGzrhE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1466235},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"3390f04ec43996c528d5fdffe79a26fd2166816d","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.7"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.14_1768076596477_0.8734849588319902","host":"s3://npm-registry-packages-npm-production"}},"0.2.15":{"name":"@yushaw/sanqian-chat","version":"0.2.15","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.15","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"85d1e910b4ddc23f7a0d0173ae3cd1d27b14958b","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.15.tgz","fileCount":36,"integrity":"sha512-bx0/4OuBf45UHvBGhzo8HxJfi3TuViVltlTBnh5ZGE6FkXcdXu0J7KGLd2Cm5HGBruqvtMiyKPfSXNaiyLaUBg==","signatures":[{"sig":"MEUCIBuJwkM9hMyDl2aRQp4Kh0i71c7U1g+JfQ6eUOAVNjT+AiEAgaqJ4jYR8p7w5Jz8AVpkZ+Ed8su4PJb7xikSTPNKL+c=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1466329},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"f8a77bf3eb4584a22b6a2621089266116125558a","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.7"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.15_1768120733733_0.8932289771979562","host":"s3://npm-registry-packages-npm-production"}},"0.2.17":{"name":"@yushaw/sanqian-chat","version":"0.2.17","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.17","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"46b52bcad858ebae264c30daaf6fd5d86cf216e7","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.17.tgz","fileCount":36,"integrity":"sha512-5Y+easjd04ZfmW1QGPoQRPZTh1lheLO9QBRJ+ExkZSAAnZ7a+PweAeRmk8jqFn3/FgQ69ArnnSDo3L9SfFfAqg==","signatures":[{"sig":"MEUCIQC6Tx3+eX9LjhAuowc94jR4z86mz/mPI4RJ3OyADW52DAIgQLDUVFUKNFH8Tc+evV0k/Tdn2Dv+uvZy7IGYzfIeeu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1477989},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"c8fe04df5413249864612ef6b27971fc8243c028","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.7"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.17_1768200246749_0.12065182911884342","host":"s3://npm-registry-packages-npm-production"}},"0.2.18":{"name":"@yushaw/sanqian-chat","version":"0.2.18","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.18","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"e9c6190f9eade9c4608d9511cd9fbe61a7678e29","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.18.tgz","fileCount":36,"integrity":"sha512-AdXxb4GjCHwnznC1FfnBkJvStd2dI0KUFNtULtaPWC5vcLVsDk3MolGgv32DO96jLcDIQxNsLdW2EyqUGNfH8Q==","signatures":[{"sig":"MEQCIAUwCYHKjQoVwNkNXMB6QV7zI+Av/qZlG5PTB7O+ZGxLAiBowQKT6Ax7ieGoeKp3eapIgo+Z/dy6UOxxbNRuTixcpw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1483073},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"9987b1d3ffae47ac8bb01db19452d7f52a530e15","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.7"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.18_1768299345505_0.373822156418661","host":"s3://npm-registry-packages-npm-production"}},"0.2.19":{"name":"@yushaw/sanqian-chat","version":"0.2.19","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.19","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"3ffe8f041a8f0085b0f08a1c053b313f04a87727","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.19.tgz","fileCount":36,"integrity":"sha512-0btcUke8DVdPUmATXS8ElxoocLva06jqaZs/z8i5s6ZL6/gK5vhA3O/Q4GHaI0nE5mvmEyUQT1kHQ19mdV2lJw==","signatures":[{"sig":"MEUCIQDLf5OWX5+ZcAoG7vAmXukcdAAN6616ONgYYPTOFMh8FQIgZOBcL3DCmA7Q7xFSB4BzJhG8atse/hWSVSNivgZyCAA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1485611},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"7265571d352c84e0f045532aa85bebd10a1d3d32","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.9"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.19_1768502029837_0.477435821659822","host":"s3://npm-registry-packages-npm-production"}},"0.2.20":{"name":"@yushaw/sanqian-chat","version":"0.2.20","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.20","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"62bdb2abbef64bdc4ce37d38970f8bddaae9bc3f","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.20.tgz","fileCount":36,"integrity":"sha512-7XR/zSfJfn2l9GUtIMGbjtWtLey9vovZ9ym7chM4G5S656+i+eW2urjK/D2+e615M8LWXR6aOENwpdVh4McGmg==","signatures":[{"sig":"MEUCIFGVpqAA8y72I196nitYRrmS4hjWR4B6vtGEWV8PabS1AiEApShvZM52K/0+iYCY00c0mNZhtYIoqJYa9laKJEP4mYY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1485612},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"4aa1fbe7f61b07358f39976695511c060a96a107","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.13"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.20_1769628166431_0.8404847184039488","host":"s3://npm-registry-packages-npm-production"}},"0.2.21":{"name":"@yushaw/sanqian-chat","version":"0.2.21","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.21","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"35b48fc7ed41e4b9f7850dcafc7bb57e95a3aaa0","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.21.tgz","fileCount":36,"integrity":"sha512-Js96WB794KH5aC2WH+KAByNnpS+pCQdR3J5YDCdkllRXKF7arKwOI6U4SVKo5VApD5VwGBdIramKVbB2a1VbRw==","signatures":[{"sig":"MEYCIQCsJGz+FnPBBKOSgNYydf9p4kMl6ryi2/5n4SH5+JhDdQIhAPOxVyQvUFSOB7lDIJsQHYlz8w9WmX90LmMHyUyu5ap2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1510907},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"0a87f8c00b3dc5ecd92d923c24eb607dd8450193","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.21_1772089538076_0.4819590368045015","host":"s3://npm-registry-packages-npm-production"}},"0.2.22":{"name":"@yushaw/sanqian-chat","version":"0.2.22","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.22","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"56b624acabec454935ca8cb91b69c9cf7d85fb83","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.22.tgz","fileCount":36,"integrity":"sha512-XojU7XvW+4LbnEyKfDdn1b32fkRV8FSaBI90KrnzVBLG99eGZoKy+etXx/MgxghlmHzygGYZ67dJBkk1e/1G5g==","signatures":[{"sig":"MEYCIQDKVpkEtVqgSLu1DWiVIK1CZ/7SUESOPKCGDc0hKOCTfwIhAKEICIIHqpHkc5Ygi8Ec4ibp11Vgc/HmKcJW8Sc6yhNS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1511984},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"0a87f8c00b3dc5ecd92d923c24eb607dd8450193","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.22_1772090922046_0.39920926716933725","host":"s3://npm-registry-packages-npm-production"}},"0.2.23":{"name":"@yushaw/sanqian-chat","version":"0.2.23","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.23","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"546f0bd29b72a3983f8551d8e6da231d62b6ff97","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.23.tgz","fileCount":36,"integrity":"sha512-D7iOIJCB7qNFF8UW3TdTu1Wc75e0KQdZ8UarO3ArMv3gUjlpLqO9zikp3tEtVxRcCPeAAH/2MhlW7sUEHBnCCQ==","signatures":[{"sig":"MEUCIByrKApmjS9HsHmnzz+OR3F4NZoLhAB/eh1Ea4ab7Cd2AiEAprJBcggt+8M72Kar4n3avnl2Pf+Yq9MCrdtZwGT1lvg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1513420},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.23_1772091587907_0.920583359771109","host":"s3://npm-registry-packages-npm-production"}},"0.2.24":{"name":"@yushaw/sanqian-chat","version":"0.2.24","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.24","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"5da50fd64b98fc78f21e5386af433b59fe81e2ef","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.24.tgz","fileCount":36,"integrity":"sha512-jNgo2yUR/b3gVfigQLBWF0zKOGHOkLd34+U/2gdEpRZJcmehbVo0qePjR9g4A1UwyM1tG/gSB9eiGcKN5XwYeA==","signatures":[{"sig":"MEYCIQCEfPyaWF6Kl+p/Mv8jalAqJSidG9//b+TaO6DGdF/YmwIhAKaAWEGC+4lovPNIYxuF0nG3hlcFoT2YCKAuwUXTLpJQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1519338},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.24_1772104906341_0.2643842794654314","host":"s3://npm-registry-packages-npm-production"}},"0.2.25":{"name":"@yushaw/sanqian-chat","version":"0.2.25","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.25","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"c6110304a3a16e4183e8624083999b6805634c99","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.25.tgz","fileCount":36,"integrity":"sha512-WNAOvyCZXcRJ9/qfH5ArGBSkHZmMoVH0zD9KrjtRU+05omv508lSmVHn/kFPrCXs0bAoN3GFuffqjjYx3ANRDg==","signatures":[{"sig":"MEYCIQCDpNTH9lEOtSymYNIFaFc5FToEdL75VylWG7vnPFD8FAIhANuqW1AF3ibwZD2hCdPzXjzLtIXOhDsoztD5p9qjDK+k","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1532404},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.25_1772105983710_0.8751351702830055","host":"s3://npm-registry-packages-npm-production"}},"0.2.27":{"name":"@yushaw/sanqian-chat","version":"0.2.27","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.27","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"a4bf99f32951c14c42d0f09174f95fbe3de7796f","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.27.tgz","fileCount":36,"integrity":"sha512-lnLhzq7wyNjvCfiJVRZ5HjpbuxQMf+ZqwMvp0pC9Bl/24wYZEACbPttwdImd3IuhknWcksCfwhY6Gep/FXmbKA==","signatures":[{"sig":"MEYCIQDfD5IH0Kzy8HM3M5mJyjuUOqPBiFHrNNK1tgCfA7IRdAIhAN9ZVLYQODUXEHOtohVQ9R4H+m9yoEuUElFeS3gxL5yJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1533518},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.27_1772106719841_0.261243021924491","host":"s3://npm-registry-packages-npm-production"}},"0.2.30":{"name":"@yushaw/sanqian-chat","version":"0.2.30","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.30","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"9e895e206ac37f5b0006c373bc743a3aa5de3cf1","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.30.tgz","fileCount":36,"integrity":"sha512-ZrYzoGWWovVxsGD/aQVNF1Ayr7DeQt/tRWwGrPtOQhBMDLp3Y8+oIk2FmbHMsvRenQ1G+Zb4i4QKRazQje9AJA==","signatures":[{"sig":"MEUCIQDsEmefXajsEHQkviquPXC/wfKpM+nsK1X5k0V0u7XmPQIgPfPRtpuODqkx7byAlP60nDAqn4yQ61blhwoBOaKxqFY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1540864},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.30_1772108311584_0.6684013949762815","host":"s3://npm-registry-packages-npm-production"}},"0.2.32":{"name":"@yushaw/sanqian-chat","version":"0.2.32","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.32","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"a4b4e26a34ee16c5fe18ccf2832f07f9c6e148b1","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.32.tgz","fileCount":36,"integrity":"sha512-TfZS2nQ9/QJ4aDi+hFfDOUO5NcJQvRmLa/3XwP27iZYIC8fNhSuAeB+0wIC7ktpbgZN9eBroQgK/7UU2KCJrYg==","signatures":[{"sig":"MEYCIQDQ5O1rndNckJ2BC6Dq/bhrbIMozB9XGp2ASy9c9gQaQAIhAL6EgFfISbKIgn2iugXu/9QysjRHi3jqcHAzjFwzaqgb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1541412},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.32_1772113783296_0.40532671328902503","host":"s3://npm-registry-packages-npm-production"}},"0.2.33":{"name":"@yushaw/sanqian-chat","version":"0.2.33","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.33","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"764f3f3a0767016332813bdb00ba072926e9bb30","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.33.tgz","fileCount":36,"integrity":"sha512-yhNOw0/Bma2eEAxdIh3xNwkRxCAD/7/GzHljD5hoxtD8MJz4OJECMoM0kmr89JhATo3gCnAtpwDiS9KnyIT16w==","signatures":[{"sig":"MEUCIEgGIf5tKy0NbysZAtmbHDW2Yzq9jzAW4+1omPhDPWFvAiEAq4EK/q98aQvkgJI4LIXNgOuzvO5cyIkQdKHvjfeFBtY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1539709},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^1.6.9","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.3.0","@types/node":"^20.10.0","@types/react":"^18.2.0","@types/react-dom":"^18.2.0","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.33_1772115119120_0.11949659594298145","host":"s3://npm-registry-packages-npm-production"}},"0.2.34":{"name":"@yushaw/sanqian-chat","version":"0.2.34","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.34","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"1f984f1ee402471b25b237978d13449768355f19","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.34.tgz","fileCount":36,"integrity":"sha512-0dQQdmDa59n5CaMJtDnrVlGDZoMMGDeJwpCs6vzm7iWVs1vfatQYSl0q9NFPjqfgg6toq4oGchdwtIaXryuo9w==","signatures":[{"sig":"MEUCIFJUvGTws5MLWpIQZSLFIDH115r8iDAzQlxpAkON44oWAiEA4mI7QdUp2Ro8+XN5vHQLIzegbaWID3e7j1IF+y3dAhA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1547849},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"76724a68a97fd7a4209e741a03dd2b283940274f","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.24"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.34_1772272280907_0.8285917362791038","host":"s3://npm-registry-packages-npm-production"}},"0.2.36":{"name":"@yushaw/sanqian-chat","version":"0.2.36","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.36","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"60374f343907972dd2ee2cc36e676160f862f443","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.36.tgz","fileCount":36,"integrity":"sha512-yVBgh8bcg9CZ33lbXBoPsu3qGTkLP3v64GySDqLlM1+lxVzUDE8JrNEnDFssu7uo2SlvVC1Hnb1M1y9xLVCCeg==","signatures":[{"sig":"MEUCIC5oJ/cLqo78JDOq+wL7h39pODi+3Rz5Up4SbLR7ZezhAiEAk6V1w/v3xoocihHHu6w5L54Nurw/COSyJYntnyBV97Y=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1547977},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"0645f30b2c27efb84d2464cc937d8da4df28939c","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.36_1772297798470_0.4643669198436977","host":"s3://npm-registry-packages-npm-production"}},"0.2.37":{"name":"@yushaw/sanqian-chat","version":"0.2.37","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.37","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"69121b69383bbb805b4dcb44fba848605b5f1bbd","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.37.tgz","fileCount":36,"integrity":"sha512-+yWcmY9d0ihnA3Y/efgMe0/ljv1jREYWHbwXJenmOV1it8RQQ1mABajo34wB3eCtZStGQfjyEJw216OxQ5DYPA==","signatures":[{"sig":"MEQCIEm1JT5aLiqFnf0svpLxi6YKQ9pOJWHEUuHbOQSXja/JAiA72/u+enZKTocXh8M2zg3NfWwx6j/RkOowMw2Z9Dmzaw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1547797},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"729ae520632e1966f337e4e023b7bc53d46899b8","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.37_1772464614658_0.17692905727225572","host":"s3://npm-registry-packages-npm-production"}},"0.2.39":{"name":"@yushaw/sanqian-chat","version":"0.2.39","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.39","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"aecd26f25b7a0e7c00b293504e70864525b6fc93","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.39.tgz","fileCount":36,"integrity":"sha512-XZpI+Eg045rNpETONYk4sTu0ZuCx0g6QEjjKlbQ8ndCiux1rZCphPioE7Xtvjqin0mIFBYmCPyDYRm5TG5JuGQ==","signatures":[{"sig":"MEUCIDkSRupAzbMDk7uIS62+ELo+xOJi2J0wISXCj55hZYyyAiEAsny40AyzV2SxWjyf5a/wkqkeP550JHyCKvKdBlk3s9o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1557535},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"7287dc1ba5f7248e5db49a377e406dcca1a75e0e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.39_1772613003529_0.14878921256488575","host":"s3://npm-registry-packages-npm-production"}},"0.2.40":{"name":"@yushaw/sanqian-chat","version":"0.2.40","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.40","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"ca9a87d6cd9d5c0afadcd20d5f4887cbc2162ce8","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.40.tgz","fileCount":36,"integrity":"sha512-L8pO7vZdtrFOmHOr6s2a98NlMK3U2YvYZd4EG/EnsBb4G/JbX8MtKKQcP06mkdjy+I33lxbGSnYUitd/dCcgMA==","signatures":[{"sig":"MEYCIQC2SbQQMrnshlW9lKX/4cUR507DQydw42d+oNPk1HMg3gIhAPEwNTi6YVE8mW1Icl6XsbZNWcZAAEmBMc9RxFZ4zmKQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1573537},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"7287dc1ba5f7248e5db49a377e406dcca1a75e0e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.40_1772620133593_0.6481733400479914","host":"s3://npm-registry-packages-npm-production"}},"0.2.41":{"name":"@yushaw/sanqian-chat","version":"0.2.41","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.41","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"0bc88e9ddc58fc83393e2b63951474487d23dfbe","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.41.tgz","fileCount":36,"integrity":"sha512-TPX0/GNv3QNTgKsI5JxKKTrnyI1ebMxae6KsmsmxUgtXM2oSQchxybkxw3RGv9LWViW+MFOTM4v4Oomq9Xznhg==","signatures":[{"sig":"MEQCICKqMKgI0mqnGQE1d9KiJhZZvBtdCtK2OtbEnwlIEwztAiA6rzRke+tHjpMGOT4z4VZa7ytMV+RNt/K3iwzdzJuYJA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1575109},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"7287dc1ba5f7248e5db49a377e406dcca1a75e0e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.41_1772627651928_0.06409074169593998","host":"s3://npm-registry-packages-npm-production"}},"0.2.42":{"name":"@yushaw/sanqian-chat","version":"0.2.42","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.42","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"8da046c3743dd771087ae5f715a6b164645a1d69","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.42.tgz","fileCount":36,"integrity":"sha512-w0iuyAqbHqKk/BqeznZZyX87MZBeM7bt+jct9VcCnT1kb2kT8yqMNPwZD/kB5Ukw5qGfpT26ltSBCDz6BmoK7Q==","signatures":[{"sig":"MEUCIQCqkkNXDLz6IB+LGDNcnvXNHM61a3EM62IcB3n8+YRrjAIgay+mANlQ1neo4VhEQTmqpg3g7J1Ib57IenClRZnKqBk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1575441},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"7287dc1ba5f7248e5db49a377e406dcca1a75e0e","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.42_1772627893884_0.7533733167813601","host":"s3://npm-registry-packages-npm-production"}},"0.2.43":{"name":"@yushaw/sanqian-chat","version":"0.2.43","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.43","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"175fd763e413e2b3240df4bc53e408461f70fc36","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.43.tgz","fileCount":36,"integrity":"sha512-52LKAzTCHuE5HAA529T4EF9WBmEcVHfz7Y2h6a0bp8tZo+XXzfG/Kfe6V1meIi2HW2Fe3D1AlOVfQoGx0z02jg==","signatures":[{"sig":"MEYCIQCAV4x17l+bx4mkg1jOqm8jtSMZw+0JWWBB05AORyUQGAIhAJ+c2wbCXn6fqQ0VETSuiItqVAoaUOc5Xoo/ZOQxqCue","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1582056},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"73763a1bcc5022aa1194f5176c35bf9c38a89e69","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.43_1772630409234_0.5001989338652215","host":"s3://npm-registry-packages-npm-production"}},"0.2.44":{"name":"@yushaw/sanqian-chat","version":"0.2.44","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.2.44","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"4c7ba82d5ab6fea6a3714912c3508043a55c5ac6","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.2.44.tgz","fileCount":36,"integrity":"sha512-ioSITqHzhfC/aA7uYxSphuSAyQuobhncXc5tMf0EB/2EBGQyRu48/xG9wupM1TS1gv08jMY/ZPVfqahFfOY0jQ==","signatures":[{"sig":"MEQCIB+R9C4U9WCSTvmm8PGQooBgWp1jMpTFUTo2r6547hCTAiBuasez/NUs6v9Kd3z6HdlqBvIxgq89J+T9c8ogS2xEZA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1594114},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"6605968138163ea1572d1932c13df7f6ff657689","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.2.44_1772643094954_0.5278468781029266","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"@yushaw/sanqian-chat","version":"0.3.0","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.3.0","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"4fd8fc162f7edd7463e52cee095c0966ff36f120","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.3.0.tgz","fileCount":36,"integrity":"sha512-1YmaDfpxwK1/V2OY40ySLqO357g4ep96CWlpaDX+mk74N0RqrjKyprC6hhv2VX19Glew55C682NnNyoOSMNP5A==","signatures":[{"sig":"MEQCIGNct+p9OYP/xSTTT1tfHAMNmvqwwv4KFY59JI8GpQK8AiALAO7+5x3Z0UgvuqDh8SnZngWD88uduo1q0MamRtJKTg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1629159},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"6605968138163ea1572d1932c13df7f6ff657689","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.26"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.3.0_1772646556644_0.5380755347200594","host":"s3://npm-registry-packages-npm-production"}},"0.3.1":{"name":"@yushaw/sanqian-chat","version":"0.3.1","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.3.1","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"c889efb4b4f79b40f3017e703d39bd4342c6b7be","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.3.1.tgz","fileCount":36,"integrity":"sha512-4Ax/h6HthhENYXCffR0if+TOHJf6CgO0DRg0zfhSsOVejyUcQv/Bv+OqprnoPjhPGDfIMmv3cxvp4urGjpxGyQ==","signatures":[{"sig":"MEUCIQCnpOFv3Jb/oPNq9dIJdHTlsulxTnbC2ZruiHOHoZCOBwIga30CBFk4EBge0iZwIm0+vnGQ1+CC3piDlVoG6AW/4QY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1646031},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"1e34b4dbcffb5e56b2dcbf2b2c7f4aea06056d16","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.28"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.3.1_1773209107264_0.6749843435037308","host":"s3://npm-registry-packages-npm-production"}},"0.3.3":{"name":"@yushaw/sanqian-chat","version":"0.3.3","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.3.3","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"bf0be288c8f867cedb3e0bdfb93815aa06cc87fe","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.3.3.tgz","fileCount":36,"integrity":"sha512-OjrzBtBjdWRIbPGhHqRmAYciFEd2SiGAnNplFyFGMzHFN0JZDbA0D32r23SYccQER3k18HZzwynKhnqL8R6eig==","signatures":[{"sig":"MEYCIQDUTXPBFh0B/hJTrIUihLLbL2vAr4aINpDPBJhcLG7h9AIhAIgiDeTtzaRpYlUDA138LaW7B07lBUmfwWqKcAOYX2Zm","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1663413},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"0e28a40973ec629831de57cdda1610097e49e7c9","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.28"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.3.3_1778255228011_0.4254857284937281","host":"s3://npm-registry-packages-npm-production"}},"0.3.4":{"name":"@yushaw/sanqian-chat","version":"0.3.4","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.3.4","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"d03c90a1905337194b11ed9b5e7e047290f4c6aa","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.3.4.tgz","fileCount":36,"integrity":"sha512-Q0IWO8NaXRTR663cCsyZHppSfxn9GX5J/laa3CwTdigKDODaBgot0wlU13Ae+b3g/95XVzZR3x8QRkJrLqLeRA==","signatures":[{"sig":"MEUCIHAt9NzybRiidkA0P0Mt0j8L+gJxvhmF0vPc9NSGaXs1AiEAhxnWIm/dY2B2cNCzK2xw0I5Rl6OMWadCsukIihvTAs4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1663413},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"0e28a40973ec629831de57cdda1610097e49e7c9","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.28"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.3.4_1778255742013_0.6906497902118678","host":"s3://npm-registry-packages-npm-production"}},"0.3.5":{"name":"@yushaw/sanqian-chat","version":"0.3.5","keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","_id":"@yushaw/sanqian-chat@0.3.5","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"homepage":"https://github.com/yushaw/sanqian#readme","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"dist":{"shasum":"b7e4f89c97da22a29e741f416865220dd1fe65c9","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.3.5.tgz","fileCount":36,"integrity":"sha512-MFT5jrt6il127wKUaLOytSSfZm3bM4IuwwQ4eyZJleIZxIMnoO44y5kouHIQdAW/z+dsVt8NlmH8YeDnL/076w==","signatures":[{"sig":"MEUCIQD3UmjefZMEBRMkdqvjdBrmtImnfombOz/fuwbW2KjI+AIgTg1e990aE2bjZPCbaXtuKsgpQ4RBT1vT6ShTxjpph3s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1663333},"main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css"},"gitHead":"0e28a40973ec629831de57cdda1610097e49e7c9","scripts":{"dev":"tsup --watch","test":"vitest run","build":"npm run build:css && tsup","clean":"rimraf dist","dev:test":"vite --config dev/vite.config.ts","build:css":"node scripts/build-css.js","typecheck":"tsc --noEmit","test:watch":"vitest"},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"repository":{"url":"git+https://github.com/yushaw/sanqian.git","type":"git","directory":"packages/chat"},"_npmVersion":"10.8.2","description":"Floating chat window SDK for Sanqian AI Assistant","directories":{},"_nodeVersion":"20.19.5","dependencies":{"remark-gfm":"^4.0.1","streamdown":"^2.1.0","rehype-harden":"^1.1.6","react-virtuoso":"^4.15.0","@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.28"},"_hasShrinkwrap":false,"devDependencies":{"tsup":"^8.0.0","jsdom":"^27.4.0","react":"^18.2.0","rimraf":"^5.0.0","vitest":"^4.0.16","electron":"^28.0.0","react-dom":"^18.2.0","typescript":"^5.6.3","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","@testing-library/react":"^16.3.1","@testing-library/jest-dom":"^6.9.1"},"peerDependencies":{"react":">=18.0.0","electron":">=28.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/sanqian-chat_0.3.5_1778256209570_0.23999279896311654","host":"s3://npm-registry-packages-npm-production"}},"0.3.6":{"name":"@yushaw/sanqian-chat","version":"0.3.6","description":"Floating chat window SDK for Sanqian AI Assistant","main":"./dist/main/index.js","types":"./dist/main/index.d.ts","exports":{".":{"types":"./dist/core/index.d.ts","import":"./dist/core/index.mjs","require":"./dist/core/index.js"},"./main":{"types":"./dist/main/index.d.ts","import":"./dist/main/index.mjs","require":"./dist/main/index.js"},"./renderer":{"types":"./dist/renderer/index.d.ts","import":"./dist/renderer/index.mjs","require":"./dist/renderer/index.js"},"./renderer/styles/chat.css":"./src/renderer/styles/chat.css","./renderer/styles/safe.css":"./src/renderer/styles/safe.css","./renderer/styles/variables.css":"./src/renderer/styles/variables.css","./preload":{"types":"./dist/preload/index.d.ts","import":"./dist/preload/index.mjs","require":"./dist/preload/index.js"}},"scripts":{"build":"npm run build:css && tsup","build:css":"node scripts/build-css.js","dev":"tsup --watch","dev:test":"vite --config dev/vite.config.ts","typecheck":"tsc --noEmit","clean":"rimraf dist","test":"vitest run","test:watch":"vitest"},"dependencies":{"@streamdown/code":"^1.0.3","@yushaw/sanqian-sdk":"^0.3.28","react-virtuoso":"^4.15.0","rehype-harden":"^1.1.6","remark-gfm":"^4.0.1","streamdown":"^2.1.0"},"peerDependencies":{"electron":">=28.0.0","react":">=18.0.0","react-dom":">=18.0.0","tailwindcss":">=3.0.0"},"peerDependenciesMeta":{"electron":{"optional":true},"tailwindcss":{"optional":true}},"devDependencies":{"@testing-library/jest-dom":"^6.9.1","@testing-library/react":"^16.3.1","@types/node":"^22.9.0","@types/react":"^18.3.12","@types/react-dom":"^18.3.7","@vitejs/plugin-react":"^5.1.2","electron":"^28.0.0","jsdom":"^27.4.0","react":"^18.2.0","react-dom":"^18.2.0","rimraf":"^5.0.0","tsup":"^8.0.0","typescript":"^5.6.3","vitest":"^4.0.16"},"keywords":["sanqian","chat","electron","floating-window","ai"],"author":{"name":"yushaw"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/yushaw/sanqian.git","directory":"packages/chat"},"_id":"@yushaw/sanqian-chat@0.3.6","gitHead":"0e28a40973ec629831de57cdda1610097e49e7c9","bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"homepage":"https://github.com/yushaw/sanqian#readme","_nodeVersion":"20.19.5","_npmVersion":"10.8.2","dist":{"integrity":"sha512-HL/lyVAlIHPoNjHCIImfrnouDaRWz1VvT0NNqLQDiymPONHnDiEfFhRmwrxwWtO+Lsd2h4AfhxX87aA1BrUEKA==","shasum":"4688c4ee2d07e6c481efcbf12ed9836655215e5e","tarball":"https://registry.npmjs.org/@yushaw/sanqian-chat/-/sanqian-chat-0.3.6.tgz","fileCount":36,"unpackedSize":1665116,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDtWv/V2A9DP81GczFCL20+/s3jXegidMpht3IUjobWSQIgPUfgar2WA2XvFjZrGtf90wbbUHDNT2HQY2nMMpxvUn8="}]},"_npmUser":{"name":"shawonline","email":"shawonline@gmail.com"},"directories":{},"maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sanqian-chat_0.3.6_1778910885778_0.5919793546972534"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-26T17:14:55.082Z","modified":"2026-05-16T05:54:46.086Z","0.1.1":"2025-12-26T17:14:55.331Z","0.2.0":"2026-01-03T12:18:47.956Z","0.2.1":"2026-01-03T12:27:25.971Z","0.2.2":"2026-01-03T13:38:51.112Z","0.2.3":"2026-01-03T17:19:03.698Z","0.2.4":"2026-01-05T02:54:37.998Z","0.2.6":"2026-01-05T16:21:20.082Z","0.2.8":"2026-01-06T10:57:35.861Z","0.2.9":"2026-01-06T11:58:06.270Z","0.2.10":"2026-01-06T17:35:32.378Z","0.2.11":"2026-01-06T17:37:19.133Z","0.2.12":"2026-01-09T17:54:02.254Z","0.2.13":"2026-01-09T18:37:33.180Z","0.2.14":"2026-01-10T20:23:16.699Z","0.2.15":"2026-01-11T08:38:53.889Z","0.2.17":"2026-01-12T06:44:06.940Z","0.2.18":"2026-01-13T10:15:45.738Z","0.2.19":"2026-01-15T18:33:50.025Z","0.2.20":"2026-01-28T19:22:46.702Z","0.2.21":"2026-02-26T07:05:38.257Z","0.2.22":"2026-02-26T07:28:42.258Z","0.2.23":"2026-02-26T07:39:48.111Z","0.2.24":"2026-02-26T11:21:46.553Z","0.2.25":"2026-02-26T11:39:43.945Z","0.2.27":"2026-02-26T11:52:00.045Z","0.2.30":"2026-02-26T12:18:31.791Z","0.2.32":"2026-02-26T13:49:43.619Z","0.2.33":"2026-02-26T14:11:59.343Z","0.2.34":"2026-02-28T09:51:21.132Z","0.2.36":"2026-02-28T16:56:38.660Z","0.2.37":"2026-03-02T15:16:54.874Z","0.2.39":"2026-03-04T08:30:03.710Z","0.2.40":"2026-03-04T10:28:53.761Z","0.2.41":"2026-03-04T12:34:12.151Z","0.2.42":"2026-03-04T12:38:14.067Z","0.2.43":"2026-03-04T13:20:09.404Z","0.2.44":"2026-03-04T16:51:35.148Z","0.3.0":"2026-03-04T17:49:16.888Z","0.3.1":"2026-03-11T06:05:07.433Z","0.3.3":"2026-05-08T15:47:08.225Z","0.3.4":"2026-05-08T15:55:42.175Z","0.3.5":"2026-05-08T16:03:29.724Z","0.3.6":"2026-05-16T05:54:45.950Z"},"bugs":{"url":"https://github.com/yushaw/sanqian/issues"},"author":{"name":"yushaw"},"license":"MIT","homepage":"https://github.com/yushaw/sanqian#readme","keywords":["sanqian","chat","electron","floating-window","ai"],"repository":{"type":"git","url":"git+https://github.com/yushaw/sanqian.git","directory":"packages/chat"},"description":"Floating chat window SDK for Sanqian AI Assistant","maintainers":[{"name":"shawonline","email":"shawonline@gmail.com"}],"readme":"# @yushaw/sanqian-chat\n\nSanqian chat UI components and hooks for third-party Electron apps.\n\n## Phase 1 (Core Chat)\n- Streaming chat messages\n- Thinking section\n- Tool call timeline\n- HITL prompts\n- Simplified input (text + send + stop)\n\n## Install\n\n```bash\nnpm install @yushaw/sanqian-chat\n```\n\n## Publish\n\nFrom the repo root:\n\n```bash\nnpm publish --workspace=@yushaw/sanqian-chat\n```\n\nOr from the package directory:\n\n```bash\ncd packages/chat\nnpm publish\n```\n\n## Usage (Renderer)\n\n```tsx\nimport { SanqianChat, createSdkAdapter } from '@yushaw/sanqian-chat/renderer';\nimport { SanqianSDK } from '@yushaw/sanqian-sdk';\n\nconst sdk = new SanqianSDK({\n  appName: 'my-app',\n  appVersion: '0.1.0',\n  tools: [],\n});\n\nconst adapter = createSdkAdapter({\n  getSdk: () => sdk,\n  getAgentId: () => 'assistant',\n});\n\nexport function App() {\n  return (\n    <div className=\"h-full\">\n      <SanqianChat\n        adapter={adapter}\n        config={{\n          theme: 'auto',\n          accentColor: '#e85d75',\n          locale: 'zh',\n        }}\n      />\n    </div>\n  );\n}\n```\n\n## API Reference\n\nSee `packages/chat/API.md` and `packages/chat/API.zh-CN.md`.\n\n## Notes\n- **Style modes**: Default is `'safe'` (no Tailwind preflight, safe for embedding). Use `'full'` for standalone windows.\n  - Set `window.__SANQIAN_CHAT_STYLE_MODE__ = 'full'` for full styles including preflight\n  - Set `window.__SANQIAN_CHAT_DISABLE_STYLES__ = true` to disable auto-injection\n- **CSS files**:\n  - `@yushaw/sanqian-chat/renderer/styles/safe.css` - Safe (no preflight, includes utilities)\n  - `@yushaw/sanqian-chat/renderer/styles/chat.css` - Full (includes Tailwind preflight)\n  - `@yushaw/sanqian-chat/renderer/styles/variables.css` - Variables only\n- Sanqian should be running when the SDK connects.\n- Additional capabilities (history, agents, files, settings) will be added in later phases.\n\n## Developing Styles\n\nCSS uses a modular structure with a single source of truth:\n\n```\nsrc/renderer/styles/\n├── coreCss.ts        # ← EDIT THIS (CSS variables + utilities)\n├── preflightCss.ts   # Tailwind preflight (don't edit)\n├── safeCss.ts        # Auto-generated (imports coreCss)\n├── chatCss.ts        # Auto-generated (imports coreCss + preflight)\n├── safe.css          # Auto-generated\n└── chat.css          # Auto-generated\n```\n\n**To modify styles:**\n1. Edit `coreCss.ts`\n2. Run `npm run build:css` to regenerate all files\n3. Or just run `npm run build` (includes CSS generation)\n\n## Changelog\n\n### 0.2.7 (2026-01-06)\n- **Added**: External resource reference support\n  - `useResourcePicker` hook - manage resource picker state, search, pagination\n  - `ResourcePicker` component - two-level picker (providers → resources)\n  - `ResourceChip` / `ResourceChipList` - display attached resources\n  - `AddResourceButton` - + button with dropdown menu\n- **Added**: `ChatAdapter` extensions: `listResourceProviders`, `getResourceList`, `onLocaleChanged`\n- **Added**: `FloatingWindow.notifyLocaleChanged(locale)` and `ChatPanel.notifyLocaleChanged(locale)` - notify renderer when locale changes\n- **Added**: `sendMessage` now accepts `options.attachedResources`\n- **Added**: Message rendering displays attached resources in user messages\n- **Added**: New types: `AttachedResource`, `ResourcePickerItem`, `ContextProviderInfo`\n- **Changed**: `AppContextProvider.getList` now accepts `options` parameter for search/pagination\n\n### 2025-01-03\n- **Added**: Focus persistence - input keeps focus when clicking empty areas (unless selecting text)\n- **Added**: `Cmd+N` (macOS) / `Ctrl+N` (Windows) keyboard shortcut for new chat\n- **Added**: Hover tooltip with shortcut hint on new chat button\n\n### 2025-01-02\n- **Changed**: CSS modular structure - single source of truth (`coreCss.ts`)\n- **Changed**: `.prose` uses `font-size: inherit` for external control\n- **Changed**: IntermediateSteps uses relative font sizes (rem instead of px)\n- **Fixed**: `position` default value conflict with `rememberWindowState`\n- **Fixed**: IPC now forwards `start` event (with `run_id`) to renderer\n- **Fixed**: Center position calculation uses `workArea` (supports multi-monitor/dock)\n- **Fixed**: `console.log` only outputs in `devMode`\n- **Fixed**: Global style pollution - default to `'safe'` mode (no Tailwind preflight)\n- **Fixed**: `cancelStream` now calls `sdk.cancelRun()` for real cancellation\n\n## Tech Debt / Future Optimizations\n\n### Low Priority (记录于 2026-01-05)\n\n1. **FloatingChat 命名优化**\n   - `FloatingChat` 实际是通用组件（embedded + floating），名字有误导\n   - 可考虑改名为 `ChatContainer` 或 `ChatView`\n   - 文件：`src/renderer/components/FloatingChat.tsx`\n\n2. **Header 按钮复用**\n   - `FloatingChat` 内联了 `<ModeToggleButton>` + `<AttachButton>`\n   - 可改用 `<PanelHeaderButtons />` 与 `CompactChat` 保持一致\n   - 文件：`src/renderer/components/FloatingChat.tsx:134-136`\n\n\n3. **useCallback 依赖优化** (微优化)\n   - `useAttachState.ts:68`: toggle 依赖 state，每次 state 变化重建\n   - `useChatPanel.ts:86`: toggleMode 依赖 mode，每次 mode 变化重建\n   - 可用 useRef 避免重建，但当前影响可忽略\n   - 文件：`src/renderer/hooks/useAttachState.ts`, `src/renderer/hooks/useChatPanel.ts`\n\n\n## Changelog\n\n### 2026-01-11\n\n**Ask AI 焦点管理**\n\n- `ChatPanel.focusInput()` 方法：完整的焦点管理，支持 floating 和 embedded 模式\n  - macOS: `app.focus({ steal: true })` 确保应用获得前台焦点\n  - `floatingWindow.focus()` / `webContents.focus()` 确保窗口和 BrowserView 获得焦点\n  - IPC 消息通知渲染进程聚焦输入框\n- `ChatAdapter.onFocusInput` 接口：渲染进程监听焦点事件\n- `SanqianChatAPI.onFocusInput` preload API\n\n**Bug 修复**\n\n- 修复 session resources 发送前被删除的问题（移除了发送时的 `removeSessionResource` 调用）\n- 修复 `AttachedResourceTags` 深色模式样式（使用正确的 CSS 变量）\n- 清理 chip 布局的多余 padding/margin\n\n### 2026-01-10\n\n**Session Resources 功能实现**\n\n新增应用主动推送临时上下文的能力（Session Resources）：\n\n- `ChatAdapter` 接口新增 `getSessionResources`、`onSessionResourceEvent`、`removeSessionResource` 方法\n- `useChat` hook 新增 `sessionResources` 状态和 `removeSessionResource` 回调\n- `FloatingChat` / `CompactChat` 组件支持显示 session resources chips\n- IPC adapter 实现 session resources 相关 API\n\n详见设计文档：`docs/session-resources-design.md`\n","readmeFilename":"README.md"}