{"_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express","_rev":"12-3f4e3b77d9cf4bc43586ebcc4f7516b1","name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","dist-tags":{"latest":"3.57.1"},"versions":{"0.0.0":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"0.0.0","author":{"name":"Coveo"},"license":"ISC","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@0.0.0","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"dist":{"shasum":"67deba23dd6f5097492ee47d129dd7e1d3afaaa2","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-0.0.0.tgz","fileCount":1,"integrity":"sha512-zf76svTLDBAb6LXo0kBTM9N23E1Cu3T15kepF12TZhqSsVQC0rGyaLzQ7foNg9mSHoXg8ru7PeQkd16rCvd4/A==","signatures":[{"sig":"MEUCIGWNx45zfO2ULSxhEfqHMWmmoNiwuI8Rhfea41CeFaiFAiEA1DTVguLBAF485CJ2PQpdH6rSS6cxuPt8VEH0EkeuoMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":273},"main":"index.js","type":"commonjs","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"},"_npmVersion":"11.18.0","description":"","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_0.0.0_1783530879339_0.7399985327839464","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"0.1.0","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@0.1.0","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"homepage":"https://github.com/coveo/ui-kit#readme","bugs":{"url":"https://github.com/coveo/ui-kit/issues"},"dist":{"shasum":"81151fef1cb8e7863f11cd232ee687df794ec603","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-0.1.0.tgz","fileCount":30,"integrity":"sha512-GDCNd3lOGeESVqlBdO/IJmMnb8dkqfwBFQbxC4BEaJmrcymeo3H9XEADSQJj1OkZUn6MkyL1Hv+jRrOW6KGxiw==","signatures":[{"sig":"MEUCIBoBL7simgbgO5PEhde07HY6R/FFZOtSHPpqQbDj3vaiAiEAjjnvEVFYuRSsXyAb3U3DKm4luj7G2yaPFlwBZea6fkA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":107154},"type":"module","_from":"file:coveo-ui-kit-sample-headless-ssr-commerce-express-0.1.0.tgz","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"_resolved":"/tmp/f7920c989d47c88b35981a3b50018fda/coveo-ui-kit-sample-headless-ssr-commerce-express-0.1.0.tgz","_integrity":"sha512-GDCNd3lOGeESVqlBdO/IJmMnb8dkqfwBFQbxC4BEaJmrcymeo3H9XEADSQJj1OkZUn6MkyL1Hv+jRrOW6KGxiw==","repository":{"url":"git+https://github.com/coveo/ui-kit.git","type":"git","directory":"samples/headless-ssr/commerce-express"},"_npmVersion":"11.13.0","description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"24.16.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.53.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.1","typescript":"6.0.3","@types/node":"24.12.4","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_0.1.0_1784559970435_0.5488656350858425","host":"s3://npm-registry-packages-npm-production"}},"3.53.2":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.53.2","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.53.2","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"homepage":"https://github.com/coveo/ui-kit#readme","bugs":{"url":"https://github.com/coveo/ui-kit/issues"},"dist":{"shasum":"af3541b2c6d9f238ebe329c85fd2cfa1526911a6","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.53.2.tgz","fileCount":30,"integrity":"sha512-H8Ix5/cvamFkZybYg9DlqObSE/p7BdG/pVRgm4WuAt8LOoSQxYmFiNE4wxnp/ooZIhZH5D5cz51MD6YF1tExYQ==","signatures":[{"sig":"MEQCIEOqPKIkqpyamppD2XRKCvV8ShUrkJT5sPr3WkESpT6SAiBObuUNRyuRhkN/eTknq2FxELr2/4S8pIY5O38NWQ+WTQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.53.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106576},"type":"module","_from":"file:coveo-ui-kit-sample-headless-ssr-commerce-express-3.53.2.tgz","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"_resolved":"/tmp/2400a4863ff497a777aa9ec4200b07ab/coveo-ui-kit-sample-headless-ssr-commerce-express-3.53.2.tgz","_integrity":"sha512-H8Ix5/cvamFkZybYg9DlqObSE/p7BdG/pVRgm4WuAt8LOoSQxYmFiNE4wxnp/ooZIhZH5D5cz51MD6YF1tExYQ==","repository":{"url":"git+https://github.com/coveo/ui-kit.git","type":"git","directory":"samples/headless-ssr/commerce-express"},"_npmVersion":"11.13.0","description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"24.16.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.53.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.1","typescript":"6.0.3","@types/node":"24.12.4","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.53.2_1785174299903_0.7358496065666726","host":"s3://npm-registry-packages-npm-production"}},"3.54.0":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.54.0","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.54.0","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"homepage":"https://github.com/coveo/ui-kit#readme","bugs":{"url":"https://github.com/coveo/ui-kit/issues"},"dist":{"shasum":"3b918aaa6d160d60e2e424a14242670981595324","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.54.0.tgz","fileCount":30,"integrity":"sha512-BCXSsl9YHxvxtG8auqmAzFW7JIYeniT0szPbZ4d8L72o/G/f6R1y/wizXWNZzKxZ43OTdUwuwieQSSvqEgPMiQ==","signatures":[{"sig":"MEQCICc+4At4M1Eybg7goxpYiM/em6mldnczExuWzp+X1ceDAiAfND17DM3XvOVwArEmnl+C5hbB19t1mPO0JZ9H4pLOgA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.54.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106576},"type":"module","_from":"file:coveo-ui-kit-sample-headless-ssr-commerce-express-3.54.0.tgz","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"_resolved":"/tmp/5c667563f3e70fd21a367984a16af715/coveo-ui-kit-sample-headless-ssr-commerce-express-3.54.0.tgz","_integrity":"sha512-BCXSsl9YHxvxtG8auqmAzFW7JIYeniT0szPbZ4d8L72o/G/f6R1y/wizXWNZzKxZ43OTdUwuwieQSSvqEgPMiQ==","repository":{"url":"git+https://github.com/coveo/ui-kit.git","type":"git","directory":"samples/headless-ssr/commerce-express"},"_npmVersion":"11.13.0","description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"24.16.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.54.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.1","typescript":"6.0.3","@types/node":"24.12.4","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.54.0_1785854646133_0.5810179704053298","host":"s3://npm-registry-packages-npm-production"}},"3.55.0":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.55.0","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.55.0","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"homepage":"https://github.com/coveo/ui-kit#readme","bugs":{"url":"https://github.com/coveo/ui-kit/issues"},"dist":{"shasum":"e6171d9d98b5f5c744bcf526afc333c1be7c1f10","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.55.0.tgz","fileCount":30,"integrity":"sha512-EIZERc6sCGXGdf+Z96CsjO2uzTCbAvvIUmHgCuRKZU8VVl60g/vqHWzJ0Hu6+6ktBaRWrq9BckZMUpsymGIidA==","signatures":[{"sig":"MEYCIQCM1pUO9+zJb4fANniHmxGZTOzZvf2SB7dvvw+FVxlVqwIhAKJd0h/mYw+IVFhiia3WIaFZ9jPizqqtAotZIZWdgf5C","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.55.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106576},"type":"module","_from":"file:coveo-ui-kit-sample-headless-ssr-commerce-express-3.55.0.tgz","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"_resolved":"/tmp/a84d1db930fb31889b6b0803773ad56a/coveo-ui-kit-sample-headless-ssr-commerce-express-3.55.0.tgz","_integrity":"sha512-EIZERc6sCGXGdf+Z96CsjO2uzTCbAvvIUmHgCuRKZU8VVl60g/vqHWzJ0Hu6+6ktBaRWrq9BckZMUpsymGIidA==","repository":{"url":"git+https://github.com/coveo/ui-kit.git","type":"git","directory":"samples/headless-ssr/commerce-express"},"_npmVersion":"11.16.0","description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"24.18.1","dependencies":{"express":"5.2.1","@coveo/headless":"3.55.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.1","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.55.0_1786470693945_0.011324205086772565","host":"s3://npm-registry-packages-npm-production"}},"3.55.1":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.55.1","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.55.1","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"homepage":"https://github.com/coveo/ui-kit#readme","bugs":{"url":"https://github.com/coveo/ui-kit/issues"},"dist":{"shasum":"02d456190cfc5df1cc6a1b22dc0d3e0a0478c2b3","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.55.1.tgz","fileCount":30,"integrity":"sha512-WxCSH84ila0eC16qv5Dv8EkikAPi2D4VPJoEqj8/EIUyKMPBUh/gQPB6nbPVJhmVhlOPThVpC50e176uTD4pCQ==","signatures":[{"sig":"MEQCIGJ/hhZkKtEOCO/hFKh3YJCwoi8CBMUx3/avJnMjAM+6AiBpaULB4zE4MXy5i6Pkv6FJ3AaDbGLdsQcjKMsRJpF7PQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.55.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106668},"type":"module","_from":"file:coveo-ui-kit-sample-headless-ssr-commerce-express-3.55.1.tgz","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"_resolved":"/tmp/9584e4a27057bd1fd55da796b59924ac/coveo-ui-kit-sample-headless-ssr-commerce-express-3.55.1.tgz","_integrity":"sha512-WxCSH84ila0eC16qv5Dv8EkikAPi2D4VPJoEqj8/EIUyKMPBUh/gQPB6nbPVJhmVhlOPThVpC50e176uTD4pCQ==","repository":{"url":"git+https://github.com/coveo/ui-kit.git","type":"git","directory":"samples/headless-ssr/commerce-express"},"_npmVersion":"11.16.0","description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"24.18.1","dependencies":{"express":"5.2.1","@coveo/headless":"3.55.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.1","publint":"0.3.22","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.55.1_1786635237086_0.8776976471510034","host":"s3://npm-registry-packages-npm-production"}},"3.55.2":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.55.2","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.55.2","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"homepage":"https://github.com/coveo/ui-kit#readme","bugs":{"url":"https://github.com/coveo/ui-kit/issues"},"dist":{"shasum":"a2368ea67e85a4fd7afbfe756c1173d97689fbb4","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.55.2.tgz","fileCount":30,"integrity":"sha512-hiGNU6CmzKJ9VDgkM22TJo2JpMd0wW4ycCrG3kBqlsrh1KVLVksaZPqy0Y68fLlch8l2AvB5qU9UrJ59DqxVdg==","signatures":[{"sig":"MEYCIQD+vcSKBxUQGpS9nFuzvEF+laX4hg6cbTByvP3Pu8s3EwIhAPmpK5Ujc5tASJQaGdln1ait3Ow9nwwSx7m9iH64GXFZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.55.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106668},"type":"module","_from":"file:coveo-ui-kit-sample-headless-ssr-commerce-express-3.55.2.tgz","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"_resolved":"/tmp/65178fee5642ef1c6467ea9f35e5c524/coveo-ui-kit-sample-headless-ssr-commerce-express-3.55.2.tgz","_integrity":"sha512-hiGNU6CmzKJ9VDgkM22TJo2JpMd0wW4ycCrG3kBqlsrh1KVLVksaZPqy0Y68fLlch8l2AvB5qU9UrJ59DqxVdg==","repository":{"url":"git+https://github.com/coveo/ui-kit.git","type":"git","directory":"samples/headless-ssr/commerce-express"},"_npmVersion":"11.16.0","description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"24.18.1","dependencies":{"express":"5.2.1","@coveo/headless":"3.55.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.2","publint":"0.3.23","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.55.2_1787057164420_0.2692234228461545","host":"s3://npm-registry-packages-npm-production"}},"3.55.3":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.55.3","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.55.3","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"dist":{"shasum":"0d41c0a297811f7921c7883f95a639eaaa27e948","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.55.3.tgz","fileCount":30,"integrity":"sha512-PrRhuK6exwTauwXzAl3r/j8How7ZjfGMsh7rutsqeSCxz/UsGGHjNo/U246+N1TI4lC7ZfpUZcbOhpJxZM4Syg==","signatures":[{"sig":"MEYCIQDXqaiLyccFVxbbnVcDGOkd5CwfvZoniksryqp0azTt9gIhAKCUEPXOMPbTieKxVys0xbFOvV4jFK42HdIfsGcZ8rOJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.55.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106640},"type":"module","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"repository":{"url":"https://github.com/coveo/ui-kit","type":"git","directory":"samples/headless-ssr/commerce-express"},"description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"26.0.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.55.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.2","publint":"0.3.24","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.55.3_1788268483325_0.31510487283327504","host":"s3://npm-registry-packages-npm-production"}},"3.55.4":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.55.4","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.55.4","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"dist":{"shasum":"4519f0a7c2c01320a167820560e309ed13fb9ee5","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.55.4.tgz","fileCount":30,"integrity":"sha512-7FwKjNCJgB9j4KFlWqjL1hImWVG0fJW3SLNP7d+iRa65qmqEmZjtEo2qE8eLuSkpVoyxETGspdIS2zoVqac4Ew==","signatures":[{"sig":"MEYCIQDKmdI3tarJBcbr2YA/w6nM/ms8hUfvFh4UJk2BlGtpnAIhAP64l3nlF1wFp75Y1+kn3FpMmM3hv0pijUYTSl+PSIUS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.55.4","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106640},"type":"module","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"repository":{"url":"https://github.com/coveo/ui-kit","type":"git","directory":"samples/headless-ssr/commerce-express"},"description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"26.0.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.55.4"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.2","publint":"0.3.24","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.55.4_1788969724381_0.6987929349910003","host":"s3://npm-registry-packages-npm-production"}},"3.56.0":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.56.0","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.56.0","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"dist":{"shasum":"741f628318b39205b3e53e194fcda24d44eb0b45","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.56.0.tgz","fileCount":30,"integrity":"sha512-I7U8N+7pFwbInf9jYOJ057w/9PMPBY8apJxa4Br9zxk8JZSwbLlJDWTWMQOPEQqrNxmR4t4lNRmGk9mtAWTgyA==","signatures":[{"sig":"MEQCIFQBtz3c/SNidcrqQ/eu6WKvS6o/wwSHismAEXaTEcjXAiAU/nfdF1b1qgbE5vc3adTxVG7uaJqnN1yPoKXrKoRDHQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEYCIQCddChzo7VtwAqYK92z9+v5m4671/oW+EFN6DcaQ/kn7QIhAO5IrOKgHUDWDVuMfN35/TLsvkqAuBulrU2EQ0/Oeef4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.56.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106640},"type":"module","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"repository":{"url":"https://github.com/coveo/ui-kit","type":"git","directory":"samples/headless-ssr/commerce-express"},"description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"26.0.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.56.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.2","publint":"0.3.24","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.56.0_1789502853795_0.25982604561594425","host":"s3://npm-registry-packages-npm-production"}},"3.57.0":{"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","version":"3.57.0","_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.57.0","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"dist":{"shasum":"4dacd5684a83faec4066b62d6e9e9e4b445c2ce9","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.57.0.tgz","fileCount":30,"integrity":"sha512-2dPVylzjzMe8r3B/CcDq3a6mHPSNYxDSKjVXXwOONiya/pEp3M5LzPtpk8Nj3sGLd8UGvm77RvajPy1dcKdn/Q==","signatures":[{"sig":"MEYCIQDRpBKnUQ6s/PXIlU7f6uPdfyeQ4PenbUTtnW+Bd5MBNgIhAINO06hDID15VT6G/iBJDwLh+uNQe7zTl8W1tnlpkJhs","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"sig":"MEUCIEHm8JIveQAZsmcd/xowAYHJ/H/x2Z3Ngo+7p6g6GWsmAiEA+vV5g8JY6zrdBfmu1aroIrG0+PyiWlx5uRnU72tD7Wg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.57.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106631},"type":"module","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:ca59b590-472d-458f-ab90-469f64b2f85d"}},"repository":{"url":"https://github.com/coveo/ui-kit","type":"git","directory":"samples/headless-ssr/commerce-express"},"description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"_nodeVersion":"26.0.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.57.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.2","publint":"0.3.24","typescript":"6.0.3","@types/node":"24.13.3","@types/express":"5.0.6"},"_npmOperationalInternal":{"tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.57.0_1790168237769_0.07808297984314128","host":"s3://npm-registry-packages-npm-production"}},"3.57.1":{"_id":"@coveo/ui-kit-sample-headless-ssr-commerce-express@3.57.1","dist":{"shasum":"429b5c0c7dffbdd1c782b97d56b9bbe6dc785eb8","tarball":"https://registry.npmjs.org/@coveo/ui-kit-sample-headless-ssr-commerce-express/-/ui-kit-sample-headless-ssr-commerce-express-3.57.1.tgz","fileCount":30,"integrity":"sha512-PZ2lv0i72W6WzSzNV1cDPxN97Z+8EYLdoYuRPX5ANn56+rLkvQijvxr4pcgMmKgwjDQN6WJEIqX/F6iw8W6PWQ==","signatures":[{"sig":"MEUCIHFjigoPUc+0vZe89Ur8Z24tqD6nbiT4yVndkA+GwtAMAiEA+H9jPfckcAmG/u0JhuEuqijQHWTbBL5CVTVmoH72Mms=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDbM14OPZMm1AIIBLz11ix4HjNfHhd97nr18kruiZWBqAiEA3EA9qqaIF685hUOAxjISv0k52BgWMJOu190lurfnNPY="}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@coveo%2fui-kit-sample-headless-ssr-commerce-express@3.57.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106631},"name":"@coveo/ui-kit-sample-headless-ssr-commerce-express","type":"module","scripts":{"dev":"pnpm build:client --watch=forever & pnpm build:server --watch & node --watch ./dist/server.js","build":"pnpm build:server && pnpm build:client","start":"node ./dist/server.js","publint":"pnpm run prepack && publint publish --pack=false","type-check":"tsc --noEmit","build:client":"esbuild ./src/client.ts --bundle --outfile=dist/client.js --format=esm --target=es2022","build:server":"tsc -p tsconfig.build.json"},"version":"3.57.1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"ca59b590-472d-458f-ab90-469f64b2f85d"}},"repository":{"url":"https://github.com/coveo/ui-kit","type":"git","directory":"samples/headless-ssr/commerce-express"},"description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","directories":{},"maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"_nodeVersion":"26.0.0","dependencies":{"express":"5.2.1","@coveo/headless":"3.57.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"esbuild":"0.28.2","publint":"0.3.24","typescript":"6.0.3","@types/node":"24.13.6","@types/express":"5.0.6"},"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ui-kit-sample-headless-ssr-commerce-express_3.57.1_1790778760584_0.9409885889120744"}}},"time":{"created":"2026-07-08T17:14:39.166Z","modified":"2026-09-30T14:32:43.105Z","0.0.0":"2026-07-08T17:14:39.524Z","0.1.0":"2026-07-20T15:06:10.570Z","3.53.2":"2026-07-27T17:45:00.074Z","3.54.0":"2026-08-04T14:44:06.276Z","3.55.0":"2026-08-11T17:51:34.075Z","3.55.1":"2026-08-13T15:33:57.230Z","3.55.2":"2026-08-18T12:46:04.542Z","3.55.3":"2026-09-01T13:14:43.466Z","3.55.4":"2026-09-09T16:02:04.518Z","3.56.0":"2026-09-15T20:07:33.876Z","3.57.0":"2026-09-23T12:57:17.853Z","3.57.1":"2026-09-30T14:32:40.671Z"},"repository":{"url":"https://github.com/coveo/ui-kit","type":"git","directory":"samples/headless-ssr/commerce-express"},"description":"Commerce server-side rendering (SSR) with @coveo/headless/ssr-commerce and an Express server","maintainers":[{"name":"oa-npmcoveo","email":"oa-npmcoveo@oacvo.com"}],"readme":"# Headless Commerce SSR with Express\n\n> **Scaffold template**: `headless-ssr-commerce-express`\n> This sample is the scaffold template used by `npm create @coveo/ui` to bootstrap a generic (no-framework) Coveo Headless commerce project with server-side rendering (SSR) on a plain Express server.\n\nA commerce experience built with [`@coveo/headless/ssr-commerce`](https://docs.coveo.com/en/headless/latest/usage/ssr/) and a minimal Express server — no UI framework. Product data is fetched and rendered to HTML on the server, then hydrated on the client for interactivity. It runs against the public `searchuisamples` organization with no configuration required.\n\n## What it shows\n\n- A commerce `search` page (search box, facets, sort, pagination)\n- A search box with **query suggestions** and **instant products**: as the user types, a dropdown previews matching query suggestions (left) and the best-matching products (right); arrow keys move through the suggestions (previewing instant products for the highlighted one), Enter selects, and Escape or a click outside dismisses it\n- Product `listing` pages served by a single dynamic `/listing/:listingId` route\n- Add-to-cart with a slide-in cart drawer (quantity controls, purchase, and empty), including the product-click event that must accompany cart events sent from a listing\n- A cart that persists across navigation and reloads via a simulated external cart system, seeded into the SSR initial state on each request\n- Server-side rendering of the initial state with client-side hydration (each component is a plain SSR render function paired with a hydration function)\n- URL deep-linking of the query, facets, sort, and pagination via the parameter manager\n\n## Technology stack\n\n- **Express** + **TypeScript**, bundled with **esbuild** (client) and compiled with **tsc** (server)\n- **@coveo/headless/ssr-commerce**: Coveo's framework-agnostic SSR commerce controllers\n- **Playwright** + **@coveo/platform-mock-api** + **MSW**: deterministic end-to-end tests\n\n## Prerequisites\n\n- Node.js 20+ (LTS recommended)\n- pnpm\n\n## Getting started\n\n```bash\npnpm install\npnpm dev      # build in watch mode + run the server (http://localhost:3000)\npnpm build    # production build (server + client + e2e mocks)\npnpm start    # serve the production build (http://localhost:3000)\npnpm e2e      # end-to-end tests (Playwright, MSW-mocked)\n```\n\n`/` redirects to `/search`. No credentials are required — the sample uses the public `searchuisamples` organization.\n\n## Project structure\n\n- `src/server.ts` — Express routes (`/search`, `/listing/:listingId`); fetches the static state (seeding the cart from the request cookie) and returns fully rendered HTML.\n- `src/client.ts` — reads the injected SSR state and hydrates the matching engine (search or listing).\n- `src/lib/` — engine configuration (`engine-config.ts`), engine definitions (`engine-definition.ts`), navigator context, and the simulated external cart system (`cart.ts` cookie helpers + `externalCartApi.ts`).\n- `src/components/` — one module per UI concern (including `Cart.ts`); each exposes an SSR render function and a client hydration function.\n- `src/common/` — the app shell (`renderApp.ts`), the HTML document (`renderHtml.ts`), cart action helpers (`cart-actions.ts`), styles, and helpers.\n\n### How the cart works\n\nThe cart uses the Coveo `cart` controller (`defineCart()`), which owns cart **analytics** (it emits `ec.cartAction` and `ec.purchase` events). The cart **contents** are owned by an external cart system, simulated here with a browser cookie (`src/lib/externalCartApi.ts`) — in a real storefront you would call your own service instead. Every cart mutation is applied to both: the controller (for analytics) and the external system (for persistence), which is why `src/common/cart-actions.ts` calls each in turn. On every request the server reads the cookie and seeds the cart's initial state so it survives navigation and reloads. Adding to cart from a product listing also sends the required accompanying product-click event.\n\n## Using this sample as an MRE\n\nThis sample doubles as a minimal reproducible example for troubleshooting.\n\n- **Where to change the configuration**: the engine configuration lives in `src/lib/engine-config.ts`. It calls `getSampleCommerceEngineConfiguration()` for the public sample credentials. Replace `organizationId`, `accessToken`, and the `context` with the values that reproduce your issue.\n- **Context (language, country, currency, view)**: set per request in `src/server.ts` when calling `fetchStaticState` (each route passes its own `view.url`).\n- **Safe to modify**: `src/lib/engine-config.ts` (configuration), and any component in `src/components/` or route in `src/server.ts` to reproduce a specific UI scenario.\n- **Scaffolding you can usually ignore**: `playwright.config.ts`, `e2e/`, and `mocks/` (the deterministic test setup).\n- **Credentials**: the `accessToken` and `organizationId` are the **public `searchuisamples` sample credentials**, safe to share with customers or partners. They are not internal credentials.\n\n## Reproducing against a specific version\n\nTo reproduce an issue against a specific Coveo UI Kit version, install it after scaffolding:\n\n```bash\npnpm add @coveo/headless@<version>\n```\n\n## How the tests stay deterministic\n\nThe Playwright tests never call a live API. Client-side requests are mocked with [`@msw/playwright`](https://www.npmjs.com/package/@msw/playwright) (see `e2e/fixtures.ts`), and the server-side `fetchStaticState` calls are mocked by an MSW server preloaded into the Express process during `pnpm e2e` (the `build:mocks` script bundles `mocks/register.ts` to plain JS, which the `webServer` config in `playwright.config.ts` preloads via `NODE_OPTIONS`). Both reuse the handlers from `@coveo/platform-mock-api`.\n\n## Learn more\n\n- [Coveo Headless SSR documentation](https://docs.coveo.com/en/headless/latest/usage/ssr/)\n- [Coveo for Commerce](https://docs.coveo.com/en/coveo-for-commerce/)\n","readmeFilename":""}