{"_id":"@asos/web-toggle-point-ssr","_rev":"6-1509aeb9631eb61da0caa2558facd672","name":"@asos/web-toggle-point-ssr","dist-tags":{"latest":"0.2.6"},"versions":{"0.2.2":{"name":"@asos/web-toggle-point-ssr","version":"0.2.2","license":"MIT","_id":"@asos/web-toggle-point-ssr@0.2.2","maintainers":[{"name":"asos-bradleyabel","email":"bradley.abel@asos.com"},{"name":"asos-rupeshghelani","email":"rupesh.ghelani@asos.com"},{"name":"asos-roberth","email":"robert.hill@asos.com"},{"name":"asos-tonygorman","email":"Tony.Gorman@asos.com"},{"name":"asos-danielc","email":"DanielC@ASOS.com"}],"homepage":"https://github.com/asos/web-toggle-point#readme","bugs":{"url":"https://github.com/asos/web-toggle-point/issues"},"dist":{"shasum":"d3ff2339ae126a3fe6b260cf5cd682a7f80e8725","tarball":"https://registry.npmjs.org/@asos/web-toggle-point-ssr/-/web-toggle-point-ssr-0.2.2.tgz","fileCount":10,"integrity":"sha512-DkicTMis5oBiUqf1KVwk/60MKIYOQpHtAYMGBxyvId+Sfs2VCC+S1efFM5SymfXhsKwx8GahZbj1H95SwsTFVQ==","signatures":[{"sig":"MEYCIQDW+FhViQQCuQSKxQAdaPoabqmcv+EpZFzw/pAuO7RBRAIhAPxThybTaY8rPmvE/xY6Tt/JnqDjvhse2a0vTApbHQLY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":53104},"main":"./lib/main.es5.cjs","type":"module","exports":{"node":{"import":"./lib/main.js","require":"./lib/main.es5.cjs"},"default":{"import":"./lib/browser.js","require":"./lib/browser.es5.cjs"}},"gitHead":"ca3f68325cff83644fab664414627fd3a5edc5e5","scripts":{"docs":"rimraf ./docs/**/*.html && jsdoc -c ../jsdoc.conf.js","lint":"eslint build src docs --flag unstable_config_lookup_from_file","test":"jest","build":"npm run clean && npm run build:browser && npm run build:server","clean":"rimraf ./lib","lint:fix":"npm run lint -- --fix","build:server":"rollup -c build/rollup.mjs --config_isClient false","build:browser":"cross-env BABEL_ENV=browser rollup -c build/rollup.mjs --config_isClient true","prepublishOnly":"npm run build"},"_npmUser":{"name":"asos-danielc","email":"DanielC@ASOS.com"},"repository":{"url":"git+https://github.com/asos/web-toggle-point.git","type":"git","directory":"packages/ssr"},"_npmVersion":"10.9.2","description":"toggle point server side rendering code","directories":{"doc":"docs"},"_nodeVersion":"22.14.0","dependencies":{"jsesc":"^3.0.2","@babel/runtime":"^7.26.0","html-react-parser":"^5.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","jsdoc":"^4.0.4","react":"^18.3.1","react-dom":"^18.3.1","@types/webpack-env":"^1.18.0","eslint-plugin-jsdoc":"^50.5.0","eslint-plugin-react":"^7.31.10","@rollup/plugin-babel":"^6.0.2","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-replace":"^5.0.1","@testing-library/react":"^16.0.1","eslint-plugin-jsx-a11y":"^6.7.1","jest-environment-jsdom":"^29.6.4","@rollup/plugin-commonjs":"^25.0.4","@testing-library/jest-dom":"^6.1.3","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.2.1","rollup-plugin-auto-external":"^2.0.0","eslint-plugin-testing-library":"^7.0.0"},"peerDependencies":{"react":">=17","react-dom":">=17","prop-types":"^15.7.2"},"_npmOperationalInternal":{"tmp":"tmp/web-toggle-point-ssr_0.2.2_1741271142649_0.7460439175204672","host":"s3://npm-registry-packages-npm-production"}},"0.2.3":{"name":"@asos/web-toggle-point-ssr","version":"0.2.3","license":"MIT","_id":"@asos/web-toggle-point-ssr@0.2.3","maintainers":[{"name":"asos-bradleyabel","email":"bradley.abel@asos.com"},{"name":"asos-rupeshghelani","email":"rupesh.ghelani@asos.com"},{"name":"asos-roberth","email":"robert.hill@asos.com"},{"name":"asos-tonygorman","email":"Tony.Gorman@asos.com"},{"name":"asos-danielc","email":"DanielC@ASOS.com"}],"homepage":"https://github.com/asos/web-toggle-point/tree/main/packages/ssr","bugs":{"url":"https://github.com/asos/web-toggle-point/issues"},"dist":{"shasum":"985eb3cbb3983bd08c205a4097fc78d7606d3b0c","tarball":"https://registry.npmjs.org/@asos/web-toggle-point-ssr/-/web-toggle-point-ssr-0.2.3.tgz","fileCount":11,"integrity":"sha512-4D6WAj2Y17unHOLhLNg1HqiSd74fx7zVsvk0kPYJN2n52qEXCoGBUALRVsX1IxI0TF081jimdM6A7lylPFA3hQ==","signatures":[{"sig":"MEQCIEw8I09wLLAX/PntsqpNiLEa+fCwK1Yq31grE4BU+GuMAiAPTeyjNCwo1klddDWBbQa5/Dy0aQ1tbuClGWlL9TnxRg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":55412},"main":"./lib/main.es5.cjs","type":"module","exports":{"node":{"import":"./lib/main.js","require":"./lib/main.es5.cjs"},"default":{"import":"./lib/browser.js","require":"./lib/browser.es5.cjs"}},"gitHead":"0ba42cc822c3326d5e6853b24b34070f3e357143","scripts":{"docs":"rimraf ./docs/**/*.html && jsdoc -c ../jsdoc.conf.js","lint":"eslint build src docs --flag unstable_config_lookup_from_file","test":"jest","build":"npm run clean && npm run build:browser && npm run build:server","clean":"rimraf ./lib","lint:fix":"npm run lint -- --fix","build:server":"rollup -c build/rollup.mjs --config_isClient false","build:browser":"cross-env BABEL_ENV=browser rollup -c build/rollup.mjs --config_isClient true","prepublishOnly":"npm run build"},"_npmUser":{"name":"asos-danielc","email":"DanielC@ASOS.com"},"repository":{"url":"git+https://github.com/asos/web-toggle-point.git","type":"git","directory":"packages/ssr"},"_npmVersion":"10.9.2","description":"toggle point server side rendering code","directories":{"doc":"docs"},"_nodeVersion":"22.17.0","dependencies":{"jsesc":"^3.0.2","@babel/runtime":"^7.26.0","html-react-parser":"^5.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","jsdoc":"^4.0.4","react":"^18.3.1","react-dom":"^18.3.1","@types/webpack-env":"^1.18.0","eslint-plugin-jsdoc":"^50.5.0","eslint-plugin-react":"^7.31.10","@rollup/plugin-babel":"^6.0.2","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-replace":"^5.0.1","@testing-library/react":"^16.0.1","eslint-plugin-jsx-a11y":"^6.7.1","jest-environment-jsdom":"^29.6.4","@rollup/plugin-commonjs":"^25.0.4","@testing-library/jest-dom":"^6.1.3","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.2.1","rollup-plugin-auto-external":"^2.0.0","eslint-plugin-testing-library":"^7.0.0"},"peerDependencies":{"react":">=17","react-dom":">=17","prop-types":"^15.7.2"},"_npmOperationalInternal":{"tmp":"tmp/web-toggle-point-ssr_0.2.3_1752505309823_0.5364041908241481","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@asos/web-toggle-point-ssr","version":"0.2.4","license":"MIT","_id":"@asos/web-toggle-point-ssr@0.2.4","maintainers":[{"name":"asos-bradleyabel","email":"bradley.abel@asos.com"},{"name":"asos-rupeshghelani","email":"rupesh.ghelani@asos.com"},{"name":"asos-roberth","email":"robert.hill@asos.com"},{"name":"asos-tonygorman","email":"Tony.Gorman@asos.com"},{"name":"asos-danielc","email":"DanielC@ASOS.com"}],"homepage":"https://github.com/asos/web-toggle-point/tree/main/packages/ssr","bugs":{"url":"https://github.com/asos/web-toggle-point/issues"},"dist":{"shasum":"3fa80bf888ff301e14d029e6262e3e0fcc41fd72","tarball":"https://registry.npmjs.org/@asos/web-toggle-point-ssr/-/web-toggle-point-ssr-0.2.4.tgz","fileCount":11,"integrity":"sha512-s46dJjb5f3E34VggnfaFZMoISuM9NqpPQLEIpoIp5EtIp/ToMfm8aSUnpDGaVPGeaE7NjICaW+4rJMUqVQZp0w==","signatures":[{"sig":"MEUCIQCFTKuzcAVpHfijTp2+ZITwTvXFvO+Xvf3dblluZNI8zwIgdUYvgDHGg6zPb9y+63AQgUYIjcXXSgHHxfHo0mERmBA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":59502},"main":"./lib/main.es5.cjs","type":"module","exports":{"browser":{"import":"./lib/browser.js","require":"./lib/browser.es5.cjs"},"default":{"import":"./lib/main.js","require":"./lib/main.es5.cjs"}},"gitHead":"2918c6be4158f082cea75c3e11dfd97e1342845a","scripts":{"docs":"rimraf ./docs/**/*.html && jsdoc -c ../jsdoc.conf.js","lint":"eslint build src docs --flag unstable_config_lookup_from_file","test":"jest","build":"npm run clean && npm run build:browser && npm run build:server","clean":"rimraf ./lib","lint:fix":"npm run lint -- --fix","build:server":"rollup -c build/rollup.mjs --config_isClient false","build:browser":"cross-env BABEL_ENV=browser rollup -c build/rollup.mjs --config_isClient true","prepublishOnly":"npm run build"},"_npmUser":{"name":"asos-danielc","email":"DanielC@ASOS.com"},"repository":{"url":"git+https://github.com/asos/web-toggle-point.git","type":"git","directory":"packages/ssr"},"_npmVersion":"10.9.3","description":"toggle point server side rendering code","directories":{"doc":"docs"},"_nodeVersion":"22.19.0","dependencies":{"jsesc":"^3.0.2","@babel/runtime":"^7.26.0","html-react-parser":"^5.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","jsdoc":"^4.0.4","react":"^18.3.1","react-dom":"^18.3.1","@types/webpack-env":"^1.18.0","eslint-plugin-jsdoc":"^50.5.0","eslint-plugin-react":"^7.31.10","@rollup/plugin-babel":"^6.0.2","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-replace":"^5.0.1","@testing-library/react":"^16.0.1","eslint-plugin-jsx-a11y":"^6.7.1","jest-environment-jsdom":"^29.6.4","@rollup/plugin-commonjs":"^25.0.4","@testing-library/jest-dom":"^6.1.3","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.2.1","rollup-plugin-auto-external":"^2.0.0","eslint-plugin-testing-library":"^7.0.0"},"peerDependencies":{"react":">=17","react-dom":">=17","prop-types":"^15.7.2"},"_npmOperationalInternal":{"tmp":"tmp/web-toggle-point-ssr_0.2.4_1759136396165_0.4060786696592489","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@asos/web-toggle-point-ssr","version":"0.2.5","keywords":["toggle point","feature toggles","feature flags","ssr","isomorphic","universal"],"license":"MIT","_id":"@asos/web-toggle-point-ssr@0.2.5","maintainers":[{"name":"asos-bradleyabel","email":"bradley.abel@asos.com"},{"name":"asos-rupeshghelani","email":"rupesh.ghelani@asos.com"},{"name":"asos-roberth","email":"robert.hill@asos.com"},{"name":"asos-tonygorman","email":"Tony.Gorman@asos.com"},{"name":"asos-danielc","email":"DanielC@ASOS.com"}],"homepage":"https://github.com/asos/web-toggle-point/tree/main/packages/ssr","bugs":{"url":"https://github.com/asos/web-toggle-point/issues"},"dist":{"shasum":"dafcfcfdc1276844c7e8422bc3051e857cf746a5","tarball":"https://registry.npmjs.org/@asos/web-toggle-point-ssr/-/web-toggle-point-ssr-0.2.5.tgz","fileCount":11,"integrity":"sha512-CRwChx6y3V5+9OwH2rjIJmNA5tBZde89aBFF9oKDdTVj03jfs3f0wZ0vNfh8AM6qKKTKFfaijlPna0vW7VoPcQ==","signatures":[{"sig":"MEUCIQC+qdmuKDpJckpGoRxQM0S9voXzVN97zObSfhNloEaAEwIgXprj+vpzoko59M2dWyA6pH3CoKC+s+4B2mfxkMyhtYs=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57436},"main":"./lib/main.es5.cjs","type":"module","exports":{"browser":{"import":"./lib/browser.js","require":"./lib/browser.es5.cjs"},"default":{"import":"./lib/main.js","require":"./lib/main.es5.cjs"}},"gitHead":"bc7f6fd20141dd6f9ba026c45d748eb976cabd98","scripts":{"docs":"rimraf ./docs/**/*.html && jsdoc -c ../jsdoc.conf.js","lint":"eslint build src docs --flag unstable_config_lookup_from_file","test":"jest","build":"npm run clean && npm run build:browser && npm run build:server","clean":"rimraf ./lib","lint:fix":"npm run lint -- --fix","postpublish":"shx rm ./README.md LICENSE","build:server":"rollup -c build/rollup.mjs --config_isClient false","build:browser":"cross-env BABEL_ENV=browser rollup -c build/rollup.mjs --config_isClient true","prepublishOnly":"shx cp docs/README.md ../../LICENSE . && npm run build"},"_npmUser":{"name":"asos-danielc","email":"DanielC@ASOS.com"},"repository":{"url":"git+https://github.com/asos/web-toggle-point.git","type":"git","directory":"packages/ssr"},"_npmVersion":"10.9.3","description":"toggle point server side rendering code","directories":{"doc":"docs"},"_nodeVersion":"22.19.0","dependencies":{"jsesc":"^3.0.2","@babel/runtime":"^7.26.0","html-react-parser":"^5.2.1"},"_hasShrinkwrap":false,"devDependencies":{"shx":"^0.4.0","jest":"^29.7.0","jsdoc":"^4.0.4","react":"^18.3.1","react-dom":"^18.3.1","@types/webpack-env":"^1.18.0","eslint-plugin-jsdoc":"^50.5.0","eslint-plugin-react":"^7.31.10","@rollup/plugin-babel":"^6.0.2","@rollup/plugin-terser":"^0.4.3","@rollup/plugin-replace":"^5.0.1","@testing-library/react":"^16.0.1","eslint-plugin-jsx-a11y":"^6.7.1","jest-environment-jsdom":"^29.6.4","@rollup/plugin-commonjs":"^25.0.4","@testing-library/jest-dom":"^6.1.3","eslint-plugin-react-hooks":"^5.0.0","@rollup/plugin-node-resolve":"^15.2.1","rollup-plugin-auto-external":"^2.0.0","eslint-plugin-testing-library":"^7.0.0"},"peerDependencies":{"react":">=17","react-dom":">=17","prop-types":"^15.7.2"},"_npmOperationalInternal":{"tmp":"tmp/web-toggle-point-ssr_0.2.5_1759150820322_0.02396464158302858","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@asos/web-toggle-point-ssr","description":"toggle point server side rendering code","version":"0.2.6","license":"MIT","type":"module","main":"./lib/main.es5.cjs","exports":{"browser":{"import":"./lib/browser.js","require":"./lib/browser.es5.cjs"},"default":{"import":"./lib/main.js","require":"./lib/main.es5.cjs"}},"keywords":["toggle point","feature toggles","feature flags","ssr","isomorphic","universal"],"repository":{"type":"git","url":"git+https://github.com/asos/web-toggle-point.git","directory":"packages/ssr"},"bugs":{"url":"https://github.com/asos/web-toggle-point/issues"},"homepage":"https://github.com/asos/web-toggle-point/tree/main/packages/ssr","directories":{"doc":"docs"},"scripts":{"build":"npm run clean && npm run build:browser && npm run build:server","build:browser":"cross-env BABEL_ENV=browser rollup -c build/rollup.mjs --config_isClient true","build:server":"rollup -c build/rollup.mjs --config_isClient false","prepublishOnly":"node ../prepare-publish.mjs && npm run build","postpublish":"shx rm ./README.md LICENSE","clean":"rimraf ./lib","docs":"rimraf ./docs/**/*.html && jsdoc -c ../jsdoc.conf.js","lint":"eslint build src docs --flag unstable_config_lookup_from_file","lint:fix":"npm run lint -- --fix","test":"jest"},"dependencies":{"@babel/runtime":"^7.26.0","jsesc":"^3.0.2","html-react-parser":"^5.2.1"},"devDependencies":{"@rollup/plugin-babel":"^6.0.2","@rollup/plugin-commonjs":"^25.0.4","@rollup/plugin-node-resolve":"^15.2.1","@rollup/plugin-replace":"^5.0.1","@rollup/plugin-terser":"^0.4.3","@testing-library/jest-dom":"^6.1.3","@testing-library/react":"^16.0.1","@types/webpack-env":"^1.18.0","eslint-plugin-jsdoc":"^50.5.0","eslint-plugin-jsx-a11y":"^6.7.1","eslint-plugin-react":"^7.31.10","eslint-plugin-react-hooks":"^5.0.0","eslint-plugin-testing-library":"^7.0.0","jest":"^29.7.0","jest-environment-jsdom":"^29.6.4","jsdoc":"^4.0.4","react":"^18.3.1","react-dom":"^18.3.1","rollup-plugin-auto-external":"^2.0.0","shx":"^0.4.0","transform-markdown-links":"^2.1.0"},"peerDependencies":{"prop-types":"^15.7.2","react":">=17","react-dom":">=17"},"_id":"@asos/web-toggle-point-ssr@0.2.6","gitHead":"daed26d56eaae55b1cc27df051ed69f0136f4767","_nodeVersion":"22.20.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-/0oTEHpi554uqNhBCB7tbY7UDGzkREcaRZzOrx/V3l3sxQZEZs+IkoCdk7EZjCLD0gnCqM843rldJyDU5nd+WA==","shasum":"9b9cf71003806dfbd30d2529791ea62f2408ef7b","tarball":"https://registry.npmjs.org/@asos/web-toggle-point-ssr/-/web-toggle-point-ssr-0.2.6.tgz","fileCount":11,"unpackedSize":57468,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFJ9XA1p+/oMqpJpNdB7yrxoXINwpXjk2UA9Uz1Ct2piAiEAhoQ9MJhdYpZv8QVtKUPPKkvdosbNb5mlVGFNyO16scY="}]},"_npmUser":{"name":"asos-danielc","email":"DanielC@ASOS.com"},"maintainers":[{"name":"asos-roberth","email":"robert.hill@asos.com"},{"name":"asos-tonygorman","email":"Tony.Gorman@asos.com"},{"name":"asos-danielc","email":"DanielC@ASOS.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/web-toggle-point-ssr_0.2.6_1760971504812_0.5761189755955503"},"_hasShrinkwrap":false}},"time":{"created":"2025-03-06T14:25:42.595Z","modified":"2025-10-20T14:45:05.230Z","0.2.2":"2025-03-06T14:25:42.851Z","0.2.3":"2025-07-14T15:01:50.040Z","0.2.4":"2025-09-29T08:59:56.354Z","0.2.5":"2025-09-29T13:00:20.580Z","0.2.6":"2025-10-20T14:45:05.000Z"},"bugs":{"url":"https://github.com/asos/web-toggle-point/issues"},"license":"MIT","homepage":"https://github.com/asos/web-toggle-point/tree/main/packages/ssr","keywords":["toggle point","feature toggles","feature flags","ssr","isomorphic","universal"],"repository":{"type":"git","url":"git+https://github.com/asos/web-toggle-point.git","directory":"packages/ssr"},"description":"toggle point server side rendering code","maintainers":[{"name":"asos-roberth","email":"robert.hill@asos.com"},{"name":"asos-tonygorman","email":"Tony.Gorman@asos.com"},{"name":"asos-danielc","email":"DanielC@ASOS.com"}],"readme":"# @asos/web-toggle-point-ssr\n\nThis package provides react application code for serializing JSON server-side and making it available as a prop client-side.\n\nIt contains the following exports:\n\n- `withJsonIsomorphism`\n\nThis represents a [react higher-order component](https://reactjs.org/docs/higher-order-components.html) designed to serialize server state to a `<script type=\"application/json\" />`, so it is available to a client bundle.\n\nThis code is agnostic of toggling/experiments, so is made available as an independent export, for other use cases.\n\n- `serializationFactory`\n\nThis factory takes an `id` for the script, and a `logWarning` method (only relevant on the client, used to highlight any malformed JSON in-case this is processed outside of the SSR process).\n\nIt creates an object with these methods:\n\nFor the server:\n  - `getScriptMarkup`\n    - returns a `<script type=\"application/json\">` tag, as a string, for direct inclusion in the DOM.  Uses [`jsesc`](https://github.com/mathiasbynens/jsesc/tree/main) to ensure appropriate escaping for JSON.\n  - `getScriptReactElement`\n    - returns a react element, wrapping the `getScriptMarkup`\n    \nFor the browser:\n  - `getJSONFromScript`\n    - de-serializes the value, returning an object\n\n## Usage\n\nSee: [JSDoc output](https://asos.github.io/web-toggle-point/module-web-toggle-point-ssr.html)\n\n> [!WARNING]\n> ### Use with React 17\n> The package should work with React 17 and above, but due to [a bug](https://github.com/facebook/react/issues/20235) that they are not back-filling, the use of `\"type\": \"module\"` in the package means webpack will be unable to resolve the extensionless import.\n> To fix, either upgrade to React 18+ or add the following resolve configuration to the webpack config:\n> ```js\n> resolve: {\n>   alias: {\n>     \"react/jsx-runtime\": \"react/jsx-runtime.js\",\n>     \"react-dom/server\": \"react-dom/server.js\",\n>   }\n> }\n> ```\n","readmeFilename":"README.md"}