{"_id":"@optave/client-sdk","_rev":"27-81bbe2e7470d622bdc33c9472e9dcfd3","name":"@optave/client-sdk","dist-tags":{"next":"3.0.0-rc.0","dev":"3.2.3-dev.6","rc":"3.3.0-rc.2","latest":"3.6.0"},"versions":{"2.0.1":{"name":"@optave/client-sdk","version":"2.0.1","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@2.0.1","maintainers":[{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-client-optave-integration#readme","bugs":{"url":"https://github.com/optave/SDK-client-optave-integration/issues"},"dist":{"shasum":"29d25dc7ccfda32fd0ccf22ec07f4f94d9ca28be","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-2.0.1.tgz","fileCount":4,"integrity":"sha512-bI+rR7rl5rrl5syGd6BsG8865zwS+1zMarbg9EEkFQs9mn8v68Lam960sTvSmgVjk02fuqwmpV+WaPoSOA5wxw==","signatures":[{"sig":"MEUCIQD13tS0JN5BAcDeEhZVmcXW0ecM7gYRuqoBrX8JnbOyAwIgcm+H7OfZ8osAGvGJP7RP4D62fBPTvWd81r0CSKJta+8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78648},"main":"dist/optave.client.sdk.js","gitHead":"03c7f1f5725b93f592e2a54617f2a1bbc7327177","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-client-optave-integration.git","type":"git"},"_npmVersion":"10.9.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.1.0","dependencies":{"ws":"^8.18.0","util":"^0.12.5","uuid":"^11.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_2.0.1_1732209634094_0.0764724150150271","host":"s3://npm-registry-packages"}},"2.0.2":{"name":"@optave/client-sdk","version":"2.0.2","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@2.0.2","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-client-optave-integration#readme","bugs":{"url":"https://github.com/optave/SDK-client-optave-integration/issues"},"dist":{"shasum":"6ba007d62de986f643e7bf45d560549d1c2e2563","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-2.0.2.tgz","fileCount":4,"integrity":"sha512-Pzo93V1Z/IVZdxThbqNCIKtz8HKEktV6ZjgeeocFj94UqdVz5k4WlICOVGoWHD6ZnAsph1gjdsldz+52sBMpBg==","signatures":[{"sig":"MEYCIQCyPjRmKcXXrusdqKFh3xFmKnW2uu/XIMrCu1QB7OCTXQIhALtUKXyLu2E+DetfHw13soCRRBGjgOqQWH8XYtL4uf0G","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48281},"main":"dist/optave.client.sdk.js","gitHead":"0d586a55b3ff75998238e6eab3b89818d8eb53de","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-client-optave-integration.git","type":"git"},"_npmVersion":"10.9.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.1.0","dependencies":{"ws":"^8.18.0","util":"^0.12.5","uuid":"^11.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_2.0.2_1732671268220_0.8074035110881848","host":"s3://npm-registry-packages"}},"2.0.3":{"name":"@optave/client-sdk","version":"2.0.3","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@2.0.3","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-client-optave-integration#readme","bugs":{"url":"https://github.com/optave/SDK-client-optave-integration/issues"},"dist":{"shasum":"a43d3ceb9a928bfb282d54ef42b44c28a733eaae","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-2.0.3.tgz","fileCount":4,"integrity":"sha512-DiggPo1UkKNvWcqG+tHGY2XYKSsMTlGfZY71mL1USfu7GbWfc33LLljqPhko3kMLW+u2g5QMunrhrRJbE9pUzA==","signatures":[{"sig":"MEYCIQCfsd+yv60b0x1ea7z9VCzKvyJgRIlx2qtpSP5KA6fMpwIhALCwOOA599nNAGukdj3oWWzbmbv5KHgkpHmHJvZMJEpY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48260},"main":"dist/optave.client.sdk.js","gitHead":"e6fbd778b365cd03d98d542996d8df78c1b9c028","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-client-optave-integration.git","type":"git"},"_npmVersion":"10.9.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.1.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_2.0.3_1732671640975_0.4899333426953725","host":"s3://npm-registry-packages"}},"2.0.4":{"name":"@optave/client-sdk","version":"2.0.4","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@2.0.4","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-client-optave-integration#readme","bugs":{"url":"https://github.com/optave/SDK-client-optave-integration/issues"},"dist":{"shasum":"c889086728cd86aa8a7243a2cb61ea32a97e4012","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-2.0.4.tgz","fileCount":4,"integrity":"sha512-FQJZpsE0rTufKzuYReaJrBRirMrjDQCAisEVIQ89aaepL4DefWtTXIDeYdCMHG/HArwbCflok6e7RLkxQRpcEA==","signatures":[{"sig":"MEQCIEepsWDUl1sz+WL1q3h+hGvyEkGxbrVaZm+lKgj7DoupAiBKSHO425akFHqYNODZyNRyGaAR7sGV0t7SYBO7T9BrLg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48184},"main":"dist/optave.client.sdk.js","gitHead":"4ff47bb9be692489e6e4c375a754db5066dae6c1","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-client-optave-integration.git","type":"git"},"_npmVersion":"10.9.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.1.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_2.0.4_1732829979873_0.08623254148917736","host":"s3://npm-registry-packages"}},"2.0.5":{"name":"@optave/client-sdk","version":"2.0.5","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@2.0.5","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"368fd648eb4c350805e981047cdfff76bb1a485b","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-2.0.5.tgz","fileCount":4,"integrity":"sha512-eYx1lxsiAHPEMMiYh9VrfjGzAIQUh5aj1Y//k/QvMZJmID9DESxtU+3iqBC4Zve9NQDlP3xRciRVaIOKKudEtQ==","signatures":[{"sig":"MEQCIE4IotU6Xwe36BvrmplbrdfcBk+Rvtjlf5AHoPKVpQsuAiBZvecWTq/vk75rH1GZ0H8XqjcvKIqj6v6XGJH5eo7qmQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48184},"main":"dist/optave.client.sdk.js","gitHead":"5aef4fbf0fce2ab675a870f2a13ac477b3e087f6","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.1.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_2.0.5_1734012702286_0.33898899071394095","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-rc.0":{"name":"@optave/client-sdk","version":"3.0.0-rc.0","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.0.0-rc.0","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"da70241ab3bca96378cf8a2cd085484219217118","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.0.0-rc.0.tgz","fileCount":4,"integrity":"sha512-US6b2OYi3lo+IiUIVIB4K7sg72sbk+ToV0lk+9lYS74tzuDyIsbP/P6eh1FWC1hmKIqME/RKFGZJ9Ol1m8vaSQ==","signatures":[{"sig":"MEUCIG/ysC082N05PLl281TVs8JerLecr1JEEVzmfp6kKrjJAiEA/uhprNRcbye1cLzahbYmrLeChfcdAyyHV8G2O5fXq2A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176018},"main":"dist/optave.client.sdk.js","gitHead":"53d360638ae458c8844b5bc360c7fead65ddc750","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.0.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.4.0","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","uuid":"^11.0.3","ajv-formats":"^3.0.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.0.0-rc.0_1737153931162_0.5910021626170583","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-rc.1":{"name":"@optave/client-sdk","version":"3.0.0-rc.1","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.0.0-rc.1","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"fc22840dde45dae88bdbc88d5220db5b5c846396","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.0.0-rc.1.tgz","fileCount":4,"integrity":"sha512-WOEp9lLqu5Ad/H0BhjpVtP92r9Tq/ieS9+IwzbMnzLHuFaOLG1X1kSdi5daymbIha1VhzN7uV3W7gvkCFt5DYA==","signatures":[{"sig":"MEQCIFdGR1mTK1JoXqUWs/Jf+kvEyIjj4xKWPglLDzvaCWZMAiAGJS7Nl2SsIgdzQ0gcGKzvQ2KajpyLtFxKRStaTR5DsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176018},"main":"dist/optave.client.sdk.js","gitHead":"53d360638ae458c8844b5bc360c7fead65ddc750","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.0.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.4.0","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","uuid":"^11.0.3","ajv-formats":"^3.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.0.0-rc.1_1737155563585_0.04426178414471127","host":"s3://npm-registry-packages-npm-production"}},"2.0.6":{"name":"@optave/client-sdk","version":"2.0.6","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@2.0.6","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"9cf47cedf6264fd6d84f880ed70e188d0b9a0b36","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-2.0.6.tgz","fileCount":4,"integrity":"sha512-zWK8KqIYWYXlWrM3rrYQpnMxEI6a7xvl52wQ+4RjKjgrNQeHp+PA+ihyIz/poXuii7rIjHwnoxI8UNtexa/puw==","signatures":[{"sig":"MEUCICh/KuNQL2+IyNwVmZOI1Bd+ec5KcWdZ1MreAoXSdgiPAiEA4Ef9lwkiN04xV1mq39383SdAFRJM6REIhRgh7EWRETU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175395},"main":"dist/optave.client.sdk.js","gitHead":"e9f3eaa20497adc39d6b9f955b33daa47465284f","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.0.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.4.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_2.0.6_1737385062998_0.9045032901551231","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-rc.2":{"name":"@optave/client-sdk","version":"3.0.0-rc.2","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.0.0-rc.2","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"0568d969eca4a352578e2269be39c0e178a2c9f1","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.0.0-rc.2.tgz","fileCount":4,"integrity":"sha512-z+tLmlIeBRTPFZxosJ8PiOASRQNP6xB9MlkPwxUwafzqREp4gaDoTekTFT9xErwLifcsAjexp/78Nai9c5sU2A==","signatures":[{"sig":"MEQCIBQfPawzHfush99MjlaegrFFJCraiR6EFBNY3syjlZtHAiB7ge+qgostEVDMzG4YXE+qf472/FqNQn8+gSUUyc5IEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176018},"main":"dist/optave.client.sdk.js","gitHead":"636208fa326c62a9d8d7525b55f0530b8ba37daa","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.0.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.4.0","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","uuid":"^11.0.3","ajv-formats":"^3.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.0.0-rc.2_1737385187101_0.21127531170557212","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-rc.3":{"name":"@optave/client-sdk","version":"3.0.0-rc.3","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.0.0-rc.3","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"28ce477afc17ca260c88d6f0502817cdd955599d","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.0.0-rc.3.tgz","fileCount":4,"integrity":"sha512-JjDTn3wc3H9Ld5mISzT8lTaodez1RcK21ophbVqnkT2zJI7fUzQCKfWVk87t+YaMwRCF9cmMi2EHcX7Wc8yNGQ==","signatures":[{"sig":"MEUCIHOZbCTJDViSbczP04uEAcQK96R+CuJa8fSAOA2cgisXAiEA0C392pPf3iK4Eb6+amTz2WmxcK2LpIE43H07A02cKXo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":176845},"main":"dist/optave.client.sdk.js","gitHead":"1973137a24a44efae0e5a302c5301ab9bc237cd7","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.0.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.4.0","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","uuid":"^11.0.3","ajv-formats":"^3.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.0.0-rc.3_1737646446960_0.23326156509768015","host":"s3://npm-registry-packages-npm-production"}},"3.0.0-rc.4":{"name":"@optave/client-sdk","version":"3.0.0-rc.4","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.0.0-rc.4","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"40b0d00ddbbc6618b0babaea34f4524647e27158","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.0.0-rc.4.tgz","fileCount":4,"integrity":"sha512-wdCFE44jd4pvsdn0U/M+cTaCY/2yxKG1mleX+ypEHLonhOwz4UZHB+bIuWWhJnjhAREkMXaCQP5yjzd72nVBqA==","signatures":[{"sig":"MEUCIQDul1Bh0xqdDkhrRAFJ/TslYA+C6f28/wbTgfuNBIQb7AIgLqU0BH3XNFYXX0ZwIp/y4kV2nrzpXRncNQBivdMCWCM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163094},"main":"dist/optave.client.sdk.js","type":"module","gitHead":"c049dd608beb9dda06bc37bc36c0328a026322c0","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.0.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.4.0","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","uuid":"^11.0.3","ajv-formats":"^3.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.0.0-rc.4_1738077880309_0.469637216032329","host":"s3://npm-registry-packages-npm-production"}},"3.0.1":{"name":"@optave/client-sdk","version":"3.0.1","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.0.1","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"},{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"f324570bb9fb510cf59c9e78dda5a30fa89d9352","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.0.1.tgz","fileCount":4,"integrity":"sha512-PzWjWCQ2AQZZ8qv1kobpqkGga/9YaVxn32PYEEQWJB2abDOEl6JBCubMGSD6kKgEpojF0MQbHxZpwHpj38aj5w==","signatures":[{"sig":"MEYCIQCrhMmb21xUJUeHmb8SionhrncB9nOMXoPgW/xyENkViAIhAPI5XvX0xm4rIrz4FDX2kxhvG2+vzZ/tlwcfja56Nikb","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":163154},"main":"dist/optave.client.sdk.js","type":"module","gitHead":"6ca0aa5039effc1e834ffbc7525f876fa3e947c0","private":false,"scripts":{"test":"jest","build":"webpack --mode production --config webpack.config.js"},"_npmUser":{"name":"msiegwarth-optave","email":"michael.siegwarth@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"11.1.0","description":"This SDK allows the integration with Optave's AI systems.","directories":{"example":"examples"},"_nodeVersion":"23.8.0","dependencies":{"ws":"^8.18.0","ajv":"^8.17.1","uuid":"^11.0.3","ajv-formats":"^3.0.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^29.7.0","webpack":"^5.96.1","babel-jest":"^29.7.0","@babel/core":"^7.26.0","webpack-cli":"^5.1.4","babel-loader":"^9.2.1","@babel/preset-env":"^7.26.0","jest-environment-jsdom":"^29.7.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.0.1_1739542449763_0.405418796304299","host":"s3://npm-registry-packages-npm-production"}},"3.2.3":{"name":"@optave/client-sdk","version":"3.2.3","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.3","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"b15c9bc02a67a7f30a423beacc3abf91be18b5fb","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.3.tgz","fileCount":69,"integrity":"sha512-vL6n2VPKzxtmh2hEXm/4GqsmCBCaco8iY6KN/FYwYsq/BcQMU9MbenwC0nltb8g7keJi5eayHrlmJQLhXoLrvg==","signatures":[{"sig":"MEYCIQDprYejckFnoJn6vyb67ZAVZGqnNoEooU+/8hVnPBomFQIhAMitUVAKK3diz886dtEOQrOdrBBILJzfNOZyNmvfBiIB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":941681},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"7112c86b8ea21de335f6ee1a2bc4666fae7d664c","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","spec:version":"node scripts/generation/sync-package-version.cjs","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:version && npm run spec:types && npm run spec:validators && npm run spec:constants","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"cross-env SDK_BUILD=umd-server vitest run --config vitest.config.umd.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"cross-env SDK_BUILD=umd-browser vitest run --config vitest.config.umd.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.3","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","tsup":"^8.0.1","yaml":"^2.8.1","jsdom":"^27.0.0","vitest":"^3.2.4","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^3.2.4","size-limit":"^11.2.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","webpack-bundle-analyzer":"^4.10.2","@size-limit/preset-big-lib":"^11.2.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.3_1760600018970_0.7339849482870644","host":"s3://npm-registry-packages-npm-production"}},"3.2.3-dev.2":{"name":"@optave/client-sdk","version":"3.2.3-dev.2","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.3-dev.2","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"ab87e2786b92c7e05b58aa54ee9390965347e375","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.3-dev.2.tgz","fileCount":10,"integrity":"sha512-GpRNEVQZNIPt0I+6C3PmZsGhB1UgIj06W+wlcB5GhBC2eUXnUIVE7Z/PM+yVFqnQ4+ME8GwjpTJZkbS6FRp7Kw==","signatures":[{"sig":"MEUCIDlT6i2i8u+/OdtGj8JP5YvE/pUvNyR9Gt7vQkS49aIDAiEAgGaKcWLaltdCHoXjEc0qrygZoSJ8aa9Qo7leyt47DV4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393638},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","spec:version":"node scripts/generation/sync-package-version.cjs","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:version && npm run spec:types && npm run spec:validators && npm run spec:constants","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"cross-env SDK_BUILD=umd-server vitest run --config vitest.config.umd.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"cross-env SDK_BUILD=umd-browser vitest run --config vitest.config.umd.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.3","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","tsup":"^8.0.1","yaml":"^2.8.1","jsdom":"^27.0.0","vitest":"^3.2.4","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^3.2.4","size-limit":"^11.2.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","webpack-bundle-analyzer":"^4.10.2","@size-limit/preset-big-lib":"^11.2.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.3-dev.2_1760607931687_0.04484096617757172","host":"s3://npm-registry-packages-npm-production"}},"3.2.3-dev.3":{"name":"@optave/client-sdk","version":"3.2.3-dev.3","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.3-dev.3","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"a0ab47412059360cae4a89890a2dc8efafa32c44","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.3-dev.3.tgz","fileCount":10,"integrity":"sha512-PmIimnPVUJZmKPbITQ1IiqPc8jK/2V9srRAKTar8IMotXPMIo0TW7nFe4VJU/U8lEFa09+/SPbmH7A6MaLk+fw==","signatures":[{"sig":"MEUCIHNAcPNzn3GMmN1GW1kZ2XMrW+A6TerD5iyh2d3cNAhAAiEAgGdS2TSxQdGorRbtGrLAc45NEcP16+qus9lpe3dPD/Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393638},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","spec:version":"node scripts/generation/sync-package-version.cjs","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:version && npm run spec:types && npm run spec:validators && npm run spec:constants","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"cross-env SDK_BUILD=umd-server vitest run --config vitest.config.umd.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"cross-env SDK_BUILD=umd-browser vitest run --config vitest.config.umd.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.3","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","tsup":"^8.0.1","yaml":"^2.8.1","jsdom":"^27.0.0","vitest":"^3.2.4","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^3.2.4","size-limit":"^11.2.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","webpack-bundle-analyzer":"^4.10.2","@size-limit/preset-big-lib":"^11.2.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.3-dev.3_1760633481240_0.9973580407922442","host":"s3://npm-registry-packages-npm-production"}},"3.2.3-dev.4":{"name":"@optave/client-sdk","version":"3.2.3-dev.4","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.3-dev.4","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"471056742f0f9c27da2afb74a0040fd69c331b02","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.3-dev.4.tgz","fileCount":10,"integrity":"sha512-F1HJWHvBbRK3mkfUR/DPgmVk0rCHnCLiwjjD110V3bkkCInyDa0d0ohFFmhmspqsjL5X+o8Kk8D1ejVefUElDw==","signatures":[{"sig":"MEQCIBBmAl27HwliIPDrb36w7CXK+vIr9gJ7f27RI4UMMhr6AiBZPK7AGZqsPd0+x0qMDks+Pjm6m3vgjOd5oJM4soz0kA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393638},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","spec:version":"node scripts/generation/sync-package-version.cjs","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:version && npm run spec:types && npm run spec:validators && npm run spec:constants","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"cross-env SDK_BUILD=umd-server vitest run --config vitest.config.umd.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"cross-env SDK_BUILD=umd-browser vitest run --config vitest.config.umd.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.3","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","tsup":"^8.0.1","yaml":"^2.8.1","jsdom":"^27.0.0","vitest":"^3.2.4","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^3.2.4","size-limit":"^11.2.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","webpack-bundle-analyzer":"^4.10.2","@size-limit/preset-big-lib":"^11.2.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.3-dev.4_1760643178118_0.13934496628026927","host":"s3://npm-registry-packages-npm-production"}},"3.2.3-dev.5":{"name":"@optave/client-sdk","version":"3.2.3-dev.5","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.3-dev.5","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"f41517d8a99cdf5aabbb2a2eb9122c79155a63b7","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.3-dev.5.tgz","fileCount":10,"integrity":"sha512-ymTGzg/HfXKK4bEl5JDfnwuf5SfOn0wrIwPTW+wYpKbvldn+fmK16Zwjlzle1INLc+HAAtUllgCRzQCH1Pf8tw==","signatures":[{"sig":"MEUCIQDak2YnkDykwhS3Uy5rTBlSEMIO/gxITlRRLZKIcMYplwIgdJlevC921fsLFzwAt/cGkzSN9rJaYV+DQzlivlpQ2Nc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393638},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","spec:version":"node scripts/generation/sync-package-version.cjs","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:version && npm run spec:types && npm run spec:validators && npm run spec:constants","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"cross-env SDK_BUILD=umd-server vitest run --config vitest.config.umd.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"cross-env SDK_BUILD=umd-browser vitest run --config vitest.config.umd.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.3","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","tsup":"^8.0.1","yaml":"^2.8.1","jsdom":"^27.0.0","vitest":"^3.2.4","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^3.2.4","size-limit":"^11.2.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","webpack-bundle-analyzer":"^4.10.2","@size-limit/preset-big-lib":"^11.2.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.3-dev.5_1760644033465_0.49833894595834316","host":"s3://npm-registry-packages-npm-production"}},"3.2.3-dev.6":{"name":"@optave/client-sdk","version":"3.2.3-dev.6","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.3-dev.6","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/SDK-optave-client-integration#readme","bugs":{"url":"https://github.com/optave/SDK-optave-client-integration/issues"},"dist":{"shasum":"b8b8579a53e9093107a75e8693459083279d3500","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.3-dev.6.tgz","fileCount":10,"integrity":"sha512-wDx6/loHW9r/Z2dgEnZtGCZLCNapLrXgovS21/HchDk40t9DkY6fkOEimYMr6wIxfNEkMrfLAY0VMA35P0gt3Q==","signatures":[{"sig":"MEYCIQCeqErfxApP293n34VGk68KlVS24Ko7/qaobCbm60akJgIhALYGxFm/pRVKNTDRVCsoKXXoKjCOEo5pTgMQeiR8g4oO","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":393638},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","spec:version":"node scripts/generation/sync-package-version.cjs","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:version && npm run spec:types && npm run spec:validators && npm run spec:constants","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"cross-env SDK_BUILD=umd-server vitest run --config vitest.config.umd.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"cross-env SDK_BUILD=umd-browser vitest run --config vitest.config.umd.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/SDK-optave-client-integration.git","type":"git"},"_npmVersion":"10.9.3","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.20.0","dependencies":{"ws":"^8.18.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.17.1","tsup":"^8.0.1","yaml":"^2.8.1","jsdom":"^27.0.0","vitest":"^3.2.4","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^3.2.4","size-limit":"^11.2.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","webpack-bundle-analyzer":"^4.10.2","@size-limit/preset-big-lib":"^11.2.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.3-dev.6_1760645607636_0.16581935625952893","host":"s3://npm-registry-packages-npm-production"}},"3.2.4":{"name":"@optave/client-sdk","version":"3.2.4","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.2.4","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"df807d57b0599fedd92c732689194ccd33469c39","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.2.4.tgz","fileCount":79,"integrity":"sha512-B7/LfQ4nYB/wdfRabTgpc9vGitSzMQYfhCUVm1glEoP880jKUu5s4lupLhOQfywNPGzSSjrSKZ57YhTx1lpFLQ==","signatures":[{"sig":"MEUCIQDmpRalLQlIyctbKhtYpQQpmjVRrlxHYQOmwBywbDDwXAIgUVdAFl1Cyg1itiqN+21TH/R6RC5DPbdZ+hKQZswR0nk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2562269},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"fae7c0c507b0a7c426a8a7d30d5f583a5324d1bf","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size && npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"optave-admin","email":"tech-admin@optave.com"},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.2","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.18.0","dependencies":{"ws":"^8.19.0","uuid":"^11.0.3"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.0.18","globals":"^16.5.0","webpack":"^5.102.1","cross-env":"^10.1.0","@vitest/ui":"^4.0.16","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.2.4_1774853215479_0.3660852319933845","host":"s3://npm-registry-packages-npm-production"}},"3.3.0-rc.1":{"name":"@optave/client-sdk","version":"3.3.0-rc.1","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.3.0-rc.1","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"2583ecdb123a11460962d5f4b2310ff3181c9194","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.3.0-rc.1.tgz","fileCount":82,"integrity":"sha512-IIVJCBzIOHJuOR6lJ5VFHnm7eWF1FA6JjSv+q56nQwmeClrXLzrbkl0rhEUS/k1vhm+NCF26/LbwnFS6PjL1lQ==","signatures":[{"sig":"MEUCIC/Ox2UH5XP24mUMBNHXqFT2PIUiQbbYfo4woGbWBvpIAiEA3Tbdd6cria4N1Bqy5EjR/wZPcP/Q6sdaCSch/nKRFT0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2388914},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"e1679533a75a11c6270a3e512c6982fe5396646c","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.1","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.23.0","dependencies":{"ws":"^8.20.0","uuid":"^14.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","vite":"^7.3.5","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.1.0","globals":"^17.7.0","webpack":"^5.108.0","cross-env":"^10.1.0","@vitest/ui":"^4.1.0","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","terser-webpack-plugin":"^5.3.17","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.3.0-rc.1_1782431638077_0.03766700412154367","host":"s3://npm-registry-packages-npm-production"}},"3.3.0-rc.2":{"name":"@optave/client-sdk","version":"3.3.0-rc.2","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.3.0-rc.2","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"fab052c7a757f27ec7b10c9f5c110d2a76b86c49","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.3.0-rc.2.tgz","fileCount":82,"integrity":"sha512-a5MzEs4idtOw23N1zSAULA2dE+Nnqkoc8CpK2/+sNFwNxAQFGmTwvhMFrI+G9JqQ635ngEaV7kJIt7awmtLzbw==","signatures":[{"sig":"MEQCIA76pks/4eFDdTLDFze4p7R41fyF/4g0w1GjyDWHE7t7AiBoqqvvjfLPkPjG+tTkNmH3pZQS6XpND0izZbfqz+RQXQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2388914},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"382be3354b384bec14ac66a10cc2621e3d5d0741","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.1","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.23.0","dependencies":{"ws":"^8.20.0","uuid":"^14.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","readmeFilename":"README.md","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","vite":"^7.3.5","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.1.0","globals":"^17.7.0","webpack":"^5.108.0","cross-env":"^10.1.0","@vitest/ui":"^4.1.0","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","terser-webpack-plugin":"^5.3.17","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.3.0-rc.2_1782490678391_0.9228079187576708","host":"s3://npm-registry-packages-npm-production"}},"3.3.0":{"name":"@optave/client-sdk","version":"3.3.0","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.3.0","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"42801c03a585426100bc201fb2a4a22886f05115","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.3.0.tgz","fileCount":73,"integrity":"sha512-eu2xUFZ2GaglmMpXzrUGI3DLbo6YmMHq66xiX+8/Vv+Dop/vYwxCTW2l6vWHHnC4MIbxBMnPTN7sTkeaY0k5yQ==","signatures":[{"sig":"MEYCIQD+pdTbedhX7l1JTwk4ygonkTGJdGNf00NxHbmOEDFZUgIhALb52m5qlS4xtab+3qKm5Be/oYvwfUj+CKNey+RMBprA","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1331564},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"e5637663a0670e64bf46672e23bb31dcbf2612dc","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.1","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.23.0","dependencies":{"ws":"^8.20.0","uuid":"^14.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","vite":"^7.3.5","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.1.0","globals":"^17.7.0","webpack":"^5.108.0","cross-env":"^10.1.0","@vitest/ui":"^4.1.0","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","terser-webpack-plugin":"^5.3.17","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.3.0_1782498369520_0.24882095310068442","host":"s3://npm-registry-packages-npm-production"}},"3.3.1":{"name":"@optave/client-sdk","version":"3.3.1","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.3.1","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"2fb233775cb9b539521c6b19d3bf1a5c3aa3cbc7","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.3.1.tgz","fileCount":73,"integrity":"sha512-Xwo1y8T6GGBPLGuU9uXorc2lCvIfTkKIYGXCNXkX8s0MeHdqA7hfHDfckeNz4+ElNLPhwtqzy9+8yuSniN326Q==","signatures":[{"sig":"MEYCIQCHyZ15ECCob020aLfO+pTfU6jlkG0oikEeX4ETVgtFSQIhANmb25W7dCCKZL5F2+DzVCZfTnJt6i41D+g6zVzXWC8+","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1334207},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"4a5197df244c77d14c814331efb83d569cf259e7","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.1","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.23.0","dependencies":{"ws":"^8.20.0","uuid":"^14.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","vite":"^7.3.5","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.1.0","globals":"^17.7.0","webpack":"^5.108.0","cross-env":"^10.1.0","@vitest/ui":"^4.1.0","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","terser-webpack-plugin":"^5.3.17","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.3.1_1782511027098_0.5174431950564964","host":"s3://npm-registry-packages-npm-production"}},"3.4.0":{"name":"@optave/client-sdk","version":"3.4.0","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.4.0","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"7a437e905e2d1448323c39d4a09d90eb96c0d0e8","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.4.0.tgz","fileCount":74,"integrity":"sha512-yICj9X86c5SBfqMzbk7AVG4v+vN0FSwKJTtgWJb3wfQYefQL8tZ3rQNRA1GtW4uKtvNyzxfkVZlXD/DqadsH8A==","signatures":[{"sig":"MEYCIQDeNathPn7lWMoqkSoj2OO9gX7z+VqfUmuLage0LzbUZgIhAPgFKOlm5ev1eHGmtdMyzSBq7cAs88gmAYd9Do9mxGVQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1390923},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"f50f6bf819aa07367367fc11dd647d6090677a7d","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.1","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.20.0","uuid":"^14.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","vite":"^7.3.5","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.1.0","globals":"^17.7.0","webpack":"^5.108.0","cross-env":"^10.1.0","@vitest/ui":"^4.1.0","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","terser-webpack-plugin":"^5.3.17","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.4.0_1788207400397_0.32806800255014634","host":"s3://npm-registry-packages-npm-production"}},"3.5.0":{"name":"@optave/client-sdk","version":"3.5.0","keywords":["sdk","optave"],"author":"","license":"Apache-2.0","_id":"@optave/client-sdk@3.5.0","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"dist":{"shasum":"40e47c1578a39b41dcfe4d03f9130142a4a8968f","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.5.0.tgz","fileCount":74,"integrity":"sha512-7tdmqZF5/phmj9xOEAoMiUH2cB37tKnqLGlCdpRWMhfWJFkWqV/Y8diWrb6jPG9rdGoBRXY88kZpCTVjQEdD6A==","signatures":[{"sig":"MEUCIFEdp2mZrC194x1AxdXwdWM6PjIf19PgmY4WoPksasNrAiEAnQUFrKYzkuJ2xhSl4Oka7yuU2Fkfl9aVm1JvUw9zOCw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1401387},"main":"dist/index.cjs","type":"module","types":"dist/index.d.ts","module":"dist/server.mjs","engines":{"node":">=20.0.0"},"exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./server":"./dist/server.mjs","./browser":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./server-umd":"./dist/server.umd.js","./browser-esm":"./dist/browser.mjs","./browser-umd":"./dist/browser.umd.js"},"gitHead":"7b573117a8f789c0c28dd5cfe5465be133e27abd","private":false,"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","lint":"eslint .","size":"size-limit","test":"npm run test:all-builds","build":"npm run build:all:dev","analyze":"npm run analyze:server-umd","test:ui":"vitest --ui","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","lint:fix":"eslint . --fix","size:why":"size-limit --why","check:csp":"node scripts/dev/validation/csp-harness-runner.js","spec:docs":"node scripts/generation/sync-docs-version.cjs","size:check":"npm run size:compare","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","spec:types":"node scripts/generation/generate-types.cjs","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","lint:report":"eslint . --format json --output-file reports/eslint-report.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","test:server":"vitest run --config vitest.config.server.js","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","test:browser":"vitest run --config vitest.config.browser.js","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","export-surface":"node scripts/dev/analysis/export-surface.js","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","spec:constants":"node scripts/generation/generate-constants.cjs","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","spec:validators":"node scripts/generation/generate-validators.cjs","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:umd-server":"vitest run --config vitest.config.umd-server.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","governance:check":"node scripts/dev/validation/governance-check.js","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","governance:manifest":"node scripts/generation/generate-governance-manifest.js","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","spec:generate:examples":"npm run spec:examples","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"repository":{"url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git","type":"git"},"_npmVersion":"11.5.1","description":"Optave client SDK (browser + Node)","directories":{},"sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"_nodeVersion":"22.23.2","dependencies":{"ws":"^8.20.0","uuid":"^14.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"npm@10.8.1","devDependencies":{"ajv":"^8.18.0","tsup":"^8.5.1","vite":"^7.3.5","yaml":"^2.8.3","jsdom":"^27.4.0","eslint":"^8.57.1","vitest":"^4.1.0","globals":"^17.7.0","webpack":"^5.108.0","cross-env":"^10.1.0","@vitest/ui":"^4.1.0","size-limit":"^12.0.0","typescript":"^5.9.3","ajv-formats":"^3.0.1","webpack-cli":"^6.0.1","semantic-release":"^25.0.2","eslint-plugin-import":"^2.31.0","@semantic-release/git":"^10.0.1","@semantic-release/npm":"^13.1.1","terser-webpack-plugin":"^5.3.17","webpack-bundle-analyzer":"^5.2.0","@semantic-release/github":"^12.0.3","eslint-config-airbnb-base":"^15.0.0","@size-limit/preset-big-lib":"^12.0.0","@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/release-notes-generator":"^14.1.0","conventional-changelog-conventionalcommits":"^9.1.0"},"_npmOperationalInternal":{"tmp":"tmp/client-sdk_3.5.0_1788217376431_0.8171486567975785","host":"s3://npm-registry-packages-npm-production"}},"3.6.0":{"name":"@optave/client-sdk","version":"3.6.0","description":"Optave client SDK (browser + Node)","private":false,"packageManager":"npm@10.8.1","engines":{"node":">=20.0.0"},"type":"module","sideEffects":["./runtime/core/main.js","./runtime/core/security-guards.js","./runtime/platform/browser/crypto-polyfill.js","./runtime/platform/browser/urlsearchparams-polyfill.js","./runtime/platform/browser/event-emitter.js","./generated/validators.js"],"main":"dist/index.cjs","module":"dist/server.mjs","types":"dist/index.d.ts","exports":{".":{"browser":"./dist/browser.mjs","default":"./dist/server.mjs"},"./browser":"./dist/browser.mjs","./server":"./dist/server.mjs","./browser-esm":"./dist/browser.mjs","./server-esm":"./dist/server.mjs","./browser-umd":"./dist/browser.umd.js","./server-umd":"./dist/server.umd.js"},"scripts":{"gen":"asyncapi generate fromTemplate ../../config/specs/asyncapi.yaml ../../config/templates/asyncapi-ts-runtime --output generated --force-write --disable-hook validate","build":"npm run build:all:dev","build:all:dev":"npm run spec:generate && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:all:prod":"node scripts/prod/build.js","build:all:full":"npm run spec:generate && npm run build:webpack:full && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:ci":"npm run spec:generate && npm run spec:drift-guard && npm run build:webpack && npm run generate:types && npm run assert:umd-bundles && npm run analyze:build-artifacts && npm run governance:manifest","build:webpack":"npm run build:browser:esm && npm run build:server:esm && npm run build:browser:umd && npm run build:server:umd && node scripts/prod/generate-source-maps.js","build:webpack:full":"npm run build:browser:esm:full && npm run build:server:esm:full && npm run build:browser:umd:full && npm run build:server:umd:full","build:browser:esm":"webpack --config webpack.browser.config.js","build:browser:esm:full":"cross-env FULL=1 webpack --config webpack.browser.config.js","build:server:esm":"webpack --config webpack.server.config.js","build:server:esm:full":"cross-env FULL=1 webpack --config webpack.server.config.js","build:browser:umd":"webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","build:browser:umd:full":"cross-env FULL=1 webpack --config webpack.browser.umd.config.js && node scripts/prod/generate-source-maps.js","build:server:umd":"webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","build:server:umd:full":"cross-env FULL=1 webpack --config webpack.server.umd.config.js && node scripts/prod/generate-source-maps.js","build:browser":"npm run spec:generate && npm run build:browser:esm && npm run build:browser:umd","build:server":"npm run spec:generate && npm run build:server:esm && npm run build:server:umd","generate:types":"tsup runtime/core/index.ts --dts --format esm,cjs --out-dir dist","test":"npm run test:all-builds","test:ui":"vitest --ui","test:server":"vitest run --config vitest.config.server.js","test:browser":"vitest run --config vitest.config.browser.js","test:umd-server":"vitest run --config vitest.config.umd-server.js","test:umd-browser":"vitest run --config vitest.config.umd-browser.js","test:all-builds":"npm run test:server && npm run test:browser && npm run test:umd-server && npm run test:umd-browser","test:all-builds:csp":"npm run test:all-builds && npm run check:csp","test:builds-parallel":"npm run test:server & npm run test:browser & npm run test:umd-server & npm run test:umd-browser & wait","size":"size-limit","size:why":"size-limit --why","size:baseline":"npm run build && node scripts/dev/bundle-size-reporter.js --generate-baseline --output=reports/baseline-sizes.json","size:report":"node scripts/dev/bundle-size-reporter.js --format=markdown","size:report:json":"node scripts/dev/bundle-size-reporter.js --format=json","size:report:sarif":"node scripts/dev/bundle-size-reporter.js --format=sarif","size:compare":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=github-comment","size:sarif":"node scripts/dev/bundle-size-reporter.js --baseline=reports/baseline-sizes.json --format=sarif","size:check":"npm run size:compare","analyze":"npm run analyze:server-umd","analyze:server-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js","analyze:browser-umd":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static ANALYZE_PORT=8889 webpack --config webpack.analyzer.config.js --env buildTarget=browser","analyze:static":"cross-env ANALYZE_MODE=static npm run analyze:server-umd","analyze:json":"cross-env ANALYZE_MODE=json npm run analyze:server-umd","analyze:all":"npm run build && npm run analyze:server-umd && npm run analyze:browser-umd","analyze:reports":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static npm run analyze:all","analyze:build-artifacts":"npm run analyze:build:server && npm run analyze:build:browser","analyze:build:server":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=server && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=server","analyze:build:browser":"cross-env ANALYZE_OPEN=false ANALYZE_MODE=static webpack --config webpack.analyzer.config.js --env buildTarget=browser && cross-env ANALYZE_OPEN=false ANALYZE_MODE=static FULL=1 webpack --config webpack.analyzer.config.js --env buildTarget=browser","analyze:tree-shaking":"node scripts/dev/analysis/analyze-tree-shaking.js","validate:tree-shaking":"node scripts/dev/analysis/validate-tree-shaking.js","export-surface":"node scripts/dev/analysis/export-surface.js","export-surface:full":"node scripts/dev/analysis/export-surface.js --mode=full","export-surface:quick":"node scripts/dev/analysis/export-surface.js --mode=quick","export-surface:diff":"node scripts/dev/analysis/export-surface.js --mode=diff","check:export-surface":"node scripts/dev/analysis/export-surface.js --mode=quick","check:csp":"node scripts/dev/validation/csp-harness-runner.js","diff:export-surface":"node scripts/dev/analysis/export-surface.js --mode=diff","spec:validate":"echo 'AsyncAPI validation only available in CI (to avoid dependency conflicts)'","spec:generate:html":"echo 'AsyncAPI HTML generation only available in CI (to avoid dependency conflicts)'","spec:generate:json":"echo 'Using source spec directly from config/specs/asyncapi.yaml'","spec:types":"node scripts/generation/generate-types.cjs","spec:validators":"node scripts/generation/generate-validators.cjs","spec:constants":"node scripts/generation/generate-constants.cjs","spec:docs":"node scripts/generation/sync-docs-version.cjs","spec:examples":"node scripts/generation/generate-examples.js","spec:generate":"npm run spec:types && npm run spec:validators && npm run spec:constants && npm run spec:examples && npm run spec:docs","spec:generate:examples":"npm run spec:examples","spec:drift-guard":"node scripts/dev/validation/schema-drift-guard.js","assert:umd-bundles":"node scripts/dev/validation/assert-umd-bundles.cjs","governance:check":"node scripts/dev/validation/governance-check.js","governance:manifest":"node scripts/generation/generate-governance-manifest.js","lint":"eslint .","lint:fix":"eslint . --fix","lint:report":"eslint . --format json --output-file reports/eslint-report.json"},"author":"","dependencies":{"uuid":"^14.0.2","ws":"^8.20.0"},"devDependencies":{"@semantic-release/changelog":"^6.0.3","@semantic-release/commit-analyzer":"^13.0.1","@semantic-release/git":"^10.0.1","@semantic-release/github":"^12.0.9","@semantic-release/npm":"^13.1.1","@semantic-release/release-notes-generator":"^14.1.0","@size-limit/preset-big-lib":"^12.0.0","@vitest/ui":"^4.1.0","ajv":"^8.18.0","ajv-formats":"^3.0.1","conventional-changelog-conventionalcommits":"^9.1.0","cross-env":"^10.1.0","eslint":"^8.57.1","eslint-config-airbnb-base":"^15.0.0","eslint-plugin-import":"^2.31.0","globals":"^17.7.0","jsdom":"^27.4.0","semantic-release":"^25.0.2","size-limit":"^12.0.0","terser-webpack-plugin":"^5.3.17","tsup":"^8.5.1","typescript":"^5.9.3","vite":"^7.3.5","vitest":"^4.1.0","webpack":"^5.108.0","webpack-bundle-analyzer":"^5.2.0","webpack-cli":"^6.0.1","yaml":"^2.8.3"},"publishConfig":{"access":"public"},"repository":{"type":"git","url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git"},"keywords":["sdk","optave"],"license":"Apache-2.0","bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","_id":"@optave/client-sdk@3.6.0","gitHead":"231c6bbfedff919b6a5e01589c3111ea7a90fa70","_nodeVersion":"22.23.2","_npmVersion":"11.5.1","dist":{"integrity":"sha512-OvgWgQkGFnXFTNrBnArKnc/C/vt6HBw0yU5wd2jzlQUtZN0Z6anZaj9BcqKaTjh9/E3aSQl5jm5qGDski+DyPw==","shasum":"b6f582942ca7cc0f9b8171172ffc24c7dca23809","tarball":"https://registry.npmjs.org/@optave/client-sdk/-/client-sdk-3.6.0.tgz","fileCount":74,"unpackedSize":1417386,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDNYced1+SIBK2GcVQj6TWDKPhUPm34MOjUeITA+ENaJAIgd32+4m7ja77/RZhOlHFEUNpG4Z5uYgzLTvZg9oyKvuk="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:e08c7958-2cfc-47cd-b62d-4328551996f3"}},"directories":{},"maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/client-sdk_3.6.0_1788391806805_0.11717060608216445"},"_hasShrinkwrap":false}},"time":{"created":"2024-11-21T17:20:34.013Z","modified":"2026-09-02T23:30:07.116Z","2.0.1":"2024-11-21T17:20:34.272Z","2.0.2":"2024-11-27T01:34:28.382Z","2.0.3":"2024-11-27T01:40:41.232Z","2.0.4":"2024-11-28T21:39:40.040Z","2.0.5":"2024-12-12T14:11:42.430Z","3.0.0-rc.0":"2025-01-17T22:45:31.342Z","3.0.0-rc.1":"2025-01-17T23:12:43.782Z","2.0.6":"2025-01-20T14:57:43.203Z","3.0.0-rc.2":"2025-01-20T14:59:47.289Z","3.0.0-rc.3":"2025-01-23T15:34:07.208Z","3.0.0-rc.4":"2025-01-28T15:24:40.564Z","3.0.1":"2025-02-14T14:14:09.960Z","3.2.3":"2025-10-16T07:33:39.206Z","3.2.3-dev.2":"2025-10-16T09:45:31.936Z","3.2.3-dev.3":"2025-10-16T16:51:21.431Z","3.2.3-dev.4":"2025-10-16T19:32:58.304Z","3.2.3-dev.5":"2025-10-16T19:47:13.799Z","3.2.3-dev.6":"2025-10-16T20:13:27.818Z","3.2.4":"2026-03-30T06:46:55.656Z","3.3.0-rc.1":"2026-06-25T23:53:58.224Z","3.3.0-rc.2":"2026-06-26T16:17:58.583Z","3.3.0":"2026-06-26T18:26:09.690Z","3.3.1":"2026-06-26T21:57:07.277Z","3.4.0":"2026-08-31T20:16:40.551Z","3.5.0":"2026-08-31T23:02:56.614Z","3.6.0":"2026-09-02T23:30:06.953Z"},"bugs":{"url":"https://github.com/optave/interface-client-sdk-lib-dist/issues"},"license":"Apache-2.0","homepage":"https://github.com/optave/interface-client-sdk-lib-dist#readme","keywords":["sdk","optave"],"repository":{"type":"git","url":"git+https://github.com/optave/interface-client-sdk-lib-dist.git"},"description":"Optave client SDK (browser + Node)","maintainers":[{"name":"optave-admin","email":"tech-admin@optave.com"}],"readme":"# Optave Client SDK Documentation\n\nWelcome to the Optave Client SDK documentation. This guide provides an overview of the SDK, instructions on how to set it up, and examples to help you integrate it seamlessly into your JavaScript projects.\n\n## Table of Contents\n\n1. [Introduction](#introduction)\n2. [Installation](#installation)\n3. [Build System & Imports](#build-system--imports)\n4. [Configuration](#configuration)\n5. [Authentication](#authentication)\n6. [Security Best Practices](#security-best-practices)\n7. [Establishing a WebSocket Connection](#establishing-a-websocket-connection)\n8. [Event Handling](#event-handling)\n9. [Sending Messages](#sending-messages)\n10. [Payload Structure](#payload-structure)\n11. [Example Usage](#example-usage)\n12. [API Reference](#api-reference)\n13. [Error Handling](#error-handling)\n\n## Introduction\n\nThe **Optave Client SDK** is a JavaScript library designed to facilitate seamless communication between your application and the Optave backend services via WebSockets and RESTful APIs. It provides a structured way to authenticate, manage sessions, handle user interactions, and send various types of messages with ease.\n\nKey Features:\n\n- **Event-Driven Architecture**: Leveraging Node.js's `EventEmitter` to handle asynchronous events.\n- **Authentication Support**: Securely authenticate using client credentials.\n- **WebSocket Management**: Easily establish and manage WebSocket connections.\n- **Structured Payloads**: Automatically merges user-provided data with default payload structures.\n- **Extensible Methods**: Predefined methods for common actions like adjusting settings, elevating issues, summarizing interactions, and more.\n\n## Installation\n\nTo install the Optave Client SDK, use npm or yarn:\n\n```bash\nnpm install @optave/client-sdk\n```\n\nor\n\n```bash\nyarn add @optave/client-sdk\n```\n\n### Optional Performance Dependencies\n\nFor enhanced WebSocket performance in Node.js server environments, you can install the following optional native dependencies:\n\n```bash\nnpm install --save-optional bufferutil utf-8-validate\n```\n\nThese optional dependencies provide significant performance improvements:\n\n- **bufferutil**: Enables faster WebSocket frame masking and unmasking operations using native C++ implementations\n- **utf-8-validate**: Provides efficient UTF-8 validation for WebSocket messages as required by the RFC specification\n\n**Benefits:**\n- Up to 2x faster WebSocket frame processing\n- Reduced CPU usage for high-throughput applications\n- Automatic fallback to JavaScript implementations if not available\n\n**Note:** These dependencies are only beneficial in Node.js server environments and are not needed for browser applications. The SDK works perfectly without them - they simply provide performance optimizations when available.\n\n## Build System & Imports\n\nThe Optave Client SDK provides multiple build targets optimized for different environments. The package automatically selects the appropriate build based on your environment and import method.\n\n### Available Builds\n\nThe SDK provides four optimized builds, each tailored for specific deployment environments and security requirements:\n\n| Build | Module Format | Allows clientSecret | AJV Validation | CSP Safe | Intended Environments | Size (Uncompressed) | Size (Gzipped) |\n|-------|---------------|-------------------|----------------|----------|---------------------|-------------------|----------------|\n| **Browser ESM** | ES Module | ❌ No | ❌ External Only | ✅ Yes | Modern browsers, Vite, Webpack 5+, bundled apps | ~47KB | ~14KB |\n| **Browser UMD** | UMD | ❌ No | ❌ External Only | ✅ Yes | Salesforce Lightning, CDN, legacy browsers, CSP environments | ~54KB | ~15KB |\n| **Server ESM** | ES Module | ✅ Yes | ✅ Full AJV | ❌ No | Node.js servers, microservices, backend APIs | ~164KB | ~25KB |\n| **Server UMD** | UMD | ✅ Yes | ❌ External Only | ✅ Yes | Node.js CommonJS, legacy servers, mixed Node.js environments | ~49KB | ~14KB |\n\n### Build Selection Guide\n\n**🔒 Security & CSP Compliance**\n- **Browser builds** are CSP-safe and exclude client secrets for security\n- **Server builds** allow client secrets and include full validation for backend use\n- All builds support token-based authentication via `tokenProvider`\n\n**📦 Bundle Size Impact**\n- **ESM builds** are optimized for modern bundlers with tree-shaking\n- **Browser ESM** is smallest when bundled (external dependencies)\n- **UMD builds** are self-contained but larger (bundled dependencies)\n\n**🚀 Performance Characteristics**\n- **Browser ESM**: Fastest loading, tree-shakeable, modern JavaScript\n- **Browser UMD**: Compatible with all environments, no bundler required\n- **Server ESM**: Optimized for Node.js with native WebSocket support\n- **Server UMD**: Maximum compatibility across Node.js versions\n\n**⚙️ Validation Strategy**\n- **Browser builds**: Use lightweight, CSP-safe validation (no AJV)\n- **Server ESM**: Includes full AJV schema validation for data integrity\n- **Server UMD**: Uses CSP-safe validation (no AJV) for maximum compatibility\n- All builds validate required fields and basic payload structure\n\n### Automatic Build Selection\n\n**Default Import (Recommended):**\n```javascript\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n// Automatically selects:\n// - browser.mjs in browser environments\n// - server.mjs in Node.js environments\n```\n\n### Explicit Build Selection\n\n**Browser Environments:**\n```javascript\n// ES Module (recommended for modern bundlers)\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n// or\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser-esm';\n\n// UMD (for legacy browsers or CDN usage)\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser-umd';\n\n```\n\n**Node.js Environments:**\n```javascript\n// ES Module (recommended for modern Node.js)\nimport OptaveJavaScriptSDK from '@optave/client-sdk/server';\n// or\nimport OptaveJavaScriptSDK from '@optave/client-sdk/server-esm';\n\n// UMD (works with CommonJS require() for mixed environments)\nconst OptaveJavaScriptSDK = require('@optave/client-sdk/server-umd');\n```\n\n### CDN Usage (Browser Only)\n\n**ES Module CDN:**\n```html\n<script type=\"module\">\n  import OptaveJavaScriptSDK from 'https://unpkg.com/@optave/client-sdk/dist/browser.mjs';\n\n  const sdk = new OptaveJavaScriptSDK({\n    websocketUrl: 'wss://client-identifier.oco.optave.tech',\n    // ... configuration\n  });\n</script>\n```\n\n**UMD CDN (Global Variable):**\n```html\n<script src=\"https://unpkg.com/@optave/client-sdk/dist/browser.umd.js\"></script>\n<script>\n  // OptaveJavaScriptSDK is now available globally\n  const sdk = new OptaveJavaScriptSDK({\n    websocketUrl: 'wss://client-identifier.oco.optave.tech',\n    // ... configuration\n  });\n</script>\n```\n\n\n### Framework-Specific Import Examples\n\n**Vite (Vue/React/Vanilla):**\n```javascript\n// Automatic selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Explicit browser build\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n```\n\n**Webpack (Create React App, Next.js):**\n```javascript\n// Automatic selection works with Webpack 5+\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// For older Webpack versions, use explicit imports\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n```\n\n**Node.js (Express, Fastify, etc.):**\n```javascript\n// ES Modules (package.json has \"type\": \"module\")\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// UMD (works with CommonJS require())\nconst OptaveJavaScriptSDK = require('@optave/client-sdk/server-umd');\n```\n\n**TypeScript:**\n```typescript\n// Full TypeScript support included\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\nconst sdk = new OptaveJavaScriptSDK({\n  websocketUrl: process.env.OPTAVE__WEBSOCKET_URL!,\n  // TypeScript will provide full intellisense and type checking\n});\n```\n\n### Build Optimization Notes\n\n- **Browser builds** exclude Node.js-specific dependencies (like `ws` package)\n- **Server builds** include WebSocket implementation and Node.js optimizations\n- **ESM builds** are smaller and faster to load\n- **UMD builds** have broader compatibility but are larger\n- All builds include full TypeScript definitions\n- **CSP Compliance**: Browser builds are optimized for strict Content Security Policy environments, excluding AJV and using platform-specific implementations that don't require `unsafe-eval` permissions. This enables compatibility with environments like Salesforce Lightning, enterprise applications, and other CSP-restricted platforms.\n\n### Build Governance & Quality Assurance\n\nThe SDK implements a comprehensive build governance system ensuring quality and compatibility across all environments:\n\n#### Bundle Size Monitoring\n\n```bash\n# Check current bundle sizes against budget limits\nnpm run size\n\n# Generate detailed size report with build comparison\nnpm run size:report\n\n# Analyze bundle composition (interactive visualization)\nnpm run analyze\n\n# Create baseline for size tracking and regression detection\nnpm run size:baseline\n```\n\n**Current Size Budgets:**\n- Browser UMD: 250KB limit (current: ~50KB) ✅\n- Server UMD: 180KB limit (current: ~55KB) ✅\n- Browser ESM: 80KB limit (current: ~47KB) ✅\n- Server ESM: 200KB limit (current: ~164KB) ✅\n\n#### Multi-Build Testing Strategy\n\nThe SDK uses comprehensive multi-build testing to ensure reliability across all environments:\n\n```bash\n# Test all build variants with comprehensive validation\nnpm run test:all-builds\n\n# Test specific build targets\nnpm run test:server          # Server ESM build (Node.js with full AJV)\nnpm run test:browser         # Browser ESM build (modern bundlers)\nnpm run test:umd-server      # Server UMD build (mixed environments)\nnpm run test:umd-browser     # Browser UMD build (legacy/CDN)\nnpm run test:umd-salesforce  # Salesforce Lightning compatibility\n\n# Build quality validation\nnpm run test:build-matrix    # Matrix testing across all builds\nnpm run test:csp-compliance  # CSP compliance validation\nnpm run test:memory          # Memory usage and leak detection\n```\n\n#### Build System Features\n\n**Unified Build Environment:**\n- Standardized `FULL=1` environment variable for non-minified debugging builds\n- External source maps for CSP compliance (`generate-source-maps.js`)\n- Comprehensive build validation and artifact testing\n\n**Quality Assurance:**\n- Build matrix testing ensures consistency across all variants\n- CSP compliance validation for enterprise environments\n- Memory leak detection and performance monitoring\n- Bundle size regression prevention with automated budgets\n\n**Size Optimization Tips:**\n- Use **Browser ESM** for modern bundlers to minimize final bundle size\n- **Browser UMD** is self-contained but larger due to included polyfills\n- **Server builds** include AJV validation which adds ~40KB but provides robust data validation\n- All builds are optimized for their target environments and use cases\n\nChoose the build that best matches your environment and bundler capabilities.\n\n## Configuration\n\nBefore using the SDK, you need to configure it with the necessary parameters. The primary configuration options include:\n\n- **websocketUrl**: The URL for the WebSocket connection.\n- **authenticationUrl**: (Optional) The URL for authentication, if you intend to use the `authenticate` method.\n- **clientId**: (Optional) Your client ID for authentication, if you intend to use the `authenticate` method.\n- **clientSecret**: (Optional) Your client secret for authentication, if you intend to use the `authenticate` method.\n\n  ⚠️ **SECURITY WARNING**: Never set clientSecret in browser/mobile/Electron renderers. Client secrets must only be used in secure server-side environments to prevent exposure to end users.\n\n### Example Configuration\n\n```javascript\n// Automatic build selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Or explicit server build for Node.js\n// import OptaveJavaScriptSDK from '@optave/client-sdk/server';\n\n// Or UMD for mixed environments (works with CommonJS require())\n// const OptaveJavaScriptSDK = require('@optave/client-sdk/server-umd');\n\nconst optaveClient = new OptaveJavaScriptSDK({\n    websocketUrl: process.env.OPTAVE__WEBSOCKET_URL,\n    authenticationUrl: process.env.OPTAVE__AUTHENTICATION_URL,\n    clientId: process.env.OPTAVE__CLIENT_ID,\n    clientSecret: process.env.OPTAVE__CLIENT_SECRET,\n});\n```\n\n### Browser Environment Configuration\n\nWhen using the SDK in browser applications, you'll need to configure it differently depending on your build tool. Here are examples for popular frontend frameworks:\n\n#### Vite (Vue, React, Vanilla)\n\n```javascript\n// Automatic selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Or explicit browser build\n// import OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: import.meta.env.VITE_OPTAVE__WEBSOCKET_URL,\n    authTransport: 'subprotocol', // Default - recommended for security\n    tokenProvider: async () => {\n        const response = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include' // Include cookies for authentication\n        });\n        if (!response.ok) throw new Error('Failed to obtain WebSocket token');\n        const data = await response.json();\n        return data.token;\n    }\n});\n```\n\n**Environment variables (.env):**\n```bash\nVITE_OPTAVE__WEBSOCKET_URL=wss://client-identifier.oco.optave.tech\n```\n\n#### Create React App\n\n```javascript\n// Automatic selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Or explicit browser build for older Webpack versions\n// import OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: process.env.REACT_APP_OPTAVE__WEBSOCKET_URL,\n    tokenProvider: async () => {\n        const response = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include'\n        });\n        if (!response.ok) throw new Error('Failed to obtain WebSocket token');\n        const data = await response.json();\n        return data.token;\n    }\n});\n```\n\n**Environment variables (.env):**\n```bash\nREACT_APP_OPTAVE__WEBSOCKET_URL=wss://client-identifier.oco.optave.tech\n```\n\n#### Next.js\n\n```javascript\n// Automatic selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Or explicit browser build\n// import OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: process.env.NEXT_PUBLIC_OPTAVE__WEBSOCKET_URL,\n    tokenProvider: async () => {\n        const response = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include'\n        });\n        if (!response.ok) throw new Error('Failed to obtain WebSocket token');\n        const data = await response.json();\n        return data.token;\n    }\n});\n```\n\n**Environment variables (.env.local):**\n```bash\nNEXT_PUBLIC_OPTAVE__WEBSOCKET_URL=wss://client-identifier.oco.optave.tech\n```\n\n#### Generic Browser (without build tools)\n\n```javascript\n// For modern browsers supporting ES modules\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n\n// Or for legacy browser support\n// Use the UMD CDN example shown in \"Build System & Imports\" section\n\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: 'wss://client-identifier.oco.optave.tech', // Direct configuration\n    tokenProvider: async () => {\n        const response = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include'\n        });\n        if (!response.ok) throw new Error('Failed to obtain WebSocket token');\n        const data = await response.json();\n        return data.token;\n    }\n});\n```\n\n⚠️ **Important**: Browser applications should never use `clientSecret`. Always use `tokenProvider` to obtain short-lived tokens from your secure backend.\n\n## Build Tool Integration\n\nThe SDK works seamlessly with popular frontend build tools. Each has its own convention for exposing environment variables to client-side code:\n\n| Build Tool | Environment Variable Prefix | Example |\n|------------|----------------------------|---------|\n| **Vite** | `VITE_` | `import.meta.env.VITE_OPTAVE__WEBSOCKET_URL` |\n| **Create React App** | `REACT_APP_` | `process.env.REACT_APP_OPTAVE__WEBSOCKET_URL` |\n| **Next.js** | `NEXT_PUBLIC_` | `process.env.NEXT_PUBLIC_OPTAVE__WEBSOCKET_URL` |\n| **Nuxt** | `NUXT_PUBLIC_` | `process.env.NUXT_PUBLIC_OPTAVE__WEBSOCKET_URL` |\n\n**Security Note**: Only variables with these prefixes are exposed to the browser. This prevents accidentally leaking server-side secrets to client-side code.\n\n## Content Security Policy (CSP) Compliance\n\nThe Optave Client SDK is designed to work in strict Content Security Policy environments without requiring `unsafe-eval` permissions. This makes it compatible with enterprise applications, Salesforce Lightning, and other security-conscious platforms.\n\n### CSP-Safe Implementation\n\n**Salesforce-compatible builds (Browser ESM and both UMD builds) automatically:**\n- Exclude AJV and other libraries that require `eval()` or `new Function()`\n- Use platform-specific validation implementations that are CSP-compliant\n- Generate external source maps instead of inline eval-based modules\n- Avoid all runtime code generation\n\n### Compatible CSP Headers\n\nThe SDK works with strict CSP policies like:\n\n```http\nContent-Security-Policy: default-src 'self'; script-src 'self'; object-src 'none'; style-src 'self' 'unsafe-inline'\n```\n\n### Salesforce Lightning Compatibility\n\nSpecifically tested and optimized for Salesforce Lightning environments:\n\n```javascript\n// Works in Lightning Web Components (LWC)\nimport OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: 'wss://client-identifier.oco.optave.tech',\n    tokenProvider: async () => {\n        // Fetch from your Lightning backend\n        const response = await fetch('/services/data/v58.0/optave/token', {\n            method: 'POST',\n            headers: { 'Authorization': `Bearer ${sessionId}` }\n        });\n        return (await response.json()).token;\n    }\n});\n```\n\n**Important Considerations:**\n\n- **Race conditions**: If app code runs before the script loads, `globalThis.Optave` is undefined.\n\n### Enterprise Environment Setup\n\nFor enterprise applications with strict security policies:\n\n1. **Use explicit browser builds** to ensure CSP compatibility\n2. **Configure external token providers** instead of client credentials\n3. **Test CSP headers** during development to catch violations early\n\n## Authentication\n\nIf your setup requires authentication, the SDK provides an `authenticate` method to obtain an access token using client credentials.\n\n### Usage\n\n```javascript\nasync function authenticateClient() {\n    try {\n        const token = await optaveClient.authenticate();\n        console.log('Authentication successful. Token:', token);\n    } catch (error) {\n        console.error('Authentication failed:', error);\n    }\n}\n```\n\n**Note**: Ensure that `authenticationUrl`, `clientId`, and `clientSecret` are correctly set in the configuration when using `authenticate()`. If you already have an externally obtained token you can skip `authenticate()` and call `openConnection(token)` directly.\n\n### Recent Authentication Enhancements\n\nThe SDK has been enhanced with several improvements for better reliability and security:\n\n**Automatic /token Suffix Handling**: The SDK now automatically appends `/token` to authentication URLs for user-friendly configuration. You can provide either `https://api.optave.com/auth` or `https://api.optave.com/auth/token` - both work seamlessly.\n\n**Enhanced WebSocket Authentication**:\n- Improved query parameter authentication with better error handling\n- Automatic detection of browser vs. server environments for secure credential handling\n- Enhanced timeout handling for WebSocket connections to prevent cascade failures\n\n**Robust Error Handling**: Enhanced error messages with detailed context and troubleshooting guidance, making debugging authentication issues significantly easier.\n\n## Security Best Practices\n\nThe Optave SDK implements several security measures by default to protect your applications and users:\n\n### Client Secret Protection\n\n⚠️ **CRITICAL**: Never include client secrets in client-side code. The SDK will automatically throw an error if a `clientSecret` is detected in browser, mobile, or Electron renderer environments.\n\n```javascript\n// ❌ NEVER DO THIS - Will throw an error in client environments\nconst sdk = new OptaveJavaScriptSDK({\n    clientSecret: 'secret_key_here', // This will cause an error!\n    // ... other options\n});\n\n// ✅ SECURE APPROACH - Use tokenProvider instead\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: import.meta.env.VITE_OPTAVE__WEBSOCKET_URL, // Vite example\n    tokenProvider: async () => {\n        // Fetch token from your secure backend endpoint\n        const response = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include' // Include cookies for authentication\n        });\n        if (!response.ok) throw new Error('Failed to obtain WebSocket token');\n        const data = await response.json();\n        return data.token;\n    }\n});\n\n// ✅ COMPLETE BROWSER SETUP EXAMPLE (Vite)\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: import.meta.env.VITE_OPTAVE__WEBSOCKET_URL,\n    authTransport: 'subprotocol', // Default - uses Sec-WebSocket-Protocol header\n    tokenProvider: async () => {\n        const response = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include',\n            headers: {\n                'Content-Type': 'application/json'\n            }\n        });\n        if (!response.ok) throw new Error('Token request failed');\n        const { token } = await response.json();\n        return token; // Short-lived, one-time token\n    }\n});\n\n// Event handlers\nsdk.on('open', () => {\n    console.log('WebSocket connection established');\n    // Now you can send messages\n});\n\nsdk.on('error', (error) => {\n    console.error('SDK error:', error);\n});\n\n// Open connection (automatically uses tokenProvider)\nsdk.openConnection();\n```\n\n### Authentication Transport Security\n\nThe SDK defaults to secure authentication transport using WebSocket subprotocols:\n\n```javascript\n// ✅ DEFAULT (Recommended) - Token sent via Sec-WebSocket-Protocol header\nconst sdk = new OptaveJavaScriptSDK({\n    authTransport: 'subprotocol', // This is the default\n    // ... other options\n});\n\n// ⚠️ DISCOURAGED - Token sent in URL query parameters (will show warning)\nconst sdk = new OptaveJavaScriptSDK({\n    authTransport: 'query', // Avoid this - tokens may leak in logs\n    // ... other options\n});\n```\n\n### Server-Side Token Management\n\n**For backend implementations**, implement these security practices:\n\n1. **Origin Validation**: Always validate the `Origin` header on your token endpoint:\n\n```javascript\n// Example Express.js token endpoint\napp.post('/auth/oauth2/token', (req, res) => {\n    const origin = req.headers.origin;\n    const allowedOrigins = ['https://yourdomain.com', 'https://app.yourdomain.com'];\n\n    if (!allowedOrigins.includes(origin)) {\n        return res.status(403).json({ error: 'Invalid origin' });\n    }\n\n    // Generate short-lived, one-time token\n    const token = generateShortLivedToken();\n    res.json({ token });\n});\n```\n\n2. **Short-lived Tokens**: Issue tokens with minimal lifetime (recommended: 5-15 minutes)\n\n3. **One-time Use**: Consider implementing one-time tokens that are invalidated after first use\n\n4. **Secure Headers**: Set appropriate security headers:\n\n```javascript\n// Security headers example\napp.use((req, res, next) => {\n    res.setHeader('X-Content-Type-Options', 'nosniff');\n    res.setHeader('X-Frame-Options', 'DENY');\n    res.setHeader('X-XSS-Protection', '1; mode=block');\n    next();\n});\n```\n\n### Environment Detection\n\nThe SDK automatically detects and protects against unsafe environments:\n\n- **Browser environments** (window object present)\n- **Mobile environments** (React Native, Expo)\n- **Electron renderer processes**\n\nAll these environments will reject client secrets and require tokenProvider implementation.\n\n### Connection Security\n\n```javascript\n// ✅ SECURE - Let SDK handle token automatically\nsdk.openConnection(); // Uses tokenProvider if no token provided\n\n// ✅ SECURE - Pass token directly if you have one\nsdk.openConnection('your-short-lived-token');\n\n// The SDK will automatically:\n// - Use secure WebSocket subprotocol authentication\n// - Validate token presence when required\n// - Handle authentication failures gracefully\n```\n\n## Establishing a WebSocket Connection\n\nAfter obtaining (or otherwise retrieving) a token, open the WebSocket connection:\n\n```javascript\nasync function connectWebSocket() {\n    const token = await optaveClient.authenticate();\n    optaveClient.openConnection(token);\n}\n```\n\n### Recent WebSocket Improvements\n\nThe WebSocket implementation has been significantly enhanced for better reliability and performance:\n\n**Enhanced Connection Management**:\n- Improved WebSocket event listener handling with proper race condition prevention\n- Better async behavior with proper promise rejection handling\n- Enhanced timeout handling to prevent cascade test failures\n\n**UMD Build Enhancements**:\n- Server UMD builds now support `clientSecret` authentication with 100% test success rates\n- Browser authentication detection has been simplified and made more reliable\n- Improved WebSocket integration for mixed browser/Node.js environments\n\n**Memory Management**:\n- Comprehensive memory leak detection and prevention\n- Proper resource cleanup on connection close\n- Enhanced garbage collection patterns for long-running applications\n\n**Salesforce Lightning Integration**:\n- Dedicated UMD builds optimized for Salesforce Lightning environments\n- GlobalThis access diagnostic tests for compatibility validation\n- CSP-compliant WebSocket implementations for enterprise security requirements\n\n## Event Handling\n\nThe SDK emits several events to handle various states and messages. You can listen to these events to manage your application's behavior accordingly.\n\n### Available Events\n\n- **open**: Emitted when the WebSocket connection is successfully opened.\n- **message**: Emitted when a message is received from the server.\n- **error**: Emitted when an error occurs.\n- **close**: Emitted when the WebSocket connection is closed.\n\n### Listening to Events\n\n```javascript\noptaveClient.on('open', () => {\n    console.log('WebSocket connection opened.');\n});\n\noptaveClient.on('message', (payload) => {\n    const message = JSON.parse(payload);\n    console.log('Received message:', message);\n});\n\noptaveClient.on('error', (error) => {\n    console.error('An error occurred:', error);\n});\n\noptaveClient.on('close', () => {\n    console.log('WebSocket connection closed.');\n});\n```\n\n## Sending Messages\n\nThe SDK provides several methods to send different types of messages through the WebSocket connection. Each method corresponds to a specific action type.\n\n### Available Methods\n\n- **adjust(params)**: Sends an adjust message.\n- **elevate(params)**: Sends an elevate message.\n- **interaction(params)**: Sends an interaction message (successor to `customerInteraction`).\n- **reception(params)**: Sends a reception message.\n- **customerInteraction(params)**: (Deprecated) Legacy alias kept for backward compatibility. Use `interaction` instead.\n- **summarize(params)**: Sends a summarize message.\n- **translate(params)**: Sends a translate message.\n- **recommend(params)**: Sends a recommend message.\n- **insights(params)**: Sends an insights message.\n\n### Example: Sending a Interaction Message\n\n```javascript\nconst interactionParams = {\n    session: {\n        sessionId: \"a1b2c3e6-e5f6-7890-1234-56789abcdef0\",\n        channel: {\n            browser: \"Safari 17.0\",\n            deviceInfo: \"iOS/18.2, iPhone15,3\",\n            deviceType: \"mobile\",\n            language: \"en-US\",\n            location: \"US-NY\", // province grain (ISO 3166-2); never precise coordinates\n            medium: \"chat\", // options: \"chat\", \"voice\", \"email\"\n            section: \"support_page\",\n        },\n        interface: {\n            appVersion: \"2.1.0\",\n            category: \"crm\",\n            language: \"en-US\",\n            name: \"my_support_app\",\n            type: \"custom_components\",\n        }\n    },\n    headers: {\n        // Optional client event time; if omitted no timestamp header is sent\n        timestamp: \"2024-01-15T10:30:00.000Z\"\n    },\n    request: {\n        requestId: \"a1b2c3d4-e5f6-7890-1234-56789ab2345\",\n        attributes: {\n            variant: \"A\"\n        },\n        connections: {\n            threadId: \"9e8d7c6b-5a49-3827-1605-948372615abc\" // REQUIRED\n        },\n        context: { // generated by optave\n            organizationId: \"f7e8d9c0-b1a2-3456-7890-123456789abc\", // REQUIRED\n        },\n        scope: {\n            conversations: [ // REQUIRED\n                {\n                    conversationId: \"conv-789\",\n                    participants: [\n                        {\n                            participantId: \"2c4f8a9b-1d3e-5f70-8293-456789012def\", //sent by the client - optional\n                            role: \"user\",\n                            displayName: \"John Doe\"\n                        },\n                        {\n                            participantId: \"5b8c9d0e-2f4a-6b1c-9d8e-123456789xyz\",\n                            role: \"operator\",\n                            displayName: \"Sarah Smith\"\n                        }\n                    ],\n                    messages: [\n                        {\n                            timestamp: \"2024-01-15T10:30:00.000Z\",\n                            participantId: \"2c4f8a9b-1d3e-5f70-8293-456789012def\",\n                            content: \"Hi, can you help me?\"\n                        },\n                        {\n                            timestamp: \"2024-01-15T10:30:15.000Z\",\n                            participantId: \"5b8c9d0e-2f4a-6b1c-9d8e-123456789xyz\",\n                            content: \"Hello! I'd be happy to assist you today. What can I help you with?\"\n                        }\n                    ]\n                }\n            ]\n        },\n        settings: {\n            disableBrowsing: false,\n            disableSearch: false,\n            disableSources: false,\n            disableStream: false,\n            disableTools: false,\n            maxResponseLength: 2000,\n            overrideOutputLanguage: \"en-US\"\n        }\n    }\n};\n\noptaveClient.interaction(interactionParams);\n```\n\n## Payload Structure\n\nThe SDK manages a default payload structure that encapsulates session information, user details, agent information, requests, and more. When sending a message, you provide a `params` object that is merged with the default payload to form the final payload sent over the WebSocket.\n\n### Default Payload Overview\n\n- **session**: Contains session tracking information including `sessionId`, channel details (browser, deviceInfo, deviceType, etc.), and interface information.\n- **request**: Details about the request including `requestId`, context, connections, attributes, scope (with structured conversations and interactions), and settings.\n\nTyped payload fields are the analytics context vocabulary (conversation identity via `threadId`, pseudonymous `userId`, province-grain `channel.location`, A/B `variant`, and so on). `request.reference` is client-custom labels only. The SDK captures this context; it never emits to the analytics pipeline. See [analytics-payload-field-map.md](../../docs/architecture/analytics-payload-field-map.md).\n\n\n### Merging Strategy\n\nThe SDK performs a **selective deep merge** where the user-provided `params` are merged \"on top\" of the default payload. Arrays in the payload are replaced entirely by the arrays provided in `params`.\n\n### Envelope Headers\n\nEach outbound message is wrapped in an envelope with a `headers` object. The SDK auto-populates the following headers (fields marked optional are only present when supplied):\n\n- `schemaRef` – Format: `optave.message.v<major>` (derived from spec version major). Always present.\n- `sdkVersion` – The SDK package version from `package.json`.\n- `action` – The validated action string you invoked (e.g. `customerinteraction`).\n- `correlationId` – Taken in priority order from: user override (`params.headers.correlationId`), `request.requestId`, or auto-generated (uuid v7).\n- `traceId` – Auto-generated (uuid v7) unless overridden via `params.headers.traceId`.\n- `idempotencyKey` – Auto-generated (uuid v7) unless overridden via `params.headers.idempotencyKey`.\n- `issuedAt` – ISO timestamp when the envelope was built (always present).\n- `timestamp` – Optional client event time you provide (not generated automatically). Supply under `params.headers.timestamp` if you want to record the original occurrence time of the underlying event.\n- `identifier` – The request type (currently `message`).\n- `networkLatencyMs` – Included only if explicitly supplied as a number via `params.headers.networkLatencyMs`.\n- `tenantId` – Included only when `tenantId` option is set in the SDK constructor.\n\nHeader Override Rules:\n1. Provide a top-level `headers` object in the `params` you pass to `send()` or the convenience method (e.g. `interaction({ headers: { timestamp: '...' }, ... })`).\n2. Only the keys you supply are considered overrides; others are generated.\n3. Supplying `timestamp` prevents accidental fabrication—if you omit it, it is simply absent (not auto-filled).\n\nCorrelation & Tracing:\n- Use a custom `correlationId` if you need to link multiple outbound requests to an external system ID.\n- `traceId` plus `correlationId` enable joining logs across services; normally you do not need to set them manually.\n- `idempotencyKey` can be overridden to ensure safe retries on the server side if that semantic is supported.\n\n\n## Example Usage\n\nBelow are examples demonstrating how to initialize the SDK, establish a connection, handle events, and send messages.\n\n### Browser Usage Example\n\n```javascript\n// Automatic build selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Or explicit browser build\n// import OptaveJavaScriptSDK from '@optave/client-sdk/browser';\n\nconst sdk = new OptaveJavaScriptSDK({\n    websocketUrl: import.meta.env.VITE_OPTAVE__WEBSOCKET_URL,\n    tokenProvider: async () => {\n        const r = await fetch('/api/optave/ws-ticket', {\n            method: 'POST',\n            credentials: 'include'\n        });\n        if (!r.ok) throw new Error('ticket failed');\n        const { token } = await r.json();\n        return token;\n    }\n});\n\n// Wait for 'open' before sending\nsdk.on('open', () => {\n    sdk.interaction({ /* your params */ });\n});\nsdk.on('error', (e) => console.error('SDK error', e));\n\nsdk.openConnection(); // uses tokenProvider automatically\n```\n\n### Node.js Server Example\n\n```javascript\n// Automatic build selection (recommended)\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Or explicit server build\n// import OptaveJavaScriptSDK from '@optave/client-sdk/server';\n\n// Or UMD for mixed environments (works with CommonJS require())\n// const OptaveJavaScriptSDK = require('@optave/client-sdk/server-umd');\n\nconst optaveClient = new OptaveJavaScriptSDK({\n    websocketUrl: process.env.OPTAVE__WEBSOCKET_URL,\n\n    // These parameters are only required when using the authenticate() function.\n    // In some cases, the authentication token can be obtained manually or through\n    // another process, which makes the authenticate() call unnecessary. In this\n    // case, only the openConnection function has to be called, passing the existing token value\n    authenticationUrl: process.env.OPTAVE__AUTHENTICATION_URL,\n    clientId: process.env.OPTAVE__CLIENT_ID,\n    clientSecret: process.env.OPTAVE__CLIENT_SECRET,\n});\n\nasync function run() {\n    // Listen for messages from the WebSocket\n    optaveClient.on('message', payload => {\n        const message = JSON.parse(payload);\n        const { actionType, state, action } = message;\n    \n        console.log(`Action: ${action} / State: ${state} / Action Type: ${actionType}`);\n    });\n    \n    // Handle errors\n    optaveClient.on('error', error => {\n        if (typeof error === 'string') {\n            console.error(error);\n        } else {\n            console.error('Error:', error);\n        }\n    });\n    \n    // After the connection is opened, send an interaction message\n    optaveClient.once('open', () => {\n        optaveClient.interaction({\n            session: {\n                sessionId: \"a1b2c3e6-e5f6-7890-1234-56789abcdef0\",\n                channel: {\n                    browser: \"Safari 17.0\",\n                    deviceInfo: \"iOS/18.2, iPhone15,3\",\n                    deviceType: \"mobile\",\n                    language: \"en-US\",\n                    location: \"US-NY\", // province grain (ISO 3166-2); never precise coordinates\n                    medium: \"chat\", // options: \"chat\", \"voice\", \"email\"\n                    section: \"support_page\",\n                },\n                interface: {\n                    appVersion: \"2.1.0\",\n                    category: \"crm\",\n                    language: \"en-US\",\n                    name: \"my_support_app\",\n                    type: \"custom_components\",\n                }\n            },\n            request: {\n                requestId: \"a1b2c3d4-e5f6-7890-1234-56789ab2345\",\n                attributes: {\n                    variant: \"A\"\n                },\n                connections: {\n                    threadId: \"9e8d7c6b-5a49-3827-1605-948372615abc\" // REQUIRED\n                },\n                context: { // generated by optave\n                    organizationId: \"f7e8d9c0-b1a2-3456-7890-123456789abc\", // REQUIRED\n                },\n                scope: {\n                    conversations: [ // REQUIRED\n                        {\n                            conversationId: \"conv-789\",\n                            participants: [\n                                {\n                                    participantId: \"2c4f8a9b-1d3e-5f70-8293-456789012def\", //sent by the client - optional\n                                    role: \"user\",\n                                    displayName: \"John Doe\"\n                                },\n                                {\n                                    participantId: \"5b8c9d0e-2f4a-6b1c-9d8e-123456789xyz\",\n                                    role: \"operator\",\n                                    displayName: \"Sarah Smith\"\n                                }\n                            ],\n                            messages: [\n                                {\n                                    timestamp: \"2024-01-15T10:30:00.000Z\",\n                                    participantId: \"2c4f8a9b-1d3e-5f70-8293-456789012def\",\n                                    content: \"Hi, can you help me?\"\n                                },\n                                {\n                                    timestamp: \"2024-01-15T10:30:15.000Z\",\n                                    participantId: \"5b8c9d0e-2f4a-6b1c-9d8e-123456789xyz\",\n                                    content: \"Hello! I'd be happy to assist you today. What can I help you with?\"\n                                }\n                            ]\n                        }\n                    ],\n                    interactions: [\n                        {\n                            content: \"Support ticket T12345 has been created for user John Doe\",\n                            id: \"1\",\n                            name: \"ticket_created\",\n                            role: \"System\",\n                            timestamp: \"2024-01-15T10:29:45.000Z\",\n                        }\n                    ]\n                },\n                settings: {\n                    disableBrowsing: false,\n                    disableSearch: false,\n                    disableSources: false,\n                    disableStream: false,\n                    disableTools: false,\n                    maxResponseLength: 2000,\n                    overrideOutputLanguage: \"en-US\"\n                }\n            }\n        });\n    });\n\n    // Authenticate and open the WebSocket connection\n    try {\n        const token = await optaveClient.authenticate();\n        optaveClient.openConnection(token);\n    } catch (error) {\n        console.error('Failed to authenticate and connect:', error);\n    }\n}\n\nrun();\n```\n\n## API Reference\n\n### `OptaveJavaScriptSDK(options)`\n\nCreates a new instance of the OptaveJavaScriptSDK.\n\n- **Parameters**:\n  - `options` *(Object)*: Configuration options.\n    - `websocketUrl` *(string)*: The WebSocket URL.\n    - `authenticationUrl` *(string, optional)*: The authentication URL.\n    - `clientId` *(string, optional)*: The client ID for authentication.\n    - `clientSecret` *(string, optional)*: The client secret for authentication.\n\n      ⚠️ **SECURITY WARNING**: Never set clientSecret in browser/mobile/Electron renderers. Client secrets must only be used in secure server-side environments.\n\n### `authenticate()`\n\nAuthenticates the client using the provided credentials and retrieves an access token.\n\n- **Returns**: *(Promise<string>)* The access token.\n\n### `openConnection(bearerToken)`\n\nEstablishes a WebSocket connection using the provided bearer token.\n\n- **Parameters**:\n  - `bearerToken` *(string)*: The authentication token.\n\n### `closeConnection()`\n\nCloses the active WebSocket connection.\n\n### `send(requestType, action, params)`\n\nSends a message through the WebSocket connection.\n\n- **Parameters**:\n  - `requestType` *(string)*: The type of the request.\n  - `action` *(string)*: The specific action to perform.\n  - `params` *(Object)*: The parameters for the request.\n\n### Predefined Methods\n\nThese methods are shortcuts for sending specific types of messages.\n\n- **adjust(params)**: Sends an `adjust` message.\n- **elevate(params)**: Sends an `elevate` message.\n- **interaction(params)**: Sends an `interaction` message.\n- **reception(params)**: Sends a `reception` message.\n- **customerInteraction(params)**: (Deprecated) Legacy alias for `interaction`.\n- **summarize(params)**: Sends a `summarize` message.\n- **translate(params)**: Sends a `translate` message.\n- **recommend(params)**: Sends a `recommend` message.\n- **insights(params)**: Sends an `insights` message.\n\n### EventEmitter Methods\n\nSince `OptaveJavaScriptSDK` extends `EventEmitter`, you can use all standard `EventEmitter` methods such as `on`, `once`, `emit`, etc.\n\n### Static Methods and Constants\n\nThe SDK provides several static methods and constants for accessing metadata and configuration:\n\n```javascript\nimport OptaveJavaScriptSDK from '@optave/client-sdk';\n\n// Version information\nconst sdkVersion = OptaveJavaScriptSDK.getSdkVersion(); // e.g., \"3.6.0\" (SDK implementation version)\nconst specVersion = OptaveJavaScriptSDK.getSpecVersion(); // Returns: \"1.0.0\" (AsyncAPI protocol version - static)\nconst schemaRef = OptaveJavaScriptSDK.getSchemaRef(); // e.g., \"optave.message.v3\"\n\n// Constants\nconst constants = OptaveJavaScriptSDK.CONSTANTS; // SDK configuration constants\nconst legacyEvents = OptaveJavaScriptSDK.LegacyEvents; // Legacy event names\nconst inboundEvents = OptaveJavaScriptSDK.InboundEvents; // New event names\n\n// Usage example\nsdk.on(OptaveJavaScriptSDK.LegacyEvents.MESSAGE, (data) => {\n  console.log('Legacy message event:', data);\n});\n\nsdk.on(OptaveJavaScriptSDK.InboundEvents.SUPERPOWER_RESPONSE, (data) => {\n  console.log('New superpower response:', data);\n});\n```\n\n## Error Handling\n\nThe SDK includes robust error handling to ensure that issues are communicated effectively.\n\n### Emitting Errors\n\nErrors are emitted via the `error` event. You can listen to this event to handle errors gracefully.\n\n```javascript\noptaveClient.on('error', (error) => {\n    console.error('An error occurred:', error);\n});\n```\n\n### Common Error Scenarios\n\n- **Missing Configuration**: Errors will be emitted if required configuration options like `websocketUrl` or `authenticationUrl` are missing.\n- **Authentication Failure**: If authentication fails, an error with the corresponding message will be emitted.\n- **WebSocket Issues**: Errors related to WebSocket connections, such as connection failures or unexpected closures, will be emitted.\n\n### Error Object Structure\n\nWhen an error is emitted, it follows the following structure:\n\n```javascript\n{\n    category: 'WEBSOCKET', // Error category (available types: AUTHENTICATION, ORCHESTRATOR, VALIDATION, WEBSOCKET)\n    code: 'INVALID_WEBSOCKET_URL', // Error code that identifies which error just happened\n    message: 'Empty or invalid Websocket URL', // Error message explaining the problem\n    details: null // Error details which may or not bring additional information\n    suggestions: [] // List of suggestions on how to fix the error\n}\n","readmeFilename":"README.md"}