Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rrweb sync alpha 15 vite complete #43

Merged
merged 39 commits into from
Oct 23, 2024
Merged

Commits on Oct 17, 2024

  1. Chore: Migrate build to vite (rrweb-io#1033)

    * Chore: Add move most types from rrweb to @rrweb/types package
    
    * Split off type imports
    
    * Split off type import to its own line
    
    * Get vite to generate type definitions
    
    * Apply formatting changes
    
    * noEmit not allowed in tsconfig, moved it to build step
    
    * Migrate rrdom-nodejs build to vite
    
    * Apply formatting changes
    
    * Migrate rrweb-snapshot to vite
    
    * Unify configs
    
    * Chore: Migrate rrdom to vite
    
    Turns out what we where doing by overwriting `public textContent: string | undefined` as a getter in a subclass is something that isn't allowed in typescript. Because we where using `// @ts-ignore`  to hide this error our bundler chose to allow the overwrite. Vite choses to disallow the overwrite making all subclasses' `textContent` undefined.
    To mitigate this we're using an abstract class, which does allow sub classes to decide if they wan't to use getters or not.
    
    * Chore: Migrate rrweb to vite WIP
    
    * build:browser was removed (for now)
    
    * BREAKING: moved rrweb-plugin-console to its own npm module
    
    This removes console from rrweb-all.js
    
    * Support cjs files in startServer
    
    * Move canvas-webrtc plugin to its own package
    
    * Chore: move sequential-id plugin to its own package
    
    * Chore: Configure rrweb's vite bundling
    
    * `Id` had lowercase `d` before, making it lowercase again
    
    * Test: Move console tests to their own package
    
    * remove unused utils from rrdom
    
    * pull in latest version of master
    something when wrong earlier when resolving merge conflicts, this should be correct
    
    * Fix type casting issue in diff.ts
    
    * Fix typo
    
    * Fix duplicate entries in package.json and tsconfig.json
    
    * Apply formatting changes
    
    * Update dependencies in package.json files
    
    * Update dependencies to use Vite 5.2.8 in package.json files
    
    * Get tests passing for rrdom
    
    `apply virtual style rules to node` tests need to be moved to rrweb to avoid circular dependencies
    
    * Fix image loading issue in integration tests
    
    * Move pack/unpack to its own @rrweb/packer module
    
    * Get tests to work in rrdom-nodejs
    
    * Port tests in rrweb-snapshot to vitest and fix them
    
    * Fix tests for rrweb-plugin-console-record
    
    * Add @rrweb/all package
    
    * Fix publint and attw errors for rrdom and @rrweb/types
    
    * Use shared vitest.config.ts in rrweb-snapshot package
    
    * Fix publint and attw issues for rrweb-snapshot
    
    * Export `ReplayPlugin` type directly from rrweb
    
    * Fix publint and attw issues for packages
    
    * Fix publint & attw issue.
    
    I was bumping into this issue: https://github.com/arethetypeswrong/arethetypeswrong.github.io/blob/3729bc2a3ca2ef7dda5c22fef81f89e1abe5dacf/docs/problems/NoResolution.md
    
    And had to choose one of these three methods described here:
    https://github.com/andrewbranch/example-subpath-exports-ts-compat?tab=readme-ov-file#typescript-friendly-strategies-for-packagejson-subpath-exports-compatibility
    And I ended up going for the method described here:
    https://github.com/andrewbranch/example-subpath-exports-ts-compat/tree/1ffe3425b0a7ad8ecdf3c373f76f431ee341366b/examples/node_modules/package-json-redirects#package-json-redirects
    
    The redirect method seemed the least invasive and most effective.
    
    * Fix publint & attw issue.
    
    I was bumping into this issue: https://github.com/arethetypeswrong/arethetypeswrong.github.io/blob/3729bc2a3ca2ef7dda5c22fef81f89e1abe5dacf/docs/problems/NoResolution.md
    
    And had to choose one of these three methods described here:
    https://github.com/andrewbranch/example-subpath-exports-ts-compat?tab=readme-ov-file#typescript-friendly-strategies-for-packagejson-subpath-exports-compatibility
    And I ended up going for the method described here:
    https://github.com/andrewbranch/example-subpath-exports-ts-compat/tree/1ffe3425b0a7ad8ecdf3c373f76f431ee341366b/examples/node_modules/package-json-redirects#package-json-redirects
    
    The redirect method seemed the least invasive and most effective.
    
    * move some rrdom tests that require rrweb to rrweb package
    
    * Use pre-jest 29 syntax for snapshotting
    
    * get rrweb passing publint and attw
    
    * const enum does not work with isolated modules flag
    
    * Fix script tag type in webgl.test.ts.snap and update rrweb.umd.cjs path in webgl.test.ts
    
    * Fix paths
    
    * Move tests for console record plugin and fix bundle path
    
    * Fix tests for rrweb
    
    * pack integration tests were moved to @rrweb/all
    
    * Update rrweb bundle path in test files
    
    * Fix flaky scroll emit from test
    
    * Migrate rrweb's tests over to vitest and make them pass
    
    * Make sure benchmarks & updating tests work
    
    * Remove jest from rrweb
    
    * Fix paths
    
    * always use rrweb's own cssom
    
    * Update tsconfig.json for rrweb-plugin-sequential-id-record
    
    Fixes this error:
    Error: @rrweb/rrweb-plugin-sequential-id-record:prepublish: tsconfig.json(9,5): error TS6377: Cannot write file '/home/runner/work/rrweb/rrweb/tsconfig.tsbuildinfo' because it will overwrite '.tsbuildinfo' file generated by referenced project '/home/runner/work/rrweb/rrweb/packages/rrweb'
    
    * Add tsbuildinfo config to extended tsconfig files
    
    * Move rrdom over to vitest
    
    * Apply formatting changes
    
    * Update rrweb imports to use the new package structure
    
    * extend rrweb-snapshot's tsconfig from monorepo base config
    
    * extend @rrweb/types's tsconfig from monorepo base config
    
    * extend rrdom's tsconfig from monorepo base config
    
    * extend rrdom-nodejs's tsconfig from monorepo base config
    
    * extend web-extension's tsconfig from monorepo base config
    
    * unify tsconfigs
    
    * Continue when tests fail
    
    * Add stricter type checking
    
    * Add check-types global command
    
    * remove jest
    
    * Remove unused code
    
    * Add check-types command to build script
    
    * Fix linting issues
    
    * Add setup Chrome action for CI/CD workflow
    
    * Update puppeteer version in package.json for rrweb
    
    * Update Chrome setup in CI/CD workflow
    
    * Update Chrome setup in CI/CD workflow
    
    * Add Chrome setup and test cache location
    
    * Update CI/CD workflow to test chrome cache location
    
    * Add chrome installation step to CI/CD workflow
    
    * Update Puppeteer configuration for headless testing
    
    * Update dependencies and workflow configuration
    
    * Use same version of chrome on CI as is run locally
    
    * Use version of chrome that seems to work with rrdom tests
    
    * Try using puppeteerrc to define chrome version
    
    * Add .cache directory to .gitignore
    
    * Move global flag to vitest config
    
    * Update puppeteer version to 20.9.0
    
    * Update console log messages in rrweb-plugin-console-record for new puppeteer version
    
    * Remove redundant Chrome setup from CI/CD workflow
    
    * Add minification and umd for all built files
    
    * Update import paths for rrweb dist files
    
    * Add @rrweb/replay and @rrweb/record
    
    * Add script to lint packages
    
    * Apply formatting changes
    
    * exclude styles export from typescript package type checking
    
    * WIP Move rrweb-player over to vite
    
    * Apply formatting changes
    
    * chore: Update rrweb plugin import paths
    
    * Remove rollup from rrweb-player
    
    * Fix typing issues
    
    * Fix typing issues
    
    * chore: Update rrweb-player to use vite for build process
    
    * Apply formatting changes
    
    * chore: Export Player class in rrweb-player/src/main.ts
    
    Makes attw happy
    
    * Apply formatting changes
    
    * Gets wiped by yarn workspaces-to-typescript-project-references
    
    * Add .eslintignore and .eslintrc.cjs files for rrweb-player package
    
    * Apply formatting changes
    
    * Update dependencies in rrweb-player/package.json
    
    * Apply formatting changes
    
    * chore: Update eslint configuration for rrweb-player package
    
    * Apply formatting changes
    
    * chore: Remove unused files from rrweb-player package
    
    * Apply formatting changes
    
    * chore: Update rrweb-player import path to use rrweb-player.cjs
    
    * chore: Update addEventListener signature in rrweb-player
    
    * Apply formatting changes
    
    * Add .eslintignore and update .gitignore files for to root
    
    * Apply formatting changes
    
    * Update documentation
    
    * Update @rrweb/types package description
    
    * Apply formatting changes
    
    * Update build and run commands in CONTRIBUTING.md
    
    * Apply formatting changes
    
    * Update package versions to 2.0.0-alpha.13
    
    * Apply formatting changes
    
    * Apply formatting changes
    
    * Fix import statement in media/index.ts
    
    * Apply formatting changes
    
    * chore: Update .gitignore to exclude build and dist directories
    
    * Apply formatting changes
    
    * Apply formatting changes
    
    * Migrate setTimeout to vitest
    
    * Apply formatting changes
    
    * Apply formatting changes
    
    * Fix isNativeShadowDom function signature in utils.ts
    
    * try out jsr
    
    * Apply formatting changes
    
    * Update package versions to 2.0.0-alpha.14
    
    * Apply formatting changes
    
    * Fix name of rrwebSnapshot object
    
    * Apply formatting changes
    
    * Remove unused lock files
    
    * Apply formatting changes
    
    * Update rrweb bundle path to use umd.cjs format
    
    * Apply formatting changes
    
    * Trigger tests to run again
    
    * Rename snapshots for vitest
    
    * Apply formatting changes
    
    * Ping CI
    
    * Apply formatting changes
    
    * Ping CI
    
    * Apply formatting changes
    
    * Ignore files generated by svelte-kit for prettier
    
    * Correct Player object
    Juice10 authored and jxiwang committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    4fe0153 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    db91358 View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2024

  1. Configuration menu
    Copy the full SHA
    ac683cf View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    41a53cc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    68ee960 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a72a849 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    64b5ed3 View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2024

  1. fix: some nested cross-origin iframes can't be recorded (rrweb-io#1353)

    * fix: some nested cross-origin iframes can't be recorded
    
    * fix building error in rrweb-player
    
    * add test case for this special case
    
    * Apply formatting changes
    
    ---------
    
    Co-authored-by: YunFeng0817 <[email protected]>
    2 people authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    f317df7 View commit details
    Browse the repository at this point in the history
  2. Added changesets for rrweb-io#1033 (rrweb-io#1497)

    * Add extra changeset describing changes of rrweb-io#1033
    
    * Apply formatting changes
    
    * chore: update changelog for PR 1033:
    
    Split plugins out of rrweb and move them into their own packages
    
    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 rrweb-io#1033 to see the changes.
    
    * docs: describe changes to distributed files
    
    * Fix snapshot for vitest
    
    * Apply formatting changes
    
    * Make changeset about new bundled files clearer
    Juice10 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    0749d4c View commit details
    Browse the repository at this point in the history
  3. Chore: Ignore generated files from .svelte-kit for prettier & make vi…

    …deo tests more stable (rrweb-io#1500)
    
    * Chore: Ignore generated files from .svelte-kit for prettier
    
    * Create serious-eggs-greet.md
    
    * Apply formatting changes
    
    * Trigger CI
    
    * Make video tests more stable
    
    * Apply formatting changes
    
    * Exclude ambient.d.ts from format as it isn't deterministic
    Juice10 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    0eb478c View commit details
    Browse the repository at this point in the history
  4. Update styleguilde.md (rrweb-io#1498)

    * Update styleguilde.md
    
    add a note not to say 'just'
    
    * Apply formatting changes
    
    * Rename styleguilde.md to styleguide.md
    
    * Apply formatting changes
    
    * Create slimy-eagles-grow.md
    
    ---------
    
    Co-authored-by: eoghanmurray <[email protected]>
    Co-authored-by: Justin Halsall <[email protected]>
    3 people authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    c994a02 View commit details
    Browse the repository at this point in the history
  5. Chore: Fix yarn dev (rrweb-io#1501)

    * Chore: upgrade turbo & fix yarn dev
    Juice10 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    416d1b1 View commit details
    Browse the repository at this point in the history
  6. Chore: Delete unused lerna.json file (rrweb-io#1506)

    * Chore: Delete unused lerna.json file
    
    * Chore: Remove lerna.json from turbo config
    
    * Create nasty-scissors-reply.md
    Juice10 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    551b547 View commit details
    Browse the repository at this point in the history
  7. fix: extension doesn't work after vite bump (rrweb-io#1507)

    * fix: extension doesn't work after vite bump
    YunFeng0817 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    5bb9c50 View commit details
    Browse the repository at this point in the history
  8. Add option to block animation on <title> tag (rrweb-io#760)

    * Add option to block animation on <title> tag which can generate massive recordings on some websites (think scrolling title tag)
    
    * Add new option to slimDOMOptions type with tsdoc as suggested by Justin
    eoghanmurray authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    4442d21 View commit details
    Browse the repository at this point in the history
  9. Skip mask check on leaf elements (rrweb-io#1512)

    * Minor fixup for rrweb-io#1349; the 'we can avoid the check on leaf elements' optimisation wasn't being applied as `n.childNodes` was always truthy even when there were no childNodes.
    
    Changing it to `n.childNodes.length` directly there (see rrweb-io#1402) actually caused a bug as during a mutation, we serialize the text node directly, and need to jump to the parentElement to do the check.
    This is why I've reimplemented this optimisation inside `needMaskingText` where we are already had an `isElement` test
    
    Thanks to @Paulhejia (https://github.com/Paulhejia/rrweb/) for spotting that `Boolean(n.childNodes)` is aways true.
    eoghanmurray authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    3ef1e70 View commit details
    Browse the repository at this point in the history
  10. Assuming all jest should have been removed in rrweb-io#1033 (rrweb-io…

    …#1511)
    
    * all references to jest should have been removed in rrweb-io#1033
    * clarify that `cross-env` is used to ensure that environmental variables get applied on Windows (previous usage of cross-env was removed in rrweb-io#1033)
    eoghanmurray authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    7a50870 View commit details
    Browse the repository at this point in the history
  11. Fix async assertions in test files (rrweb-io#1510)

    * fix: await assertSnapshot in test files for async assertions
    Juice10 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    d814428 View commit details
    Browse the repository at this point in the history
  12. Fix maskInputFn is ignored during the creation of the full snapshot (r…

    …rweb-io#1386)
    
    Fix that the optional `maskInputFn` was being accidentally ignored during the creation of the full snapshot
    ababik authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    becf687 View commit details
    Browse the repository at this point in the history
  13. Improve development tooling (rrweb-io#1516)

    - Running `yarn build` in a `packages/*/` directory will trigger build of all dependencies too, and cache them if possible.
    - Fix for `yarn dev` breaking for `rrweb` package whenever changing files in `rrweb` package
    - Update typescript, turbo, vite and vite-plugin-dts
    - Require `workspaces-to-typescript-project-references` from `prepublish`
    Juice10 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    3075dca View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    fee67b5 View commit details
    Browse the repository at this point in the history
  15. feat: add new css parser - postcss (rrweb-io#1458)

    * feat: add new css parser
    
    * make selectors change
    
    * selectors and tests
    
    * media changes
    
    * remove old css references
    
    * better variable name
    
    * use postcss and port tests
    
    * fix media test
    
    * inline plugins
    
    * fix failing multiline selector
    
    * correct test result
    
    * move tests to correct file
    
    * cleanup all tests
    
    * remove unused css-tree
    
    * update bundle
    
    * cleanup dependencies
    
    * revert config files to master
    
    * remove d.ts files
    
    * update snapshot
    
    * reset rebuilt test
    
    * apply fuzzy css matching
    
    * remove extra test
    
    * Fix imports
    
    * Newer versions of nswapi break rrdom-nodejs tests.
    Example:
     FAIL  test/document-nodejs.test.ts > RRDocument for nodejs environment > RRDocument API > querySelectorAll
    TypeError: e[api] is not a function
     ❯ byTag ../../node_modules/nwsapi/src/nwsapi.js:390:37
     ❯ Array.<anonymous> ../../node_modules/nwsapi/src/nwsapi.js:327:113
     ❯ collect ../../node_modules/nwsapi/src/nwsapi.js:1578:32
     ❯ Object._querySelectorAll [as select] ../../node_modules/nwsapi/src/nwsapi.js:1533:36
     ❯ RRDocument.querySelectorAll src/document-nodejs.ts:96:24
    
    * Migrate from jest to vitest
    
    * Order of selectors has changed with postcss
    
    * Remove unused eslint
    
    ---------
    
    Co-authored-by: Justin Halsall <[email protected]>
    2 people authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    b834f12 View commit details
    Browse the repository at this point in the history
  16. fix: console assert only logs when arg 0 is falsy (rrweb-io#1530)

    * fix: console assert only logs when arg 0 is falsy
    pauldambra authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    586a9e1 View commit details
    Browse the repository at this point in the history
  17. [Feature] Include takeFullSnapshot function in rrweb (rrweb-io#1527)

    * export takeFullSnapshot function in rrweb
    arredgroup authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    1dba10a View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    c63c427 View commit details
    Browse the repository at this point in the history
  19. fix: duplicate textContent for style element cause incremental style …

    …mutation invalid (rrweb-io#1417)
    
    fix style element corner case
     - historically we have recorded duplicated css content in certain cases (demonstrated by the attached replayer test). This fix ensures that the replayer doesn't doubly add the content, which can cause problems when further mutations occur
    ---------
    Review and further tests contributed by: Eoghan Murray <[email protected]>
    YunFeng0817 authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    178f1e6 View commit details
    Browse the repository at this point in the history
  20. Added support for deprecated addRule & removeRule methods (rrweb-io#1515

    )
    
    * Added support for deprecated addRule & removeRule methods
    
    * Respect addRule default value
    okejminja authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    e8a0ecd View commit details
    Browse the repository at this point in the history
  21. fix: nested stylesheets should have absolute URLs (rrweb-io#1533)

    * Replace relative URLs with absolute URLs when stringifying stylesheets
    
    * Add test to show desired behavior for imported stylesheets from seperate directory
    
    * Rename `absoluteToStylesheet` to `absolutifyURLs` and call it once after stringifying imported stylesheet
    
    * Don't create the intermediary array of the spread operator
    
    * Formalize that `stringifyRule` should expect a sheet href
    
    * Ensure a <style> element can also import and gets it's url absolutized
    
    * Handle case where non imported stylesheet has relative urls that need to be absolutified
    
    * Clarify in test files where jpegs are expected to appear in absolutified urls
    
    * Move absolutifyURLs call for import rules out of trycatch
    
    * Add a benchmarking test for stringifyStylesheet
    
    * Avoid the duplication on how to fall back
    
    ---------
    
    Co-authored-by: Eoghan Murray <[email protected]>
    Co-authored-by: eoghanmurray <[email protected]>
    3 people authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    6676611 View commit details
    Browse the repository at this point in the history
  22. Support top-layer <dialog> recording & replay (rrweb-io#1503)

    * chore: its important to run `yarn build:all` before running `yarn dev`
    
    * feat: trigger showModal from rrdom and rrweb
    
    * feat: Add support for replaying modal and non modal dialog elements
    
    * chore: Update dev script to remove CLEAR_DIST_DIR flag
    
    * Get modal recording and replay working
    
    * DRY up dialog test and dedupe snapshot images
    
    * feat: Refactor dialog test to use updated attribute name
    
    * feat: Update dialog test to include rr_open attribute
    
    * chore: Add npm dependency [email protected]
    
    * Add more test cases for dialog
    
    * Clean up naming
    
    * Refactor dialog open code
    
    * Revert changed code that doesn't do anything
    
    * Add documentation for unimplemented type
    
    * chore: Remove unnecessary comments in dialog.test.ts
    
    * rename rr_open to rr_openMode
    
    * Replace todo with a skipped test
    
    * Add better logging for CI
    
    * Rename rr_openMode to rr_open_mode
    
    rrdom downcases all attribute names which made `rr_openMode` tricky to deal with
    
    * Remove unused images
    
    * Move after iframe append based on @YunFeng0817's comment
    rrweb-io#1503 (comment)
    
    * Remove redundant dialog handling from rrdom.
    
    rrdom already handles dialog element creation it's self
    
    * Rename variables for dialog handling in rrweb replay module
    
    * Update packages/rrdom/src/document.ts
    
    ---------
    
    Co-authored-by: Eoghan Murray <[email protected]>
    2 people authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    3ae57a6 View commit details
    Browse the repository at this point in the history
  23. Added session downloader for chrome extension (rrweb-io#1522)

    * Added session downloader for chrome extension
    
    - The session list now has a button to download sessions as .json files for use with rrweb-player
    - Improved styling for the delete and download buttons
    kirankunigiri authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    c3d79a6 View commit details
    Browse the repository at this point in the history
  24. Reverse monkey patch built in methods to support LWC (rrweb-io#1509)

    * Get around monkey patched Nodes
    
    * inlineImages: Setting of `image.crossOrigin` is not always necessary (rrweb-io#1468)
    
    Setting of the `crossorigin` attribute is not necessary for same-origin images, and causes an immediate image reload (albeit from cache) necessitating the use of a load event listener which subsequently mutates the snapshot.  This change allows us to  avoid the mutation of the snapshot for the same-origin case.
    
    * Modify inlineImages test to remove delay and show that we can inline images without mutation
    
    * Add an explicit test for when the `image.crossOrigin = 'anonymous';` method is necessary.  Uses a combination of about:blank and our test server to simulate a cross-origin context
    
    * Other test changes: there were some spurious rrweb mutations being generated by the addition of the crossorigin attribute that are now elimnated from the rrweb/__snapshots__/integration.test.ts.snap after this PR - this is good
    
    * Move `childNodes` to @rrweb/utils
    
    * Use non-monkey patched versions of the `childNodes`, `parentNode` `parentElement` `textContent` accessors
    
    * Add getRootNode and contains, and add comprehensive todo list
    
    * chore: Update turbo.json tasks for better build process
    
    * Update caniuse-lite
    
    * chore: Update eslint-plugin-compat to version 5.0.0
    
    * chore: Bump @rrweb/utils version to 2.0.0-alpha.15
    
    * delete unused yarn.lock files
    
    * Set correct @rrweb/utils version in package.json
    
    * Migrate over some accessors to reverse-monkey-patched version
    
    * Add missing functions
    
    * Fix illegal invocation error
    
    * Revert closer to what it was.
    
    This feels incorrect to me (Justin Halsall), but some of the tests break without it so I'm restoring this to be closer to its original here:
    https://github.com/rrweb-io/rrweb/blame/cfd686d488a9b88dba6b6f8880b5e4375dd8062c/packages/rrweb-snapshot/src/snapshot.ts#L1011
    
    * Reverse monkey patch all methods LWC hijacks
    
    * Make tests more stable
    
    * Safely handle rrdom nodes in hasShadowRoot
    
    * Remove duplicated test
    
    * Use variable `serverURL` in test
    
    * Use monorepo default browserlist
    
    * Fix typing issue for new typescript
    
    * Remove unused package
    
    * Remove unused code
    
    * Add prefix to reverse-monkey-patched methods to make them more explicit
    
    * Add default exports to @rrweb/utils
    
    ---------
    
    Co-authored-by: Eoghan Murray <[email protected]>
    2 people authored and jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    9e9226f View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    a054e1f View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    fc69d50 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    4e4f5b3 View commit details
    Browse the repository at this point in the history
  28. chore(rrweb): changeset fix

    jxiwang committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    64c762e View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    282e8b4 View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    cf57d6f View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    ec36208 View commit details
    Browse the repository at this point in the history
  32. Apply formatting changes

    jxiwang authored and github-actions[bot] committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    c2eefdc View commit details
    Browse the repository at this point in the history