{"_id":"@aykannpm/ai-components","_rev":"8-a3dac896343ac37535f8cdfb6af6dd96","name":"@aykannpm/ai-components","dist-tags":{"latest":"2.1.3"},"versions":{"1.0.0":{"name":"@aykannpm/ai-components","version":"1.0.0","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@1.0.0","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"homepage":"https://github.com/aykan/ai-components#readme","bugs":{"url":"https://github.com/aykan/ai-components/issues"},"dist":{"shasum":"c4c529d959e7a1f5d54c5a7aedcc8c81e1653b97","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-1.0.0.tgz","fileCount":12,"integrity":"sha512-xkvM+hOXvAMXNGUDqPfx5DSarBJnMqCM49ugtwnjulaz58qUeA3Tnu0FssrDxbWk1ayGYe9pN4kML7xdKybDAQ==","signatures":[{"sig":"MEUCIQDuogaEFJd4yt2oMNu4wTUYwvdIBcBr61MH9vVXfl0dzwIgIS2/q+R40q71CNqhT5qnUuJ9nyuqDqtb07KzrUwkXeQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":138808},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"types":"./dist/ai-search/index.d.ts","import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./product-compare":{"types":"./dist/product-compare/index.d.ts","import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"types":"./dist/related-listings/index.d.ts","import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"types":"./dist/attribute-augmentation/index.d.ts","import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"8fa9641097a718bfe89094de3809928cfe09d6b8","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"repository":{"url":"git+https://github.com/aykan/ai-components.git","type":"git"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_1.0.0_1757605855836_0.7941543819780548","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@aykannpm/ai-components","version":"1.1.0","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@1.1.0","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"homepage":"https://github.com/aykan/ai-components#readme","bugs":{"url":"https://github.com/aykan/ai-components/issues"},"dist":{"shasum":"1cc3cfb922e551ba0b6ba4fea8929fb904510d4a","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-1.1.0.tgz","fileCount":16,"integrity":"sha512-yWqD2N/5FyBYwwoTtEOdgPpKBSFjnMNjp1fkGPoz25s3934c9LccgO4cF8nY3bUuFb61KJ7KYQ0NsjKtFrreGw==","signatures":[{"sig":"MEQCIGxiPvROOT6F2ofh4xgO/tXtgMOZXtapzbTYxY+vo8+eAiA7PCkWrcCeBBzLL4nSU307A2oQ/jJZvCEehBABdlaSYA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":270835},"main":"dist/index.js","module":"dist/index.esm.js","exports":{".":{"import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./product-compare":{"import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"e97daa80de53094a7e2a7220458d7d959be449e4","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"repository":{"url":"git+https://github.com/aykan/ai-components.git","type":"git"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_1.1.0_1757859184619_0.3745597344794298","host":"s3://npm-registry-packages-npm-production"}},"2.0.0":{"name":"@aykannpm/ai-components","version":"2.0.0","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@2.0.0","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"homepage":"https://github.com/aykan/ai-components#readme","bugs":{"url":"https://github.com/aykan/ai-components/issues"},"dist":{"shasum":"f2152fdc6e7b86888a62b57b520236bf51719166","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-2.0.0.tgz","fileCount":14,"integrity":"sha512-MqKB4D/RbYPo/QLmGLOVXb7vHJXqJT/DfgJaXKwvtVRSgYFBxeT+FqUNpUCHm1n0jsNvXiMRcOSOLo56382WZw==","signatures":[{"sig":"MEUCIQCXZN49HjPvYCCg+SdZYzjPGaQ5aQgm6AuC2uESdxXvrAIgUnpR5xGRAvZAUAv9yH6/fOKsLF2yBfUmNdRQ9yVp6xg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268260},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"types":"./dist/ai-search/index.d.ts","import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./product-compare":{"types":"./dist/product-compare/index.d.ts","import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"types":"./dist/related-listings/index.d.ts","import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"types":"./dist/attribute-augmentation/index.d.ts","import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"c96e08f76b708182d59c5f3f096da3d5f3ff3462","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"repository":{"url":"git+https://github.com/aykan/ai-components.git","type":"git"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_2.0.0_1758023751679_0.3858543430081822","host":"s3://npm-registry-packages-npm-production"}},"2.0.1":{"name":"@aykannpm/ai-components","version":"2.0.1","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@2.0.1","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"homepage":"https://github.com/aykan/ai-components#readme","bugs":{"url":"https://github.com/aykan/ai-components/issues"},"dist":{"shasum":"8e6487d6ccb33cf1d4879ff7af7a867699be3e6f","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-2.0.1.tgz","fileCount":14,"integrity":"sha512-3OlLS9mBTx2Kkbz7VXbenLKpEcTcyPP+fY0w4304NG4deptlYxvdTWFEEEYqqG01z4zCF/W0m7p98+2IRtbABw==","signatures":[{"sig":"MEUCIQCNLSe2blCUJQ6T85s/X40qWKPs6o7kVVczrej0yfwMvgIgKhfx24OsX6Lwt5IDDoCfQM7sMcD/+DIEttd5Cm666v4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":268907},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"types":"./dist/ai-search/index.d.ts","import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./product-compare":{"types":"./dist/product-compare/index.d.ts","import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"types":"./dist/related-listings/index.d.ts","import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"types":"./dist/attribute-augmentation/index.d.ts","import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"2691d6c2442b62702c0a3aa02cfa5007c6ed2d9d","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"repository":{"url":"git+https://github.com/aykan/ai-components.git","type":"git"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_2.0.1_1758780306340_0.2229024226070071","host":"s3://npm-registry-packages-npm-production"}},"2.1.0":{"name":"@aykannpm/ai-components","version":"2.1.0","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@2.1.0","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"homepage":"https://github.com/aykan/ai-components#readme","bugs":{"url":"https://github.com/aykan/ai-components/issues"},"dist":{"shasum":"9ac7d0af0e131b5b78691afd0bb485a896342a10","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-2.1.0.tgz","fileCount":24,"integrity":"sha512-mIPkD1hfTTQMlYlxWY3gNCL7PyHH9M4cz8tnaR8KEpEGg+7j8Id6obEJM5MfKmUbwIuXIDWSUPgQglwqLzQn/g==","signatures":[{"sig":"MEUCIHhKjQCoZFvUdBo0rhaklWCZyZsT4WW9pQW75PAVx5CaAiEAlrTNXcCpCuknvPl9+hM6P3ai9iY18L76XgQugwPQq0s=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":563899},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"types":"./dist/ai-search/index.d.ts","import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./product-compare":{"types":"./dist/product-compare/index.d.ts","import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"types":"./dist/related-listings/index.d.ts","import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"types":"./dist/attribute-augmentation/index.d.ts","import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"3a884b50ff25d77a1d90b3555546bdcb0266f697","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"repository":{"url":"git+https://github.com/aykan/ai-components.git","type":"git"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_2.1.0_1763112564858_0.1340657898936617","host":"s3://npm-registry-packages-npm-production"}},"2.1.1":{"name":"@aykannpm/ai-components","version":"2.1.1","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@2.1.1","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"dist":{"shasum":"b08f02a9e839cdd8886b63c03407edf76780a447","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-2.1.1.tgz","fileCount":28,"integrity":"sha512-gF5JQp3rTeUbCq9Uf3M7mAlOjFdDKrqa4JEcpheIiGenlQMJA+/SqDIfFGvQxjd+iTJ7EKT6Vp5MbHPIA66L1g==","signatures":[{"sig":"MEQCICaWx2HIY9gGhercAi00G0Yqztw5Utv7yLQP0vG5LxqeAiAq73yTmhyhFO7Qxjejo2mvNACETWqzDAKuQqjIkBbnhQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1133565},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"types":"./dist/ai-search/index.d.ts","import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./product-compare":{"types":"./dist/product-compare/index.d.ts","import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"types":"./dist/related-listings/index.d.ts","import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"types":"./dist/attribute-augmentation/index.d.ts","import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"5f32b44f8f3683f42f7164c69807332d4d471634","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_2.1.1_1763441599748_0.7816770730425295","host":"s3://npm-registry-packages-npm-production"}},"2.1.2":{"name":"@aykannpm/ai-components","version":"2.1.2","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@2.1.2","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"dist":{"shasum":"e4826e5e4a94ab60b2a59e0fc6bf6018eb8b151b","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-2.1.2.tgz","fileCount":32,"integrity":"sha512-77GGYNxg0LiMyOytzEjLj8eM2bsFV+B2iZThuvZIDBOlq52lIsEpsHJW9bc/0+0e3Cu+S0+wnFZD2O1k531Kjw==","signatures":[{"sig":"MEYCIQDJUQDufiP0cSEjg8RAX6B4tgz2p/4jTwWMEM54BFI7lgIhAJm0KVbO52TDkSdxdsR8cWsfX5lcnH8FMaj62ZCBCsxC","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2507351},"main":"dist/index.js","types":"dist/index.d.ts","module":"dist/index.esm.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.esm.js","require":"./dist/index.js"},"./ai-search":{"types":"./dist/ai-search/index.d.ts","import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js"},"./provider-inbox":{"types":"./dist/provider-inbox/index.d.ts","import":"./dist/provider-inbox/index.esm.js","require":"./dist/provider-inbox/index.js"},"./product-compare":{"types":"./dist/product-compare/index.d.ts","import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js"},"./related-listings":{"types":"./dist/related-listings/index.d.ts","import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js"},"./attribute-augmentation":{"types":"./dist/attribute-augmentation/index.d.ts","import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js"}},"gitHead":"c6729867366f565d5ad096274da8c500cb0f99ca","scripts":{"dev":"rollup -c -w","build":"rollup -c","prepublishOnly":"npm run build"},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"_npmVersion":"10.8.2","description":"AI-powered React components for marketplace applications","directories":{},"_nodeVersion":"20.19.0","dependencies":{"clsx":"^2.0.0","socket.io-client":"^4.7.0"},"_hasShrinkwrap":false,"devDependencies":{"rollup":"^4.18.0","@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-terser":"^0.4.4","rollup-plugin-postcss":"^4.0.2","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","rollup-plugin-peer-deps-external":"^2.2.4"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"_npmOperationalInternal":{"tmp":"tmp/ai-components_2.1.2_1763467813448_0.777304192963401","host":"s3://npm-registry-packages-npm-production"}},"2.1.3":{"name":"@aykannpm/ai-components","version":"2.1.3","description":"AI-powered React components for marketplace applications","main":"dist/index.js","module":"dist/index.esm.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.esm.js","require":"./dist/index.js","types":"./dist/index.d.ts"},"./related-listings":{"import":"./dist/related-listings/index.esm.js","require":"./dist/related-listings/index.js","types":"./dist/related-listings/index.d.ts"},"./ai-search":{"import":"./dist/ai-search/index.esm.js","require":"./dist/ai-search/index.js","types":"./dist/ai-search/index.d.ts"},"./product-compare":{"import":"./dist/product-compare/index.esm.js","require":"./dist/product-compare/index.js","types":"./dist/product-compare/index.d.ts"},"./attribute-augmentation":{"import":"./dist/attribute-augmentation/index.esm.js","require":"./dist/attribute-augmentation/index.js","types":"./dist/attribute-augmentation/index.d.ts"},"./provider-inbox":{"import":"./dist/provider-inbox/index.esm.js","require":"./dist/provider-inbox/index.js","types":"./dist/provider-inbox/index.d.ts"}},"dependencies":{"socket.io-client":"^4.7.0","clsx":"^2.0.0"},"peerDependencies":{"react":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0","react-dom":"^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0"},"devDependencies":{"@babel/preset-env":"^7.28.3","@babel/preset-react":"^7.27.1","@rollup/plugin-babel":"^6.0.4","@rollup/plugin-commonjs":"^26.0.1","@rollup/plugin-node-resolve":"^15.2.3","@rollup/plugin-terser":"^0.4.4","rollup":"^4.18.0","rollup-plugin-peer-deps-external":"^2.2.4","rollup-plugin-postcss":"^4.0.2"},"scripts":{"build":"rollup -c","dev":"rollup -c -w","prepublishOnly":"npm run build"},"keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"author":{"name":"Aykan Team"},"license":"MIT","_id":"@aykannpm/ai-components@2.1.3","gitHead":"c0b20427554586d99f846b80d04717fbffc73ae9","_nodeVersion":"20.19.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-JrGfryszYZfTwKSFJakGHHjpO+nw1VZ8/C5t6SQYGlh+kAZbyxHw6mc9a4CW5MOQKhA5qmzAOOyuagZhHPoSIw==","shasum":"f34d5ad407bd96221377764f935e9922217cacb3","tarball":"https://registry.npmjs.org/@aykannpm/ai-components/-/ai-components-2.1.3.tgz","fileCount":22,"unpackedSize":2458119,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD8w4BrpNYnLFl5F52mf/qZoLP001oMOEYHmEiPVP89HgIhAMKLDVIwKyEHkdu3xOGnGVhUrMJhuG5o+Um1E0KC3iPQ"}]},"_npmUser":{"name":"aykannpm","email":"npm@aykansoft.com"},"directories":{},"maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ai-components_2.1.3_1764562010170_0.6764422019490308"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-11T15:50:55.673Z","modified":"2025-12-01T04:06:50.599Z","1.0.0":"2025-09-11T15:50:56.039Z","1.1.0":"2025-09-14T14:13:04.828Z","2.0.0":"2025-09-16T11:55:51.850Z","2.0.1":"2025-09-25T06:05:06.563Z","2.1.0":"2025-11-14T09:29:25.133Z","2.1.1":"2025-11-18T04:53:20.026Z","2.1.2":"2025-11-18T12:10:13.703Z","2.1.3":"2025-12-01T04:06:50.398Z"},"author":{"name":"Aykan Team"},"license":"MIT","keywords":["react","ai","components","marketplace","search","recommendations","aykan"],"description":"AI-powered React components for marketplace applications","maintainers":[{"name":"aykannpm","email":"npm@aykansoft.com"}],"readme":"# @aykannpm/ai-components\r\n\r\nAI-powered React components for sharetribe marketplace applications. This package provides a collection of intelligent UI components designed to enhance e-commerce and marketplace experiences.\r\n\r\n## 🚀 Latest Updates\r\n\r\n**v2.2.0 - Theme System** - AISearch now supports a unified theme object for consistent styling across your marketplace. Define colors, borderRadius, fonts, and spacing once - applies everywhere. Includes `extractThemeFromCSS()` utility to auto-extract from existing CSS variables. Fully backward compatible with individual props.\r\n\r\n**v2.1.2 - Provider Inbox** - New ProviderInbox component for managing customer escalations. Features real-time Socket.io notifications, escalation cards, reply modal, and filtering/pagination. Perfect for provider dashboards in marketplace applications.\r\n\r\n**v2.1.1 - Product Compare Feature** - New ProductCompare component for AI-powered side-by-side product comparison. Includes intelligent category verification, feature extraction, and support for up to 4 products. Important: When integrating, wrap your layout externally around ProductComparisonPage instead of using the LayoutComponent prop.\r\n\r\n**v2.1.0 - Comprehensive Styling System** - AI Search component now supports extensive customization with 40+ styling props including colors, typography, spacing presets, border radius, shadows, and more. Fully backward compatible with existing implementations.\r\n\r\n\r\n## Installation\r\n\r\n```bash\r\nnpm install @aykannpm/ai-components\r\n```\r\n\r\n## Peer Dependencies\r\n\r\nThis package requires React 16.8+ as a peer dependency:\r\n\r\n```bash\r\nnpm install react react-dom\r\n```\r\n\r\n## Available Components\r\n\r\n### 🎯 Related Listings ✅ Available Now\r\n\r\nDisplay AI-powered product recommendations based on the current listing.\r\n\r\n```javascript\r\nimport { RelatedListings } from '@aykannpm/ai-components/related-listings';\r\n\r\nfunction ProductPage({ currentListing }) {\r\n  const createSlug = (name) => name.toLowerCase().replace(/\\s+/g, '-');\r\n  \r\n  return (\r\n    <div>\r\n      {/* Your product details */}\r\n      <RelatedListings\r\n        listing={currentListing}\r\n        apiBaseUrl=\"https://your-AIapi.com\"\r\n        tenantId=\"your-tenant-id\"\r\n        accessToken=\"your-access-token\"\r\n        createSlug={createSlug}\r\n        maxResults={6}\r\n        onListingClick={(listing) => console.log('Clicked:', listing)}\r\n      />\r\n    </div>\r\n  );\r\n}\r\n```\r\n\r\n### 🔍 AI Search ✅ Available Now\r\n\r\nIntelligent search component with natural language processing capabilities.\r\n\r\n```javascript\r\nimport { AISearch } from '@aykannpm/ai-components/ai-search';\r\n\r\n// Basic usage with common props\r\nfunction SearchPage() {\r\n  const createSlug = (name) => name.toLowerCase().replace(/\\s+/g, '-');\r\n\r\n  const handleSearch = (query, results) => {\r\n    console.log('Search performed:', query, 'Results:', results.length);\r\n    // Track analytics, update state, etc.\r\n  };\r\n\r\n  const handleResultClick = (result) => {\r\n    console.log('Result clicked:', result);\r\n    // Navigate, track event, etc.\r\n  };\r\n\r\n  return (\r\n    <div>\r\n      <AISearch\r\n        // Required Props\r\n        apiBaseUrl=\"https://your-api.com\"\r\n        tenantId=\"your-tenant-id\"\r\n        accessToken=\"your-access-token\"\r\n        createSlug={createSlug}\r\n\r\n        // Common Functional Props\r\n        placeholder=\"Search for products...\"\r\n        maxResults={10}\r\n        showTitle={true}\r\n        title=\"Product Search\"\r\n        onSearch={handleSearch}\r\n        onResultClick={handleResultClick}\r\n      />\r\n    </div>\r\n  );\r\n}\r\n\r\n// NEW! Theme-based styling (recommended)\r\n// Define your theme once, use everywhere\r\nconst marketplaceTheme = {\r\n  colors: {\r\n    primary: '#5d2bc0',      // Your brand color\r\n    primaryHover: '#492296',\r\n    accent: '#2ecc71',\r\n    background: '#ffffff',\r\n    surface: '#ffffff',\r\n    text: '#343a40',\r\n    textSecondary: '#555',\r\n    border: '#e0e0e0',\r\n    error: '#dc3545',\r\n  },\r\n  borderRadius: '4px',       // Applies consistently to all elements\r\n  fontFamily: 'Inter, sans-serif',\r\n  fontSize: {\r\n    sm: '14px',\r\n    md: '16px',\r\n    lg: '0.9rem',\r\n    xl: '1.5rem',\r\n  },\r\n  spacing: 'normal',         // 'compact' | 'normal' | 'comfortable'\r\n  shadows: 'md',             // 'none' | 'sm' | 'md' | 'lg'\r\n};\r\n\r\nfunction ThemedSearchPage() {\r\n  const createSlug = (name) => name.toLowerCase().replace(/\\s+/g, '-');\r\n\r\n  return (\r\n    <div>\r\n      <AISearch\r\n        // Required Props\r\n        apiBaseUrl=\"https://your-api.com\"\r\n        tenantId=\"your-tenant-id\"\r\n        accessToken=\"your-access-token\"\r\n        createSlug={createSlug}\r\n\r\n        // Theme prop - single source of styling\r\n        theme={marketplaceTheme}\r\n\r\n        // Common Functional Props\r\n        placeholder=\"Search for products...\"\r\n        maxResults={10}\r\n        showTitle={true}\r\n        title=\"Browse Our Catalog\"\r\n      />\r\n    </div>\r\n  );\r\n}\r\n\r\n// Theme utilities are also exported\r\nimport { defaultTheme, mergeTheme, extractThemeFromCSS } from '@aykannpm/ai-components/ai-search';\r\n\r\n// Extract theme from existing CSS variables\r\nconst theme = extractThemeFromCSS();\r\n\r\n// Merge custom theme with defaults\r\nconst customTheme = mergeTheme({\r\n  colors: { primary: '#ff5722' },\r\n  borderRadius: '12px',\r\n});\r\n\r\n// Individual props still work (backward compatible)\r\n// They override theme values when provided\r\n<AISearch\r\n  theme={marketplaceTheme}\r\n  primaryColor=\"#ff5722\"  // Overrides theme.colors.primary\r\n/>\r\n\r\n// See MARKETPLACE_INTEGRATION.md for complete theme documentation\r\n```\r\n\r\n### ⚖️ Product Compare ✅ Available Now\r\n\r\nAI-powered side-by-side product comparison with intelligent category verification and feature extraction.\r\n\r\n```javascript\r\nimport { ProductCompare } from '@aykannpm/ai-components/product-compare';\r\n\r\nfunction ComparePage() {\r\n  const [searchResults, setSearchResults] = useState([]);\r\n  const [isSearching, setIsSearching] = useState(false);\r\n\r\n  const handleSearch = async (query) => {\r\n    setIsSearching(true);\r\n    const response = await fetch(`/api/search?q=${query}`);\r\n    const data = await response.json();\r\n    setSearchResults(data.results);\r\n    setIsSearching(false);\r\n  };\r\n\r\n  const handleCompare = async (productIds) => {\r\n    const response = await fetch('/api/compare', {\r\n      method: 'POST',\r\n      headers: { 'Content-Type': 'application/json' },\r\n      body: JSON.stringify({ productIds })\r\n    });\r\n    const data = await response.json();\r\n    return data.comparison;\r\n  };\r\n\r\n  return (\r\n    <ProductCompare\r\n      apiBaseUrl=\"https://your-api.com\"\r\n      onPerformSearch={handleSearch}\r\n      onGetMultipleListings={handleCompare}\r\n      searchResults={searchResults}\r\n      searchInProgress={isSearching}\r\n      searchError={null}\r\n    />\r\n  );\r\n}\r\n```\r\n\r\n**Key Features:**\r\n- Compare up to 4 products side-by-side\r\n- AI-powered category verification (prevents comparing incompatible products)\r\n- Supports localStorage for pre-filling initial product\r\n- Responsive design with horizontal scrolling\r\n- Visual indicators for defined vs. AI-inferred attributes\r\n\r\n<!-- **For complete documentation, conact Aykan team** -->\r\n\r\n### 📬 Provider Inbox ✅ Available Now\r\n\r\nReal-time inbox for providers to manage and respond to customer escalations.\r\n\r\n```javascript\r\nimport { ProviderInbox, ProviderReplyModal } from '@aykannpm/ai-components/provider-inbox';\r\n\r\nfunction ProviderDashboard() {\r\n  const [selectedEscalation, setSelectedEscalation] = useState(null);\r\n  const [isModalOpen, setIsModalOpen] = useState(false);\r\n\r\n  const handleReply = (sessionId, escalation) => {\r\n    setSelectedEscalation(escalation);\r\n    setIsModalOpen(true);\r\n  };\r\n\r\n  const handleReplySuccess = () => {\r\n    // Refresh inbox or show success message\r\n  };\r\n\r\n  return (\r\n    <div>\r\n      <ProviderInbox\r\n        tenantId=\"your-tenant-id\"\r\n        providerId=\"provider-user-id\"\r\n        apiBaseUrl=\"https://your-api.com\"\r\n        accessToken=\"your-access-token\"\r\n        onReply={handleReply}\r\n        enableRealtime={true}\r\n        itemsPerPage={20}\r\n      />\r\n\r\n      <ProviderReplyModal\r\n        isOpen={isModalOpen}\r\n        escalation={selectedEscalation}\r\n        tenantId=\"your-tenant-id\"\r\n        apiBaseUrl=\"https://your-api.com\"\r\n        accessToken=\"your-access-token\"\r\n        onClose={() => setIsModalOpen(false)}\r\n        onSuccess={handleReplySuccess}\r\n      />\r\n    </div>\r\n  );\r\n}\r\n```\r\n\r\n**Key Features:**\r\n- Real-time escalation notifications via Socket.io\r\n- Filter by status (pending/replied)\r\n- Pagination support\r\n- Browser notifications for new escalations\r\n- Reply modal with conversation history\r\n- Connection status indicator\r\n\r\n### 🎨 Attribute Augmentation 🔄 Coming Soon\r\n\r\nAutomatic product attribute enhancement using AI analysis.\r\n\r\n\r\n## Usage Examples\r\n\r\n### Basic Implementation\r\n\r\n```javascript\r\nimport React from 'react';\r\nimport { RelatedListings } from '@aykannpm/ai-components/related-listings';\r\nimport { AISearch } from '@aykannpm/ai-components/ai-search';\r\n\r\nexport default function App({ currentListing }) {\r\n  const createSlug = (name) => name.toLowerCase().replace(/\\s+/g, '-');\r\n\r\n  return (\r\n    <div className=\"app\">\r\n      <h1>My Marketplace</h1>\r\n\r\n      <AISearch\r\n        apiBaseUrl=\"https://your-api.com\"\r\n        tenantId=\"your-tenant-id\"\r\n        accessToken=\"your-access-token\"\r\n        createSlug={createSlug}\r\n        placeholder=\"Search for products...\"\r\n        maxResults={8}\r\n        showTitle={true}\r\n        title=\"Find Products\"\r\n        onSearch={(query, results) => console.log('Search:', query, results)}\r\n      />\r\n\r\n      <RelatedListings\r\n        listing={currentListing}\r\n        apiBaseUrl=\"https://your-api.com\"\r\n        tenantId=\"your-tenant-id\"\r\n        accessToken=\"your-access-token\"\r\n        createSlug={createSlug}\r\n        maxResults={4}\r\n      />\r\n    </div>\r\n  );\r\n}\r\n```\r\n\r\n## Component API\r\n\r\n### RelatedListings Props\r\n\r\n| Prop | Type | Required | Default | Description |\r\n|------|------|----------|---------|-------------|\r\n| `listing` | `object` | ✅ | - | Current listing object with id and attributes |\r\n| `apiBaseUrl` | `string` | ✅ | - | Base URL for API calls |\r\n| `tenantId` | `string` | ✅ | - | Tenant ID for API requests |\r\n| `accessToken` | `string` | ✅ | - | API access token for authentication |\r\n| `createSlug` | `function` | ✅ | - | Function to create URL slugs from names |\r\n| `title` | `string` | ❌ | `\"We also recommend...\"` | Title text for the component |\r\n| `maxResults` | `number` | ❌ | `8` | Maximum number of related items to show |\r\n| `onListingClick` | `function` | ❌ | - | Callback when a related item is clicked |\r\n| `LinkComponent` | `component` | ❌ | `'a'` | Custom link component (e.g., React Router Link) |\r\n| `className` | `string` | ❌ | `''` | Additional CSS classes for styling |\r\n\r\n### AISearch Props\r\n\r\n#### Required Props\r\n\r\n| Prop | Type | Required | Default | Description |\r\n|------|------|----------|---------|-------------|\r\n| `apiBaseUrl` | `string` | ✅ | - | Base URL for API calls |\r\n| `tenantId` | `string` | ✅ | - | Tenant ID for API requests |\r\n| `accessToken` | `string` | ✅ | - | API access token for authentication |\r\n| `createSlug` | `function` | ✅ | - | Function to create URL slugs from names |\r\n\r\n#### Common Functional Props (Optional but Recommended)\r\n\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `placeholder` | `string` | `\"Try out our AI search...\"` | Input placeholder text |\r\n| `maxResults` | `number` | `20` | Maximum number of search results to show |\r\n| `title` | `string` | `\"Search Results\"` | Title for the search component |\r\n| `showTitle` | `boolean` | `false` | Whether to show the title |\r\n| `onSearch` | `function` | - | Callback when search is performed `(query, results) => void` |\r\n| `onResultClick` | `function` | - | Callback when a search result is clicked `(result) => void` |\r\n| `LinkComponent` | `component` | `'a'` | Custom link component (e.g., React Router Link) |\r\n| `className` | `string` | `''` | Additional CSS classes for styling |\r\n\r\n#### Theme/Styling Props ✨ NEW - Extensive Customization\r\n\r\nThe AI Search component now supports comprehensive styling customization. All styling props are optional with sensible defaults.\r\n\r\n**Colors**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `primaryColor` | `string` | `\"#007bff\"` | Primary color for buttons and active states |\r\n| `primaryHoverColor` | `string` | Auto-generated | Primary hover color (auto-darkens if not provided) |\r\n| `accentColor` | `string` | `\"#28a745\"` | Accent color for prices and highlights |\r\n| `focusColor` | `string` | Same as primaryColor | Focus outline color for accessibility |\r\n\r\n**Layout & Spacing**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `borderRadius` | `string \\| object` | `{ container: '12px', input: '6px', button: '6px', card: '8px' }` | Border radius for all elements (string applies to all) |\r\n| `spacing` | `'compact' \\| 'normal' \\| 'comfortable'` | `'normal'` | Preset spacing configuration |\r\n| `maxWidth` | `string` | `'600px'` | Maximum container width |\r\n| `cardWidth` | `string` | `'200px'` | Width of result cards |\r\n| `cardImageHeight` | `string` | `'120px'` | Height of card images |\r\n\r\n**Typography**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `fontSize` | `object` | See below | Font sizes for different elements |\r\n| `fontFamily` | `string` | `inherit` | Font family for the component |\r\n\r\n**Colors & Backgrounds**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `backgroundColor` | `object` | See below | Background colors for container, cards, etc. |\r\n| `textColor` | `object` | See below | Text colors for various elements |\r\n\r\n**Borders & Shadows**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `borderWidth` | `number` | `1` | Border width in pixels |\r\n| `borderColor` | `string` | `'#e0e0e0'` | Main container border color |\r\n| `inputBorderColor` | `string` | `'#ddd'` | Input field border color |\r\n| `cardBorderColor` | `string` | `'#dee2e6'` | Result card border color |\r\n| `shadowIntensity` | `'none' \\| 'sm' \\| 'md' \\| 'lg'` | `'md'` | Shadow intensity preset |\r\n| `boxShadow` | `object` | Auto-generated | Custom shadow values (advanced) |\r\n\r\n**Scrollbar**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `scrollbarStyle` | `object` | `{ height: '6px', color: '#dee2e6', hoverColor: '#adb5bd' }` | Scrollbar styling |\r\n\r\n**Layout & Display Modes**\r\n| Prop | Type | Default | Description |\r\n|------|------|---------|-------------|\r\n| `layout` | `'scroll' \\| 'grid'` | `'scroll'` | Layout type: horizontal scroll or grid |\r\n| `gridColumns` | `string` | `'repeat(auto-fill, minmax(160px, 1fr))'` | CSS grid-template-columns (only for grid layout) |\r\n| `gridMaxHeight` | `string` | `'400px'` | Maximum height for grid container |\r\n| `gridGap` | `string` | `'1rem'` | Gap between grid items |\r\n| `displayMode` | `'card' \\| 'compact' \\| 'mini' \\| 'list'` | `'card'` | Result item display style (card=200px, compact=150px, mini=120px, list=full-width) |\r\n\r\n### ProviderInbox Props\r\n\r\n| Prop | Type | Required | Default | Description |\r\n|------|------|----------|---------|-------------|\r\n| `tenantId` | `string` | ✅ | - | Tenant ID for API requests |\r\n| `providerId` | `string` | ✅ | - | Provider/user ID for filtering escalations |\r\n| `apiBaseUrl` | `string` | ✅ | - | Base URL for API calls |\r\n| `accessToken` | `string` | ✅ | - | API access token for authentication |\r\n| `onReply` | `function` | ❌ | - | Callback when reply button clicked `(sessionId, escalation) => void` |\r\n| `onRefresh` | `function` | ❌ | - | Callback to expose refresh function to parent |\r\n| `enableRealtime` | `boolean` | ❌ | `true` | Enable Socket.io real-time notifications |\r\n| `itemsPerPage` | `number` | ❌ | `20` | Number of escalations per page |\r\n| `debug` | `boolean` | ❌ | `false` | Enable debug logging for socket events |\r\n\r\n### ProviderReplyModal Props\r\n\r\n| Prop | Type | Required | Default | Description |\r\n|------|------|----------|---------|-------------|\r\n| `isOpen` | `boolean` | ✅ | - | Whether the modal is open |\r\n| `escalation` | `object` | ✅ | - | The escalation object to reply to |\r\n| `tenantId` | `string` | ✅ | - | Tenant ID for API requests |\r\n| `apiBaseUrl` | `string` | ✅ | - | Base URL for API calls |\r\n| `accessToken` | `string` | ✅ | - | API access token for authentication |\r\n| `onClose` | `function` | ✅ | - | Callback when modal is closed |\r\n| `onSuccess` | `function` | ❌ | - | Callback when reply is successfully sent |\r\n\r\n\r\n\r\n## Development\r\n\r\nThis package is actively developed and maintained. New components will be added regularly.\r\n\r\n### Roadmap\r\n\r\n- ✅ Related Listings\r\n- ✅ AI Search\r\n- ✅ Product Compare\r\n- ✅ Provider Inbox\r\n- 🔄 Attribute Augmentation (Coming Soon)\r\n\r\n\r\n---\r\n\r\n**Made by Aykan Team**","readmeFilename":"README.md"}