@rrweb/packer
Overview
@rrweb/packer compresses rrweb events on the frontend before network transmission. It uses fflate for zlib compression and compresses each rrweb event separately as it is emitted. The encoder is needed on the recording side and adds roughly 17KB minified to your bundle (less after gzip). Decompression at replay time is handled separately via the @rrweb/packer/unpack entry point.
See the storage recipe for more info on how it works. And the guide for more info on rrweb.
Release Notes for @rrweb/packer
2.1.1
Patch Changes
- Updated dependencies []:
- @rrweb/types@2.1.1
2.1.0
Patch Changes
- Updated dependencies [
6fe4fed]:- @rrweb/types@2.1.0
2.0.1
Patch Changes
- Updated dependencies []:
- @rrweb/types@2.0.1
2.0.0
Major Changes
#1497
2606a2aThanks @Juice10! - Split plugins out of rrweb and move them into their own packages: @rrweb/packer, @rrweb/rrweb-plugin-canvas-webrtc-record, @rrweb/rrweb-plugin-canvas-webrtc-replay, @rrweb/rrweb-plugin-sequential-id-record, @rrweb/rrweb-plugin-sequential-id-replay, @rrweb/rrweb-plugin-console-record, @rrweb/rrweb-plugin-console-replay. Check out the README of each package for more information or check out https://github.com/rrweb-io/rrweb/pull/1033 to see the changes.#1497
2606a2aThanks @Juice10! - Distributed files have new filenames, paths and extensions. Important: If you reference distributed files or types directly, you might have to update your paths/filenames. E.g. you import fromrrweb/typings/...orrrdom/es. However you runimport rrweb from 'rrweb'you won't notice a difference with this change. If you include rrweb files directly in a script tag, you might have to update that path to include a the.umd.cjsfiles instead. All.jsfiles now use ES modules which can be used in modern browsers, node.js and bundlers that support ES modules. All npm packages now also ship.cjsand.umd.cjsfiles. The.umd.cjsfiles are CommonJS modules that bundle all files together to make it easy to ship one file to browser environments (similar to the previous.jsfiles). The.cjsfiles are CommonJS modules that can be used in older Node.js environments. Types should be better defined inpackage.jsonand if you need specific types they might be exported from new packages (for examplePlayerMachineStateandSpeedMachineStateare now exported from@rrweb/replay). Check thepackage.json'smainandexportsfield for the available files.
Patch Changes
db20184Thanks @Juice10! - Keep package version in sync with other packages#1762
22bc4c3Thanks @Juice10! - Drop base64 inlined worker source from all bundles#1704
33e01f5Thanks @eoghanmurray! - Provide a /umd/ output folder alongside the /dist/ one so that we can serve UMD (Universal Module Definition) files with a .js extension, without upsetting expectations set by package.json that all .js files in /dist/ are modulesUpdated dependencies [
0f0a532,d872d28,efdc167,979d2b1,2606a2a,335639a,123a81e,33e01f5,c278d06]:- @rrweb/types@2.0.0
2.0.0-alpha.17—20
Patch Changes only following changes to @rrweb/types
Patch Changes
db20184Thanks @Juice10! - Keep package version in sync with other packagesUpdated dependencies [
335639a]:- @rrweb/types (2.0.0-alpha.17—20)
2.0.0-alpha.15
Major Changes
#1497
2606a2aThanks @Juice10! - Split plugins out of rrweb and move them into their own packages: @rrweb/packer, @rrweb/rrweb-plugin-canvas-webrtc-record, @rrweb/rrweb-plugin-canvas-webrtc-replay, @rrweb/rrweb-plugin-sequential-id-record, @rrweb/rrweb-plugin-sequential-id-replay, @rrweb/rrweb-plugin-console-record, @rrweb/rrweb-plugin-console-replay. Check out the README of each package for more information or check out https://github.com/rrweb-io/rrweb/pull/1033 to see the changes.#1497
2606a2aThanks @Juice10! - Distributed files have new filenames, paths and extensions. Important: If you reference distributed files or types directly, you might have to update your paths/filenames. E.g. you import fromrrweb/typings/...orrrdom/es. However you runimport rrweb from 'rrweb'you won't notice a difference with this change. If you include rrweb files directly in a script tag, you might have to update that path to include a the.umd.cjsfiles instead. All.jsfiles now use ES modules which can be used in modern browsers, node.js and bundlers that support ES modules. All npm packages now also ship.cjsand.umd.cjsfiles. The.umd.cjsfiles are CommonJS modules that bundle all files together to make it easy to ship one file to browser environments (similar to the previous.jsfiles). The.cjsfiles are CommonJS modules that can be used in older Node.js environments. Types should be better defined inpackage.jsonand if you need specific types they might be exported from new packages (for examplePlayerMachineStateandSpeedMachineStateare now exported from@rrweb/replay). Check thepackage.json'smainandexportsfield for the available files.
Patch Changes
- Updated dependencies [
2606a2a]:- @rrweb/types@2.0.0-alpha.15