Mattermost is the open-source collaboration platform; this study covers its webapp — a decade-old React frontend in a monorepo, built by webpack and guarded by 1,255 jest test files. It is the opposite testbed to a young starter: a huge trusted suite, dependency versions pinned by years of history, and a team-scale codebase where a broken build costs real money. That makes it the study of what a big suite buys — and of what an old tree looks like under a verdict system.
Day one
The cold scorer read the webapp install in about two minutes:
$ chainstrip score --dir webapp querying OSV: 45 advisories across 30 packages... 1683 packages — A 1571 · B 81 · C 18 · D 12 · F 1 30 with known CVEs · 10 with install scripts · 15 with native code · 93,826 files · 822.8MB as installed F marked@0.3.6 5 CVEs: 3 HIGH, 2 MODERATE surface: bin size: 14 files · 58.8KB D fast-uri@3.1.2 3 CVEs: 3 HIGH surface: network size: 34 files · 153.2KB D brace-expansion@2.1.0 3 CVEs: 3 HIGH surface: none size: 5 files · 11.4KB D brace-expansion@1.1.14 3 CVEs: 3 HIGH surface: none size: 4 files · 11.0KB D brace-expansion@1.1.15 3 CVEs: 3 HIGH surface: none size: 4 files · 11.0KB D brace-expansion@5.0.6 3 CVEs: 3 HIGH surface: none size: 13 files · 46.5KB D shell-quote@1.8.3 2 CVEs: 1 CRITICAL, 1 HIGH surface: none size: 18 files · 23.2KB D webpack-dev-server@5.2.2 4 CVEs: 4 MODERATE surface: eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin size: 28 files · 535.9KB D sharp@0.34.5 1 CVEs: 1 HIGH surface: install-script · native · child_process · dynamic-require · network · fs-write size: 33 files · 521.1KB D websocket-driver@0.7.4 2 CVEs: 1 CRITICAL, 1 MODERATE surface: network size: 18 files · 65.9KB D js-yaml@4.1.1 3 CVEs: 2 HIGH, 1 MODERATE surface: bin size: 32 files · 377.2KB D nanoid@3.3.12 2 CVEs: 2 HIGH surface: bin size: 26 files · 32.4KB D immutable@4.3.8 2 CVEs: 2 HIGH surface: none size: 8 files · 666.9KB C svgo@2.8.2 1 CVEs: 1 HIGH surface: dynamic-require · network · dynamic-import · fs-write · bin size: 80 files · 954.4KB C webpack@5.106.2 no known CVEs surface: obfuscation · eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin size: 711 files · 5.8MB C lmdb@2.8.5 no known CVEs surface: install-script · native · child_process · fs-write · bin size: 124 files · 2.3MB C @parcel/watcher@2.5.6 no known CVEs surface: install-script · native · child_process · dynamic-require size: 45 files · 129.4KB C postcss@8.5.13 2 CVEs: 1 HIGH, 1 MODERATE surface: none size: 55 files · 201.0KB C msgpackr-extract@3.0.3 no known CVEs surface: install-script · native · child_process · bin size: 7 files · 15.1KB C monaco-editor@0.52.2 no known CVEs surface: obfuscation · eval · dynamic-require · network · dynamic-import · fs-write size: 1,467 files · 94.3MB C @parcel/reporter-dev-server@2.16.4 no known CVEs surface: eval · process.binding · child_process · dynamic-require · network size: 12 files · 2.5MB C @swc/core@1.15.33 no known CVEs surface: install-script · child_process · dynamic-require · fs-write size: 13 files · 121.0KB C eslint@9.39.4 no known CVEs surface: eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin size: 426 files · 2.9MB C form-data@4.0.5 1 CVEs: 1 HIGH surface: network size: 8 files · 79.3KB C rollup@2.80.0 no known CVEs surface: eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin size: 20 files · 6.2MB C ws@8.20.1 1 CVEs: 1 HIGH surface: network size: 19 files · 145.2KB C tmp@0.2.5 1 CVEs: 1 HIGH surface: fs-write size: 4 files · 38.3KB C blessed@0.1.81 no known CVEs surface: eval · child_process · dynamic-require · network · fs-write · bin size: 79 files · 1.6MB C bootstrap@3.4.1 2 CVEs: 2 MODERATE surface: dynamic-require · fs-write size: 120 files · 2.2MB C unrs-resolver@1.11.1 no known CVEs surface: install-script · child_process · dynamic-require size: 5 files · 44.8KB C js-cookie@2.2.1 1 CVEs: 1 HIGH surface: none size: 6 files · 27.0KB B @parcel/source-map@2.1.1 no known CVEs surface: native · child_process · dynamic-require · network size: 36 files · 4.0MB B @parcel/utils@2.16.4 no known CVEs surface: eval · child_process · dynamic-require · network · fs-write size: 71 files · 3.6MB B pdfjs-dist@4.10.38 no known CVEs surface: obfuscation · eval · network · dynamic-import size: 355 files · 35.6MB B core-js@3.49.0 no known CVEs surface: install-script · network · fs-write size: 3,695 files · 1.3MB B core-js-pure@3.49.0 no known CVEs surface: install-script · network · fs-write size: 3,695 files · 1.1MB B flexsearch@0.6.32 no known CVEs surface: eval · child_process · dynamic-import · fs-write · bin size: 27 files · 498.0KB B html-minifier-terser@7.2.0 no known CVEs surface: eval · dynamic-require · network · fs-write · bin size: 12 files · 4.4MB B core-js@2.6.12 no known CVEs surface: install-script · fs-write size: 1,489 files · 2.2MB B napi-postinstall@0.3.4 no known CVEs surface: child_process · dynamic-require · network · fs-write · bin size: 24 files · 58.3KB B webpack-cli@6.0.1 no known CVEs surface: eval · dynamic-require · dynamic-import · fs-write · bin size: 16 files · 107.0KB B @mixmark-io/domino@2.2.0 no known CVEs surface: eval · dynamic-require · network · fs-write size: 1,023 files · 7.4MB B @statsig/js-client@3.33.0 no known CVEs surface: obfuscation · eval size: 31 files · 876.5KB B ajv@6.15.0 no known CVEs surface: eval · dynamic-require · network · fs-write size: 92 files · 916.2KB B file-type@16.5.4 1 CVEs: 1 MODERATE surface: eval size: 11 files · 74.9KB B marked@17.0.6 no known CVEs surface: child_process · dynamic-require · dynamic-import · fs-write · bin size: 12 files · 434.7KB B envinfo@7.21.0 no known CVEs surface: process.binding · child_process · bin size: 5 files · 163.9KB B launch-editor@2.13.2 1 CVEs: 1 MODERATE surface: child_process size: 9 files · 17.9KB B react-bootstrap@0.32.4 no known CVEs surface: install-script size: 235 files · 1.4MB B terser@5.47.1 no known CVEs surface: eval · network · fs-write · bin size: 42 files · 2.2MB B @parcel/package-manager@2.16.4 no known CVEs surface: child_process · dynamic-require · dynamic-import · fs-write size: 33 files · 266.1KB B @parcel/runtime-js@2.16.4 no known CVEs surface: eval · dynamic-require · network size: 38 files · 57.2KB B browserslist@4.20.2 no known CVEs surface: child_process · dynamic-require · fs-write · bin size: 11 files · 66.9KB B typescript@5.6.3 no known CVEs surface: child_process · network · fs-write · bin size: 121 files · 21.4MB B @napi-rs/canvas@0.1.100 no known CVEs surface: child_process · dynamic-require · network size: 10 files · 122.4KB B ajv@8.20.0 no known CVEs surface: eval · dynamic-require · dynamic-import size: 466 files · 1009.3KB B crypto-browserify@3.12.0 no known CVEs surface: obfuscation · dynamic-require size: 21 files · 52.3KB B http-proxy-middleware@2.0.9 1 CVEs: 1 MODERATE surface: network size: 31 files · 62.9KB B linkifyjs@4.3.3 no known CVEs surface: obfuscation · network size: 9 files · 253.2KB B loader-runner@4.3.2 no known CVEs surface: eval · dynamic-require · dynamic-import size: 6 files · 20.5KB B meow@13.2.0 no known CVEs surface: child_process · dynamic-require · network size: 11 files · 409.3KB B phin@2.9.3 1 CVEs: 1 MODERATE surface: network size: 4 files · 7.9KB B qs@6.15.1 1 CVEs: 1 MODERATE surface: dynamic-require size: 20 files · 305.5KB B tsconfig-paths@3.15.0 no known CVEs surface: child_process · dynamic-require · network size: 78 files · 210.8KB B @parcel/workers@2.16.4 no known CVEs surface: child_process · dynamic-require · fs-write size: 52 files · 114.9KB B es-module-lexer@2.1.0 no known CVEs surface: obfuscation · dynamic-import size: 8 files · 98.4KB B flat@5.0.2 no known CVEs surface: child_process · dynamic-require · bin size: 7 files · 26.0KB B node-addon-api@7.1.1 no known CVEs surface: child_process · dynamic-require · fs-write size: 19 files · 387.0KB B node-addon-api@6.1.0 no known CVEs surface: child_process · dynamic-require · fs-write size: 18 files · 384.5KB B node-gyp-build-optional-packages@5.1.1 no known CVEs surface: child_process · dynamic-require · bin size: 7 files · 13.6KB B node-gyp-build-optional-packages@5.2.2 no known CVEs surface: child_process · dynamic-require · bin size: 8 files · 14.5KB B resolve@1.22.12 no known CVEs surface: dynamic-require · network · fs-write · bin size: 103 files · 161.6KB B uuid@9.0.1 1 CVEs: 1 MODERATE surface: bin size: 76 files · 120.4KB B uuid@8.3.2 1 CVEs: 1 MODERATE surface: bin size: 66 files · 113.4KB B @parcel/codeframe@2.16.4 no known CVEs surface: eval · network size: 7 files · 3.3MB B debug@2.6.9 no known CVEs surface: process.binding · network size: 17 files · 50.0KB B handle-thing@2.0.1 no known CVEs surface: process.binding · network size: 6 files · 11.9KB B highlight.js@11.6.0 no known CVEs surface: eval · network size: 1,287 files · 3.7MB B highlight.js@11.11.1 no known CVEs surface: eval · network size: 1,559 files · 5.2MB B http-deceiver@1.2.7 no known CVEs surface: process.binding · network size: 6 files · 13.5KB B lz-string@1.5.0 no known CVEs surface: obfuscation · bin size: 16 files · 171.7KB B msgpackr@1.11.12 no known CVEs surface: eval · dynamic-require size: 34 files · 1.9MB B source-map-support@0.5.21 no known CVEs surface: eval · dynamic-require size: 7 files · 83.2KB B update-browserslist-db@1.2.3 no known CVEs surface: child_process · fs-write · bin size: 8 files · 14.8KB B whatwg-url@14.2.0 no known CVEs surface: eval · network size: 17 files · 96.2KB B zod@4.4.3 no known CVEs surface: eval · network size: 718 files · 4.3MB B @img/sharp-darwin-arm64@0.34.5 no known CVEs surface: native size: 4 files · 267.7KB B @jest/snapshot-utils@30.1.2 no known CVEs surface: eval · fs-write size: 12 files · 29.4KB B @lmdb/lmdb-darwin-arm64@2.8.5 no known CVEs surface: native size: 7 files · 1.7MB B @msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3 no known CVEs surface: native size: 4 files · 53.0KB B @napi-rs/canvas-darwin-arm64@0.1.100 no known CVEs surface: native size: 3 files · 25.1MB B @parcel/node-resolver-core@3.7.4 no known CVEs surface: child_process · network size: 7 files · 31.3KB B @parcel/rust@2.16.4 no known CVEs surface: child_process · network size: 9 files · 27.6KB B @parcel/rust-darwin-arm64@2.16.4 no known CVEs surface: native size: 3 files · 42.4MB B @parcel/watcher-darwin-arm64@2.5.6 no known CVEs surface: native size: 4 files · 320.2KB B @swc/core-darwin-arm64@1.15.33 no known CVEs surface: native size: 3 files · 21.4MB B @unicode/unicode-17.0.0@1.6.16 no known CVEs surface: obfuscation size: 7,668 files · 1.5MB B @unrs/resolver-binding-darwin-arm64@1.11.1 no known CVEs surface: native size: 3 files · 1.7MB B cjs-module-lexer@2.2.0 no known CVEs surface: obfuscation size: 7 files · 137.0KB B cosmiconfig@9.0.1 no known CVEs surface: eval · dynamic-import size: 31 files · 79.9KB B decimal.js@10.6.0 no known CVEs surface: obfuscation size: 6 files · 277.7KB B fb-watchman@2.0.2 no known CVEs surface: child_process · network size: 3 files · 10.8KB B fsevents@2.3.3 no known CVEs surface: native size: 6 files · 169.2KB B jest-cli@30.1.3 no known CVEs surface: process.binding · bin size: 8 files · 34.5KB B jest-haste-map@30.1.0 no known CVEs surface: child_process · dynamic-require size: 10 files · 131.8KB B jest-worker@30.1.0 no known CVEs surface: child_process · dynamic-require size: 13 files · 125.8KB B jest-worker@27.5.1 no known CVEs surface: child_process · dynamic-require size: 27 files · 80.0KB B lightningcss-darwin-arm64@1.32.0 no known CVEs surface: native size: 4 files · 8.1MB B loader-utils@2.0.4 no known CVEs surface: obfuscation size: 17 files · 35.5KB B lodash@4.18.1 no known CVEs surface: process.binding · fs-write size: 1,051 files · 1.3MB B lodash-es@4.18.1 no known CVEs surface: process.binding · fs-write size: 647 files · 619.8KB B moment-timezone@0.5.38 no known CVEs surface: obfuscation size: 23 files · 3.0MB A concurrently@9.0.1 no known CVEs surface: child_process · bin size: 72 files · 392.1KB A detect-libc@1.0.3 no known CVEs surface: child_process · bin size: 6 files · 16.8KB A html-minifier-terser@6.1.0 no known CVEs surface: dynamic-require · fs-write · bin size: 9 files · 97.2KB A katex@0.16.21 no known CVEs surface: network · fs-write · bin size: 206 files · 3.8MB A material-colors@1.2.6 no known CVEs surface: child_process · fs-write size: 17 files · 111.4KB A patch-package@8.0.1 no known CVEs surface: dynamic-require · fs-write · bin size: 35 files · 403.3KB A resolve@2.0.0-next.7 no known CVEs surface: dynamic-require · fs-write · bin size: 119 files · 273.5KB A rollup-plugin-ts@2.0.7 no known CVEs surface: dynamic-require · dynamic-import · fs-write size: 11 files · 2.8MB A selfsigned@2.4.1 no known CVEs surface: child_process · fs-write size: 7 files · 24.8KB A tree-kill@1.2.2 no known CVEs surface: child_process · bin size: 6 files · 7.6KB A @formatjs/ts-transformer@4.4.13 no known CVEs surface: eval size: 9 files · 144.3KB A @formatjs/ts-transformer@3.13.1 no known CVEs surface: eval size: 21 files · 33.3KB A @jsonjoy.com/codegen@1.0.0 no known CVEs surface: eval size: 30 files · 32.7KB A @jsonjoy.com/codegen@17.67.0 no known CVEs surface: eval size: 30 files · 42.2KB A @parcel/transformer-postcss@2.16.4 no known CVEs surface: dynamic-require · network size: 10 files · 36.4KB A @parcel/transformer-react-refresh-wrap@2.16.4 no known CVEs surface: dynamic-require · network size: 7 files · 19.2KB A @sinonjs/commons@3.0.1 no known CVEs surface: eval size: 54 files · 37.1KB A @typescript-eslint/eslint-plugin@8.61.0 no known CVEs surface: eval size: 462 files · 2.0MB A axe-core@4.12.1 no known CVEs surface: eval size: 29 files · 2.9MB A builtin-modules@3.3.0 no known CVEs surface: process.binding size: 8 files · 4.4KB A depd@2.0.0 no known CVEs surface: eval size: 6 files · 26.5KB A depd@1.1.2 no known CVEs surface: eval size: 9 files · 29.8KB A eslint-scope@8.4.0 no known CVEs surface: eval size: 14 files · 155.9KB A eslint-scope@5.1.1 no known CVEs surface: eval size: 12 files · 76.5KB A express@4.22.2 no known CVEs surface: dynamic-require · network size: 16 files · 217.3KB A glob-to-regex.js@1.2.0 no known CVEs surface: eval size: 4 files · 15.6KB A globalthis@1.0.4 no known CVEs surface: eval size: 17 files · 23.1KB A is-core-module@2.16.2 no known CVEs surface: dynamic-require · network size: 9 files · 37.7KB A istanbul-lib-instrument@6.0.3 no known CVEs surface: eval size: 10 files · 70.3KB A lodash.merge@4.6.2 no known CVEs surface: process.binding size: 4 files · 52.9KB A node-forge@1.4.0 no known CVEs surface: eval size: 59 files · 1.6MB A ordered-binary@1.6.1 no known CVEs surface: eval size: 14 files · 59.0KB A safer-buffer@2.1.2 no known CVEs surface: process.binding size: 7 files · 41.3KB A source-map-js@1.2.1 no known CVEs surface: eval size: 18 files · 136.6KB A source-map-support@0.5.13 no known CVEs surface: eval size: 6 files · 80.6KB A stacktrace-gps@3.1.2 no known CVEs surface: eval size: 11 files · 161.6KB A stacktrace-js@2.0.2 no known CVEs surface: eval size: 12 files · 1.4MB A tapable@2.3.3 no known CVEs surface: eval size: 20 files · 71.7KB A terser-webpack-plugin@5.5.0 no known CVEs surface: eval size: 12 files · 108.0KB A tmpl@1.0.5 no known CVEs surface: eval size: 4 files · 2.7KB A @atlaskit/feature-gate-js-client@5.5.11 no known CVEs surface: network · fs-write size: 100 files · 502.4KB A @atlaskit/tokens@11.4.3 no known CVEs surface: dynamic-require · dynamic-import size: 661 files · 13.0MB A @istanbuljs/load-nyc-config@1.1.0 no known CVEs surface: dynamic-require · dynamic-import size: 6 files · 10.6KB A @jest/core@30.1.3 no known CVEs surface: dynamic-require · fs-write size: 7 files · 145.6KB A @jsonjoy.com/json-pack@1.21.0 no known CVEs surface: network · fs-write size: 501 files · 1.7MB A @jsonjoy.com/json-pack@17.67.0 no known CVEs surface: network · fs-write size: 501 files · 1.9MB A @parcel/core@2.16.4 no known CVEs surface: dynamic-require · fs-write size: 192 files · 1.3MB A @parcel/fs@2.16.4 no known CVEs surface: dynamic-require · fs-write size: 15 files · 426.4KB A @parcel/packager-js@2.16.4 no known CVEs surface: dynamic-require · dynamic-import size: 21 files · 179.4KB A @parcel/types-internal@2.16.4 no known CVEs surface: dynamic-require · fs-write size: 26 files · 150.2KB A babel-loader@9.1.2 no known CVEs surface: dynamic-require · fs-write size: 10 files · 37.2KB A babel-plugin-istanbul@7.0.1 no known CVEs surface: child_process size: 6 files · 26.2KB A browserslist@4.28.2 no known CVEs surface: dynamic-require · bin size: 11 files · 67.4KB A commander@10.0.1 no known CVEs surface: child_process size: 13 files · 170.2KB A commander@12.1.0 no known CVEs surface: child_process size: 14 files · 182.0KB A commander@2.20.3 no known CVEs surface: child_process size: 6 files · 61.0KB A commander@7.2.0 no known CVEs surface: child_process size: 8 files · 141.3KB A commander@8.3.0 no known CVEs surface: child_process size: 13 files · 147.7KB A cross-spawn@7.0.6 no known CVEs surface: child_process size: 9 files · 15.7KB A css-loader@6.7.3 no known CVEs surface: dynamic-require · dynamic-import size: 17 files · 125.9KB A default-browser@5.5.0 no known CVEs surface: child_process size: 6 files · 6.7KB A default-browser-id@5.0.1 no known CVEs surface: child_process size: 4 files · 3.1KB A detect-libc@2.1.2 no known CVEs surface: child_process size: 8 files · 25.8KB A execa@5.1.1 no known CVEs surface: child_process size: 11 files · 56.2KB A exit-x@0.2.2 no known CVEs surface: child_process size: 21 files · 59.3KB A foreground-child@3.3.1 no known CVEs surface: child_process size: 37 files · 66.7KB A get-css-data@2.1.1 no known CVEs surface: child_process size: 36 files · 231.5KB A image-minimizer-webpack-plugin@5.0.0 no known CVEs surface: dynamic-require · dynamic-import size: 14 files · 149.9KB A import-local@3.2.0 no known CVEs surface: dynamic-require · bin size: 6 files · 4.6KB A inline-style-prefixer@7.0.1 no known CVEs surface: dynamic-require · fs-write size: 59 files · 74.3KB A istanbul-reports@3.2.0 no known CVEs surface: dynamic-require · fs-write size: 41 files · 287.8KB A jest-config@30.1.3 no known CVEs surface: dynamic-require · dynamic-import size: 7 files · 116.8KB A jest-snapshot@30.1.2 no known CVEs surface: dynamic-require · fs-write size: 9 files · 102.8KB A jest-util@30.0.5 no known CVEs surface: dynamic-require · dynamic-import size: 8 files · 62.7KB A jest-util@30.4.1 no known CVEs surface: dynamic-require · dynamic-import size: 6 files · 55.4KB A jimp@0.16.1 no known CVEs surface: network · fs-write size: 53 files · 2.9MB A multicast-dns@7.2.5 no known CVEs surface: network · bin size: 9 files · 21.5KB A nock@13.2.8 no known CVEs surface: network · fs-write size: 16 files · 173.5KB A open@7.4.2 no known CVEs surface: child_process size: 6 files · 40.9KB A open@10.2.0 no known CVEs surface: child_process size: 6 files · 54.3KB A parcel@2.16.4 no known CVEs surface: network · bin size: 8 files · 43.0KB A run-applescript@7.1.0 no known CVEs surface: child_process size: 5 files · 5.2KB A term-size@2.2.1 no known CVEs surface: child_process size: 9 files · 62.9KB A tldts@6.1.86 no known CVEs surface: network · bin size: 30 files · 2.8MB A webpack-dev-middleware@7.4.5 no known CVEs surface: network · fs-write size: 30 files · 139.5KB A zen-observable@0.10.0 no known CVEs surface: child_process size: 38 files · 65.9KB A zen-observable@0.2.1 no known CVEs surface: child_process size: 21 files · 55.5KB A @babel/core@7.28.5 1 CVEs: 1 LOW surface: dynamic-import size: 119 files · 780.6KB A @babel/parser@7.29.3 no known CVEs surface: dynamic-import · bin size: 8 files · 1.9MB A json5@2.2.3 no known CVEs surface: fs-write · bin size: 20 files · 229.7KB A json5@1.0.2 no known CVEs surface: fs-write · bin size: 12 files · 76.5KB A mime@1.6.0 no known CVEs surface: fs-write · bin size: 10 files · 50.5KB A stylelint@16.10.0 no known CVEs surface: dynamic-import · bin size: 621 files · 1.4MB A yaml@2.8.4 no known CVEs surface: dynamic-import · bin size: 233 files · 669.1KB A @asamuzakjp/css-color@3.2.0 no known CVEs surface: network size: 58 files · 2.0MB A @babel/helper-define-polyfill-provider@0.6.8 no known CVEs surface: dynamic-require size: 20 files · 279.4KB A @babel/plugin-transform-modules-commonjs@7.28.6 no known CVEs surface: dynamic-require size: 11 files · 40.6KB A @babel/plugin-transform-typescript@7.28.6 no known CVEs surface: dynamic-require size: 13 files · 140.2KB A @eslint/eslintrc@3.3.5 no known CVEs surface: dynamic-require size: 31 files · 678.4KB A @giphy/js-analytics@5.0.0 no known CVEs surface: network size: 13 files · 19.9KB A @giphy/js-fetch-api@5.7.0 no known CVEs surface: network size: 17 files · 73.8KB A @parcel/error-overlay@2.16.4 no known CVEs surface: network size: 30 files · 344.3KB A @parcel/reporter-cli@2.16.4 no known CVEs surface: network size: 12 files · 758.3KB A @parcel/runtime-browser-hmr@2.16.4 no known CVEs surface: network size: 7 files · 46.1KB A @parcel/transformer-js@2.16.4 no known CVEs surface: dynamic-require size: 7 files · 82.2KB A @parcel/transformer-posthtml@2.16.4 no known CVEs surface: dynamic-require size: 6 files · 9.5KB A @rollup/plugin-commonjs@21.1.0 no known CVEs surface: dynamic-require size: 9 files · 395.5KB A @tiptap/extension-link@3.20.0 no known CVEs surface: network size: 15 files · 131.8KB A @types/ws@8.18.1 no known CVEs surface: network size: 5 files · 41.4KB A @typescript-eslint/scope-manager@8.61.0 no known CVEs surface: network size: 359 files · 404.2KB A @webpack-cli/serve@3.0.1 no known CVEs surface: dynamic-require size: 5 files · 11.5KB A agent-base@7.1.4 no known CVEs surface: network size: 11 files · 23.4KB A centra@2.7.0 no known CVEs surface: network size: 6 files · 10.1KB A clean-css@5.3.3 no known CVEs surface: network size: 125 files · 481.2KB A domutils@3.2.2 no known CVEs surface: network size: 68 files · 162.8KB A domutils@2.8.0 no known CVEs surface: network size: 27 files · 55.3KB A eslint-import-resolver-webpack@0.13.11 no known CVEs surface: dynamic-require size: 5 files · 20.6KB A eslint-module-utils@2.13.0 no known CVEs surface: dynamic-require size: 34 files · 54.4KB A eslint-plugin-jsx-a11y@6.10.2 no known CVEs surface: dynamic-require size: 229 files · 735.2KB A eslint-plugin-react@7.37.5 no known CVEs surface: dynamic-require size: 406 files · 915.6KB A fast-json-stable-stringify@2.1.0 no known CVEs surface: dynamic-require size: 18 files · 16.6KB A fastest-stable-stringify@2.0.2 no known CVEs surface: dynamic-require size: 16 files · 15.3KB A faye-websocket@0.11.4 no known CVEs surface: network size: 10 files · 30.1KB A find-root@1.1.0 no known CVEs surface: dynamic-require size: 7 files · 5.1KB A follow-redirects@1.16.0 no known CVEs surface: network size: 7 files · 29.9KB A get-port@4.2.0 no known CVEs surface: network size: 5 files · 4.4KB A hpack.js@2.1.6 no known CVEs surface: network size: 22 files · 84.8KB A html-loader@5.1.0 no known CVEs surface: dynamic-require size: 13 files · 75.0KB A htmlparser2@6.1.0 no known CVEs surface: network size: 24 files · 103.5KB A http-proxy@1.18.1 no known CVEs surface: network size: 16 files · 226.4KB A http-proxy-agent@7.0.2 no known CVEs surface: network size: 7 files · 16.9KB A import-fresh@3.3.1 no known CVEs surface: dynamic-require size: 5 files · 4.6KB A is-network-error@1.3.2 no known CVEs surface: network size: 5 files · 5.1KB A isarray@0.0.1 no known CVEs surface: dynamic-require size: 5 files · 6.7KB A isbot@3.4.5 no known CVEs surface: network size: 9 files · 55.2KB A jest-pnp-resolver@1.2.3 no known CVEs surface: dynamic-require size: 6 files · 5.5KB A jest-resolve@30.1.3 no known CVEs surface: dynamic-require size: 6 files · 67.1KB A jest-runner@30.1.3 no known CVEs surface: dynamic-require size: 9 files · 57.8KB A jest-runtime@30.1.3 no known CVEs surface: dynamic-require size: 6 files · 89.9KB A jsx-ast-utils@3.3.5 no known CVEs surface: dynamic-require size: 104 files · 230.1KB A keycode@2.2.1 no known CVEs surface: dynamic-require size: 13 files · 114.9KB A keyv@4.5.4 no known CVEs surface: dynamic-require size: 4 files · 27.1KB A lightningcss@1.32.0 no known CVEs surface: dynamic-require size: 14 files · 498.5KB A load-bmfont@1.4.2 no known CVEs surface: network size: 8 files · 10.3KB A lru-cache@10.4.3 no known CVEs surface: network size: 17 files · 785.5KB A methods@1.1.2 no known CVEs surface: network size: 5 files · 5.2KB A mini-css-extract-plugin@2.7.5 no known CVEs surface: dynamic-require size: 15 files · 110.1KB A monaco-editor-webpack-plugin@7.1.0 no known CVEs surface: dynamic-require size: 12 files · 23.4KB A node-fetch@2.7.0 no known CVEs surface: network size: 7 files · 158.5KB A on-headers@1.1.0 no known CVEs surface: network size: 5 files · 8.6KB A prop-types@15.8.1 no known CVEs surface: dynamic-require size: 12 files · 92.3KB A rechoir@0.8.0 no known CVEs surface: dynamic-require size: 8 files · 8.4KB A regexpu-core@6.4.0 no known CVEs surface: dynamic-require size: 10 files · 134.7KB A require-directory@2.1.1 no known CVEs surface: dynamic-require size: 7 files · 11.8KB A requires-port@1.0.0 no known CVEs surface: network size: 7 files · 8.4KB A retry@0.13.1 no known CVEs surface: network size: 8 files · 18.4KB A rollup-plugin-scss@4.0.0 no known CVEs surface: network size: 6 files · 32.5KB A rxjs@7.8.2 no known CVEs surface: network size: 2,277 files · 4.3MB A sass-loader@16.0.2 no known CVEs surface: dynamic-require size: 7 files · 59.9KB A select-hose@2.0.0 no known CVEs surface: network size: 9 files · 15.0KB A sockjs@0.3.24 no known CVEs surface: network size: 17 files · 80.8KB A spdy@4.0.2 no known CVEs surface: network size: 13 files · 56.3KB A spdy-transport@3.0.0 no known CVEs surface: network size: 26 files · 133.1KB A style-loader@4.0.0 no known CVEs surface: dynamic-require size: 19 files · 57.5KB A stylelint-config-idiomatic-order@10.0.0 no known CVEs surface: dynamic-require size: 9 files · 381.0KB A tldts-core@6.1.86 no known CVEs surface: network size: 71 files · 217.5KB A tough-cookie@5.1.2 no known CVEs surface: network size: 41 files · 222.4KB A uri-js@4.4.1 no known CVEs surface: network size: 46 files · 458.9KB A websocket-extensions@0.1.4 no known CVEs surface: network size: 12 files · 53.7KB A whatwg-url@5.0.0 no known CVEs surface: network size: 8 files · 48.7KB A yargs@17.7.2 no known CVEs surface: dynamic-require size: 62 files · 285.6KB A yargs-parser@21.1.1 no known CVEs surface: dynamic-require size: 11 files · 125.5KB A @adobe/css-tools@4.4.4 no known CVEs surface: dynamic-import size: 16 files · 142.7KB A @formatjs/cli@6.7.4 no known CVEs surface: bin size: 4 files · 10.1MB A @humanfs/node@0.16.8 no known CVEs surface: fs-write size: 8 files · 43.4KB A @humanwhocodes/module-importer@1.0.1 no known CVEs surface: dynamic-import size: 10 files · 20.7KB A @icons/material@0.2.4 no known CVEs surface: fs-write size: 4,516 files · 6.0MB A @jest/test-sequencer@30.1.3 no known CVEs surface: fs-write size: 6 files · 16.2KB A @jest/transform@30.1.2 no known CVEs surface: fs-write size: 6 files · 59.1KB A @jimp/core@0.16.13 no known CVEs surface: fs-write size: 28 files · 215.1KB A @jsonjoy.com/fs-core@4.57.2 no known CVEs surface: fs-write size: 39 files · 132.3KB A @jsonjoy.com/fs-fsa@4.57.2 no known CVEs surface: fs-write size: 36 files · 89.9KB A @jsonjoy.com/fs-node@4.57.2 no known CVEs surface: fs-write size: 54 files · 281.6KB A @jsonjoy.com/fs-node-to-fsa@4.57.2 no known CVEs surface: fs-write size: 30 files · 75.5KB A @jsonjoy.com/fs-snapshot@4.57.2 no known CVEs surface: fs-write size: 27 files · 33.5KB A @parcel/cache@2.16.4 no known CVEs surface: fs-write size: 16 files · 24.9KB A @parcel/profiler@2.16.4 no known CVEs surface: fs-write size: 19 files · 23.5KB A @parcel/reporter-tracer@2.16.4 no known CVEs surface: fs-write size: 4 files · 8.4KB A @parcel/ts-utils@2.16.4 no known CVEs surface: fs-write size: 14 files · 20.5KB A @rollup/plugin-typescript@11.1.6 no known CVEs surface: fs-write size: 7 files · 92.9KB A @stylistic/stylelint-plugin@3.1.2 no known CVEs surface: dynamic-import size: 143 files · 312.2KB A @swc/helpers@0.5.21 no known CVEs surface: fs-write size: 438 files · 275.7KB A @typescript-eslint/typescript-estree@8.61.0 no known CVEs surface: fs-write size: 89 files · 364.5KB A @yarnpkg/lockfile@1.1.0 no known CVEs surface: fs-write size: 3 files · 273.2KB A acorn@8.16.0 no known CVEs surface: bin size: 10 files · 545.5KB A ansi-html-community@0.0.8 no known CVEs surface: bin size: 5 files · 19.6KB A argparse@2.0.1 no known CVEs surface: fs-write size: 7 files · 167.5KB A baseline-browser-mapping@2.10.29 no known CVEs surface: bin size: 7 files · 279.4KB A bmp-js@0.1.0 no known CVEs surface: fs-write size: 35 files · 630.6KB A body-parser@1.20.5 1 CVEs: 1 LOW surface: none size: 10 files · 60.1KB A cross-env@7.0.3 no known CVEs surface: bin size: 10 files · 28.4KB A cssesc@3.0.0 no known CVEs surface: bin size: 6 files · 17.1KB A elliptic@6.6.1 1 CVEs: 1 LOW surface: none size: 17 files · 117.3KB A eslint-plugin-import@2.32.0 no known CVEs surface: dynamic-import size: 132 files · 1.4MB A exif-parser@0.1.12 no known CVEs surface: fs-write size: 25 files · 379.7KB A fastest-levenshtein@1.0.16 no known CVEs surface: fs-write size: 14 files · 20.8KB A flat-cache@4.0.1 no known CVEs surface: fs-write size: 7 files · 28.6KB A flat-cache@5.0.0 no known CVEs surface: fs-write size: 6 files · 12.5KB A fs-extra@10.1.0 no known CVEs surface: fs-write size: 31 files · 61.8KB A gifwrap@0.9.4 no known CVEs surface: fs-write size: 64 files · 6.0MB A glob@10.5.0 no known CVEs surface: bin size: 65 files · 471.1KB A graceful-fs@4.2.11 no known CVEs surface: fs-write size: 7 files · 31.8KB A he@1.2.0 no known CVEs surface: bin size: 6 files · 121.2KB A is-docker@2.2.1 no known CVEs surface: bin size: 6 files · 2.9KB A is-docker@3.0.0 no known CVEs surface: bin size: 6 files · 3.1KB A is-inside-container@1.0.0 no known CVEs surface: bin size: 6 files · 3.4KB A isexe@2.0.0 no known CVEs surface: fs-write size: 8 files · 10.7KB A istanbul-lib-report@3.0.1 no known CVEs surface: fs-write size: 13 files · 36.8KB A jest@30.1.3 no known CVEs surface: bin size: 8 files · 6.2KB A jsesc@3.1.0 no known CVEs surface: bin size: 6 files · 31.5KB A jsonfile@6.2.1 no known CVEs surface: fs-write size: 5 files · 10.7KB A loose-envify@1.4.0 no known CVEs surface: bin size: 8 files · 5.7KB A memfs@4.57.2 no known CVEs surface: fs-write size: 21 files · 28.8KB A memory-fs@0.2.0 no known CVEs surface: fs-write size: 9 files · 24.2KB A miller-rabin@4.0.1 no known CVEs surface: bin size: 8 files · 6.7KB A mime@2.4.6 no known CVEs surface: bin size: 10 files · 56.2KB A mkdirp@0.5.6 no known CVEs surface: bin size: 6 files · 7.5KB A node-localstorage@1.3.1 no known CVEs surface: fs-write size: 8 files · 21.1KB A omggif@1.0.10 no known CVEs surface: fs-write size: 5 files · 37.6KB A pixelmatch@4.0.2 no known CVEs surface: bin size: 22 files · 939.0KB A postcss-modules-values@4.0.0 no known CVEs surface: dynamic-import size: 5 files · 9.4KB A regjsparser@0.13.1 no known CVEs surface: bin size: 6 files · 71.9KB A sass@1.80.5 no known CVEs surface: bin size: 36 files · 5.4MB A semver@7.6.3 no known CVEs surface: bin size: 52 files · 93.6KB A semver@7.8.0 no known CVEs surface: bin size: 53 files · 97.7KB A semver@6.3.1 no known CVEs surface: bin size: 6 files · 66.7KB A semver@5.7.2 no known CVEs surface: bin size: 6 files · 61.8KB A semver@7.8.4 no known CVEs surface: bin size: 53 files · 98.4KB A sha.js@2.4.12 no known CVEs surface: bin size: 17 files · 64.5KB A strtok3@6.3.0 no known CVEs surface: fs-write size: 19 files · 51.0KB A styled-components@5.3.7 no known CVEs surface: fs-write size: 96 files · 2.9MB A synckit@0.11.12 no known CVEs surface: fs-write size: 20 files · 95.1KB A typescript-eslint-language-service@5.0.5 no known CVEs surface: fs-write size: 30 files · 52.3KB A ua-parser-js@1.0.41 no known CVEs surface: bin size: 8 files · 121.5KB A which@2.0.2 no known CVEs surface: bin size: 6 files · 9.7KB A which@1.3.1 no known CVEs surface: bin size: 6 files · 9.2KB A write-file-atomic@5.0.1 no known CVEs surface: fs-write size: 4 files · 11.9KB A write-file-atomic@1.3.4 no known CVEs surface: fs-write size: 4 files · 7.0KB A y18n@5.0.8 no known CVEs surface: fs-write size: 9 files · 22.9KB A @atlaskit/atlassian-context@0.8.0 no known CVEs surface: none size: 69 files · 130.7KB A @atlaskit/ds-lib@6.0.0 no known CVEs surface: none size: 135 files · 111.2KB A @atlaskit/platform-feature-flags@1.1.3 no known CVEs surface: none size: 18 files · 25.8KB A @atlaskit/pragmatic-drag-and-drop@1.7.7 no known CVEs surface: none size: 399 files · 472.9KB A @atlaskit/pragmatic-drag-and-drop-hitbox@1.1.0 no known CVEs surface: none size: 54 files · 378.5KB A @atlaskit/pragmatic-drag-and-drop-react-drop-indicator@3.2.12 no known CVEs surface: none size: 77 files · 91.7KB A @babel/code-frame@7.29.0 no known CVEs surface: none size: 5 files · 33.8KB A @babel/compat-data@7.29.3 no known CVEs surface: none size: 15 files · 66.6KB A @babel/generator@7.29.1 no known CVEs surface: none size: 45 files · 524.4KB A @babel/helper-annotate-as-pure@7.27.3 no known CVEs surface: none size: 5 files · 3.9KB A @babel/helper-compilation-targets@7.28.6 no known CVEs surface: none size: 17 files · 52.5KB A @babel/helper-create-class-features-plugin@7.29.3 no known CVEs surface: none size: 17 files · 430.9KB A @babel/helper-create-regexp-features-plugin@7.28.5 no known CVEs surface: none size: 9 files · 26.2KB A @babel/helper-globals@7.28.0 no known CVEs surface: none size: 6 files · 22.5KB A @babel/helper-member-expression-to-functions@7.28.5 no known CVEs surface: none size: 5 files · 53.6KB A @babel/helper-module-imports@7.28.6 no known CVEs surface: none size: 11 files · 62.2KB A @babel/helper-module-transforms@7.28.6 no known CVEs surface: none size: 17 files · 157.9KB A @babel/helper-optimise-call-expression@7.27.1 no known CVEs surface: none size: 5 files · 6.5KB A @babel/helper-plugin-utils@7.28.6 no known CVEs surface: none size: 5 files · 11.5KB A @babel/helper-remap-async-to-generator@7.27.1 no known CVEs surface: none size: 5 files · 9.6KB A @babel/helper-replace-supers@7.28.6 no known CVEs surface: none size: 5 files · 42.3KB A @babel/helper-skip-transparent-expression-wrappers@7.27.1 no known CVEs surface: none size: 5 files · 5.9KB A @babel/helper-string-parser@7.27.1 no known CVEs surface: none size: 5 files · 31.1KB A @babel/helper-validator-identifier@7.28.5 no known CVEs surface: none size: 9 files · 47.7KB A @babel/helper-validator-option@7.27.1 no known CVEs surface: none size: 9 files · 11.5KB A @babel/helper-wrap-function@7.28.6 no known CVEs surface: none size: 5 files · 18.4KB A @babel/helpers@7.29.2 no known CVEs surface: none size: 251 files · 856.7KB A @babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5 no known CVEs surface: none size: 5 files · 12.4KB A @babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1 no known CVEs surface: none size: 5 files · 10.6KB A @babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1 no known CVEs surface: none size: 5 files · 7.5KB A @babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1 no known CVEs surface: none size: 5 files · 10.4KB A @babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.6 no known CVEs surface: none size: 5 files · 25.2KB A @babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2 no known CVEs surface: none size: 5 files · 16.0KB A @babel/plugin-syntax-async-generators@7.8.4 no known CVEs surface: none size: 4 files · 2.5KB A @babel/plugin-syntax-bigint@7.8.3 no known CVEs surface: none size: 4 files · 2.4KB A @babel/plugin-syntax-class-properties@7.12.13 no known CVEs surface: none size: 4 files · 2.6KB A @babel/plugin-syntax-class-static-block@7.14.5 no known CVEs surface: none size: 4 files · 2.7KB A @babel/plugin-syntax-import-assertions@7.28.6 no known CVEs surface: none size: 5 files · 5.6KB A @babel/plugin-syntax-import-attributes@7.28.6 no known CVEs surface: none size: 5 files · 6.2KB A @babel/plugin-syntax-import-meta@7.10.4 no known CVEs surface: none size: 4 files · 2.5KB A @babel/plugin-syntax-json-strings@7.8.3 no known CVEs surface: none size: 4 files · 2.5KB A @babel/plugin-syntax-jsx@7.28.6 no known CVEs surface: none size: 5 files · 4.1KB A @babel/plugin-syntax-logical-assignment-operators@7.10.4 no known CVEs surface: none size: 4 files · 2.7KB A @babel/plugin-syntax-nullish-coalescing-operator@7.8.3 no known CVEs surface: none size: 4 files · 2.6KB A @babel/plugin-syntax-numeric-separator@7.10.4 no known CVEs surface: none size: 4 files · 2.7KB A @babel/plugin-syntax-object-rest-spread@7.8.3 no known CVEs surface: none size: 4 files · 2.5KB A @babel/plugin-syntax-optional-catch-binding@7.8.3 no known CVEs surface: none size: 4 files · 2.5KB A @babel/plugin-syntax-optional-chaining@7.8.3 no known CVEs surface: none size: 4 files · 2.5KB A @babel/plugin-syntax-private-property-in-object@7.14.5 no known CVEs surface: none size: 4 files · 2.8KB A @babel/plugin-syntax-top-level-await@7.14.5 no known CVEs surface: none size: 4 files · 2.7KB A @babel/plugin-syntax-typescript@7.28.6 no known CVEs surface: none size: 5 files · 6.8KB A @babel/plugin-syntax-unicode-sets-regex@7.18.6 no known CVEs surface: none size: 4 files · 3.3KB A @babel/plugin-transform-arrow-functions@7.27.1 no known CVEs surface: none size: 5 files · 5.4KB A @babel/plugin-transform-async-generator-functions@7.29.0 no known CVEs surface: none size: 7 files · 19.9KB A @babel/plugin-transform-async-to-generator@7.28.6 no known CVEs surface: none size: 5 files · 7.9KB A @babel/plugin-transform-block-scoped-functions@7.27.1 no known CVEs surface: none size: 5 files · 7.0KB A @babel/plugin-transform-block-scoping@7.28.6 no known CVEs surface: none size: 11 files · 87.0KB A @babel/plugin-transform-class-properties@7.28.6 no known CVEs surface: none size: 5 files · 4.9KB A @babel/plugin-transform-class-static-block@7.28.6 no known CVEs surface: none size: 5 files · 24.8KB A @babel/plugin-transform-classes@7.28.6 no known CVEs surface: none size: 9 files · 89.1KB A @babel/plugin-transform-computed-properties@7.28.6 no known CVEs surface: none size: 5 files · 22.1KB A @babel/plugin-transform-destructuring@7.28.5 no known CVEs surface: none size: 5 files · 83.8KB A @babel/plugin-transform-dotall-regex@7.28.6 no known CVEs surface: none size: 5 files · 4.1KB A @babel/plugin-transform-duplicate-keys@7.27.1 no known CVEs surface: none size: 5 files · 8.9KB A @babel/plugin-transform-duplicate-named-capturing-groups-regex@7.29.0 no known CVEs surface: none size: 5 files · 5.2KB A @babel/plugin-transform-dynamic-import@7.27.1 no known CVEs surface: none size: 5 files · 6.0KB A @babel/plugin-transform-explicit-resource-management@7.28.6 no known CVEs surface: none size: 5 files · 26.0KB A @babel/plugin-transform-exponentiation-operator@7.28.6 no known CVEs surface: none size: 5 files · 11.3KB A @babel/plugin-transform-export-namespace-from@7.27.1 no known CVEs surface: none size: 5 files · 7.8KB A @babel/plugin-transform-for-of@7.27.1 no known CVEs surface: none size: 7 files · 43.8KB A @babel/plugin-transform-function-name@7.27.1 no known CVEs surface: none size: 5 files · 6.9KB A @babel/plugin-transform-json-strings@7.28.6 no known CVEs surface: none size: 5 files · 5.6KB A @babel/plugin-transform-literals@7.27.1 no known CVEs surface: none size: 5 files · 4.5KB A @babel/plugin-transform-logical-assignment-operators@7.28.6 no known CVEs surface: none size: 5 files · 8.3KB A @babel/plugin-transform-member-expression-literals@7.27.1 no known CVEs surface: none size: 5 files · 4.8KB A @babel/plugin-transform-modules-amd@7.27.1 no known CVEs surface: none size: 5 files · 20.4KB A @babel/plugin-transform-modules-systemjs@7.29.4 no known CVEs surface: none size: 5 files · 65.9KB A @babel/plugin-transform-modules-umd@7.27.1 no known CVEs surface: none size: 5 files · 25.0KB A @babel/plugin-transform-named-capturing-groups-regex@7.29.0 no known CVEs surface: none size: 5 files · 4.7KB A @babel/plugin-transform-new-target@7.27.1 no known CVEs surface: none size: 5 files · 10.0KB A @babel/plugin-transform-nullish-coalescing-operator@7.28.6 no known CVEs surface: none size: 5 files · 10.2KB A @babel/plugin-transform-numeric-separator@7.28.6 no known CVEs surface: none size: 5 files · 5.2KB A @babel/plugin-transform-object-rest-spread@7.28.6 no known CVEs surface: none size: 5 files · 88.4KB A @babel/plugin-transform-object-super@7.27.1 no known CVEs surface: none size: 5 files · 9.0KB A @babel/plugin-transform-optional-catch-binding@7.28.6 no known CVEs surface: none size: 5 files · 4.6KB A @babel/plugin-transform-optional-chaining@7.28.6 no known CVEs surface: none size: 5 files · 36.9KB A @babel/plugin-transform-parameters@7.27.7 no known CVEs surface: none size: 11 files · 63.6KB A @babel/plugin-transform-private-methods@7.28.6 no known CVEs surface: none size: 5 files · 4.8KB A @babel/plugin-transform-private-property-in-object@7.28.6 no known CVEs surface: none size: 5 files · 19.4KB A @babel/plugin-transform-property-literals@7.27.1 no known CVEs surface: none size: 5 files · 4.6KB A @babel/plugin-transform-react-display-name@7.28.0 no known CVEs surface: none size: 5 files · 12.2KB A @babel/plugin-transform-react-jsx@7.28.6 no known CVEs surface: none size: 9 files · 81.3KB A @babel/plugin-transform-react-jsx-development@7.27.1 no known CVEs surface: none size: 5 files · 3.3KB A @babel/plugin-transform-react-pure-annotations@7.27.1 no known CVEs surface: none size: 5 files · 8.1KB A @babel/plugin-transform-regenerator@7.29.0 no known CVEs surface: none size: 19 files · 186.6KB A @babel/plugin-transform-regexp-modifiers@7.28.6 no known CVEs surface: none size: 5 files · 4.1KB A @babel/plugin-transform-reserved-words@7.27.1 no known CVEs surface: none size: 5 files · 4.1KB A @babel/plugin-transform-runtime@7.29.0 no known CVEs surface: none size: 15 files · 36.6KB A @babel/plugin-transform-shorthand-properties@7.27.1 no known CVEs surface: none size: 5 files · 6.9KB A @babel/plugin-transform-spread@7.28.6 no known CVEs surface: none size: 5 files · 22.8KB A @babel/plugin-transform-sticky-regex@7.27.1 no known CVEs surface: none size: 5 files · 4.5KB A @babel/plugin-transform-template-literals@7.27.1 no known CVEs surface: none size: 5 files · 15.5KB A @babel/plugin-transform-typeof-symbol@7.27.1 no known CVEs surface: none size: 5 files · 10.3KB A @babel/plugin-transform-unicode-escapes@7.27.1 no known CVEs surface: none size: 5 files · 13.6KB A @babel/plugin-transform-unicode-property-regex@7.28.6 no known CVEs surface: none size: 5 files · 4.9KB A @babel/plugin-transform-unicode-regex@7.27.1 no known CVEs surface: none size: 5 files · 3.8KB A @babel/plugin-transform-unicode-sets-regex@7.28.6 no known CVEs surface: none size: 5 files · 4.8KB A @babel/preset-env@7.29.2 no known CVEs surface: none size: 44 files · 150.0KB A @babel/preset-modules@0.1.6-no-external-plugins no known CVEs surface: none size: 19 files · 37.7KB A @babel/preset-react@7.28.5 no known CVEs surface: none size: 5 files · 12.2KB A @babel/preset-typescript@7.28.5 no known CVEs surface: none size: 5 files · 25.3KB A @babel/runtime@7.29.2 no known CVEs surface: none size: 249 files · 241.9KB A @babel/runtime-corejs2@7.29.2 no known CVEs surface: none size: 342 files · 274.4KB A @babel/runtime-corejs3@7.29.2 no known CVEs surface: none size: 553 files · 321.9KB A @babel/template@7.28.6 no known CVEs surface: none size: 19 files · 69.0KB A @babel/traverse@7.29.0 no known CVEs surface: none size: 64 files · 691.5KB A @babel/types@7.29.0 no known CVEs surface: none size: 178 files · 2.6MB A @bcoe/v8-coverage@0.2.3 no known CVEs surface: none size: 55 files · 270.4KB A @compiled/react@0.18.6 no known CVEs surface: none size: 322 files · 474.9KB A @csstools/color-helpers@5.1.0 no known CVEs surface: none size: 7 files · 79.0KB A @csstools/css-calc@2.1.4 no known CVEs surface: none size: 7 files · 69.3KB A @csstools/css-color-parser@3.1.0 no known CVEs surface: none size: 7 files · 102.7KB A @csstools/css-parser-algorithms@3.0.5 no known CVEs surface: none size: 7 files · 44.3KB A @csstools/css-tokenizer@3.0.4 no known CVEs surface: none size: 7 files · 71.3KB A @csstools/media-query-list-parser@3.0.1 no known CVEs surface: none size: 7 files · 108.0KB A @csstools/selector-specificity@4.0.0 no known CVEs surface: none size: 7 files · 11.2KB A @deanwhillier/jest-matchmedia-mock@1.2.0 no known CVEs surface: none size: 5 files · 11.8KB A @discoveryjs/json-ext@0.6.3 no known CVEs surface: none size: 20 files · 144.5KB A @dual-bundle/import-meta-resolve@4.2.1 no known CVEs surface: none size: 22 files · 124.1KB A @emotion/babel-plugin@11.13.5 no known CVEs surface: none size: 24 files · 148.8KB A @emotion/cache@11.14.0 no known CVEs surface: none size: 39 files · 238.4KB A @emotion/hash@0.9.2 no known CVEs surface: none size: 16 files · 9.7KB A @emotion/is-prop-valid@1.4.0 no known CVEs surface: none size: 13 files · 23.9KB A @emotion/memoize@0.9.0 no known CVEs surface: none size: 15 files · 3.9KB A @emotion/react@11.14.0 no known CVEs surface: none size: 149 files · 797.6KB A @emotion/serialize@1.3.3 no known CVEs surface: none size: 14 files · 51.5KB A @emotion/sheet@1.4.0 no known CVEs surface: none size: 15 files · 28.8KB A @emotion/stylis@0.8.5 no known CVEs surface: none size: 17 files · 102.4KB A @emotion/unitless@0.7.5 no known CVEs surface: none size: 12 files · 8.1KB A @emotion/unitless@0.10.0 no known CVEs surface: none size: 12 files · 5.9KB A @emotion/use-insertion-effect-with-fallbacks@1.2.0 no known CVEs surface: none size: 19 files · 10.7KB A @emotion/utils@1.4.2 no known CVEs surface: none size: 20 files · 19.5KB A @emotion/weak-memoize@0.4.0 no known CVEs surface: none size: 16 files · 5.7KB A @eslint-community/eslint-utils@4.9.1 no known CVEs surface: none size: 9 files · 494.1KB A @eslint-community/regexpp@4.12.2 no known CVEs surface: none size: 8 files · 462.9KB A @eslint/config-array@0.21.2 no known CVEs surface: none size: 14 files · 318.6KB A @eslint/config-helpers@0.4.2 no known CVEs surface: none size: 10 files · 56.1KB A @eslint/core@0.17.0 no known CVEs surface: none size: 5 files · 90.7KB A @eslint/js@9.39.4 no known CVEs surface: none size: 7 files · 15.4KB A @eslint/object-schema@2.1.7 no known CVEs surface: none size: 10 files · 56.2KB A @eslint/plugin-kit@0.4.1 no known CVEs surface: none size: 10 files · 98.6KB A @floating-ui/core@1.7.5 no known CVEs surface: none size: 11 files · 212.2KB A @floating-ui/dom@1.7.6 no known CVEs surface: none size: 11 files · 167.3KB A @floating-ui/react@0.26.6 no known CVEs surface: none size: 19 files · 639.8KB A @floating-ui/react-dom@2.1.8 no known CVEs surface: none size: 9 files · 62.2KB A @floating-ui/utils@0.2.11 no known CVEs surface: none size: 19 files · 63.6KB A @formatjs/ecma402-abstract@2.3.6 no known CVEs surface: none size: 199 files · 304.2KB A @formatjs/ecma402-abstract@1.15.0 no known CVEs surface: none size: 279 files · 315.0KB A @formatjs/fast-memoize@2.2.7 no known CVEs surface: none size: 7 files · 8.9KB A @formatjs/icu-messageformat-parser@2.11.4 no known CVEs surface: none size: 43 files · 203.1KB A @formatjs/icu-messageformat-parser@3.5.11 no known CVEs surface: none size: 15 files · 238.2KB A @formatjs/icu-messageformat-parser@2.4.0 no known CVEs surface: none size: 63 files · 213.0KB A @formatjs/icu-skeleton-parser@1.8.16 no known CVEs surface: none size: 19 files · 37.3KB A @formatjs/icu-skeleton-parser@2.1.10 no known CVEs surface: none size: 6 files · 37.9KB A @formatjs/icu-skeleton-parser@1.4.0 no known CVEs surface: none size: 27 files · 37.9KB A @formatjs/intl@3.1.8 no known CVEs surface: none size: 51 files · 103.9KB A @formatjs/intl-localematcher@0.6.2 no known CVEs surface: none size: 67 files · 389.5KB A @formatjs/intl-localematcher@0.2.32 no known CVEs surface: none size: 63 files · 36.3KB A @giphy/colors@1.0.1 no known CVEs surface: none size: 7 files · 11.1KB A @giphy/js-types@5.1.0 no known CVEs surface: none size: 9 files · 5.4KB A @giphy/js-util@5.2.0 no known CVEs surface: none size: 18 files · 61.5KB A @giphy/react-components@10.1.0 no known CVEs surface: none size: 41 files · 361.4KB A @guyplusplus/turndown-plugin-gfm@1.0.7 no known CVEs surface: none size: 8 files · 28.0KB A @humanfs/core@0.19.2 no known CVEs surface: none size: 12 files · 71.1KB A @humanfs/types@0.15.0 no known CVEs surface: none size: 5 files · 14.9KB A @humanwhocodes/retry@0.4.3 no known CVEs surface: none size: 9 files · 64.2KB A @img/colour@1.1.0 no known CVEs surface: none size: 6 files · 71.5KB A @img/sharp-libvips-darwin-arm64@1.2.4 no known CVEs surface: none size: 6 files · 15.3MB A @isaacs/cliui@8.0.2 no known CVEs surface: none size: 7 files · 27.1KB A @istanbuljs/schema@0.1.6 no known CVEs surface: none size: 7 files · 17.5KB A @jest/console@30.1.2 no known CVEs surface: none size: 6 files · 24.1KB A @jest/create-cache-key-function@30.4.1 no known CVEs surface: none size: 6 files · 8.0KB A @jest/diff-sequences@30.0.1 no known CVEs surface: none size: 6 files · 44.5KB A @jest/diff-sequences@30.4.0 no known CVEs surface: none size: 6 files · 44.5KB A @jest/environment@30.1.2 no known CVEs surface: none size: 6 files · 31.1KB A @jest/environment@30.1.0 no known CVEs surface: none size: 6 files · 31.1KB A @jest/expect@30.1.2 no known CVEs surface: none size: 7 files · 7.2KB A @jest/expect-utils@30.1.2 no known CVEs surface: none size: 7 files · 32.6KB A @jest/expect-utils@30.4.1 no known CVEs surface: none size: 6 files · 31.9KB A @jest/fake-timers@30.1.2 no known CVEs surface: none size: 6 files · 30.2KB A @jest/fake-timers@30.1.0 no known CVEs surface: none size: 6 files · 30.2KB A @jest/get-type@30.1.0 no known CVEs surface: none size: 6 files · 5.0KB A @jest/globals@30.1.2 no known CVEs surface: none size: 4 files · 5.5KB A @jest/pattern@30.0.1 no known CVEs surface: none size: 12 files · 21.6KB A @jest/pattern@30.4.0 no known CVEs surface: none size: 12 files · 21.6KB A @jest/reporters@30.1.3 no known CVEs surface: none size: 10 files · 122.3KB A @jest/schemas@30.4.1 no known CVEs surface: none size: 6 files · 31.6KB A @jest/schemas@30.0.5 no known CVEs surface: none size: 7 files · 49.8KB A @jest/source-map@30.0.1 no known CVEs surface: none size: 5 files · 6.7KB A @jest/test-result@30.1.3 no known CVEs surface: none size: 6 files · 23.9KB A @jest/types@30.0.5 no known CVEs surface: none size: 7 files · 55.7KB A @jest/types@30.4.1 no known CVEs surface: none size: 5 files · 31.3KB A @jimp/bmp@0.16.13 no known CVEs surface: none size: 11 files · 250.8KB A @jimp/custom@0.16.13 no known CVEs surface: none size: 10 files · 27.2KB A @jimp/gif@0.16.13 no known CVEs surface: none size: 11 files · 143.3KB A @jimp/jpeg@0.16.13 no known CVEs surface: none size: 11 files · 155.5KB A @jimp/plugin-blit@0.16.13 no known CVEs surface: none size: 18 files · 704.5KB A @jimp/plugin-blur@0.16.13 no known CVEs surface: none size: 11 files · 39.2KB A @jimp/plugin-circle@0.16.13 no known CVEs surface: none size: 12 files · 14.2KB A @jimp/plugin-color@0.16.13 no known CVEs surface: none size: 12 files · 345.3KB A @jimp/plugin-contain@0.16.13 no known CVEs surface: none size: 9 files · 21.0KB A @jimp/plugin-cover@0.16.13 no known CVEs surface: none size: 9 files · 18.0KB A @jimp/plugin-crop@0.16.13 no known CVEs surface: none size: 10 files · 57.9KB A @jimp/plugin-displace@0.16.13 no known CVEs surface: none size: 8 files · 10.2KB A @jimp/plugin-dither@0.16.13 no known CVEs surface: none size: 8 files · 9.0KB A @jimp/plugin-fisheye@0.16.13 no known CVEs surface: none size: 10 files · 13.8KB A @jimp/plugin-flip@0.16.13 no known CVEs surface: none size: 9 files · 11.9KB A @jimp/plugin-gaussian@0.16.13 no known CVEs surface: none size: 8 files · 14.8KB A @jimp/plugin-invert@0.16.13 no known CVEs surface: none size: 8 files · 7.2KB A @jimp/plugin-mask@0.16.13 no known CVEs surface: none size: 9 files · 17.0KB A @jimp/plugin-normalize@0.16.13 no known CVEs surface: none size: 9 files · 14.8KB A @jimp/plugin-print@0.16.13 no known CVEs surface: none size: 58 files · 847.2KB A @jimp/plugin-resize@0.16.13 no known CVEs surface: none size: 15 files · 133.1KB A @jimp/plugin-rotate@0.16.13 no known CVEs surface: none size: 9 files · 38.8KB A @jimp/plugin-scale@0.16.13 no known CVEs surface: none size: 8 files · 12.8KB A @jimp/plugin-shadow@0.16.13 no known CVEs surface: none size: 11 files · 15.2KB A @jimp/plugin-threshold@0.16.13 no known CVEs surface: none size: 12 files · 651.9KB A @jimp/plugins@0.16.13 no known CVEs surface: none size: 8 files · 15.1KB A @jimp/png@0.16.13 no known CVEs surface: none size: 11 files · 237.8KB A @jimp/tiff@0.16.13 no known CVEs surface: none size: 10 files · 1.4MB A @jimp/types@0.16.13 no known CVEs surface: none size: 8 files · 6.4KB A @jimp/utils@0.16.13 no known CVEs surface: none size: 8 files · 11.7KB A @jridgewell/gen-mapping@0.3.13 no known CVEs surface: none size: 31 files · 91.6KB A @jridgewell/remapping@2.3.5 no known CVEs surface: none size: 32 files · 58.0KB A @jridgewell/resolve-uri@3.1.2 no known CVEs surface: none size: 8 files · 51.9KB A @jridgewell/source-map@0.3.11 no known CVEs surface: none size: 12 files · 32.7KB A @jridgewell/sourcemap-codec@1.5.5 no known CVEs surface: none size: 27 files · 85.0KB A @jridgewell/trace-mapping@0.3.31 no known CVEs surface: none size: 52 files · 143.3KB A @jsonjoy.com/base64@1.1.2 no known CVEs surface: none size: 54 files · 53.1KB A @jsonjoy.com/base64@17.67.0 no known CVEs surface: none size: 54 files · 52.1KB A @jsonjoy.com/buffers@17.67.0 no known CVEs surface: none size: 147 files · 164.3KB A @jsonjoy.com/buffers@1.2.1 no known CVEs surface: none size: 147 files · 150.3KB A @jsonjoy.com/fs-node-builtins@4.57.2 no known CVEs surface: none size: 30 files · 32.7KB A @jsonjoy.com/fs-node-utils@4.57.2 no known CVEs surface: none size: 54 files · 66.1KB A @jsonjoy.com/fs-print@4.57.2 no known CVEs surface: none size: 6 files · 18.0KB A @jsonjoy.com/json-pointer@1.0.2 no known CVEs surface: none size: 34 files · 28.9KB A @jsonjoy.com/json-pointer@17.67.0 no known CVEs surface: none size: 51 files · 58.1KB A @jsonjoy.com/util@1.9.0 no known CVEs surface: none size: 219 files · 114.8KB A @jsonjoy.com/util@17.67.0 no known CVEs surface: none size: 120 files · 88.5KB A @leichtgewicht/ip-codec@2.0.5 no known CVEs surface: none size: 6 files · 17.3KB A @lezer/common@1.5.2 no known CVEs surface: none size: 7 files · 240.6KB A @lezer/lr@1.4.10 no known CVEs surface: none size: 9 files · 163.1KB A @mattermost/calls-common@0.27.0 no known CVEs surface: none size: 38 files · 140.9KB A @mattermost/compass-icons@0.1.61 no known CVEs surface: none size: 669 files · 1.4MB A @mattermost/desktop-api@6.3.0-2 no known CVEs surface: none size: 3 files · 6.1KB A @mdn/browser-compat-data@4.2.1 no known CVEs surface: none size: 7 files · 10.0MB A @mischnic/json-sourcemap@0.1.1 no known CVEs surface: none size: 6 files · 14.1KB A @mui/base@5.0.0-alpha.127 no known CVEs surface: none size: 970 files · 2.4MB A @mui/base@5.0.0-alpha.124 no known CVEs surface: none size: 920 files · 2.3MB A @mui/core-downloads-tracker@5.18.0 no known CVEs surface: none size: 3 files · 2.0KB A @mui/material@5.11.16 no known CVEs surface: none size: 2,724 files · 9.5MB A @mui/private-theming@5.17.1 no known CVEs surface: none size: 40 files · 799.1KB A @mui/styled-engine@5.18.0 no known CVEs surface: none size: 31 files · 811.5KB A @mui/styled-engine-sc@5.11.11 no known CVEs surface: none size: 31 files · 572.2KB A @mui/system@5.18.0 no known CVEs surface: none size: 406 files · 1.6MB A @mui/types@7.4.12 no known CVEs surface: none size: 13 files · 77.1KB A @mui/types@7.2.24 no known CVEs surface: none size: 5 files · 7.8KB A @mui/utils@5.17.1 no known CVEs surface: none size: 564 files · 1.1MB A @nodelib/fs.scandir@2.1.5 no known CVEs surface: none size: 23 files · 21.6KB A @nodelib/fs.stat@2.0.5 no known CVEs surface: none size: 15 files · 11.6KB A @nodelib/fs.walk@1.2.8 no known CVEs surface: none size: 25 files · 25.8KB A @parcel/bundler-default@2.16.4 no known CVEs surface: none size: 4 files · 129.1KB A @parcel/bundler-library@2.16.4 no known CVEs surface: none size: 4 files · 8.3KB A @parcel/compressor-raw@2.16.4 no known CVEs surface: none size: 4 files · 2.1KB A @parcel/config-default@2.16.4 no known CVEs surface: none size: 5 files · 9.7KB A @parcel/diagnostic@2.16.4 no known CVEs surface: none size: 7 files · 29.5KB A @parcel/events@2.16.4 no known CVEs surface: none size: 14 files · 15.6KB A @parcel/feature-flags@2.16.4 no known CVEs surface: none size: 8 files · 4.2KB A @parcel/graph@3.6.4 no known CVEs surface: none size: 21 files · 176.5KB A @parcel/logger@2.16.4 no known CVEs surface: none size: 5 files · 13.7KB A @parcel/markdown-ansi@2.16.4 no known CVEs surface: none size: 5 files · 4.7KB A @parcel/namer-default@2.16.4 no known CVEs surface: none size: 4 files · 14.4KB A @parcel/optimizer-css@2.16.4 no known CVEs surface: none size: 4 files · 15.3KB A @parcel/optimizer-html@2.16.4 no known CVEs surface: none size: 4 files · 5.1KB A @parcel/optimizer-image@2.16.4 no known CVEs surface: none size: 3 files · 3.8KB A @parcel/optimizer-svg@2.16.4 no known CVEs surface: none size: 4 files · 3.9KB A @parcel/optimizer-swc@2.16.4 no known CVEs surface: none size: 4 files · 10.8KB A @parcel/packager-css@2.16.4 no known CVEs surface: none size: 4 files · 23.2KB A @parcel/packager-html@2.16.4 no known CVEs surface: none size: 4 files · 11.6KB A @parcel/packager-raw@2.16.4 no known CVEs surface: none size: 4 files · 2.8KB A @parcel/packager-svg@2.16.4 no known CVEs surface: none size: 4 files · 9.8KB A @parcel/packager-ts@2.16.4 no known CVEs surface: none size: 4 files · 3.4KB A @parcel/packager-wasm@2.16.4 no known CVEs surface: none size: 7 files · 16.8KB A @parcel/plugin@2.16.4 no known CVEs surface: none size: 5 files · 5.7KB A @parcel/resolver-default@2.16.4 no known CVEs surface: none size: 4 files · 5.0KB A @parcel/runtime-rsc@2.16.4 no known CVEs surface: none size: 5 files · 39.5KB A @parcel/runtime-service-worker@2.16.4 no known CVEs surface: none size: 4 files · 4.3KB A @parcel/transformer-babel@2.16.4 no known CVEs surface: none size: 23 files · 58.1KB A @parcel/transformer-css@2.16.4 no known CVEs surface: none size: 4 files · 29.3KB A @parcel/transformer-html@2.16.4 no known CVEs surface: none size: 4 files · 4.1KB A @parcel/transformer-image@2.16.4 no known CVEs surface: none size: 8 files · 19.1KB A @parcel/transformer-json@2.16.4 no known CVEs surface: none size: 4 files · 3.1KB A @parcel/transformer-node@2.16.4 no known CVEs surface: none size: 4 files · 2.2KB A @parcel/transformer-raw@2.16.4 no known CVEs surface: none size: 4 files · 2.3KB A @parcel/transformer-svg@2.16.4 no known CVEs surface: none size: 4 files · 3.9KB A @parcel/transformer-typescript-types@2.16.4 no known CVEs surface: none size: 16 files · 71.8KB A @parcel/types@2.16.4 no known CVEs surface: none size: 4 files · 2.1KB A @pkgjs/parseargs@0.11.0 no known CVEs surface: none size: 17 files · 72.4KB A @pkgr/core@0.2.9 no known CVEs surface: none size: 12 files · 8.3KB A @popperjs/core@2.11.8 no known CVEs surface: none size: 280 files · 1.4MB A @redux-devtools/extension@3.3.0 no known CVEs surface: none size: 23 files · 46.9KB A @restart/hooks@0.4.16 no known CVEs surface: none size: 224 files · 192.5KB A @rollup/plugin-babel@5.3.1 no known CVEs surface: none size: 7 files · 63.3KB A @rollup/plugin-node-resolve@13.3.0 no known CVEs surface: none size: 8 files · 94.1KB A @rollup/pluginutils@4.2.1 no known CVEs surface: none size: 7 files · 49.7KB A @rollup/pluginutils@3.1.0 no known CVEs surface: none size: 8 files · 46.6KB A @rollup/pluginutils@5.3.0 no known CVEs surface: none size: 7 files · 46.1KB A @rtsao/scc@1.1.0 no known CVEs surface: none size: 6 files · 3.5KB A @sinclair/typebox@0.34.49 no known CVEs surface: none size: 1,070 files · 1.8MB A @sinonjs/fake-timers@13.0.5 no known CVEs surface: none size: 4 files · 95.0KB A @statsig/client-core@3.33.0 no known CVEs surface: none size: 109 files · 221.2KB A @stylistic/eslint-plugin@5.10.0 no known CVEs surface: none size: 108 files · 696.3KB A @swc/counter@0.1.3 no known CVEs surface: none size: 4 files · 1.2KB A @swc/jest@0.2.39 no known CVEs surface: none size: 5 files · 14.2KB A @swc/types@0.1.26 no known CVEs surface: none size: 7 files · 77.2KB A @tanstack/react-table@8.10.7 no known CVEs surface: none size: 13 files · 768.2KB A @tanstack/table-core@8.10.7 no known CVEs surface: none size: 135 files · 3.1MB A @testing-library/dom@10.4.1 no known CVEs surface: none size: 51 files · 2.3MB A @testing-library/jest-dom@6.8.0 no known CVEs surface: none size: 39 files · 285.5KB A @testing-library/react@16.3.0 no known CVEs surface: none size: 26 files · 333.7KB A @testing-library/user-event@14.6.1 no known CVEs surface: none size: 308 files · 427.6KB A @tippyjs/react@4.2.6 no known CVEs surface: none size: 17 files · 256.8KB A @tiptap/core@3.26.1 no known CVEs surface: none size: 217 files · 2.3MB A @tiptap/extension-blockquote@3.26.1 no known CVEs surface: none size: 12 files · 838.1KB A @tiptap/extension-bold@3.26.1 no known CVEs surface: none size: 11 files · 26.4KB A @tiptap/extension-bubble-menu@3.26.1 no known CVEs surface: none size: 12 files · 128.0KB A @tiptap/extension-bullet-list@3.26.1 no known CVEs surface: none size: 10 files · 5.9KB A @tiptap/extension-code@3.26.1 no known CVEs surface: none size: 11 files · 29.1KB A @tiptap/extension-code-block@3.26.1 no known CVEs surface: none size: 11 files · 83.3KB A @tiptap/extension-code-block-lowlight@3.20.0 no known CVEs surface: none size: 12 files · 39.4KB A @tiptap/extension-document@3.26.1 no known CVEs surface: none size: 11 files · 7.6KB A @tiptap/extension-dropcursor@3.26.1 no known CVEs surface: none size: 10 files · 5.8KB A @tiptap/extension-floating-menu@3.26.1 no known CVEs surface: none size: 12 files · 107.9KB A @tiptap/extension-gapcursor@3.26.1 no known CVEs surface: none size: 10 files · 5.5KB A @tiptap/extension-hard-break@3.26.1 no known CVEs surface: none size: 11 files · 21.1KB A @tiptap/extension-heading@3.26.1 no known CVEs surface: none size: 11 files · 26.5KB A @tiptap/extension-horizontal-rule@3.26.1 no known CVEs surface: none size: 11 files · 26.2KB A @tiptap/extension-italic@3.26.1 no known CVEs surface: none size: 11 files · 26.1KB A @tiptap/extension-list@3.26.1 no known CVEs surface: none size: 82 files · 855.8KB A @tiptap/extension-list-item@3.26.1 no known CVEs surface: none size: 10 files · 5.8KB A @tiptap/extension-list-keymap@3.26.1 no known CVEs surface: none size: 10 files · 6.0KB A @tiptap/extension-ordered-list@3.26.1 no known CVEs surface: none size: 10 files · 5.9KB A @tiptap/extension-paragraph@3.26.1 no known CVEs surface: none size: 11 files · 25.0KB A @tiptap/extension-placeholder@3.20.0 no known CVEs surface: none size: 10 files · 5.9KB A @tiptap/extension-strike@3.26.1 no known CVEs surface: none size: 11 files · 21.7KB A @tiptap/extension-table@3.20.0 no known CVEs surface: none size: 59 files · 487.2KB A @tiptap/extension-table-cell@3.20.0 no known CVEs surface: none size: 10 files · 6.0KB A @tiptap/extension-table-header@3.20.0 no known CVEs surface: none size: 10 files · 6.0KB A @tiptap/extension-table-row@3.20.0 no known CVEs surface: none size: 10 files · 5.9KB A @tiptap/extension-text@3.26.1 no known CVEs surface: none size: 11 files · 7.5KB A @tiptap/extension-underline@3.26.1 no known CVEs surface: none size: 11 files · 21.5KB A @tiptap/extensions@3.26.1 no known CVEs surface: none size: 85 files · 373.4KB A @tiptap/markdown@3.20.0 no known CVEs surface: none size: 14 files · 270.2KB A @tiptap/pm@3.26.1 no known CVEs surface: none size: 69 files · 17.3KB A @tiptap/react@3.20.0 no known CVEs surface: none size: 32 files · 384.0KB A @tiptap/starter-kit@3.20.0 no known CVEs surface: none size: 11 files · 53.0KB A @tokenizer/token@0.3.0 no known CVEs surface: none size: 3 files · 3.0KB A @types/aria-query@5.0.4 no known CVEs surface: none size: 4 files · 11.7KB A @types/babel__core@7.20.5 no known CVEs surface: none size: 4 files · 32.2KB A @types/babel__generator@7.27.0 no known CVEs surface: none size: 4 files · 11.2KB A @types/babel__helper-plugin-utils@7.10.3 no known CVEs surface: none size: 4 files · 3.4KB A @types/babel__template@7.4.4 no known CVEs surface: none size: 4 files · 6.3KB A @types/babel__traverse@7.28.0 no known CVEs surface: none size: 4 files · 84.0KB A @types/body-parser@1.19.6 no known CVEs surface: none size: 4 files · 7.7KB A @types/bonjour@3.5.13 no known CVEs surface: none size: 4 files · 5.4KB A @types/color-hash@1.0.2 no known CVEs surface: none size: 4 files · 5.6KB A @types/connect@3.4.38 no known CVEs surface: none size: 4 files · 5.8KB A @types/connect-history-api-fallback@1.5.4 no known CVEs surface: none size: 4 files · 4.7KB A @types/country-list@2.1.0 no known CVEs surface: none size: 4 files · 3.9KB A @types/eslint@8.56.12 no known CVEs surface: none size: 15 files · 188.2KB A @types/eslint-scope@3.7.7 no known CVEs surface: none size: 4 files · 6.1KB A @types/estree@0.0.51 no known CVEs surface: none size: 5 files · 23.4KB A @types/estree-jsx@1.0.5 no known CVEs surface: none size: 4 files · 5.6KB A @types/express@4.17.25 no known CVEs surface: none size: 4 files · 7.7KB A @types/express-serve-static-core@4.19.8 no known CVEs surface: none size: 4 files · 44.5KB A @types/hast@3.0.4 no known CVEs surface: none size: 4 files · 9.5KB A @types/history@4.7.11 no known CVEs surface: none size: 12 files · 11.0KB A @types/hoist-non-react-statics@3.3.7 no known CVEs surface: none size: 4 files · 6.3KB A @types/html-minifier-terser@6.1.0 no known CVEs surface: none size: 4 files · 9.3KB A @types/http-errors@2.0.5 no known CVEs surface: none size: 4 files · 6.7KB A @types/http-proxy@1.17.17 no known CVEs surface: none size: 4 files · 14.1KB A @types/istanbul-lib-coverage@2.0.6 no known CVEs surface: none size: 4 files · 5.3KB A @types/istanbul-lib-report@3.0.3 no known CVEs surface: none size: 4 files · 7.7KB A @types/istanbul-reports@3.0.4 no known CVEs surface: none size: 4 files · 6.5KB A @types/jest@30.0.0 no known CVEs surface: none size: 4 files · 74.2KB A @types/jquery@4.0.0 no known CVEs surface: none size: 15 files · 1.1MB A @types/js-cookie@2.2.7 no known CVEs surface: none size: 4 files · 7.2KB A @types/jsdom@21.1.7 no known CVEs surface: none size: 5 files · 21.4KB A @types/json-schema@7.0.15 no known CVEs surface: none size: 4 files · 31.0KB A @types/json-stable-stringify@1.1.0 no known CVEs surface: none size: 4 files · 4.7KB A @types/json5@0.0.29 no known CVEs surface: none size: 4 files · 2.9KB A @types/katex@0.11.0 no known CVEs surface: none size: 7 files · 10.8KB A @types/lodash@4.14.202 no known CVEs surface: none size: 704 files · 841.9KB A @types/luxon@3.0.2 no known CVEs surface: none size: 12 files · 111.1KB A @types/mark.js@8.11.6 no known CVEs surface: none size: 4 files · 8.4KB A @types/marked@0.7.4 no known CVEs surface: none size: 4 files · 14.0KB A @types/mime@1.3.5 no known CVEs surface: none size: 6 files · 3.7KB A @types/node@16.9.1 no known CVEs surface: none size: 54 files · 1.6MB A @types/node@16.18.126 no known CVEs surface: none size: 63 files · 1.8MB A @types/node@24.10.4 no known CVEs surface: none size: 75 files · 2.4MB A @types/node@17.0.45 no known CVEs surface: none size: 54 files · 1.6MB A @types/node-fetch@2.6.13 no known CVEs surface: none size: 5 files · 11.7KB A @types/node-forge@1.3.14 no known CVEs surface: none size: 4 files · 62.0KB A @types/object-path@0.11.4 no known CVEs surface: none size: 4 files · 6.4KB A @types/parse-json@4.0.2 no known CVEs surface: none size: 4 files · 2.9KB A @types/picomatch@4.0.3 no known CVEs surface: none size: 9 files · 16.6KB A @types/prop-types@15.7.15 no known CVEs surface: none size: 4 files · 7.2KB A @types/qs@6.15.1 no known CVEs surface: none size: 4 files · 7.4KB A @types/range-parser@1.2.7 no known CVEs surface: none size: 4 files · 4.5KB A @types/react@18.2.64 no known CVEs surface: none size: 15 files · 417.7KB A @types/react-beautiful-dnd@13.1.2 no known CVEs surface: none size: 4 files · 23.5KB A @types/react-bootstrap@0.32.35 no known CVEs surface: none size: 112 files · 70.9KB A @types/react-color@3.0.6 no known CVEs surface: none size: 24 files · 18.5KB A @types/react-dom@18.2.25 no known CVEs surface: none size: 9 files · 34.1KB A @types/react-is@18.2.1 no known CVEs surface: none size: 5 files · 5.9KB A @types/react-router@5.1.20 no known CVEs surface: none size: 5 files · 21.2KB A @types/react-router-dom@5.3.3 no known CVEs surface: none size: 4 files · 7.5KB A @types/react-transition-group@4.4.5 no known CVEs surface: none size: 9 files · 18.4KB A @types/react-virtualized-auto-sizer@1.0.1 no known CVEs surface: none size: 4 files · 5.4KB A @types/react-window@1.8.5 no known CVEs surface: none size: 4 files · 25.6KB A @types/react-window-infinite-loader@1.0.6 no known CVEs surface: none size: 4 files · 5.1KB A @types/reactcss@1.2.13 no known CVEs surface: none size: 4 files · 4.4KB A @types/redux-mock-store@1.5.0 no known CVEs surface: none size: 4 files · 7.3KB A @types/regenerator-runtime@0.13.8 no known CVEs surface: none size: 4 files · 9.3KB A @types/resolve@1.17.1 no known CVEs surface: none size: 4 files · 7.5KB A @types/retry@0.12.2 no known CVEs surface: none size: 4 files · 7.7KB A @types/scheduler@0.16.8 no known CVEs surface: none size: 5 files · 8.1KB A @types/semver@7.5.8 no known CVEs surface: none size: 44 files · 22.7KB A @types/send@1.2.1 no known CVEs surface: none size: 4 files · 8.8KB A @types/send@0.17.6 no known CVEs surface: none size: 4 files · 9.9KB A @types/serve-index@1.9.4 no known CVEs surface: none size: 4 files · 4.6KB A @types/serve-static@1.15.10 no known CVEs surface: none size: 4 files · 7.8KB A @types/shallow-equals@1.0.3 no known CVEs surface: none size: 4 files · 2.8KB A @types/sockjs@0.3.36 no known CVEs surface: none size: 4 files · 5.2KB A @types/stack-utils@2.0.3 no known CVEs surface: none size: 4 files · 6.3KB A @types/styled-components@5.1.32 no known CVEs surface: none size: 7 files · 22.6KB A @types/tinycolor2@1.4.6 no known CVEs surface: none size: 4 files · 23.1KB A @types/tough-cookie@4.0.5 no known CVEs surface: none size: 4 files · 13.2KB A @types/turndown@5.0.5 no known CVEs surface: none size: 4 files · 6.9KB A @types/ua-parser-js@0.7.39 no known CVEs surface: none size: 4 files · 8.6KB A @types/unist@3.0.3 no known CVEs surface: none size: 4 files · 6.1KB A @types/use-sync-external-store@0.0.6 no known CVEs surface: none size: 7 files · 3.2KB A @types/warning@3.0.4 no known CVEs surface: none size: 4 files · 2.5KB A @types/yargs@17.0.35 no known CVEs surface: none size: 8 files · 59.0KB A @types/yargs-parser@21.0.3 no known CVEs surface: none size: 4 files · 8.4KB A @types/zen-observable@0.8.7 no known CVEs surface: none size: 6 files · 9.5KB A @typescript-eslint/parser@8.61.0 no known CVEs surface: none size: 7 files · 13.1KB A @typescript-eslint/project-service@8.61.0 no known CVEs surface: none size: 9 files · 13.8KB A @typescript-eslint/tsconfig-utils@8.61.0 no known CVEs surface: none size: 9 files · 9.1KB A @typescript-eslint/type-utils@8.61.0 no known CVEs surface: none size: 47 files · 89.0KB A @typescript-eslint/types@8.61.0 no known CVEs surface: none size: 13 files · 109.4KB A @typescript-eslint/utils@8.61.0 no known CVEs surface: none size: 81 files · 193.5KB A @typescript-eslint/visitor-keys@8.61.0 no known CVEs surface: none size: 9 files · 13.1KB A @ungap/structured-clone@1.3.1 no known CVEs surface: none size: 16 files · 27.6KB A @webassemblyjs/ast@1.14.1 no known CVEs surface: none size: 36 files · 202.6KB A @webassemblyjs/floating-point-hex-parser@1.13.2 no known CVEs surface: none size: 5 files · 6.2KB A @webassemblyjs/helper-api-error@1.13.2 no known CVEs surface: none size: 4 files · 11.0KB A @webassemblyjs/helper-buffer@1.14.1 no known CVEs surface: none size: 6 files · 10.5KB A @webassemblyjs/helper-numbers@1.13.2 no known CVEs surface: none size: 5 files · 10.2KB A @webassemblyjs/helper-wasm-bytecode@1.13.2 no known CVEs surface: none size: 6 files · 33.4KB A @webassemblyjs/helper-wasm-section@1.14.1 no known CVEs surface: none size: 10 files · 19.3KB A @webassemblyjs/ieee754@1.13.2 no known CVEs surface: none size: 5 files · 5.2KB A @webassemblyjs/leb128@1.13.2 no known CVEs surface: none size: 10 files · 47.4KB A @webassemblyjs/utf8@1.13.2 no known CVEs surface: none size: 12 files · 12.0KB A @webassemblyjs/wasm-edit@1.14.1 no known CVEs surface: none size: 7 files · 33.8KB A @webassemblyjs/wasm-gen@1.14.1 no known CVEs surface: none size: 6 files · 27.4KB A @webassemblyjs/wasm-opt@1.14.1 no known CVEs surface: none size: 6 files · 14.1KB A @webassemblyjs/wasm-parser@1.14.1 no known CVEs surface: none size: 9 files · 134.2KB A @webassemblyjs/wast-printer@1.14.1 no known CVEs surface: none size: 5 files · 38.6KB A @webpack-cli/configtest@3.0.1 no known CVEs surface: none size: 5 files · 4.4KB A @webpack-cli/info@3.0.1 no known CVEs surface: none size: 5 files · 3.6KB A @wessberg/stringutil@1.0.19 no known CVEs surface: none size: 12 files · 69.9KB A @xobotyi/scrollbar-width@1.9.5 no known CVEs surface: none size: 9 files · 18.2KB A @xtuc/ieee754@1.2.0 no known CVEs surface: none size: 6 files · 8.4KB A @xtuc/long@4.2.2 no known CVEs surface: none size: 8 files · 185.8KB A abort-controller@3.0.0 no known CVEs surface: none size: 14 files · 74.5KB A accepts@1.3.8 no known CVEs surface: none size: 5 files · 16.4KB A acorn-import-phases@1.0.4 no known CVEs surface: none size: 8 files · 7.3KB A acorn-jsx@5.3.2 no known CVEs surface: none size: 6 files · 23.8KB A ajv-formats@2.1.1 no known CVEs surface: none size: 15 files · 51.0KB A ajv-keywords@5.1.0 no known CVEs surface: none size: 159 files · 128.7KB A ansi-escapes@4.3.2 no known CVEs surface: none size: 5 files · 16.0KB A ansi-escapes@7.3.0 no known CVEs surface: none size: 7 files · 21.5KB A ansi-regex@5.0.1 no known CVEs surface: none size: 5 files · 5.5KB A ansi-regex@6.2.2 no known CVEs surface: none size: 5 files · 5.7KB A ansi-styles@4.3.0 no known CVEs surface: none size: 5 files · 16.6KB A ansi-styles@5.2.0 no known CVEs surface: none size: 5 files · 13.3KB A ansi-styles@6.2.3 no known CVEs surface: none size: 5 files · 17.1KB A any-base@1.1.0 no known CVEs surface: none size: 7 files · 13.7KB A anymatch@3.1.3 no known CVEs surface: none size: 5 files · 9.4KB A append-query@2.1.1 no known CVEs surface: none size: 6 files · 8.1KB A aria-query@5.3.0 no known CVEs surface: none size: 156 files · 187.6KB A aria-query@5.3.2 no known CVEs surface: none size: 157 files · 172.0KB A array-buffer-byte-length@1.0.2 no known CVEs surface: none size: 11 files · 11.7KB A array-flatten@1.1.1 no known CVEs surface: none size: 4 files · 4.3KB A array-includes@3.1.9 no known CVEs surface: none size: 17 files · 26.7KB A array-union@2.1.0 no known CVEs surface: none size: 5 files · 3.1KB A array.prototype.findlast@1.2.5 no known CVEs surface: none size: 17 files · 28.4KB A array.prototype.findlastindex@1.2.6 no known CVEs surface: none size: 16 files · 29.8KB A array.prototype.flat@1.3.3 no known CVEs surface: none size: 17 files · 19.3KB A array.prototype.flatmap@1.3.3 no known CVEs surface: none size: 17 files · 20.4KB A array.prototype.tosorted@1.1.4 no known CVEs surface: none size: 16 files · 20.4KB A arraybuffer.prototype.slice@1.0.4 no known CVEs surface: none size: 16 files · 21.2KB A asn1.js@5.4.1 no known CVEs surface: none size: 18 files · 48.7KB A ast-types-flow@0.0.8 no known CVEs surface: none size: 4 files · 123.0KB A astral-regex@2.0.0 no known CVEs surface: none size: 5 files · 3.3KB A async-function@1.0.0 no known CVEs surface: none size: 15 files · 9.4KB A asynckit@0.4.0 no known CVEs surface: none size: 20 files · 26.7KB A available-typed-arrays@1.0.7 no known CVEs surface: none size: 11 files · 19.9KB A axobject-query@4.1.0 no known CVEs surface: none size: 134 files · 108.3KB A babel-jest@30.1.2 no known CVEs surface: none size: 7 files · 15.2KB A babel-plugin-formatjs@10.5.1 no known CVEs surface: none size: 19 files · 26.7KB A babel-plugin-jest-hoist@30.0.1 no known CVEs surface: none size: 6 files · 13.6KB A babel-plugin-macros@3.1.0 no known CVEs surface: none size: 5 files · 37.1KB A babel-plugin-polyfill-corejs2@0.4.17 no known CVEs surface: none size: 9 files · 80.7KB A babel-plugin-polyfill-corejs3@0.13.0 no known CVEs surface: none size: 15 files · 218.7KB A babel-plugin-polyfill-corejs3@0.14.2 no known CVEs surface: none size: 15 files · 217.9KB A babel-plugin-polyfill-regenerator@0.6.8 no known CVEs surface: none size: 6 files · 9.8KB A babel-plugin-styled-components@2.1.4 no known CVEs surface: none size: 19 files · 41.6KB A babel-preset-current-node-syntax@1.2.0 no known CVEs surface: none size: 6 files · 7.3KB A babel-preset-jest@30.0.1 no known CVEs surface: none size: 4 files · 2.7KB A balanced-match@1.0.2 no known CVEs surface: none size: 5 files · 6.8KB A balanced-match@2.0.0 no known CVEs surface: none size: 5 files · 6.9KB A balanced-match@4.0.4 no known CVEs surface: none size: 13 files · 17.2KB A base-x@3.0.11 no known CVEs surface: none size: 5 files · 9.3KB A base64-js@1.5.1 no known CVEs surface: none size: 6 files · 9.4KB A batch@0.6.1 no known CVEs surface: none size: 8 files · 7.1KB A big.js@5.2.2 no known CVEs surface: none size: 7 files · 62.4KB A binary-extensions@2.3.0 no known CVEs surface: none size: 7 files · 4.9KB A bind-event-listener@3.0.0 no known CVEs surface: none size: 15 files · 20.3KB A bn.js@5.2.3 no known CVEs surface: none size: 4 files · 97.0KB A bn.js@4.12.3 no known CVEs surface: none size: 6 files · 97.7KB A bonjour-service@1.3.0 no known CVEs surface: none size: 40 files · 65.0KB A boolbase@1.0.0 no known CVEs surface: none size: 3 files · 1.3KB A braces@3.0.3 no known CVEs surface: none size: 10 files · 43.6KB A brorand@1.1.0 no known CVEs surface: none size: 5 files · 3.4KB A browserify-aes@1.2.0 no known CVEs surface: none size: 22 files · 29.1KB A browserify-cipher@1.0.1 no known CVEs surface: none size: 7 files · 6.3KB A browserify-des@1.0.2 no known CVEs surface: none size: 7 files · 6.1KB A browserify-rsa@4.1.1 no known CVEs surface: none size: 5 files · 10.4KB A browserify-sign@4.2.5 no known CVEs surface: none size: 12 files · 38.0KB A browserslist-generator@1.0.66 no known CVEs surface: none size: 11 files · 461.3KB A bser@2.1.1 no known CVEs surface: none size: 3 files · 17.6KB A buffer@6.0.3 no known CVEs surface: none size: 6 files · 89.1KB A buffer@5.7.1 no known CVEs surface: none size: 6 files · 80.6KB A buffer-equal@0.0.1 no known CVEs surface: none size: 6 files · 3.0KB A buffer-from@1.1.2 no known CVEs surface: none size: 4 files · 4.9KB A buffer-xor@1.0.3 no known CVEs surface: none size: 10 files · 4.7KB A bundle-name@4.1.0 no known CVEs surface: none size: 4 files · 3.1KB A bytes@3.1.2 no known CVEs surface: none size: 5 files · 12.0KB A call-bind@1.0.9 no known CVEs surface: none size: 12 files · 23.5KB A call-bind-apply-helpers@1.0.2 no known CVEs surface: none size: 21 files · 15.6KB A call-bound@1.0.4 no known CVEs surface: none size: 11 files · 16.7KB A callsites@3.1.0 no known CVEs surface: none size: 5 files · 6.2KB A camel-case@4.1.2 no known CVEs surface: none size: 15 files · 13.9KB A camelcase@5.3.1 no known CVEs surface: none size: 5 files · 7.3KB A camelcase@6.3.0 no known CVEs surface: none size: 5 files · 11.4KB A camelize@1.0.1 no known CVEs surface: none size: 9 files · 12.2KB A caniuse-lite@1.0.30001792 no known CVEs surface: none size: 839 files · 2.3MB A chalk@5.3.0 no known CVEs surface: none size: 12 files · 42.7KB A chalk@4.1.2 no known CVEs surface: none size: 7 files · 34.2KB A char-regex@1.0.2 no known CVEs surface: none size: 5 files · 4.8KB A chart.js@3.8.2 no known CVEs surface: none size: 40 files · 1.1MB A chokidar@4.0.3 no known CVEs surface: none size: 12 files · 145.3KB A chokidar@3.6.0 no known CVEs surface: none size: 8 files · 88.1KB A chrome-trace-event@1.0.4 no known CVEs surface: none size: 6 files · 9.6KB A ci-info@4.4.0 no known CVEs surface: none size: 7 files · 29.3KB A ci-info@3.9.0 no known CVEs surface: none size: 7 files · 25.5KB A cipher-base@1.0.7 no known CVEs surface: none size: 8 files · 15.9KB A classnames@2.3.2 no known CVEs surface: none size: 10 files · 18.4KB A cliui@8.0.1 no known CVEs surface: none size: 9 files · 31.6KB A clone@2.1.2 no known CVEs surface: none size: 6 files · 15.5KB A clone-deep@4.0.1 no known CVEs surface: none size: 4 files · 7.8KB A clsx@1.2.1 no known CVEs surface: none size: 7 files · 5.5KB A clsx@2.1.1 no known CVEs surface: none size: 10 files · 8.4KB A co@4.6.0 no known CVEs surface: none size: 5 files · 15.6KB A collect-v8-coverage@1.0.3 no known CVEs surface: none size: 6 files · 5.4KB A color-contrast-checker@2.1.0 no known CVEs surface: none size: 8 files · 36.0KB A color-convert@2.0.1 no known CVEs surface: none size: 7 files · 26.6KB A color-hash@2.0.1 no known CVEs surface: none size: 22 files · 90.1KB A color-name@1.1.4 no known CVEs surface: none size: 4 files · 6.5KB A colord@2.9.3 no known CVEs surface: none size: 44 files · 111.1KB A colorette@2.0.20 no known CVEs surface: none size: 6 files · 16.6KB A combined-stream@1.0.8 no known CVEs surface: none size: 5 files · 11.2KB A commondir@1.0.1 no known CVEs surface: none size: 6 files · 4.7KB A compatfactory@0.0.13 no known CVEs surface: none size: 9 files · 254.1KB A compressible@2.0.18 no known CVEs surface: none size: 5 files · 7.2KB A compression@1.8.1 no known CVEs surface: none size: 5 files · 27.0KB A compute-scroll-into-view@3.1.1 no known CVEs surface: none size: 9 files · 93.1KB A concat-map@0.0.1 no known CVEs surface: none size: 7 files · 4.7KB A connect-history-api-fallback@2.0.0 no known CVEs surface: none size: 4 files · 10.0KB A content-disposition@0.5.4 no known CVEs surface: none size: 5 files · 18.7KB A content-type@1.0.5 no known CVEs surface: none size: 5 files · 10.2KB A convert-source-map@2.0.0 no known CVEs surface: none size: 4 files · 15.5KB A convert-source-map@1.9.0 no known CVEs surface: none size: 4 files · 11.2KB A cookie@0.7.2 no known CVEs surface: none size: 5 files · 22.8KB A cookie-signature@1.0.7 no known CVEs surface: none size: 4 files · 4.0KB A copy-to-clipboard@3.3.3 no known CVEs surface: none size: 8 files · 14.8KB A copy-webpack-plugin@14.0.0 no known CVEs surface: none size: 8 files · 79.9KB A core-js-compat@3.49.0 no known CVEs surface: none size: 17 files · 816.8KB A core-util-is@1.0.3 no known CVEs surface: none size: 4 files · 4.9KB A cosmiconfig@7.1.0 no known CVEs surface: none size: 43 files · 89.9KB A country-list@2.2.0 no known CVEs surface: none size: 5 files · 16.3KB A create-ecdh@4.0.4 no known CVEs surface: none size: 6 files · 5.3KB A create-hash@1.2.0 no known CVEs surface: none size: 8 files · 5.1KB A create-hmac@1.1.7 no known CVEs surface: none size: 6 files · 5.7KB A crosspath@1.0.0 no known CVEs surface: none size: 9 files · 41.0KB A css-box-model@1.2.1 no known CVEs surface: none size: 10 files · 30.9KB A css-color-keywords@1.0.0 no known CVEs surface: none size: 5 files · 6.3KB A css-color-names@1.0.1 no known CVEs surface: none size: 4 files · 6.3KB A css-functions-list@3.3.3 no known CVEs surface: none size: 11 files · 21.1KB A css-in-js-utils@3.1.0 no known CVEs surface: none size: 47 files · 59.7KB A css-select@4.3.0 no known CVEs surface: none size: 39 files · 80.5KB A css-to-react-native@3.2.0 no known CVEs surface: none size: 44 files · 87.9KB A css-tree@1.1.3 no known CVEs surface: none size: 123 files · 966.0KB A css-tree@3.2.1 no known CVEs surface: none size: 278 files · 1.3MB A css-vars-ponyfill@2.4.8 no known CVEs surface: none size: 13 files · 628.0KB A css-what@6.2.2 no known CVEs surface: none size: 27 files · 64.5KB A css.escape@1.5.1 no known CVEs surface: none size: 4 files · 6.3KB A cssfontparser@1.2.1 no known CVEs surface: none size: 4 files · 8.2KB A csso@4.2.0 no known CVEs surface: none size: 46 files · 579.1KB A cssstyle@4.6.0 no known CVEs surface: none size: 86 files · 211.7KB A csstype@3.2.3 no known CVEs surface: none size: 5 files · 1.2MB A damerau-levenshtein@1.0.8 no known CVEs surface: none size: 7 files · 11.5KB A data-urls@5.0.0 no known CVEs surface: none size: 5 files · 7.7KB A data-view-buffer@1.0.2 no known CVEs surface: none size: 11 files · 11.1KB A data-view-byte-length@1.0.2 no known CVEs surface: none size: 11 files · 11.1KB A data-view-byte-offset@1.0.1 no known CVEs surface: none size: 11 files · 10.9KB A date-fns@2.29.3 no known CVEs surface: none size: 5,722 files · 6.6MB A debug@4.4.3 no known CVEs surface: none size: 7 files · 41.8KB A debug@3.2.7 no known CVEs surface: none size: 9 files · 52.0KB A dedent@1.7.2 no known CVEs surface: none size: 8 files · 27.7KB A deep-is@0.1.4 no known CVEs surface: none size: 9 files · 7.9KB A deepmerge@4.3.1 no known CVEs surface: none size: 11 files · 30.4KB A define-data-property@1.1.4 no known CVEs surface: none size: 11 files · 30.1KB A define-lazy-prop@3.0.0 no known CVEs surface: none size: 5 files · 4.3KB A define-properties@1.2.1 no known CVEs surface: none size: 9 files · 12.6KB A delayed-stream@1.0.0 no known CVEs surface: none size: 6 files · 7.8KB A dequal@2.0.3 no known CVEs surface: none size: 11 files · 13.9KB A des.js@1.1.0 no known CVEs surface: none size: 15 files · 38.9KB A destroy@1.2.0 no known CVEs surface: none size: 4 files · 8.8KB A detect-newline@3.1.0 no known CVEs surface: none size: 5 files · 3.7KB A detect-node@2.1.0 no known CVEs surface: none size: 6 files · 2.7KB A devlop@1.1.0 no known CVEs surface: none size: 6 files · 21.5KB A diffie-hellman@5.0.3 no known CVEs surface: none size: 9 files · 16.9KB A dir-glob@3.0.1 no known CVEs surface: none size: 4 files · 5.3KB A dns-packet@5.6.1 no known CVEs surface: none size: 9 files · 59.6KB A doctrine@2.1.0 no known CVEs surface: none size: 9 files · 103.5KB A dom-accessibility-api@0.6.3 no known CVEs surface: none size: 67 files · 269.5KB A dom-converter@0.2.0 no known CVEs surface: none size: 7 files · 7.7KB A dom-helpers@3.4.0 no known CVEs surface: none size: 46 files · 44.7KB A dom-helpers@5.2.1 no known CVEs surface: none size: 284 files · 123.6KB A dom-serializer@2.0.0 no known CVEs surface: none size: 16 files · 28.1KB A dom-serializer@1.4.1 no known CVEs surface: none size: 16 files · 27.6KB A dom-walk@0.1.2 no known CVEs surface: none size: 6 files · 2.6KB A domelementtype@2.3.0 no known CVEs surface: none size: 10 files · 11.1KB A domhandler@5.0.3 no known CVEs surface: none size: 16 files · 73.6KB A domhandler@4.3.1 no known CVEs surface: none size: 9 files · 43.5KB A dot-case@3.0.4 no known CVEs surface: none size: 15 files · 10.2KB A dotenv@16.6.1 no known CVEs surface: none size: 12 files · 74.8KB A dotenv-expand@11.0.7 no known CVEs surface: none size: 9 files · 17.7KB A dunder-proto@1.0.1 no known CVEs surface: none size: 15 files · 12.7KB A eastasianwidth@0.2.0 no known CVEs surface: none size: 3 files · 13.3KB A ee-first@1.1.1 no known CVEs surface: none size: 4 files · 6.1KB A electron-to-chromium@1.5.354 no known CVEs surface: none size: 12 files · 185.2KB A emittery@0.13.1 no known CVEs surface: none size: 6 files · 45.4KB A emoji-datasource@6.1.1 no known CVEs surface: none size: 11 files · 23.5MB A emoji-datasource-apple@6.1.1 no known CVEs surface: none size: 3,324 files · 85.9MB A emoji-datasource-google@6.1.1 no known CVEs surface: none size: 3,323 files · 63.3MB A emoji-regex@10.2.1 no known CVEs surface: none size: 6 files · 28.5KB A emoji-regex@8.0.0 no known CVEs surface: none size: 8 files · 47.1KB A emoji-regex@9.2.2 no known CVEs surface: none size: 15 files · 95.6KB A emojis-list@3.0.0 no known CVEs surface: none size: 5 files · 52.3KB A encodeurl@2.0.0 no known CVEs surface: none size: 4 files · 6.8KB A enhanced-resolve@0.9.1 no known CVEs surface: none size: 22 files · 40.0KB A enhanced-resolve@5.21.3 no known CVEs surface: none size: 54 files · 357.9KB A entities@4.5.0 no known CVEs surface: none size: 68 files · 403.2KB A entities@2.2.0 no known CVEs surface: none size: 19 files · 56.3KB A entities@6.0.1 no known CVEs surface: none size: 86 files · 527.9KB A env-paths@2.2.1 no known CVEs surface: none size: 5 files · 9.9KB A environment@1.1.0 no known CVEs surface: none size: 5 files · 8.7KB A error-ex@1.3.4 no known CVEs surface: none size: 4 files · 8.8KB A error-stack-parser@2.1.4 no known CVEs surface: none size: 8 files · 35.1KB A es-abstract@1.24.2 no known CVEs surface: none size: 2,480 files · 2.7MB A es-define-property@1.0.1 no known CVEs surface: none size: 11 files · 10.0KB A es-errors@1.3.0 no known CVEs surface: none size: 22 files · 12.0KB A es-iterator-helpers@1.3.3 no known CVEs surface: none size: 137 files · 345.1KB A es-object-atoms@1.1.1 no known CVEs surface: none size: 16 files · 11.2KB A es-set-tostringtag@2.1.0 no known CVEs surface: none size: 10 files · 14.2KB A es-shim-unscopables@1.1.0 no known CVEs surface: none size: 12 files · 12.6KB A es-to-primitive@1.3.0 no known CVEs surface: none size: 23 files · 43.5KB A escalade@3.2.0 no known CVEs surface: none size: 11 files · 12.1KB A escape-html@1.0.3 no known CVEs surface: none size: 4 files · 3.6KB A escape-string-regexp@4.0.0 no known CVEs surface: none size: 5 files · 3.7KB A escape-string-regexp@2.0.0 no known CVEs surface: none size: 5 files · 3.2KB A eslint-import-resolver-node@0.3.10 no known CVEs surface: none size: 4 files · 5.3KB A eslint-plugin-formatjs@6.4.15 no known CVEs surface: none size: 9 files · 373.2KB A eslint-plugin-headers@1.3.4 no known CVEs surface: none size: 8 files · 42.8KB A eslint-plugin-no-only-tests@3.4.0 no known CVEs surface: none size: 5 files · 18.3KB A eslint-plugin-react-hooks@7.1.1 no known CVEs surface: none size: 8 files · 3.9MB A eslint-visitor-keys@3.4.3 no known CVEs surface: none size: 9 files · 31.5KB A eslint-visitor-keys@4.2.1 no known CVEs surface: none size: 9 files · 36.3KB A eslint-visitor-keys@5.0.1 no known CVEs surface: none size: 9 files · 31.2KB A espree@10.4.0 no known CVEs surface: none size: 10 files · 78.5KB A esquery@1.7.0 no known CVEs surface: none size: 13 files · 1.0MB A esrecurse@4.3.0 no known CVEs surface: none size: 5 files · 13.2KB A estraverse@5.3.0 no known CVEs surface: none size: 6 files · 36.2KB A estraverse@4.3.0 no known CVEs surface: none size: 6 files · 35.5KB A estree-walker@2.0.2 no known CVEs surface: none size: 17 files · 49.1KB A estree-walker@0.6.1 no known CVEs surface: none size: 7 files · 9.3KB A estree-walker@1.0.1 no known CVEs surface: none size: 8 files · 14.8KB A esutils@2.0.3 no known CVEs surface: none size: 7 files · 49.4KB A etag@1.8.1 no known CVEs surface: none size: 5 files · 10.6KB A event-target-shim@5.0.1 no known CVEs surface: none size: 10 files · 184.5KB A eventemitter3@4.0.7 no known CVEs surface: none size: 8 files · 37.1KB A events@3.3.0 no known CVEs surface: none size: 32 files · 80.8KB A evp_bytestokey@1.0.3 no known CVEs surface: none size: 4 files · 5.0KB A exif2css@1.3.0 no known CVEs surface: none size: 6 files · 16.0KB A expect@30.4.1 no known CVEs surface: none size: 6 files · 128.3KB A expect@30.1.2 no known CVEs surface: none size: 7 files · 143.6KB A extend@3.0.2 no known CVEs surface: none size: 10 files · 22.9KB A external-remotes-plugin@1.0.0 no known CVEs surface: none size: 4 files · 5.0KB A fast-deep-equal@3.1.3 no known CVEs surface: none size: 11 files · 12.7KB A fast-equals@5.4.0 no known CVEs surface: none size: 25 files · 275.7KB A fast-glob@3.3.3 no known CVEs surface: none size: 55 files · 96.1KB A fast-levenshtein@2.0.6 no known CVEs surface: none size: 4 files · 9.2KB A fast-shallow-equal@1.0.0 no known CVEs surface: none size: 6 files · 3.3KB A fastq@1.20.1 no known CVEs surface: none size: 14 files · 46.8KB A fdir@6.5.0 no known CVEs surface: none size: 7 files · 52.0KB A file-entry-cache@8.0.0 no known CVEs surface: none size: 4 files · 15.6KB A file-entry-cache@9.1.0 no known CVEs surface: none size: 4 files · 15.8KB A fill-range@7.1.1 no known CVEs surface: none size: 4 files · 16.4KB A finalhandler@1.3.2 no known CVEs surface: none size: 6 files · 18.7KB A find-cache-dir@3.3.2 no known CVEs surface: none size: 4 files · 6.6KB A find-up@5.0.0 no known CVEs surface: none size: 5 files · 11.5KB A find-up@4.1.0 no known CVEs surface: none size: 5 files · 11.3KB A find-yarn-workspace-root@2.0.0 no known CVEs surface: none size: 6 files · 16.3KB A flatted@3.4.2 no known CVEs surface: none size: 15 files · 37.6KB A font-awesome@4.7.0 no known CVEs surface: none size: 41 files · 1.3MB A for-each@0.3.5 no known CVEs surface: none size: 13 files · 23.4KB A forwarded@0.2.0 no known CVEs surface: none size: 5 files · 5.7KB A fresh@0.5.2 no known CVEs surface: none size: 5 files · 9.9KB A fs.realpath@1.0.0 no known CVEs surface: none size: 5 files · 13.1KB A function-bind@1.1.2 no known CVEs surface: none size: 12 files · 30.7KB A function.prototype.name@1.1.8 no known CVEs surface: none size: 19 files · 26.4KB A functions-have-names@1.2.3 no known CVEs surface: none size: 10 files · 16.3KB A generator-function@2.0.1 no known CVEs surface: none size: 15 files · 9.8KB A gensync@1.0.0-beta.2 no known CVEs surface: none size: 7 files · 28.2KB A get-caller-file@2.0.5 no known CVEs surface: none size: 6 files · 4.6KB A get-intrinsic@1.3.0 no known CVEs surface: none size: 9 files · 45.5KB A get-package-type@0.1.0 no known CVEs surface: none size: 9 files · 5.9KB A get-proto@1.0.1 no known CVEs surface: none size: 15 files · 10.6KB A get-stream@6.0.1 no known CVEs surface: none size: 6 files · 11.9KB A get-symbol-description@1.1.0 no known CVEs surface: none size: 13 files · 16.8KB A glob@7.2.3 no known CVEs surface: none size: 6 files · 53.8KB A glob-parent@6.0.2 no known CVEs surface: none size: 4 files · 7.5KB A glob-parent@5.1.2 no known CVEs surface: none size: 5 files · 11.8KB A glob-to-regexp@0.4.1 no known CVEs surface: none size: 5 files · 17.7KB A global@4.4.0 no known CVEs surface: none size: 8 files · 3.4KB A global-modules@2.0.0 no known CVEs surface: none size: 4 files · 6.4KB A global-prefix@3.0.0 no known CVEs surface: none size: 4 files · 8.1KB A globals@13.24.0 no known CVEs surface: none size: 6 files · 50.9KB A globals@14.0.0 no known CVEs surface: none size: 6 files · 114.5KB A globby@11.1.0 no known CVEs surface: none size: 7 files · 21.2KB A globjoin@0.1.4 no known CVEs surface: none size: 5 files · 4.4KB A gopd@1.2.0 no known CVEs surface: none size: 12 files · 9.6KB A harmony-reflect@1.6.2 no known CVEs surface: none size: 4 files · 86.6KB A has-bigints@1.1.0 no known CVEs surface: none size: 11 files · 14.5KB A has-flag@4.0.0 no known CVEs surface: none size: 5 files · 4.3KB A has-flag@3.0.0 no known CVEs surface: none size: 4 files · 3.1KB A has-property-descriptors@1.0.2 no known CVEs surface: none size: 9 files · 10.7KB A has-proto@1.2.0 no known CVEs surface: none size: 16 files · 14.1KB A has-symbols@1.1.0 no known CVEs surface: none size: 16 files · 22.9KB A has-tostringtag@1.0.2 no known CVEs surface: none size: 16 files · 17.2KB A hash-base@3.1.2 no known CVEs surface: none size: 7 files · 18.8KB A hash.js@1.1.7 no known CVEs surface: none size: 19 files · 40.7KB A hasown@2.0.3 no known CVEs surface: none size: 10 files · 9.8KB A helpertypes@0.0.18 no known CVEs surface: none size: 5 files · 32.0KB A hermes-estree@0.25.1 no known CVEs surface: none size: 14 files · 333.5KB A hermes-parser@0.25.1 no known CVEs surface: none size: 50 files · 988.7KB A history@4.10.1 no known CVEs surface: none size: 27 files · 119.2KB A hmac-drbg@1.0.1 no known CVEs surface: none size: 7 files · 24.4KB A hoist-non-react-statics@3.3.2 no known CVEs surface: none size: 8 files · 37.9KB A html-encoding-sniffer@4.0.0 no known CVEs surface: none size: 4 files · 11.4KB A html-escaper@2.0.2 no known CVEs surface: none size: 10 files · 12.8KB A html-tags@3.3.1 no known CVEs surface: none size: 9 files · 5.8KB A html-to-react@1.6.0 no known CVEs surface: none size: 38 files · 61.6KB A html-webpack-plugin@5.5.0 no known CVEs surface: none size: 15 files · 148.4KB A htmlparser2@8.0.2 no known CVEs surface: none size: 36 files · 258.8KB A http-errors@2.0.1 no known CVEs surface: none size: 5 files · 18.6KB A http-errors@1.8.1 no known CVEs surface: none size: 5 files · 17.9KB A http-parser-js@0.5.10 no known CVEs surface: none size: 5 files · 25.9KB A human-signals@2.1.0 no known CVEs surface: none size: 13 files · 43.3KB A hyperdyperid@1.2.0 no known CVEs surface: none size: 24 files · 840.4KB A hyphenate-style-name@1.1.0 no known CVEs surface: none size: 6 files · 4.9KB A iconv-lite@0.4.24 no known CVEs surface: none size: 26 files · 328.1KB A iconv-lite@0.6.3 no known CVEs surface: none size: 33 files · 340.3KB A icss-utils@5.1.0 no known CVEs surface: none size: 9 files · 9.8KB A identity-obj-proxy@3.0.0 no known CVEs surface: none size: 20 files · 8.2KB A ieee754@1.2.1 no known CVEs surface: none size: 5 files · 6.6KB A ignore@5.3.2 no known CVEs surface: none size: 6 files · 52.4KB A ignore@6.0.2 no known CVEs surface: none size: 6 files · 52.4KB A ignore@7.0.5 no known CVEs surface: none size: 6 files · 61.9KB A image-q@4.0.0 no known CVEs surface: none size: 140 files · 825.6KB A immediate@3.0.6 no known CVEs surface: none size: 7 files · 14.3KB A imurmurhash@0.1.4 no known CVEs surface: none size: 4 files · 11.6KB A indent-string@4.0.0 no known CVEs surface: none size: 5 files · 4.3KB A inflight@1.0.6 no known CVEs surface: none size: 4 files · 3.7KB A inherits@2.0.4 no known CVEs surface: none size: 5 files · 3.9KB A ini@1.3.8 no known CVEs surface: none size: 4 files · 9.1KB A internal-slot@1.1.0 no known CVEs surface: none size: 13 files · 22.5KB A interpret@1.4.0 no known CVEs surface: none size: 6 files · 14.5KB A interpret@3.1.1 no known CVEs surface: none size: 6 files · 21.0KB A intersection-observer@0.12.2 no known CVEs surface: none size: 6 files · 157.9KB A intl-messageformat@10.7.18 no known CVEs surface: none size: 21 files · 217.5KB A invariant@2.2.4 no known CVEs surface: none size: 7 files · 7.5KB A ipaddr.js@2.1.0 no known CVEs surface: none size: 7 files · 58.8KB A ipaddr.js@1.9.1 no known CVEs surface: none size: 6 files · 41.2KB A is-array-buffer@3.0.5 no known CVEs surface: none size: 11 files · 15.7KB A is-arrayish@0.2.1 no known CVEs surface: none size: 8 files · 4.0KB A is-async-function@2.1.1 no known CVEs surface: none size: 11 files · 22.8KB A is-bigint@1.1.0 no known CVEs surface: none size: 11 files · 17.5KB A is-binary-path@2.1.0 no known CVEs surface: none size: 5 files · 3.0KB A is-boolean-object@1.2.2 no known CVEs surface: none size: 12 files · 25.9KB A is-builtin-module@3.2.1 no known CVEs surface: none size: 5 files · 3.8KB A is-callable@1.2.7 no known CVEs surface: none size: 10 files · 28.3KB A is-data-view@1.0.2 no known CVEs surface: none size: 12 files · 13.1KB A is-date-object@1.1.0 no known CVEs surface: none size: 12 files · 23.6KB A is-extglob@2.1.1 no known CVEs surface: none size: 4 files · 6.1KB A is-finalizationregistry@1.1.1 no known CVEs surface: none size: 11 files · 16.8KB A is-fullwidth-code-point@3.0.0 no known CVEs surface: none size: 5 files · 4.9KB A is-function@1.0.2 no known CVEs surface: none size: 5 files · 4.2KB A is-generator-fn@2.1.0 no known CVEs surface: none size: 5 files · 3.2KB A is-generator-function@1.1.2 no known CVEs surface: none size: 13 files · 35.3KB A is-glob@4.0.3 no known CVEs surface: none size: 4 files · 13.3KB A is-map@2.0.3 no known CVEs surface: none size: 13 files · 19.9KB A is-module@1.0.0 no known CVEs surface: none size: 5 files · 2.8KB A is-negative-zero@2.0.3 no known CVEs surface: none size: 12 files · 26.5KB A is-number@7.0.0 no known CVEs surface: none size: 4 files · 9.4KB A is-number-object@1.1.1 no known CVEs surface: none size: 12 files · 24.6KB A is-plain-obj@3.0.0 no known CVEs surface: none size: 5 files · 3.7KB A is-plain-object@5.0.0 no known CVEs surface: none size: 6 files · 8.9KB A is-plain-object@2.0.4 no known CVEs surface: none size: 5 files · 7.3KB A is-potential-custom-element-name@1.0.1 no known CVEs surface: none size: 4 files · 3.8KB A is-reference@1.2.1 no known CVEs surface: none size: 6 files · 6.2KB A is-regex@1.2.1 no known CVEs surface: none size: 11 files · 34.9KB A is-set@2.0.3 no known CVEs surface: none size: 13 files · 19.2KB A is-shared-array-buffer@1.0.4 no known CVEs surface: none size: 11 files · 16.7KB A is-stream@2.0.1 no known CVEs surface: none size: 5 files · 5.8KB A is-string@1.1.1 no known CVEs surface: none size: 11 files · 23.4KB A is-symbol@1.1.1 no known CVEs surface: none size: 12 files · 26.4KB A is-typed-array@1.1.15 no known CVEs surface: none size: 12 files · 21.4KB A is-weakmap@2.0.2 no known CVEs surface: none size: 12 files · 20.1KB A is-weakref@1.1.1 no known CVEs surface: none size: 11 files · 15.5KB A is-weakset@2.0.4 no known CVEs surface: none size: 13 files · 19.3KB A is-wsl@2.2.0 no known CVEs surface: none size: 5 files · 3.7KB A is-wsl@3.1.1 no known CVEs surface: none size: 5 files · 3.6KB A isarray@2.0.5 no known CVEs surface: none size: 4 files · 3.3KB A isarray@1.0.0 no known CVEs surface: none size: 8 files · 3.8KB A isobject@3.0.1 no known CVEs surface: none size: 5 files · 6.8KB A istanbul-lib-coverage@3.2.2 no known CVEs surface: none size: 10 files · 33.6KB A istanbul-lib-source-maps@5.0.6 no known CVEs surface: none size: 11 files · 36.8KB A iterator.prototype@1.1.5 no known CVEs surface: none size: 8 files · 12.3KB A jackspeak@3.4.3 no known CVEs surface: none size: 21 files · 290.1KB A jest-canvas-mock@2.5.0 no known CVEs surface: none size: 17 files · 108.7KB A jest-changed-files@30.0.5 no known CVEs surface: none size: 7 files · 18.0KB A jest-circus@30.1.3 no known CVEs surface: none size: 12 files · 187.4KB A jest-diff@30.4.1 no known CVEs surface: none size: 6 files · 78.9KB A jest-diff@30.1.2 no known CVEs surface: none size: 7 files · 82.7KB A jest-docblock@30.0.1 no known CVEs surface: none size: 6 files · 9.7KB A jest-each@30.1.0 no known CVEs surface: none size: 7 files · 37.3KB A jest-environment-node@30.1.2 no known CVEs surface: none size: 6 files · 15.3KB A jest-leak-detector@30.1.0 no known CVEs surface: none size: 7 files · 7.2KB A jest-matcher-utils@30.4.1 no known CVEs surface: none size: 6 files · 32.0KB A jest-matcher-utils@30.1.2 no known CVEs surface: none size: 7 files · 35.3KB A jest-message-util@30.1.0 no known CVEs surface: none size: 6 files · 21.2KB A jest-message-util@30.4.1 no known CVEs surface: none size: 5 files · 19.7KB A jest-mock@30.0.5 no known CVEs surface: none size: 7 files · 54.1KB A jest-mock@30.4.1 no known CVEs surface: none size: 6 files · 46.0KB A jest-regex-util@30.0.1 no known CVEs surface: none size: 5 files · 4.3KB A jest-regex-util@30.4.0 no known CVEs surface: none size: 5 files · 4.3KB A jest-resolve-dependencies@30.1.3 no known CVEs surface: none size: 6 files · 9.7KB A jest-validate@30.1.0 no known CVEs surface: none size: 7 files · 31.8KB A jest-watch-typeahead@3.0.1 no known CVEs surface: none size: 14 files · 18.6KB A jest-watcher@30.1.3 no known CVEs surface: none size: 6 files · 28.0KB A jpeg-js@0.4.4 no known CVEs surface: none size: 9 files · 74.2KB A js-tokens@4.0.0 no known CVEs surface: none size: 5 files · 14.7KB A json-buffer@3.0.1 no known CVEs surface: none size: 6 files · 5.3KB A json-parse-even-better-errors@2.3.1 no known CVEs surface: none size: 5 files · 10.2KB A json-schema-traverse@0.4.1 no known CVEs surface: none size: 9 files · 19.1KB A json-schema-traverse@1.0.0 no known CVEs surface: none size: 12 files · 21.7KB A json-stable-stringify@1.3.0 no known CVEs surface: none size: 19 files · 35.6KB A json-stable-stringify-without-jsonify@1.0.1 no known CVEs surface: none size: 16 files · 13.9KB A json-stringify-safe@5.0.1 no known CVEs surface: none size: 9 files · 12.4KB A jsonc-parser@3.3.1 no known CVEs surface: none size: 19 files · 207.8KB A jsonify@0.0.1 no known CVEs surface: none size: 10 files · 18.9KB A kind-of@6.0.3 no known CVEs surface: none size: 5 files · 22.3KB A klaw-sync@6.0.0 no known CVEs surface: none size: 5 files · 10.2KB A known-css-properties@0.34.0 no known CVEs surface: none size: 7 files · 36.1KB A language-subtag-registry@0.3.23 no known CVEs surface: none size: 16 files · 1.5MB A language-tags@1.0.9 no known CVEs surface: none size: 5 files · 31.3KB A leven@3.1.0 no known CVEs surface: none size: 5 files · 5.2KB A levn@0.4.1 no known CVEs surface: none size: 6 files · 24.4KB A lie@3.1.1 no known CVEs surface: none size: 10 files · 43.8KB A lines-and-columns@1.2.4 no known CVEs surface: none size: 5 files · 5.3KB A localforage@1.10.0 no known CVEs surface: none size: 37 files · 456.7KB A localforage-observable@2.1.1 no known CVEs surface: none size: 19 files · 78.1KB A locate-path@6.0.0 no known CVEs surface: none size: 5 files · 6.9KB A locate-path@5.0.0 no known CVEs surface: none size: 5 files · 6.4KB A lodash.camelcase@4.3.0 no known CVEs surface: none size: 4 files · 21.4KB A lodash.debounce@4.0.8 no known CVEs surface: none size: 4 files · 13.6KB A lodash.isplainobject@4.0.6 no known CVEs surface: none size: 4 files · 6.7KB A lodash.truncate@4.4.2 no known CVEs surface: none size: 4 files · 19.4KB A lower-case@2.0.2 no known CVEs surface: none size: 15 files · 17.2KB A lowlight@3.3.0 no known CVEs surface: none size: 14 files · 58.2KB A lru-cache@5.1.1 no known CVEs surface: none size: 4 files · 15.3KB A luxon@3.6.1 no known CVEs surface: none size: 40 files · 4.3MB A magic-string@0.25.9 no known CVEs surface: none size: 10 files · 364.3KB A magic-string@0.26.7 no known CVEs surface: none size: 10 files · 391.4KB A magic-string@0.30.21 no known CVEs surface: none size: 11 files · 449.0KB A make-dir@3.1.0 no known CVEs surface: none size: 5 files · 9.8KB A make-dir@4.0.0 no known CVEs surface: none size: 5 files · 9.7KB A makeerror@1.0.12 no known CVEs surface: none size: 5 files · 5.9KB A mark.js@8.11.1 no known CVEs surface: none size: 239 files · 1.9MB A math-intrinsics@1.1.0 no known CVEs surface: none size: 38 files · 16.9KB A mathml-tag-names@2.1.3 no known CVEs surface: none size: 4 files · 7.5KB A md5.js@1.3.5 no known CVEs surface: none size: 4 files · 7.5KB A mdn-data@2.0.14 no known CVEs surface: none size: 23 files · 548.6KB A mdn-data@2.28.1 no known CVEs surface: none size: 25 files · 721.6KB A mdn-data@2.27.1 no known CVEs surface: none size: 25 files · 715.2KB A media-typer@0.3.0 no known CVEs surface: none size: 5 files · 10.8KB A memoize-one@6.0.0 no known CVEs surface: none size: 13 files · 34.8KB A memoize-one@5.2.1 no known CVEs surface: none size: 13 files · 21.3KB A merge-descriptors@1.0.3 no known CVEs surface: none size: 5 files · 5.0KB A merge-stream@2.0.0 no known CVEs surface: none size: 4 files · 4.2KB A merge2@1.4.1 no known CVEs surface: none size: 4 files · 8.7KB A micromatch@4.0.8 no known CVEs surface: none size: 4 files · 55.3KB A mime-db@1.54.0 no known CVEs surface: none size: 6 files · 220.3KB A mime-db@1.52.0 no known CVEs surface: none size: 6 files · 200.7KB A mime-types@2.1.35 no known CVEs surface: none size: 5 files · 17.8KB A mime-types@3.0.2 no known CVEs surface: none size: 6 files · 22.3KB A mimic-fn@2.1.0 no known CVEs surface: none size: 5 files · 4.4KB A min-document@2.19.2 no known CVEs surface: none size: 26 files · 53.6KB A min-indent@1.0.1 no known CVEs surface: none size: 4 files · 2.9KB A minimalistic-assert@1.0.1 no known CVEs surface: none size: 4 files · 1.5KB A minimalistic-crypto-utils@1.0.1 no known CVEs surface: none size: 6 files · 4.6KB A minimatch@9.0.9 no known CVEs surface: none size: 53 files · 465.2KB A minimatch@3.1.5 no known CVEs surface: none size: 4 files · 36.8KB A minimatch@10.2.5 no known CVEs surface: none size: 53 files · 523.6KB A minimist@1.2.8 no known CVEs surface: none size: 24 files · 53.2KB A minipass@7.1.3 no known CVEs surface: none size: 13 files · 358.2KB A moment@2.30.1 no known CVEs surface: none size: 539 files · 4.1MB A moo-color@1.0.3 no known CVEs surface: none size: 39 files · 225.2KB A ms@2.1.3 no known CVEs surface: none size: 4 files · 6.6KB A ms@2.0.0 no known CVEs surface: none size: 4 files · 6.1KB A nano-css@5.6.2 no known CVEs surface: none size: 108 files · 187.5KB A natural-compare@1.4.0 no known CVEs surface: none size: 3 files · 5.5KB A negotiator@0.6.4 no known CVEs surface: none size: 9 files · 27.9KB A negotiator@0.6.3 no known CVEs surface: none size: 9 files · 26.7KB A neo-async@2.6.2 no known CVEs surface: none size: 119 files · 290.7KB A no-case@3.0.4 no known CVEs surface: none size: 15 files · 24.5KB A node-exports-info@1.6.0 no known CVEs surface: none size: 36 files · 42.0KB A node-int64@0.4.0 no known CVEs surface: none size: 6 files · 15.9KB A node-releases@2.0.44 no known CVEs surface: none size: 5 files · 41.5KB A normalize-path@3.0.0 no known CVEs surface: none size: 4 files · 9.0KB A npm-run-path@4.0.1 no known CVEs surface: none size: 5 files · 7.9KB A nth-check@2.1.1 no known CVEs surface: none size: 28 files · 41.6KB A nullthrows@1.1.1 no known CVEs surface: none size: 6 files · 2.8KB A nwsapi@2.2.23 no known CVEs surface: none size: 7 files · 84.5KB A object-assign@4.1.1 no known CVEs surface: none size: 4 files · 5.4KB A object-inspect@1.13.4 no known CVEs surface: none size: 34 files · 100.5KB A object-keys@1.1.1 no known CVEs surface: none size: 11 files · 25.9KB A object-path@0.11.8 no known CVEs surface: none size: 10 files · 59.5KB A object.assign@4.1.7 no known CVEs surface: none size: 21 files · 76.5KB A object.entries@1.1.9 no known CVEs surface: none size: 18 files · 32.9KB A object.fromentries@2.0.8 no known CVEs surface: none size: 16 files · 15.9KB A object.groupby@1.0.3 no known CVEs surface: none size: 16 files · 14.2KB A object.values@1.2.1 no known CVEs surface: none size: 17 files · 31.9KB A obuf@1.1.2 no known CVEs surface: none size: 5 files · 18.7KB A on-finished@2.4.1 no known CVEs surface: none size: 5 files · 13.4KB A once@1.4.0 no known CVEs surface: none size: 4 files · 4.0KB A onetime@5.1.2 no known CVEs surface: none size: 5 files · 6.0KB A optionator@0.9.4 no known CVEs surface: none size: 7 files · 49.0KB A orderedmap@2.1.1 no known CVEs surface: none size: 7 files · 14.5KB A own-keys@1.0.1 no known CVEs surface: none size: 11 files · 9.6KB A p-limit@3.1.0 no known CVEs surface: none size: 5 files · 7.6KB A p-limit@2.3.0 no known CVEs surface: none size: 5 files · 7.2KB A p-locate@5.0.0 no known CVEs surface: none size: 5 files · 7.1KB A p-locate@4.1.0 no known CVEs surface: none size: 5 files · 7.1KB A p-queue@7.3.0 no known CVEs surface: none size: 13 files · 43.5KB A p-retry@6.2.1 no known CVEs surface: none size: 5 files · 12.9KB A p-timeout@5.1.0 no known CVEs surface: none size: 5 files · 11.1KB A p-try@2.2.0 no known CVEs surface: none size: 5 files · 4.3KB A package-json-from-dist@1.0.1 no known CVEs surface: none size: 13 files · 35.6KB A pako@1.0.11 no known CVEs surface: none size: 27 files · 769.8KB A param-case@3.0.4 no known CVEs surface: none size: 15 files · 10.0KB A parent-module@1.0.1 no known CVEs surface: none size: 4 files · 3.8KB A parse-asn1@5.1.9 no known CVEs surface: none size: 11 files · 25.9KB A parse-bmfont-ascii@1.0.6 no known CVEs surface: none size: 3 files · 5.1KB A parse-bmfont-binary@1.0.6 no known CVEs surface: none size: 4 files · 6.9KB A parse-bmfont-xml@1.1.6 no known CVEs surface: none size: 6 files · 8.7KB A parse-headers@2.0.6 no known CVEs surface: none size: 8 files · 6.7KB A parse-json@5.2.0 no known CVEs surface: none size: 4 files · 5.3KB A parse5@7.3.0 no known CVEs surface: none size: 64 files · 679.6KB A parseurl@1.3.3 no known CVEs surface: none size: 5 files · 10.1KB A pascal-case@3.1.2 no known CVEs surface: none size: 15 files · 14.4KB A path-exists@4.0.0 no known CVEs surface: none size: 5 files · 3.8KB A path-is-absolute@1.0.1 no known CVEs surface: none size: 4 files · 3.5KB A path-key@3.1.1 no known CVEs surface: none size: 5 files · 4.4KB A path-parse@1.0.7 no known CVEs surface: none size: 4 files · 4.4KB A path-scurry@1.11.1 no known CVEs surface: none size: 13 files · 522.9KB A path-to-regexp@1.9.0 no known CVEs surface: none size: 5 files · 23.7KB A path-to-regexp@0.1.13 no known CVEs surface: none size: 4 files · 6.5KB A path-type@4.0.0 no known CVEs surface: none size: 5 files · 5.3KB A pbkdf2@3.1.5 no known CVEs surface: none size: 15 files · 41.5KB A peek-readable@4.1.0 no known CVEs surface: none size: 11 files · 15.8KB A phin@3.7.1 no known CVEs surface: none size: 5 files · 12.9KB A picocolors@1.1.1 no known CVEs surface: none size: 7 files · 6.2KB A picomatch@4.0.4 no known CVEs surface: none size: 10 files · 89.3KB A picomatch@2.3.2 no known CVEs surface: none size: 9 files · 88.5KB A pirates@4.0.7 no known CVEs surface: none size: 5 files · 12.3KB A pkg-dir@4.2.0 no known CVEs surface: none size: 5 files · 4.6KB A pngjs@3.4.0 no known CVEs surface: none size: 28 files · 615.5KB A possible-typed-array-names@1.1.0 no known CVEs surface: none size: 10 files · 9.5KB A postcss-media-query-parser@0.2.3 no known CVEs surface: none size: 7 files · 24.2KB A postcss-modules-extract-imports@3.1.0 no known CVEs surface: none size: 5 files · 10.9KB A postcss-modules-local-by-default@4.2.0 no known CVEs surface: none size: 4 files · 25.7KB A postcss-modules-scope@3.2.1 no known CVEs surface: none size: 5 files · 17.1KB A postcss-resolve-nested-selector@0.1.6 no known CVEs surface: none size: 5 files · 5.7KB A postcss-safe-parser@7.0.1 no known CVEs surface: none size: 5 files · 5.3KB A postcss-scss@4.0.9 no known CVEs surface: none size: 12 files · 19.0KB A postcss-selector-parser@6.1.2 no known CVEs surface: none size: 36 files · 182.1KB A postcss-selector-parser@7.1.1 no known CVEs surface: none size: 36 files · 183.1KB A postcss-sorting@8.0.2 no known CVEs surface: none size: 31 files · 48.1KB A postcss-value-parser@4.2.0 no known CVEs surface: none size: 9 files · 26.6KB A prelude-ls@1.2.1 no known CVEs surface: none size: 10 files · 35.9KB A pretty-error@4.0.0 no known CVEs surface: none size: 19 files · 57.5KB A pretty-format@27.5.1 no known CVEs surface: none size: 27 files · 68.4KB A pretty-format@30.0.5 no known CVEs surface: none size: 7 files · 61.9KB A pretty-format@30.4.1 no known CVEs surface: none size: 6 files · 59.6KB A process@0.11.10 no known CVEs surface: none size: 7 files · 15.0KB A process-nextick-args@2.0.1 no known CVEs surface: none size: 4 files · 3.1KB A prop-types-extra@1.1.1 no known CVEs surface: none size: 11 files · 15.8KB A propagate@2.0.1 no known CVEs surface: none size: 10 files · 10.7KB A prosemirror-changeset@2.4.1 no known CVEs surface: none size: 18 files · 123.2KB A prosemirror-commands@1.7.1 no known CVEs surface: none size: 12 files · 129.6KB A prosemirror-dropcursor@1.8.2 no known CVEs surface: none size: 10 files · 33.3KB A prosemirror-gapcursor@1.4.1 no known CVEs surface: none size: 13 files · 41.1KB A prosemirror-history@1.5.0 no known CVEs surface: none size: 12 files · 67.4KB A prosemirror-inputrules@1.5.1 no known CVEs surface: none size: 15 files · 48.0KB A prosemirror-keymap@1.2.3 no known CVEs surface: none size: 12 files · 25.6KB A prosemirror-model@1.25.9 no known CVEs surface: none size: 24 files · 517.6KB A prosemirror-schema-list@1.5.1 no known CVEs surface: none size: 12 files · 53.3KB A prosemirror-state@1.4.4 no known CVEs surface: none size: 16 files · 179.7KB A prosemirror-tables@1.8.5 no known CVEs surface: none size: 11 files · 446.6KB A prosemirror-transform@1.12.0 no known CVEs surface: none size: 21 files · 317.8KB A prosemirror-view@1.41.9 no known CVEs surface: none size: 24 files · 875.3KB A proxy-addr@2.0.7 no known CVEs surface: none size: 5 files · 15.0KB A public-encrypt@4.0.3 no known CVEs surface: none size: 31 files · 27.2KB A punycode@2.3.1 no known CVEs surface: none size: 5 files · 32.7KB A pure-rand@7.0.1 no known CVEs surface: none size: 93 files · 83.2KB A queue-microtask@1.2.3 no known CVEs surface: none size: 5 files · 8.2KB A raf-schd@4.0.3 no known CVEs surface: none size: 10 files · 10.4KB A randombytes@2.1.0 no known CVEs surface: none size: 8 files · 6.2KB A randomfill@1.0.4 no known CVEs surface: none size: 8 files · 6.7KB A range-parser@1.2.1 no known CVEs surface: none size: 5 files · 8.3KB A raw-body@2.5.3 no known CVEs surface: none size: 5 files · 18.0KB A react@18.2.0 no known CVEs surface: none size: 20 files · 308.7KB A react-beautiful-dnd@13.1.1 no known CVEs surface: none size: 239 files · 1.3MB A react-color@2.19.3 no known CVEs surface: none size: 199 files · 436.3KB A react-day-picker@8.3.6 no known CVEs surface: none size: 211 files · 1.0MB A react-dom@18.2.0 no known CVEs surface: none size: 32 files · 4.3MB A react-intl@7.1.14 no known CVEs surface: none size: 52 files · 230.9KB A react-is@18.2.0 no known CVEs surface: none size: 8 files · 23.5KB A react-is@18.3.1 no known CVEs surface: none size: 8 files · 23.5KB A react-is@19.2.6 no known CVEs surface: none size: 6 files · 13.2KB A react-is@16.13.1 no known CVEs surface: none size: 9 files · 23.4KB A react-is@17.0.2 no known CVEs surface: none size: 9 files · 24.2KB A react-lifecycles-compat@3.0.4 no known CVEs surface: none size: 8 files · 28.3KB A react-overlays@5.2.1 no known CVEs surface: none size: 94 files · 243.0KB A react-prop-types@0.4.0 no known CVEs surface: none size: 11 files · 16.1KB A react-redux@9.2.0 no known CVEs surface: none size: 47 files · 803.2KB A react-refresh@0.16.0 no known CVEs surface: none size: 9 files · 57.0KB A react-router@5.3.4 no known CVEs surface: none size: 54 files · 702.5KB A react-router-dom@5.3.4 no known CVEs surface: none size: 50 files · 624.6KB A react-select@5.9.0 no known CVEs surface: none size: 137 files · 706.9KB A react-transition-group@4.4.5 no known CVEs surface: none size: 36 files · 238.3KB A react-universal-interface@0.6.2 no known CVEs surface: none size: 32 files · 30.6KB A react-use@17.6.0 no known CVEs surface: none size: 511 files · 443.2KB A react-virtualized-auto-sizer@1.0.25 no known CVEs surface: none size: 16 files · 44.0KB A react-window@1.8.11 no known CVEs surface: none size: 25 files · 874.8KB A react-window-infinite-loader@1.0.10 no known CVEs surface: none size: 5 files · 28.2KB A reactcss@1.2.3 no known CVEs surface: none size: 25 files · 32.7KB A readable-stream@2.3.8 no known CVEs surface: none size: 24 files · 86.0KB A readable-stream@3.6.2 no known CVEs surface: none size: 25 files · 121.1KB A readable-stream@4.7.0 no known CVEs surface: none size: 35 files · 212.8KB A readable-web-to-node-stream@3.0.4 no known CVEs surface: none size: 4 files · 10.5KB A readdirp@4.1.2 no known CVEs surface: none size: 8 files · 35.3KB A readdirp@3.6.0 no known CVEs surface: none size: 5 files · 20.0KB A rebound@0.1.0 no known CVEs surface: none size: 31 files · 112.4KB A redent@3.0.0 no known CVEs surface: none size: 5 files · 3.5KB A redux@5.0.1 no known CVEs surface: none size: 28 files · 283.0KB A redux@4.2.1 no known CVEs surface: none size: 21 files · 171.5KB A redux-batched-actions@0.5.0 no known CVEs surface: none size: 8 files · 12.3KB A redux-mock-store@1.5.4 no known CVEs surface: none size: 7 files · 13.9KB A redux-persist@6.0.0 no known CVEs surface: none size: 133 files · 408.1KB A redux-persist-node-storage@2.0.0 no known CVEs surface: none size: 7 files · 7.2KB A redux-thunk@3.1.0 no known CVEs surface: none size: 9 files · 26.1KB A reflect.getprototypeof@1.0.10 no known CVEs surface: none size: 15 files · 22.8KB A regenerate@1.4.2 no known CVEs surface: none size: 4 files · 48.0KB A regenerate-unicode-properties@10.2.2 no known CVEs surface: none size: 453 files · 638.9KB A regenerator-runtime@0.13.10 no known CVEs surface: none size: 5 files · 27.0KB A regenerator-runtime@0.14.1 no known CVEs surface: none size: 5 files · 27.2KB A regexp.prototype.flags@1.5.4 no known CVEs surface: none size: 17 files · 43.3KB A regjsgen@0.8.0 no known CVEs surface: none size: 4 files · 14.6KB A relateurl@0.2.7 no known CVEs surface: none size: 21 files · 30.7KB A renderkid@3.0.0 no known CVEs surface: none size: 54 files · 165.5KB A require-from-string@2.0.2 no known CVEs surface: none size: 4 files · 3.3KB A resize-observer-polyfill@1.5.1 no known CVEs surface: none size: 23 files · 143.9KB A resolve-cwd@3.0.0 no known CVEs surface: none size: 5 files · 4.9KB A resolve-from@4.0.0 no known CVEs surface: none size: 4 files · 4.5KB A resolve-from@5.0.0 no known CVEs surface: none size: 5 files · 5.7KB A resolve-pathname@3.0.0 no known CVEs surface: none size: 9 files · 11.5KB A reusify@1.1.0 no known CVEs surface: none size: 14 files · 11.4KB A ripemd160@2.0.3 no known CVEs surface: none size: 6 files · 13.2KB A rollup-pluginutils@2.8.2 no known CVEs surface: none size: 15 files · 240.4KB A rope-sequence@1.3.4 no known CVEs surface: none size: 9 files · 27.3KB A rrweb-cssom@0.8.0 no known CVEs surface: none size: 30 files · 103.0KB A rtl-css-js@1.16.1 no known CVEs surface: none size: 22 files · 258.4KB A run-parallel@1.2.0 no known CVEs surface: none size: 4 files · 6.4KB A safe-array-concat@1.1.4 no known CVEs surface: none size: 11 files · 18.4KB A safe-buffer@5.2.1 no known CVEs surface: none size: 5 files · 31.3KB A safe-buffer@5.1.2 no known CVEs surface: none size: 5 files · 30.9KB A safe-push-apply@1.0.0 no known CVEs surface: none size: 11 files · 8.3KB A safe-regex-test@1.1.0 no known CVEs surface: none size: 11 files · 11.6KB A sax@1.6.0 no known CVEs surface: none size: 4 files · 59.6KB A saxes@6.0.0 no known CVEs surface: none size: 5 files · 159.9KB A scheduler@0.23.2 no known CVEs surface: none size: 17 files · 91.2KB A schema-utils@4.3.3 no known CVEs surface: none size: 21 files · 79.2KB A screenfull@5.2.0 no known CVEs surface: none size: 5 files · 17.7KB A scroll-into-view-if-needed@3.1.0 no known CVEs surface: none size: 10 files · 43.7KB A send@0.19.2 no known CVEs surface: none size: 6 files · 49.2KB A serialize-error@11.0.3 no known CVEs surface: none size: 7 files · 16.3KB A serialize-javascript@7.0.5 no known CVEs surface: none size: 4 files · 18.7KB A serve-index@1.9.2 no known CVEs surface: none size: 96 files · 85.1KB A serve-static@1.16.3 no known CVEs surface: none size: 5 files · 24.9KB A set-function-length@1.2.2 no known CVEs surface: none size: 12 files · 14.4KB A set-function-name@2.0.2 no known CVEs surface: none size: 9 files · 16.3KB A set-harmonic-interval@1.0.1 no known CVEs surface: none size: 8 files · 9.2KB A set-proto@1.0.0 no known CVEs surface: none size: 15 files · 9.1KB A setprototypeof@1.2.0 no known CVEs surface: none size: 6 files · 3.9KB A shallow-clone@3.0.1 no known CVEs surface: none size: 4 files · 9.2KB A shallow-equals@1.0.0 no known CVEs surface: none size: 6 files · 6.6KB A shallowequal@1.1.0 no known CVEs surface: none size: 6 files · 7.2KB A shebang-command@2.0.0 no known CVEs surface: none size: 4 files · 2.5KB A shebang-regex@3.0.0 no known CVEs surface: none size: 5 files · 2.8KB A side-channel@1.1.0 no known CVEs surface: none size: 12 files · 21.0KB A side-channel-list@1.0.1 no known CVEs surface: none size: 13 files · 16.6KB A side-channel-map@1.0.1 no known CVEs surface: none size: 12 files · 13.0KB A side-channel-weakmap@1.0.2 no known CVEs surface: none size: 12 files · 14.3KB A signal-exit@3.0.7 no known CVEs surface: none size: 5 files · 9.7KB A signal-exit@4.1.0 no known CVEs surface: none size: 29 files · 75.2KB A simplebar-core@1.3.2 no known CVEs surface: none size: 11 files · 508.2KB A simplebar-react@3.3.2 no known CVEs surface: none size: 8 files · 66.0KB A slash@3.0.0 no known CVEs surface: none size: 5 files · 3.4KB A slash@2.0.0 no known CVEs surface: none size: 4 files · 2.8KB A slash@5.1.0 no known CVEs surface: none size: 5 files · 3.2KB A slice-ansi@4.0.0 no known CVEs surface: none size: 4 files · 6.3KB A slide@1.1.6 no known CVEs surface: none size: 9 files · 9.5KB A smooth-scroll-into-view-if-needed@2.0.2 no known CVEs surface: none size: 9 files · 31.9KB A source-list-map@2.0.1 no known CVEs surface: none size: 12 files · 25.8KB A source-map@0.6.1 no known CVEs surface: none size: 20 files · 786.4KB A source-map@0.5.6 no known CVEs surface: none size: 19 files · 738.4KB A source-map@0.5.7 no known CVEs surface: none size: 19 files · 748.5KB A sourcemap-codec@1.4.8 no known CVEs surface: none size: 9 files · 31.1KB A stable@0.1.8 no known CVEs surface: none size: 5 files · 8.2KB A stack-generator@2.0.10 no known CVEs surface: none size: 8 files · 15.3KB A stack-utils@2.0.6 no known CVEs surface: none size: 4 files · 14.3KB A stackframe@1.3.4 no known CVEs surface: none size: 8 files · 23.1KB A statuses@2.0.2 no known CVEs surface: none size: 6 files · 12.2KB A statuses@1.5.0 no known CVEs surface: none size: 6 files · 10.8KB A stop-iteration-iterator@1.1.0 no known CVEs surface: none size: 11 files · 11.4KB A stream-browserify@3.0.0 no known CVEs surface: none size: 13 files · 11.3KB A string_decoder@1.1.1 no known CVEs surface: none size: 5 files · 14.9KB A string_decoder@1.3.0 no known CVEs surface: none size: 4 files · 14.1KB A string-length@4.0.2 no known CVEs surface: none size: 5 files · 4.0KB A string-length@6.0.0 no known CVEs surface: none size: 5 files · 4.2KB A string-width@4.2.3 no known CVEs surface: none size: 5 files · 5.0KB A string-width@5.1.2 no known CVEs surface: none size: 5 files · 5.6KB A string.prototype.includes@2.0.1 no known CVEs surface: none size: 21 files · 15.8KB A string.prototype.matchall@4.0.12 no known CVEs surface: none size: 18 files · 38.9KB A string.prototype.repeat@1.0.0 no known CVEs surface: none size: 14 files · 8.4KB A string.prototype.trim@1.2.10 no known CVEs surface: none size: 16 files · 34.4KB A string.prototype.trimend@1.0.9 no known CVEs surface: none size: 16 files · 23.0KB A string.prototype.trimstart@1.0.8 no known CVEs surface: none size: 16 files · 22.4KB A strip-ansi@7.1.0 no known CVEs surface: none size: 5 files · 4.2KB A strip-ansi@6.0.1 no known CVEs surface: none size: 5 files · 3.9KB A strip-bom@4.0.0 no known CVEs surface: none size: 5 files · 3.8KB A strip-bom@3.0.0 no known CVEs surface: none size: 4 files · 2.9KB A strip-final-newline@2.0.0 no known CVEs surface: none size: 4 files · 3.0KB A strip-indent@3.0.0 no known CVEs surface: none size: 5 files · 3.2KB A strip-json-comments@3.1.1 no known CVEs surface: none size: 5 files · 6.8KB A style-search@0.1.0 no known CVEs surface: none size: 8 files · 21.8KB A stylelint-config-recommended@14.0.1 no known CVEs surface: none size: 4 files · 5.8KB A stylelint-config-recommended-scss@14.1.0 no known CVEs surface: none size: 4 files · 5.8KB A stylelint-order@6.0.4 no known CVEs surface: none size: 51 files · 76.1KB A stylelint-scss@6.8.1 no known CVEs surface: none size: 130 files · 314.6KB A stylis@4.2.0 no known CVEs surface: none size: 16 files · 131.0KB A stylis@4.4.0 no known CVEs surface: none size: 16 files · 139.4KB A supports-color@7.2.0 no known CVEs surface: none size: 5 files · 6.9KB A supports-color@8.1.1 no known CVEs surface: none size: 5 files · 8.3KB A supports-color@5.5.0 no known CVEs surface: none size: 5 files · 6.5KB A supports-hyperlinks@3.2.0 no known CVEs surface: none size: 6 files · 6.8KB A supports-preserve-symlinks-flag@1.0.0 no known CVEs surface: none size: 10 files · 9.0KB A svg-tags@1.0.0 no known CVEs surface: none size: 5 files · 5.8KB A symbol-tree@3.2.4 no known CVEs surface: none size: 7 files · 55.7KB A tabbable@6.4.0 no known CVEs surface: none size: 19 files · 414.3KB A table@6.9.0 no known CVEs surface: none size: 111 files · 327.0KB A tapable@0.1.10 no known CVEs surface: none size: 7 files · 14.6KB A test-exclude@6.0.0 no known CVEs surface: none size: 8 files · 23.1KB A thingies@2.6.0 no known CVEs surface: none size: 69 files · 52.5KB A throttle-debounce@3.0.1 no known CVEs surface: none size: 13 files · 66.5KB A thunky@1.1.0 no known CVEs surface: none size: 7 files · 7.6KB A timezones.json@1.7.1 no known CVEs surface: none size: 6 files · 31.0KB A timm@1.7.1 no known CVEs surface: none size: 15 files · 63.1KB A tiny-invariant@1.3.3 no known CVEs surface: none size: 13 files · 14.5KB A tiny-warning@1.0.3 no known CVEs surface: none size: 10 files · 8.1KB A tinycolor2@1.6.0 no known CVEs surface: none size: 14 files · 278.2KB A tinyglobby@0.2.16 no known CVEs surface: none size: 7 files · 37.8KB A tippy.js@6.3.7 no known CVEs surface: none size: 45 files · 2.0MB A to-buffer@1.2.2 no known CVEs surface: none size: 6 files · 13.7KB A to-regex-range@5.0.1 no known CVEs surface: none size: 4 files · 22.4KB A toggle-selection@1.0.6 no known CVEs surface: none size: 6 files · 3.2KB A toidentifier@1.0.1 no known CVEs surface: none size: 5 files · 4.6KB A token-types@4.2.1 no known CVEs surface: none size: 5 files · 24.1KB A tr46@5.1.1 no known CVEs surface: none size: 7 files · 220.6KB A tr46@0.0.3 no known CVEs surface: none size: 5 files · 262.1KB A tree-dump@1.1.0 no known CVEs surface: none size: 13 files · 16.9KB A ts-api-utils@2.5.0 no known CVEs surface: none size: 7 files · 344.6KB A ts-clone-node@0.3.32 no known CVEs surface: none size: 9 files · 872.4KB A ts-easing@0.2.0 no known CVEs surface: none size: 5 files · 6.4KB A tslib@2.8.1 no known CVEs surface: none size: 14 files · 88.2KB A turndown@7.2.2 no known CVEs surface: none size: 10 files · 187.3KB A type-check@0.4.0 no known CVEs surface: none size: 6 files · 20.7KB A type-detect@4.0.8 no known CVEs surface: none size: 5 files · 41.1KB A type-fest@0.20.2 no known CVEs surface: none size: 42 files · 108.0KB A type-fest@2.19.0 no known CVEs surface: none size: 81 files · 196.8KB A type-fest@0.21.3 no known CVEs surface: none size: 46 files · 116.3KB A type-is@1.6.18 no known CVEs surface: none size: 5 files · 18.1KB A typed-array-buffer@1.0.3 no known CVEs surface: none size: 11 files · 11.9KB A typed-array-byte-length@1.0.3 no known CVEs surface: none size: 11 files · 18.0KB A typed-array-byte-offset@1.0.4 no known CVEs surface: none size: 11 files · 19.3KB A typed-array-length@1.0.7 no known CVEs surface: none size: 11 files · 23.7KB A unbox-primitive@1.1.0 no known CVEs surface: none size: 12 files · 18.1KB A uncontrollable@5.1.0 no known CVEs surface: none size: 5 files · 16.1KB A uncontrollable@7.2.1 no known CVEs surface: none size: 31 files · 69.6KB A undici-types@7.16.0 no known CVEs surface: none size: 45 files · 107.5KB A unicode-canonical-property-names-ecmascript@2.0.1 no known CVEs surface: none size: 4 files · 4.7KB A unicode-match-property-ecmascript@2.0.0 no known CVEs surface: none size: 4 files · 4.9KB A unicode-match-property-value-ecmascript@2.2.1 no known CVEs surface: none size: 5 files · 26.1KB A unicode-property-aliases-ecmascript@2.2.0 no known CVEs surface: none size: 4 files · 5.9KB A universalify@2.0.1 no known CVEs surface: none size: 4 files · 4.6KB A unpipe@1.0.0 no known CVEs surface: none size: 5 files · 4.2KB A use-isomorphic-layout-effect@1.2.1 no known CVEs surface: none size: 15 files · 6.7KB A use-memo-one@1.1.3 no known CVEs surface: none size: 11 files · 15.4KB A use-sync-external-store@1.6.0 no known CVEs surface: none size: 18 files · 27.5KB A utif@2.0.1 no known CVEs surface: none size: 4 files · 55.8KB A util-deprecate@1.0.2 no known CVEs surface: none size: 6 files · 5.4KB A utila@0.4.0 no known CVEs surface: none size: 14 files · 23.7KB A utility-types@3.11.0 no known CVEs surface: none size: 21 files · 62.8KB A utils-merge@1.0.1 no known CVEs surface: none size: 5 files · 3.6KB A v8-to-istanbul@9.3.0 no known CVEs surface: none size: 12 files · 46.5KB A value-equal@1.0.1 no known CVEs surface: none size: 9 files · 7.7KB A vary@1.1.2 no known CVEs surface: none size: 5 files · 8.5KB A w3c-keyname@2.2.8 no known CVEs surface: none size: 8 files · 8.2KB A w3c-xmlserializer@5.0.0 no known CVEs surface: none size: 6 files · 17.6KB A walker@1.0.8 no known CVEs surface: none size: 5 files · 5.7KB A warning@3.0.0 no known CVEs surface: none size: 6 files · 7.7KB A warning@4.0.3 no known CVEs surface: none size: 5 files · 9.3KB A watchpack@2.5.1 no known CVEs surface: none size: 17 files · 93.5KB A wbuf@1.7.3 no known CVEs surface: none size: 4 files · 20.4KB A weak-lru-cache@1.2.2 no known CVEs surface: none size: 9 files · 27.5KB A web-vitals@5.0.3 no known CVEs surface: none size: 131 files · 369.5KB A webidl-conversions@7.0.0 no known CVEs surface: none size: 4 files · 23.7KB A webidl-conversions@3.0.1 no known CVEs surface: none size: 4 files · 12.1KB A webpack-merge@6.0.1 no known CVEs surface: none size: 21 files · 48.3KB A webpack-pwa-manifest@4.3.0 no known CVEs surface: none size: 20 files · 278.2KB A webpack-sources@2.3.1 no known CVEs surface: none size: 16 files · 57.5KB A webpack-sources@3.4.1 no known CVEs surface: none size: 29 files · 146.1KB A whatwg-encoding@3.1.1 no known CVEs surface: none size: 6 files · 13.0KB A whatwg-mimetype@4.0.0 no known CVEs surface: none size: 8 files · 16.3KB A which-boxed-primitive@1.1.1 no known CVEs surface: none size: 12 files · 18.8KB A which-builtin-type@1.2.1 no known CVEs surface: none size: 10 files · 29.3KB A which-collection@1.0.2 no known CVEs surface: none size: 11 files · 19.6KB A which-typed-array@1.1.20 no known CVEs surface: none size: 12 files · 43.8KB A wildcard@2.0.1 no known CVEs surface: none size: 13 files · 13.2KB A word-wrap@1.2.5 no known CVEs surface: none size: 5 files · 11.6KB A wrap-ansi@7.0.0 no known CVEs surface: none size: 4 files · 10.4KB A wrap-ansi@8.1.0 no known CVEs surface: none size: 5 files · 11.5KB A wrappy@1.0.2 no known CVEs surface: none size: 4 files · 2.9KB A wsl-utils@0.1.0 no known CVEs surface: none size: 5 files · 4.9KB A xhr@2.6.0 no known CVEs surface: none size: 7 files · 21.0KB A xml-name-validator@5.0.0 no known CVEs surface: none size: 4 files · 13.3KB A xml-parse-from-string@1.0.1 no known CVEs surface: none size: 4 files · 3.9KB A xml2js@0.5.0 no known CVEs surface: none size: 9 files · 43.3KB A xmlbuilder@11.0.1 no known CVEs surface: none size: 45 files · 164.5KB A xmlchars@2.2.0 no known CVEs surface: none size: 18 files · 57.6KB A xtend@4.0.2 no known CVEs surface: none size: 7 files · 6.3KB A yallist@3.1.1 no known CVEs surface: none size: 5 files · 14.4KB A yaml@1.10.3 no known CVEs surface: none size: 58 files · 391.5KB A yocto-queue@0.1.0 no known CVEs surface: none size: 5 files · 5.9KB A zod-validation-error@4.0.2 no known CVEs surface: none size: 16 files · 224.1KB
One F in 1,683 packages, and it's a period piece: marked@0.3.6 is a
2016-era markdown renderer, exactly the kind of version a long-lived
product accumulates. Whether any of its five advisories matter depends on
what the app actually runs — the question the rest of the pipeline answers.
The run
The 2026-08-23 run went from inventory to packed artifact in 3 hours 13 minutes, unattended. That is the from-zero price, paid once per lockfile change — no regular commit or build ever repeats it: builds consume the artifact, a PR gets the one-second fingerprint check, and only a changed dependency re-enters the pipeline. Of the 101 product-imported packages, 54 were extracted down to what the webapp reaches, 35 were pruned conservatively but kept complete, and 12 shipped as pinned stock. All 89 hardened dependencies overlaid at once; the full suite passed differentially with zero new failures, plus the production build.
| installed | shipped | change | |
|---|---|---|---|
| dependencies | 101 | 54 extracted + 35 pruned + 12 pinned stock | all update-gated |
| files, validated extractions | 11,780 | 859 | −92.7% |
| bytes, validated extractions | 47.7 MiB | 19.5 MiB | −59.1% |
The big suite shows up in the evidence mix: every extraction attempt had
mapped tests and none failed at baseline — the two exception classes that
dominated the thin-suite study simply don't appear here. And the earlier
wall-to-wall run on this target showed the build-protection machinery
working as designed: nine build-executed dependencies, lodash among them,
were held from trimming outright because the toolchain runs them, and when
one bundler-consumed dependency (@tanstack/react-table) broke the
production build anyway, the build gate caught it in round one and reverted
it — round two came back clean in 39 seconds. 343 error-path functions were
held by the airbag rule on top.
The CVEs
The installed tree carried 55 advisories. After hardening:
| verdict | count | meaning here |
|---|---|---|
| not shipped | 50 | the affected package or version never enters the artifact — almost always dev or build tooling (test runners, bundlers, linters) that production never needs; that's where most advisories live |
| eliminated | 0 | no vulnerable symbol on this tree is provably dead |
| reached | 1 | the webapp really runs this code; the fix is upgrading, not removal |
| unresolved | 4 | advisory too coarse to map to a symbol; disclosed, not cleared |
The one reached advisory is the F card from day one: marked@0.3.6,
genuinely called from the markdown pipeline (FormattedMarkdownMessage,
the admin console's SchemaText). That's an upgrade, and the report names
the callers to hand to whoever does it.
The zero has its own anatomy. On this dependency mix, reachability analysis converges toward everything-reachable — the webapp's dependencies are wired through hub modules that touch most of what they ship — so no vulnerable symbol proves lexically dead, and held-by-default keeps the rest.
The work
| step | human time |
|---|---|
| cold score on the checkout | ~2 min |
| config file (34 lines) | one sitting |
chainstrip run, zero to artifact | none — 3 h 13 min unattended |
| ongoing, per PR | ~1 s, automatic |
ChainStrip's coverage prompt wrote tests here: five new test files, plus additions to eight that already existed, about 1,100 lines in all. Thirteen files were touched but the suite total rises by five, because the other eight were already counted in it. A probe campaign also ran, witnessing 2 of 17 targets. The 1,255 test files this study cites include all of that; 1,250 of them pre-existed.
Those five files changed nothing about what ships. Set the artifact from the run before them beside the published one and every package matches: the same 89 reduced dependencies — the 54 extracted and 35 pruned listed separately in the table above — the same 12 pinned stock, and not one package differing in shipped bytes or in validation outcome. What moved is the evidence behind an identical delivery: 28 packages are now mapped by at least one of the new files. The tests bought certainty, not bytes.
What remains is the worklist — every under-tested dependency, ranked, with its callers in the webapp's own code — and the standing work order built from it, both below in full — 31 CLASSIFY targets (a test proves the code live, or it stays held; precision does the removing) and 11 skips with reasons:
$ chainstrip coverage --callers
whole-suite coverage gap — 51 deps measured · median 43% of functions executed
0–25%: 12 · 25–50%: 18 · 50–75%: 11 · 75–100%: 10
3 extracted deps no test loads at all
⚠ = vulnerable AND under-tested (live CVE + low coverage) — TEST THESE FIRST.
LEAST-COVERED — under-tested deps and YOUR functions that use them (write tests for those):
1% tippy.js (2/244 fns run, 242 never run, 3 file(s) never loaded) · e.g. TIPPY_DEFAULT_APPEND_TO2, actualContains, addDocumentPress, addListeners…
4% css-vars-ponyfill (14/323 fns run, 309 never run) · e.g. _extends, _import, addMutationObserver, at_custom_m…
channels/src/utils/utils.tsx → applyTheme
4% @tippyjs/react (2/51 fns run, 49 never run, 1 file(s) never loaded) · e.g. Tippy, TippyWrapper, _objectWithoutPropertiesLoose, add…
platform/components/src/tour_tip/tour_tip.tsx → TourTip
5% @tiptap/extension-table (11/212 fns run, 201 never run) · e.g. DEFAULT_CELL_LINE_SEPARATOR, Shift-Tab, Tab, TableKit…
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
10% @tiptap/react (43/447 fns run, 404 never run) · e.g. EditorConsumer, EditorContent, EditorContext, EditorProvider…
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
15% @tiptap/core (292/1887 fns run, 1595 never run, 2 file(s) never loaded) · e.g. $doc, $node, $nodes, $pos…
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (module scope)
15% moment (155/1059 fns run, 904 never run) · e.g. ISO_8601, MM, RFC_2822, abs…
channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.tsx → CloudTrialBanner, onDismissBanner
channels/src/components/admin_console/license_settings/renew_license_card/renew_license_card.tsx → RenewLicenseCard
channels/src/components/admin_console/license_settings/trial_license_card/trial_license_card.tsx → messageBody
channels/src/components/admin_console/list_table/elapsed_duration_cell.tsx → (anonymous), ElapsedDurationCell
channels/src/components/advanced_text_editor/send_button/scheduled_post_custom_time_modal/scheduled_post_custom_time_modal.tsx → (anonymous), ScheduledPostCustomTimeModal
channels/src/components/announcement_bar/show_tree_days_left_trial_modal/show_three_days_left_trial_modal.tsx → ShowThreeDaysLeftTrialModal
channels/src/components/commercial_support_modal/commercial_support_modal.tsx → (anonymous)
channels/src/components/dnd_custom_time_picker_modal/dnd_custom_time_picker_modal.tsx → constructor
channels/src/components/drafts/draft_actions/schedule_post_actions/scheduled_post_actions.tsx → (anonymous)
channels/src/components/trial_benefits_modal/trial_benefits_modal.tsx → TrialBenefitsModal
channels/src/components/user_account_menu/user_account_dnd_menuitem.tsx → getSecondaryLabel, handleSubMenuItemClick
channels/src/components/user_groups_modal/ad_ldap_upsell_banner.tsx → ADLDAPUpsellBanner
channels/src/components/widgets/menu/menu_items/menu_cloud_trial.tsx → MenuCloudTrial
channels/src/selectors/views/threads.ts → (anonymous)
channels/src/utils/license_utils.ts → daysToLicenseExpire, isLicenseExpired
channels/src/utils/utils.tsx → getLocaleDateFromUTC, getNextBillingDate
16% zen-observable (12/77 fns run, 65 never run) · e.g. SymbolObservable, SymbolSpecies, all, cleanupSubscription…
channels/src/store/index.ts → (module scope)
17% react-router (61/360 fns run, 299 never run) · e.g. Consumer, MemoryRouter, Prompt, Provider…
21% @tiptap/markdown (40/189 fns run, 149 never run) · e.g. addCommands, addOptions, addStorage, applyMark…
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
23% luxon (262/1160 fns run, 898 never run) · e.g. DATETIME_FULL, DATETIME_FULL_WITH_SECONDS, DATETIME_HUGE, DATETIME_HUGE_WITH_SECONDS…
channels/src/components/advanced_text_editor/send_button/send_post_options/core_menu_options.tsx → CoreMenuOptions, getScheduledTimeInTeammateTimezone
channels/src/components/advanced_text_editor/send_button/send_post_options/recent_used_custom_date.tsx → RecentUsedCustomDate, getDateOption, isTimestampWithinLast30Days
channels/src/components/advanced_text_editor/use_post_box_indicator.tsx → updateTime
channels/src/components/profile_popover/profile_popover_timezone.tsx → ProfileTimezone, TimeZoneDifference
channels/src/components/root/luxon_controller.tsx → (anonymous)
channels/src/components/timestamp/semantic_time.tsx → SemanticTime
channels/src/utils/datetime.ts → relativeFormatDate
channels/src/utils/remote_cluster_connection.ts → isRemoteClusterConnected
23% @redux-devtools/extension (14/60 fns run, 46 never run) · e.g. _getRequireWildcardCache, assign$1, composeWithDevTools, composeWithEnhancer…
channels/src/packages/mattermost-redux/src/store/configureStore.ts → configureStore
26% localforage (83/323 fns run, 240 never run) · e.g. INTERNAL, Promise, QueueItem, _binStringToArrayBuffer…
channels/src/reducers/storage.ts → (module scope)
channels/src/store/index.ts → (module scope)
27% rebound (28/102 fns run, 74 never run) · e.g. BouncyConversion, SimulationLooper, SteppingSimulationLooper, _interpolate…
channels/src/components/sidebar/sidebar_list/sidebar_list.tsx → constructor
28% katex (148/522 fns run, 374 never run, 1 file(s) never loaded) · e.g. adjustStyle, alignedHandler, array_htmlBuilder, array_mathmlBuilder…
28% history (87/315 fns run, 228 never run, 2 file(s) never loaded) · e.g. _extends, addLeadingSlash, block, canGo…
channels/src/utils/browser_history.tsx → (module scope)
30% react-is (11/37 fns run, 26 never run) · e.g. isAsyncMode, isConcurrentMode, isContextConsumer, isContextProvider…
channels/src/components/timestamp/timestamp.tsx → (anonymous)
channels/src/plugins/registry.ts → resolveReactElement
31% tinycolor2 (57/181 fns run, 124 never run) · e.g. _analogous, _applyCombination, _applyModification, _brighten…
channels/src/components/admin_console/classification_markings/components/classification_color_input.tsx → (anonymous), ClassificationColorInput
channels/src/components/color_input.tsx → onBlur, onChange
channels/src/components/gif_picker/gif_picker_search.tsx → (anonymous)
channels/src/components/widgets/users/avatars/avatars.tsx → (anonymous)
32% react-day-picker (111/349 fns run, 238 never run) · e.g. Caption, CaptionDropdowns, CaptionLabel, CaptionNavigation…
channels/src/components/date_picker/date_picker.tsx → DatePicker
channels/src/components/suggestion/search_date_suggestion/search_date_suggestion.tsx → SearchDateSuggestion
32% redux-persist (67/207 fns run, 140 never run) · e.g. _arrayWithoutHoles, _defineProperty, _iterableToArray, _nonIterableSpread…
channels/src/reducers/storage.ts → (module scope), storage
channels/src/store/index.ts → (anonymous), next
34% react-beautiful-dnd (535/1553 fns run, 1018 never run) · e.g. Placeholder, RbdInvariant, abort, add…
channels/src/components/admin_console/system_properties/ranked_schema_modal.tsx → (anonymous), RankedSchemaModal
channels/src/components/sidebar/sidebar_category/sidebar_category.tsx → (anonymous), render
channels/src/components/sidebar/sidebar_channel/sidebar_channel.tsx → SidebarChannel
channels/src/components/sidebar/sidebar_list/sidebar_list.tsx → render
channels/src/components/team_sidebar/components/team_button.tsx → TeamButton
channels/src/components/team_sidebar/team_sidebar.tsx → render
35% @atlaskit/pragmatic-drag-and-drop (164/463 fns run, 299 never run, 3 file(s) never loaded) · e.g. F, _arrayLikeToArray, _arrayLikeToArray$1, _arrayWithHoles…
channels/src/components/admin_console/board_attributes/hooks/use_board_option_dnd.ts → (anonymous), onGenerateDragPreview
channels/src/components/admin_console/board_attributes/hooks/use_board_options_dnd.ts → (anonymous)
channels/src/components/admin_console/list_table/hooks/use_list_table_dnd.ts → (anonymous)
channels/src/components/admin_console/list_table/hooks/use_list_table_row_dnd.ts → (anonymous), onGenerateDragPreview
channels/src/components/channel_bookmarks/bookmarks_bar_menu.tsx → (anonymous)
channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.ts → (anonymous), onDragStart, onDrop, onGenerateDragPreview
channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.ts → (anonymous)
39% @floating-ui/react (390/988 fns run, 598 never run, 1 file(s) never loaded) · e.g. Composite, CompositeItem, FloatingDelayGroup, FloatingFocusManager…
channels/src/components/admin_console/access_control/modals/simulate_access/session_attribute_editor.tsx → SessionAttributeEditorButton
channels/src/components/admin_console/list_table/row_drop_indicator.tsx → RowDropIndicator
channels/src/components/admin_console/system_users/system_users_filters_popover/index.tsx → SystemUsersFilterPopover
channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.tsx → (anonymous)
channels/src/components/advanced_text_editor/formatting_bar/link_popover.tsx → LinkPopover
channels/src/components/advanced_text_editor/use_editor_emoji_picker.tsx → useEditorEmojiPicker
channels/src/components/channel_header/channel_header_text_popover.tsx → ChannelHeaderTextPopover
channels/src/components/common/scrollbars.tsx → (anonymous)
channels/src/components/date_picker/date_picker.tsx → DatePicker
channels/src/components/emoji_picker/use_emoji_picker.tsx → useEmojiPicker
channels/src/components/feature_toast/feature_toast.tsx → FeatureToast
channels/src/components/new_search/new_search.tsx → NewSearch
channels/src/components/onboarding_tasklist/onboarding_tasklist_popover.tsx → TaskListPopover
channels/src/components/plugin_link_tooltip/index.tsx → (module scope), PluginLinkTooltip
channels/src/components/post_view/acknowledgements/post_acknowledgements.tsx → PostAcknowledgements
channels/src/components/profile_popover/profile_popover_controller.tsx → ProfilePopoverController
channels/src/components/recaps/recap_usage_badge/recap_usage_badge.tsx → RecapUsageBadge
channels/src/components/user_group_popover/user_group_popover_controller.tsx → UserGroupPopoverController
channels/src/plugins/channel_header_plug/channel_header_plug.tsx → (anonymous)
channels/src/utils/floating.ts → fn
platform/shared/src/components/tooltip/with_tooltip.tsx → WithTooltip
39% web-vitals (83/215 fns run, 132 never run) · e.g. B, C, D, E…
channels/src/utils/performance_telemetry/reporter.ts → observe
41% react-window (109/268 fns run, 159 never run) · e.g. Grid, _callPropsCallbacks, _getHorizontalRangeToRender, _getVerticalRangeToRender…
channels/src/components/channel_members_rhs/member_list.tsx → (anonymous)
channels/src/components/drafts/draft_list/virtualized_draft_list.tsx → (anonymous)
channels/src/components/drafts/scheduled_post_list/virtualized_scheduled_post_list.tsx → (anonymous)
channels/src/components/emoji_picker/components/emoji_picker_category_or_emoji_row.tsx → (module scope)
channels/src/components/emoji_picker/components/emoji_picker_current_results.tsx → (anonymous)
channels/src/components/threading/global_threads/thread_list/virtualized_thread_list_row.tsx → (module scope)
channels/src/components/threading/global_threads/thread_list/virtualized_thread_list.tsx → (anonymous)
channels/src/components/user_group_popover/group_member_list/group_member_list.tsx → (anonymous)
channels/src/components/user_groups_modal/user_groups_list/user_groups_list.tsx → (anonymous)
43% ipaddr.js (27/63 fns run, 36 never run) · e.g. broadcastAddressFromCIDR, fromByteArray, isIPv4, isIPv4MappedAddress…
channels/src/components/admin_console/ip_filtering/ip_filtering_utils.ts → isIPAddressInRanges, validateCIDR
44% lodash (530/1200 fns run, 670 never run) · e.g. LazyWrapper, ListCache, LodashWrapper, SetCache…
channels/src/actions/views/rhs.ts → (module scope)
channels/src/components/admin_console/access_control/policy_details/channel_list/channel_list.tsx → componentDidUpdate, constructor
channels/src/components/admin_console/access_control/policy_details/policy_details.tsx → (anonymous)
channels/src/components/admin_console/admin_sidebar/admin_sidebar.tsx → componentDidUpdate
channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.tsx → CloudTrialBanner
channels/src/components/admin_console/board_attributes/board_attributes_utils.ts → beforeUpdate, byNamesLower, commit
channels/src/components/admin_console/data_retention_settings/channel_list/channel_list.tsx → (module scope), componentDidUpdate
channels/src/components/admin_console/data_retention_settings/team_list/team_list.tsx → (module scope)
channels/src/components/admin_console/group_settings/group_details/group_teams_and_channels_row.tsx → (anonymous)
channels/src/components/admin_console/search_keyword_marking.tsx → (anonymous)
channels/src/components/admin_console/server_logs/logs.tsx → (module scope)
channels/src/components/admin_console/system_properties/user_properties_utils.ts → beforeUpdate, byNamesLower, commit
channels/src/components/admin_console/system_roles/system_role/system_role.tsx → (anonymous)
channels/src/components/admin_console/team_channel_settings/channel/details/channel_details.tsx → (anonymous)
channels/src/components/admin_console/team_channel_settings/channel/details/channel_moderation.tsx → (anonymous), ChannelModerationTableRow
channels/src/components/admin_console/team_channel_settings/team/details/team_details.tsx → (anonymous)
channels/src/components/advanced_text_editor/formatting_bar/hooks.tsx → (anonymous)
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → parseJsonModeContent
channels/src/components/announcement_bar/payment_announcement_bar/index.tsx → (anonymous), PaymentAnnouncementBar
channels/src/components/app_bar/app_bar.tsx → AppBar
channels/src/components/channel_invite_modal/channel_invite_modal.tsx → (anonymous)
channels/src/components/channel_members_rhs/channel_members_rhs.tsx → (anonymous)
channels/src/components/channel_settings_modal/channel_settings_plugin_tab.tsx → ChannelSettingsPluginTab
channels/src/components/common/hocs/cloud/with_get_cloud_subscription.tsx → componentDidMount
channels/src/components/common/infinite_scroll.tsx → (module scope)
channels/src/components/drafts/draft_actions/delete_draft_modal.tsx → DeleteDraftModal
channels/src/components/drafts/draft_actions/schedule_post_actions/delete_scheduled_post_modal.tsx → DeleteScheduledPostModal
channels/src/components/drafts/draft_list/virtualized_draft_list.tsx → (anonymous)
channels/src/components/drafts/draft_row.tsx → DraftRow
channels/src/components/drafts/scheduled_post_list/virtualized_scheduled_post_list.tsx → (anonymous)
channels/src/components/emoji_picker/components/emoji_picker_current_results.tsx → (anonymous)
channels/src/components/emoji_picker/components/emoji_picker_item.tsx → (anonymous)
channels/src/components/emoji_picker/emoji_picker.tsx → EmojiPicker
channels/src/components/emoji_picker/utils/index.ts → createCategoryAndEmojiRows
channels/src/components/file_preview_modal/popover_bar/popover_bar.tsx → render
channels/src/components/integrations/outgoing_oauth_connections/oauth_connection_audience_input.tsx → (anonymous)
channels/src/components/login/login.tsx → Login
channels/src/components/menu/menu_item.tsx → handleClick
channels/src/components/more_direct_channels/more_direct_channels.tsx → (module scope)
channels/src/components/pdf_preview.tsx → (anonymous)
channels/src/components/post_view/message_attachments/message_attachment/message_attachment.tsx → render
channels/src/components/root/index.ts → mapStateToProps
channels/src/components/sidebar/sidebar_list/sidebar_list.tsx → (module scope)
channels/src/components/signup/signup.tsx → Signup
channels/src/components/team_settings/team_access_policies_tab/team_policy_editor.tsx → (anonymous)
channels/src/components/threading/global_threads/global_threads.tsx → GlobalThreads
channels/src/components/threading/global_threads/thread_list/thread_list.tsx → ThreadList
channels/src/components/timestamp/timestamp.tsx → formatRelative, isUnitDescriptor
channels/src/components/user_group_popover/user_group_popover.tsx → (anonymous)
channels/src/components/window_size_observer/WindowSizeObserver.tsx → (anonymous)
channels/src/packages/mattermost-redux/src/actions/threads.ts → (anonymous)
channels/src/packages/mattermost-redux/src/reducers/entities/channels.ts → receiveChannelMember, roles, stats
channels/src/packages/mattermost-redux/src/reducers/entities/users.ts → receiveUserProfile
channels/src/packages/mattermost-redux/src/selectors/entities/channels.ts → (anonymous)
channels/src/reducers/plugins/index.ts → components
channels/src/reducers/views/threads.ts → selectedThreadIdInTeam
channels/src/selectors/admin_console.tsx → (anonymous)
channels/src/utils/func.ts → (anonymous)
channels/src/utils/paste.tsx → pasteHandler
channels/src/utils/utils.tsx → isTextSelectedInPostOrReply
platform/components/src/common/hooks/useMeasurePunchouts.ts → useMeasurePunchouts
44% redux-batched-actions (8/18 fns run, 10 never run) · e.g. batchDispatchMiddleware
channels/src/actions/channel_actions.ts → (anonymous)
channels/src/actions/file_actions.ts → onerror, onload
channels/src/actions/global_actions.tsx → switchToChannel
channels/src/actions/new_post.ts → (anonymous)
channels/src/actions/post_actions.ts → (anonymous)
channels/src/actions/user_actions.ts → (anonymous)
channels/src/actions/views/channel.ts → (anonymous)
channels/src/actions/views/drafts.ts → (anonymous)
channels/src/actions/views/login.ts → handleLoginSuccess
channels/src/actions/views/rhs.ts → (anonymous)
channels/src/actions/views/threads.ts → manuallyMarkThreadAsUnread
channels/src/actions/websocket_actions.ts → (anonymous), handleClose, handleDeleteTeamEvent, handleFirstConnect, handleLeaveTeamEvent, handleMyGroupUpdate, handleUserRemovedEvent
channels/src/packages/mattermost-redux/src/actions/access_control.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/admin.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/channel_categories.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/channels.ts → (anonymous), removeFromChannelWrapper
channels/src/packages/mattermost-redux/src/actions/emojis.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/general.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/groups.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/integrations.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/posts.ts → (anonymous), createPostWrapper
channels/src/packages/mattermost-redux/src/actions/search.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/teams.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/threads.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/users.ts → (anonymous)
channels/src/packages/mattermost-redux/src/actions/websocket.ts → (anonymous)
channels/src/packages/mattermost-redux/src/store/helpers.ts → createReducer
channels/src/store/index.ts → (anonymous)
47% mark.js (64/136 fns run, 72 never run) · e.g. callNoMatchOnInvalidRanges, checkEnd, checkIframeFilter, checkRanges…
channels/src/components/admin_console/search_keyword_marking.tsx → doMark
49% react-transition-group (127/257 fns run, 130 never run, 1 file(s) never loaded) · e.g. ReplaceTransition, SwitchTransition, TransitionGroup, _assertThisInitialized…
channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.tsx → (anonymous)
channels/src/components/channel_info_rhs/components/linelimiter.tsx → LineLimiterBase
channels/src/components/common/auto_height_switcher.tsx → AutoHeightSwitcher
channels/src/components/emoji_picker/components/emoji_picker_skin.tsx → render
channels/src/components/info_toast/info_toast.tsx → InfoToast
channels/src/components/mobile_sidebar_right/mobile_sidebar_right.tsx → MobileRightDrawer
channels/src/components/onboarding_tasklist/onboarding_tasklist_completed.tsx → Completed
channels/src/components/onboarding_tasklist/onboarding_tasklist_popover.tsx → TaskListPopover
channels/src/components/preparing_workspace/invite_members.tsx → InviteMembers
channels/src/components/preparing_workspace/launching_workspace.tsx → LaunchingWorkspace
channels/src/components/preparing_workspace/organization.tsx → Organization
channels/src/components/preparing_workspace/plugins.tsx → Plugins
channels/src/components/preparing_workspace/progress.tsx → TransitionedProgress
channels/src/components/widgets/menu/menu_wrapper_animation.tsx → MenuWrapperAnimation
channels/src/components/widgets/modals/full_screen_modal.tsx → render
57% date-fns (1948/3434 fns run, 1486 never run, 12 file(s) never loaded) · e.g. B, D, DateToSystemTimezoneSetter, E…
channels/src/packages/mattermost-redux/src/utils/integration_utils.ts → resolveBoundToDate, validateDateTimeValue
channels/src/utils/date_utils.ts → dateToString, momentToString, resolveRelativeDate, stringToDate, stringToMoment
57% localforage-observable (37/65 fns run, 28 never run) · e.g. complete, destroy, error, getItemObservable…
channels/src/store/index.ts → (module scope)
60% @atlaskit/pragmatic-drag-and-drop-hitbox (36/60 fns run, 24 never run) · e.g. _defineProperty, _objectSpread, _typeof, attachClosestEdge…
channels/src/components/admin_console/board_attributes/hooks/use_board_option_dnd.ts → getData, onDrag
channels/src/components/admin_console/board_attributes/hooks/use_board_options_dnd.ts → onDrop
channels/src/components/admin_console/list_table/hooks/use_list_table_dnd.ts → onDrop
channels/src/components/admin_console/list_table/hooks/use_list_table_row_dnd.ts → getData, onDrag
channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.ts → getData, onDrag
channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.ts → onDrop
63% react-redux (264/417 fns run, 153 never run, 2 file(s) never loaded) · e.g. B, C, Ct, Dt…
channels/src/components/about_build_modal/about_build_modal_cloud/about_build_modal_cloud.tsx → AboutBuildModalCloud
channels/src/components/about_build_modal/index.ts → (module scope)
channels/src/components/access_history_modal/index.ts → (module scope)
channels/src/components/actions_menu/index.ts → (module scope)
channels/src/components/actions_menu/popover.tsx → Popover
channels/src/components/activity_log_modal/index.ts → (module scope)
channels/src/components/add_groups_to_channel_modal/index.ts → (module scope)
channels/src/components/add_groups_to_team_modal/index.ts → (module scope)
channels/src/components/add_user_to_channel_modal/index.ts → (module scope)
channels/src/components/add_user_to_group_multiselect/index.ts → (module scope)
channels/src/components/add_users_to_group_modal/index.ts → (module scope)
channels/src/components/add_users_to_team_modal/index.ts → (module scope)
channels/src/components/admin_console/access_control/index.ts → (module scope)
channels/src/components/admin_console/access_control/jobs/access_control_sync_job_table.tsx → AccessControlSyncJobTable
channels/src/components/admin_console/access_control/jobs/index.ts → (module scope)
channels/src/components/admin_console/access_control/modals/job_details/job_details_modal.tsx → JobDetailsModal
channels/src/components/admin_console/access_control/modals/policy_test/test_modal.tsx → TestResultsModal
channels/src/components/admin_console/access_control/modals/simulate_access/simulate_access_modal.tsx → SimulateAccessModal
channels/src/components/admin_console/access_control/modals/user_sync/synced_user_list.tsx → SyncedUserList
channels/src/components/admin_console/access_control/policy_details/channel_list/index.ts → (module scope)
channels/src/components/admin_console/access_control/policy_details/index.ts → (module scope)
channels/src/components/admin_console/admin_navbar_dropdown/index.ts → (module scope)
channels/src/components/admin_console/admin_settings/hooks.tsx → useAdminSettingState, useIsSetByEnv
channels/src/components/admin_console/admin_sidebar_header/index.ts → (module scope)
channels/src/components/admin_console/admin_sidebar/index.ts → (module scope)
channels/src/components/admin_console/audits/index.ts → (module scope)
channels/src/components/admin_console/billing/billing_history_modal.tsx → BillingHistoryModal
channels/src/components/admin_console/billing/billing_history_table.tsx → BillingHistoryTable
channels/src/components/admin_console/billing/billing_history.tsx → BillingHistory
channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.tsx → CloudTrialBanner
channels/src/components/admin_console/billing/billing_subscriptions/index.tsx → BillingSubscriptions
channels/src/components/admin_console/billing/billing_subscriptions/limits.tsx → Limits
channels/src/components/admin_console/billing/billing_summary/billing_summary.tsx → InvoiceInfo
channels/src/components/admin_console/billing/company_info_display.tsx → CompanyInfoDisplay
channels/src/components/admin_console/billing/company_info_edit.tsx → CompanyInfoEdit
channels/src/components/admin_console/billing/company_info.tsx → CompanyInfo
channels/src/components/admin_console/billing/delete_workspace/progress_modal.tsx → DeleteWorkspaceProgressModal
channels/src/components/admin_console/billing/delete_workspace/result_modal.tsx → ResultModal
channels/src/components/admin_console/billing/plan_details/index.tsx → PlanDetails
channels/src/components/admin_console/blockable_button/index.ts → (module scope)
channels/src/components/admin_console/blockable_link/index.ts → (module scope)
channels/src/components/admin_console/board_attributes/board_attributes_delete_modal.tsx → useBoardAttributeFieldDelete
channels/src/components/admin_console/board_attributes/board_attributes.tsx → BoardAttributes
channels/src/components/admin_console/classification_markings/classification_markings.tsx → ClassificationMarkings
channels/src/components/admin_console/compliance_reports/index.ts → (module scope)
channels/src/components/admin_console/content_flagging/content_reviewers/team_reviewers_section/team_reviewers_section.tsx → TeamReviewers
channels/src/components/admin_console/content_flagging/user_multiselector/user_multiselector.tsx → UserSelector
channels/src/components/admin_console/content_flagging/user_multiselector/user_profile_option.tsx → MultiUserOptionComponent, SingleUserOptionComponent
channels/src/components/admin_console/content_flagging/user_multiselector/user_profile_pill.tsx → BaseUserProfilePill
channels/src/components/admin_console/custom_plugin_settings/index.ts → (module scope)
channels/src/components/admin_console/custom_profile_attributes/custom_profile_attributes.tsx → CustomProfileAttributes, PluginManagedFieldHelpText
channels/src/components/admin_console/custom_terms_of_service_settings/index.ts → (module scope)
channels/src/components/admin_console/data_retention_settings/channel_list/index.ts → (module scope)
channels/src/components/admin_console/data_retention_settings/custom_policy_form/index.ts → (module scope)
channels/src/components/admin_console/data_retention_settings/global_policy_form/index.ts → (module scope)
channels/src/components/admin_console/data_retention_settings/index.ts → (module scope)
channels/src/components/admin_console/data_retention_settings/team_list/index.ts → (module scope)
channels/src/components/admin_console/database/index.tsx → (module scope)
channels/src/components/admin_console/feature_discovery/index.tsx → (module scope)
channels/src/components/admin_console/filter/team_filter_dropdown/index.tsx → (module scope)
channels/src/components/admin_console/global_attributes/attribute_details/attribute_details.tsx → AttributeDetails
channels/src/components/admin_console/global_attributes/attribute_details/attribute_external_source.tsx → AttributeExternalSource
channels/src/components/admin_console/global_attributes/global_attribute_delete_modal.tsx → useGlobalAttributeFieldDelete
channels/src/components/admin_console/global_attributes/global_attributes_table.tsx → ActionsCell, GlobalAttributesTable, SourceCell, useClassificationMarkingsReachable
channels/src/components/admin_console/group_settings/group_details/index.ts → (module scope)
channels/src/components/admin_console/group_settings/groups_list/index.ts → (module scope)
channels/src/components/admin_console/index.ts → (module scope)
channels/src/components/admin_console/ip_filtering/index.tsx → IPFiltering
channels/src/components/admin_console/jobs/index.tsx → (module scope)
channels/src/components/admin_console/license_settings/enterprise_edition/enterprise_edition_left_panel.tsx → EnterpriseEditionLeftPanel
channels/src/components/admin_console/license_settings/index.ts → (module scope)
channels/src/components/admin_console/license_settings/modals/confirm_license_removal_modal.tsx → ConfirmLicenseRemovalModal
channels/src/components/admin_console/license_settings/modals/ee_license_modal.tsx → EELicenseModal
channels/src/components/admin_console/license_settings/modals/upload_license_modal.tsx → UploadLicenseModal
channels/src/components/admin_console/license_settings/trial_banner/trial_banner.tsx → TrialBanner
channels/src/components/admin_console/license_settings/user_seat_alert_banner.tsx → UserSeatAlertBanner
channels/src/components/admin_console/licensed_section_container/licensed_section_container.tsx → (module scope)
channels/src/components/admin_console/manage_roles_modal/index.ts → (module scope)
channels/src/components/admin_console/manage_teams_modal/index.tsx → (module scope)
channels/src/components/admin_console/manage_tokens_modal/index.ts → (module scope)
channels/src/components/admin_console/member_list_group/index.ts → (module scope)
channels/src/components/admin_console/openid_convert/index.ts → (module scope)
channels/src/components/admin_console/permission_policies/index.ts → (module scope)
channels/src/components/admin_console/permission_policies/policy_details/index.ts → (module scope)
channels/src/components/admin_console/permission_policies/policy_details/permission_policy_details.tsx → PermissionPolicyDetails
channels/src/components/admin_console/permission_schemes_settings/edit_post_time_limit_button/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/edit_post_time_limit_modal/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/guest_permissions_tree/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/permission_system_scheme_settings/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/permission_team_scheme_settings/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/permission_team_scheme_settings/team_in_list/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/permissions_scheme_summary/index.tsx → (module scope)
channels/src/components/admin_console/permission_schemes_settings/permissions_tree/index.tsx → (module scope)
channels/src/components/admin_console/plugin_management/index.tsx → (module scope)
channels/src/components/admin_console/reset_email_modal/index.ts → (module scope)
channels/src/components/admin_console/reset_password_modal/index.ts → (module scope)
channels/src/components/admin_console/revoke_token_button/index.ts → (module scope)
channels/src/components/admin_console/secure_connections/modals/modal_utils.tsx → useRemoteClusterAcceptInvite, useRemoteClusterCreate, useRemoteClusterCreateInvite, useRemoteClusterDelete, useSharedChannelsAdd, useSharedChannelsRemove
channels/src/components/admin_console/secure_connections/modals/shared_channels_add_modal.tsx → ChannelError, SharedChannelsAddModal
channels/src/components/admin_console/secure_connections/secure_connection_detail.tsx → ChannelIcon, SecureConnectionDetail
channels/src/components/admin_console/secure_connections/utils.ts → useSharedChannelRemoteRows, useTeamOptions
channels/src/components/admin_console/server_logs/index.ts → (module scope)
channels/src/components/admin_console/session_attributes/session_attributes_dot_menu.tsx → SessionAttributesDotMenu
channels/src/components/admin_console/session_attributes/session_attributes.tsx → SessionAttributesPage
channels/src/components/admin_console/session_attributes/use_session_attribute_edits.ts → useSessionAttributeEdits
channels/src/components/admin_console/system_properties/section_utils.ts → useThing
channels/src/components/admin_console/system_properties/system_properties.tsx → SystemProperties
channels/src/components/admin_console/system_properties/user_properties_delete_modal.tsx → useUserPropertyFieldDelete
channels/src/components/admin_console/system_properties/user_properties_dot_menu.tsx → DotMenu, useAttributeLinkModal
channels/src/components/admin_console/system_properties/user_properties_values.tsx → UserPropertyValues
channels/src/components/admin_console/system_roles/index.tsx → (module scope)
channels/src/components/admin_console/system_roles/system_role/add_users_to_role_modal/index.tsx → (module scope)
channels/src/components/admin_console/system_roles/system_role/index.tsx → (module scope)
channels/src/components/admin_console/system_roles/system_role/system_role_users/index.tsx → (module scope)
channels/src/components/admin_console/system_user_detail/index.ts → (module scope)
channels/src/components/admin_console/system_user_detail/system_user_detail.tsx → CpaFieldManagementIndicator, PluginDisplayName
channels/src/components/admin_console/system_user_detail/team_list/index.ts → (module scope)
channels/src/components/admin_console/system_users/index.ts → (module scope)
channels/src/components/admin_console/system_users/revoke_sessions_button/index.tsx → RevokeSessionsButton
channels/src/components/admin_console/system_users/system_users_date_range_menu/index.tsx → SystemUsersDateRangeMenu
channels/src/components/admin_console/system_users/system_users_export/export_user_data_modal.tsx → ExportUserDataModal
channels/src/components/admin_console/system_users/system_users_export/index.tsx → SystemUsersExport
channels/src/components/admin_console/system_users/system_users_filters_popover/index.tsx → SystemUsersFilterPopover
channels/src/components/admin_console/system_users/system_users_filters_popover/system_users_filter_team/index.tsx → SystemUsersFilterTeam
channels/src/components/admin_console/system_users/system_users_list_actions/confirm_reset_failed_attempts_modal.tsx → ConfirmResetFailedAttemptsModal
channels/src/components/admin_console/system_users/system_users_list_actions/create_group_syncables_membership_modal.tsx → CreateGroupSyncablesMembershipsModal
channels/src/components/admin_console/system_users/system_users_list_actions/deactivate_member_modal.tsx → DeactivateMemberModal
channels/src/components/admin_console/system_users/system_users_list_actions/demote_to_guest_modal.tsx → DemoteToGuestModal
channels/src/components/admin_console/system_users/system_users_list_actions/index.tsx → SystemUsersListAction
channels/src/components/admin_console/system_users/system_users_list_actions/promote_to_member_modal.tsx → PromoteToMemberModal
channels/src/components/admin_console/system_users/system_users_list_actions/revoke_sessions_modal.tsx → RevokeSessionsModal
channels/src/components/admin_console/system_users/system_users_search/index.tsx → SystemUsersSearch
channels/src/components/admin_console/team_channel_settings/channel/details/channel_level_access_rules.tsx → ChannelLevelAccessRules
channels/src/components/admin_console/team_channel_settings/channel/details/channel_members/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/channel/details/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/channel/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/channel/list/admin_channel_shared_indicator.tsx → AdminChannelSharedIndicator
channels/src/components/admin_console/team_channel_settings/channel/list/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/group/group_users/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/group/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/team/details/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/team/details/team_level_access_rules.tsx → TeamLevelAccessRules
channels/src/components/admin_console/team_channel_settings/team/details/team_members/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/team/details/team_membership_sync_footer.tsx → TeamMembershipSyncFooter
channels/src/components/admin_console/team_channel_settings/team/details/team_profile.tsx → TeamProfile
channels/src/components/admin_console/team_channel_settings/team/index.ts → (module scope)
channels/src/components/admin_console/team_channel_settings/team/list/index.ts → (module scope)
channels/src/components/admin_console/user_autocomplete_setting/index.tsx → (module scope)
channels/src/components/admin_console/workspace-optimization/dashboard.data.tsx → useMetricsData
channels/src/components/advanced_create_post/advanced_create_post.tsx → AdvancedCreatePost
channels/src/components/advanced_create_post/prewritten_chips.tsx → PrewrittenChips
channels/src/components/advanced_text_editor/advanced_text_editor.tsx → AdvancedTextEditor
channels/src/components/advanced_text_editor/ai_actions_menu.tsx → AIActionsMenu
channels/src/components/advanced_text_editor/edit_post_footer.tsx → EditPostFooter
channels/src/components/advanced_text_editor/rewrite_menu.tsx → RewriteMenu, RewriteSubMenuHeader
channels/src/components/advanced_text_editor/scheduled_post_indicator/scheduled_post_indicator.tsx → ScheduledPostIndicator
channels/src/components/advanced_text_editor/send_button/scheduled_post_custom_time_modal/dm_user_timezone.tsx → DMUserTimezone
channels/src/components/advanced_text_editor/send_button/scheduled_post_custom_time_modal/scheduled_post_custom_time_modal.tsx → ScheduledPostCustomTimeModal
channels/src/components/advanced_text_editor/send_button/send_button.tsx → SendButton
channels/src/components/advanced_text_editor/send_button/send_post_options/core_menu_options.tsx → CoreMenuOptions
channels/src/components/advanced_text_editor/send_button/send_post_options/index.tsx → SendPostOptions
channels/src/components/advanced_text_editor/send_button/send_post_options/recent_used_custom_date.tsx → RecentUsedCustomDate
channels/src/components/advanced_text_editor/use_burn_on_read.tsx → useBurnOnRead
channels/src/components/advanced_text_editor/use_composer_placeholder.ts → useComposerPlaceholder
channels/src/components/advanced_text_editor/use_editor_emoji_picker.tsx → useEditorEmojiPicker
channels/src/components/advanced_text_editor/use_groups.tsx → useGroups
channels/src/components/advanced_text_editor/use_key_handler.tsx → useKeyHandler
channels/src/components/advanced_text_editor/use_plugin_items.tsx → usePluginItems
channels/src/components/advanced_text_editor/use_post_box_indicator.tsx → useTimePostBoxIndicator
channels/src/components/advanced_text_editor/use_priority.tsx → usePriority
channels/src/components/advanced_text_editor/use_rewrite.tsx → useRewrite
channels/src/components/advanced_text_editor/use_submit.tsx → useSubmit
channels/src/components/advanced_text_editor/use_textbox_focus.tsx → useTextboxFocus
channels/src/components/advanced_text_editor/use_upload_files.tsx → useUploadFiles
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_suggestion_list.tsx → WysiwygSuggestionList
channels/src/components/air_gapped_contact_sales_modal/index.tsx → AirGappedContactSalesModal
channels/src/components/analytics/system_analytics/index.ts → (module scope)
channels/src/components/analytics/team_analytics/index.ts → (module scope)
channels/src/components/announcement_bar/cloud_preview_announcement_bar/index.tsx → CloudPreviewAnnouncementBar
channels/src/components/announcement_bar/cloud_trial_announcement_bar/index.ts → (module scope)
channels/src/components/announcement_bar/cloud_trial_ended_announcement_bar/index.tsx → CloudTrialEndAnnouncementBar
channels/src/components/announcement_bar/configuration_bar/index.ts → (module scope)
channels/src/components/announcement_bar/default_announcement_bar/index.ts → (module scope)
channels/src/components/announcement_bar/index.ts → (module scope)
channels/src/components/announcement_bar/non_production_license_bar/index.tsx → NonProductionLicenseAnnouncementBar
channels/src/components/announcement_bar/notification_permission_bar/index.tsx → NotificationPermissionBar
channels/src/components/announcement_bar/overage_users_banner/index.tsx → OverageUsersBanner
channels/src/components/announcement_bar/payment_announcement_bar/index.tsx → PaymentAnnouncementBar
channels/src/components/announcement_bar/post_history_limit_banner/index.tsx → PostHistoryLimitBanner
channels/src/components/announcement_bar/show_start_trial_modal/show_start_trial_modal.tsx → ShowStartTrialModal
channels/src/components/announcement_bar/show_tree_days_left_trial_modal/show_three_days_left_trial_modal.tsx → ShowThreeDaysLeftTrialModal
channels/src/components/announcement_bar/single_channel_guest_limit_banner/index.tsx → SingleChannelGuestLimitBanner
channels/src/components/announcement_bar/users_limits_announcement_bar/index.tsx → UsersLimitsAnnouncementBar
channels/src/components/announcement_bar/version_bar/index.ts → (module scope)
channels/src/components/app_bar/app_bar_binding.tsx → AppBarBinding
channels/src/components/app_bar/app_bar_marketplace.tsx → AppBarMarketplace
channels/src/components/app_bar/app_bar_plugin_component.tsx → AppBarPluginComponent
channels/src/components/app_bar/app_bar.tsx → AppBar
channels/src/components/app_bar/new_channel_with_board_tour_tip.tsx → NewChannelWithBoardTourTip
channels/src/components/app.tsx → App
channels/src/components/apps_form/apps_form_action_button.tsx → AppsFormActionButton
channels/src/components/apps_form/apps_form_datetime_field/apps_form_datetime_field.tsx → AppsFormDateTimeField
channels/src/components/apps_form/apps_form_field/index.ts → (module scope)
channels/src/components/apps_form/apps_form_file_upload/apps_form_file_upload.tsx → AppsFormFileUpload
channels/src/components/apps_form/index.ts → (module scope)
channels/src/components/at_mention/index.tsx → (module scope)
channels/src/components/audio_video_preview/index.ts → (module scope)
channels/src/components/audit_table/audit_row/audit_row.tsx → AuditRow
channels/src/components/audit_table/channel_row/channel_create_direct_row.tsx → ChannelCreateDirectRow
channels/src/components/audit_table/channel_row/channel_default_row.tsx → ChannelDefaultRow
channels/src/components/audit_table/channel_row/channel_row.tsx → ChannelRow
channels/src/components/audit_table/index.ts → (module scope)
channels/src/components/audit_table/user_row/user_update_active_session_row.tsx → UserUpdateActiveSessionRow
channels/src/components/authorize/index.ts → (module scope)
channels/src/components/backstage/index.ts → (module scope)
channels/src/components/block_renderer/button_element.tsx → ButtonElement
channels/src/components/block_renderer/image_block.tsx → ImageBlock
channels/src/components/block_renderer/static_select_element.tsx → StaticSelectElement
channels/src/components/browse_channels/index.ts → (module scope)
channels/src/components/burn_on_read/burn_on_read_tour_tip.tsx → BurnOnReadTourTip
channels/src/components/category_selector/category_selector.tsx → CategorySelector
channels/src/components/channel_banner/channel_banner.tsx → ChannelBanner
channels/src/components/channel_bookmarks/bookmark_dot_menu.tsx → BookmarkItemDotMenu
channels/src/components/channel_bookmarks/bookmark_icon.tsx → BookmarkIcon
channels/src/components/channel_bookmarks/bookmark_item_content.tsx → useBookmarkLink
channels/src/components/channel_bookmarks/channel_bookmarks_create_modal.tsx → ChannelBookmarkCreateModal
channels/src/components/channel_bookmarks/channel_bookmarks_menu.tsx → useBookmarkAddActions
channels/src/components/channel_bookmarks/utils.ts → useCanGetLinkPreviews, useCanGetPublicLink, useCanUploadFiles, useChannelBookmarkPermission, useChannelBookmarks
channels/src/components/channel_groups_manage_modal/index.ts → (module scope)
channels/src/components/channel_header_menu/channel_header_menu_items/channel_header_direct_menu.tsx → ChannelHeaderDirectMenu
channels/src/components/channel_header_menu/channel_header_menu_items/channel_header_group_menu.tsx → ChannelHeaderGroupMenu
channels/src/components/channel_header_menu/channel_header_menu.tsx → ChannelHeaderMenu
channels/src/components/channel_header_menu/menu_items/add_channel_members.tsx → AddChannelMembers
channels/src/components/channel_header_menu/menu_items/add_group_members.tsx → AddGroupMembers
channels/src/components/channel_header_menu/menu_items/archive_channel.tsx → ArchiveChannel
channels/src/components/channel_header_menu/menu_items/autotranslation.tsx → Autotranslation
channels/src/components/channel_header_menu/menu_items/channel_bookmarks_submenu.tsx → ChannelBookmarksSubmenu
channels/src/components/channel_header_menu/menu_items/channel_settings_menu.tsx → ChannelSettingsMenu
channels/src/components/channel_header_menu/menu_items/close_message.tsx → CloseMessage
channels/src/components/channel_header_menu/menu_items/convert_gm_to_private.tsx → ConvertGMtoPrivate
channels/src/components/channel_header_menu/menu_items/edit_conversation_header.tsx → EditConversationHeader
channels/src/components/channel_header_menu/menu_items/groups.tsx → Groups
channels/src/components/channel_header_menu/menu_items/leave_channel.tsx → LeaveChannel
channels/src/components/channel_header_menu/menu_items/mobile_channel_header_plugins.tsx → MobileChannelHeaderPlugins
channels/src/components/channel_header_menu/menu_items/notification.tsx → Notification
channels/src/components/channel_header_menu/menu_items/open_in_new_window.tsx → MenuItemOpenInNewWindow
channels/src/components/channel_header_menu/menu_items/open_members_rhs.tsx → OpenMembersRHS
channels/src/components/channel_header_menu/menu_items/toggle_favorite_channel.tsx → ToggleFavoriteChannel
channels/src/components/channel_header_menu/menu_items/toggle_info.tsx → ToggleInfo
channels/src/components/channel_header_menu/menu_items/toggle_mute_channel.tsx → ToggleMuteChannel
channels/src/components/channel_header_menu/menu_items/unarchive_channel.tsx → UnarchiveChannel
channels/src/components/channel_header_menu/menu_items/view_pinned_posts.tsx → ViewPinnedPosts
channels/src/components/channel_header/channel_header_text_popover.tsx → ChannelHeaderTextPopover
channels/src/components/channel_header/channel_header_text.tsx → AddChannelHeaderTextButton
channels/src/components/channel_header/channel_header_title_direct.tsx → ChannelHeaderTitleDirect
channels/src/components/channel_header/channel_header_title_favorite.tsx → ChannelHeaderTitleFavorite
channels/src/components/channel_header/channel_header_title_group.tsx → ChannelHeaderTitleGroup
channels/src/components/channel_header/channel_header_title.tsx → ChannelHeaderTitle
channels/src/components/channel_header/channel_info_button.tsx → ChannelInfoButton
channels/src/components/channel_header/channel_join_request_count_sync.tsx → ChannelJoinRequestCountSync
channels/src/components/channel_header/index.ts → (module scope)
channels/src/components/channel_info_rhs/index.ts → (module scope)
channels/src/components/channel_info_rhs/menu.tsx → Menu
channels/src/components/channel_invite_modal/channel_invite_modal.tsx → ChannelInviteModalComponent
channels/src/components/channel_invite_modal/group_option/group_option.tsx → GroupOption
channels/src/components/channel_invite_modal/index.ts → (module scope)
channels/src/components/channel_invite_modal/team_warning_banner/team_warning_banner.tsx → TeamWarningBanner
channels/src/components/channel_layout/center_channel/index.ts → (module scope)
channels/src/components/channel_layout/channel_controller.tsx → ChannelController
channels/src/components/channel_layout/channel_identifier_router/index.ts → (module scope)
channels/src/components/channel_layout/playbook_runner.tsx → PlaybookRunner
channels/src/components/channel_members_dropdown/channel_members_dropdown.tsx → ChannelMembersDropdown
channels/src/components/channel_members_dropdown/index.ts → (module scope)
channels/src/components/channel_members_modal/index.ts → (module scope)
channels/src/components/channel_members_rhs/channel_members_rhs.tsx → ChannelMembersRHS
channels/src/components/channel_members_rhs/index.ts → (module scope)
channels/src/components/channel_members_rhs/pending_join_requests.tsx → PendingJoinRequestRow, PendingJoinRequests
channels/src/components/channel_move_to_sub_menu_old/index.tsx → ChannelMoveToSubMenuOld
channels/src/components/channel_move_to_sub_menu/index.tsx → ChannelMoveToSubMenu
channels/src/components/channel_name_form_field/channel_name_form_field.tsx → ChannelNameFormField
channels/src/components/channel_notifications_modal/index.ts → (module scope)
channels/src/components/channel_popout/channel_popout.tsx → ChannelPopout
channels/src/components/channel_select/index.ts → (module scope)
channels/src/components/channel_selector_modal/index.ts → (module scope)
channels/src/components/channel_settings_modal/channel_access_rules_confirm_modal.tsx → ChannelAccessRulesConfirmModal
channels/src/components/channel_settings_modal/channel_settings_access_rules_tab.tsx → ChannelSettingsAccessRulesTab
channels/src/components/channel_settings_modal/channel_settings_archive_tab.tsx → ChannelSettingsArchiveTab
channels/src/components/channel_settings_modal/channel_settings_configuration_tab.tsx → ChannelSettingsConfigurationTab
channels/src/components/channel_settings_modal/channel_settings_info_tab.tsx → ChannelSettingsInfoTab
channels/src/components/channel_settings_modal/channel_settings_modal.tsx → ChannelSettingsModal
channels/src/components/channel_settings_modal/channel_settings_permissions_policy_tab.tsx → ChannelSettingsPermissionsPolicyTab
channels/src/components/channel_type_icon/useChannelIconClassName.ts → useChannelIconClassName
channels/src/components/channel_type_icon/useChannelIconOverrideName.ts → useChannelIconOverrideName
channels/src/components/channel_view/channel_composer_banner.tsx → ChannelComposerBanner
channels/src/components/channel_view/index.ts → (module scope)
channels/src/components/claim/index.ts → (module scope)
channels/src/components/cloud_effects/index.tsx → CloudEffectsWrapper
channels/src/components/cloud_fetch_error/index.tsx → CloudFetchError
channels/src/components/cloud_invoice_preview/index.tsx → CloudInvoicePreview
channels/src/components/cloud_preview_modal/cloud_preview_modal_controller.tsx → CloudPreviewModal
channels/src/components/cloud_subscribe_result_modal/error.tsx → ErrorModal
channels/src/components/cloud_subscribe_result_modal/success.tsx → SuccessModal
channels/src/components/cloud_usage_modal/lhs_nearing_limit_modal.tsx → LHSNearingLimitsModal
channels/src/components/code_block/code_block.tsx → CodeBlock
channels/src/components/commercial_support_modal/index.ts → (module scope)
channels/src/components/common/agents/use_selected_agent.ts → useSelectedAgent
channels/src/components/common/hooks/use_external_link.ts → useExternalLink
channels/src/components/common/hooks/use_field_orphaned.ts → useInstalledPluginIds
channels/src/components/common/hooks/use_search_results_actions.ts → useSearchResultsActions
channels/src/components/common/hooks/useAccessControlAttributes.ts → useAccessControlAttributes
channels/src/components/common/hooks/useAdminConfigSync.ts → useAdminConfigSync
channels/src/components/common/hooks/useChannelClassificationBanner.ts → useChannelClassificationBanner
channels/src/components/common/hooks/useClassificationMarkings.ts → useClassificationMarkings
channels/src/components/common/hooks/useControlModal.ts → useControlModal
channels/src/components/common/hooks/useCWSAvailabilityCheck.ts → useCWSAvailabilityCheck
channels/src/components/common/hooks/useEntity.ts → useEntity
channels/src/components/common/hooks/useFetchAdminConfig.ts → useFetchAdminConfig
channels/src/components/common/hooks/useFetchStandardAnalytics.ts → useFetchStandardAnalytics
channels/src/components/common/hooks/useGetAgentsBridgeEnabled.ts → useGetAgentsBridgeEnabled
channels/src/components/common/hooks/useGetCloudInstallationStatus.ts → useGetCloudInstallationStatus
channels/src/components/common/hooks/useGetFeatureFlagValue.ts → useGetFeatureFlagValue
channels/src/components/common/hooks/useGetLimits.ts → useGetLimits
channels/src/components/common/hooks/useGetLLMServices.ts → useGetLLMServices
channels/src/components/common/hooks/useGetServerLimits.ts → useGetServerLimits
channels/src/components/common/hooks/useGetSubscription.ts → useGetSubscription
channels/src/components/common/hooks/useGetTotalUsersNoBots.ts → useGetTotalUsersNoBots
channels/src/components/common/hooks/useGetUsage.ts → useGetUsage
channels/src/components/common/hooks/useOpenInvitePeopleModal.ts → useOpenInvitePeopleModal
channels/src/components/common/hooks/useOpenSalesLink.ts → useOpenSalesLink
channels/src/components/common/hooks/useOpenStartTrialFormModal.ts → useOpenStartTrialFormModal
channels/src/components/common/hooks/useOpenZendeskForm.ts → useOpenCloudZendeskSupportForm
channels/src/components/common/hooks/usePluginStatusesSync.ts → usePluginStatusesSync
channels/src/components/common/hooks/usePreference.ts → usePreference
channels/src/components/common/hooks/useSavePreferences.ts → useSavePreferences
channels/src/components/common/hooks/useShowAdminLimitReached.ts → useShowAdminLimitReached
channels/src/components/common/hooks/useTelemetryIdentifySync.tsx → useTelemetryIdentitySync
channels/src/components/common/plan_label/index.tsx → PlanLabel
channels/src/components/convert_channel_modal/index.ts → (module scope)
channels/src/components/convert_gm_to_channel_modal/convert_gm_to_channel_modal.tsx → ConvertGmToChannelModal
channels/src/components/convert_gm_to_channel_modal/index.ts → (module scope)
channels/src/components/convert_gm_to_channel_modal/team_selector/team_selector.tsx → TeamSelector
channels/src/components/create_recap_modal/create_recap_modal.tsx → CreateRecapModal
channels/src/components/create_recap_modal/schedule_configuration.tsx → ScheduleConfiguration
channels/src/components/create_team/components/create_team_form/create_team_form.tsx → CreateTeamForm
channels/src/components/create_team/components/create_team_form/index.ts → (module scope)
channels/src/components/create_team/index.ts → (module scope)
channels/src/components/create_user_groups_modal/index.ts → (module scope)
channels/src/components/custom_status/custom_status_emoji.tsx → CustomStatusEmoji
channels/src/components/custom_status/custom_status_modal.tsx → CustomStatusModal
channels/src/components/custom_status/custom_status_text.tsx → CustomStatusText
channels/src/components/data_prefetch/index.ts → (module scope)
channels/src/components/date_time_picker_modal/date_time_picker_modal.tsx → DateTimePickerModal
channels/src/components/datetime_input/datetime_input.tsx → DateTimeInputContainer
channels/src/components/delete_category_modal/index.ts → (module scope)
channels/src/components/delete_channel_modal/index.ts → (module scope)
channels/src/components/delete_post_modal/index.ts → (module scope)
channels/src/components/desktop_auth_token.tsx → DesktopAuthToken
channels/src/components/dialog_router/index.ts → (module scope)
channels/src/components/disable_autotranslation_modal.tsx → DisableAutotranslationModal
channels/src/components/dnd_custom_time_picker_modal/index.ts → (module scope)
channels/src/components/do_verify_email/do_verify_email.tsx → DoVerifyEmail
channels/src/components/dot_menu/index.ts → (module scope)
channels/src/components/dot_menu/post_reminder_submenu.tsx → PostReminderSubmenu
channels/src/components/downgrade_modal/index.tsx → DowngradeModal
channels/src/components/drafts/draft_actions/draft_actions.tsx → DraftActions
channels/src/components/drafts/draft_actions/index.ts → (module scope)
channels/src/components/drafts/draft_actions/schedule_post_actions/scheduled_post_actions.tsx → ScheduledPostActions
channels/src/components/drafts/draft_list/index.tsx → DraftList
channels/src/components/drafts/draft_row.tsx → DraftRow
channels/src/components/drafts/draft_title/draft_title.tsx → DraftTitle
channels/src/components/drafts/draft_title/index.ts → (module scope)
channels/src/components/drafts/drafts_and_schedule_posts_tabs.tsx → DraftsAndSchedulePostsTabs
channels/src/components/drafts/drafts_link/drafts_link.tsx → DraftsLink
channels/src/components/drafts/index.tsx → Drafts
channels/src/components/drafts/panel/panel_body.tsx → PanelBody
channels/src/components/drafts/scheduled_post_list/index.tsx → ScheduledPostList
channels/src/components/edit_category_modal/index.ts → (module scope)
channels/src/components/edit_channel_header_modal/index.ts → (module scope)
channels/src/components/edit_channel_purpose_modal/index.tsx → (module scope)
channels/src/components/edit_post/edit_post.tsx → EditPost
channels/src/components/edit_scheduled_post/edit_post_footer.tsx → EditPostFooter
channels/src/components/edit_scheduled_post/edit_post.tsx → EditPost
channels/src/components/edit_scheduled_post/index.ts → (module scope)
channels/src/components/emoji_picker/index.ts → (module scope)
channels/src/components/emoji_picker/use_emoji_picker.tsx → useEmojiPicker
channels/src/components/emoji/add_emoji/index.ts → (module scope)
channels/src/components/emoji/emoji_list_item/index.ts → (module scope)
channels/src/components/emoji/emoji_list/index.ts → (module scope)
channels/src/components/emoji/index.ts → (module scope)
channels/src/components/error_page/index.tsx → (module scope)
channels/src/components/error_page/messages/cloud_archived.tsx → CloudArchived
channels/src/components/external_image/index.ts → (module scope)
channels/src/components/feature_restricted_modal/feature_restricted_modal.tsx → FeatureRestrictedModal
channels/src/components/feature_toast/feature_toast.tsx → FeatureToast
channels/src/components/feedback_modal/feedback.tsx → FeedbackModal
channels/src/components/file_attachment_list/index.ts → (module scope)
channels/src/components/file_attachment_list/media_gallery/media_gallery.tsx → MediaGallery
channels/src/components/file_attachment_list/media_gallery/tiles/tile_utility_buttons.tsx → TileUtilityButtons
channels/src/components/file_attachment/file_thumbnail/index.ts → (module scope)
channels/src/components/file_attachment/index.ts → (module scope)
channels/src/components/file_info_preview/index.ts → (module scope)
channels/src/components/file_limit_sticky_banner/index.tsx → FileLimitStickyBanner
channels/src/components/file_preview_modal/file_preview_modal_info/file_preview_modal_info.tsx → FilePreviewModalInfo
channels/src/components/file_preview_modal/file_preview_modal_main_actions/file_preview_modal_main_actions.tsx → FilePreviewModalMainActions
channels/src/components/file_preview_modal/index.ts → (module scope)
channels/src/components/file_preview/index.ts → (module scope)
channels/src/components/file_search_results/index.tsx → (module scope)
channels/src/components/file_upload/index.ts → (module scope)
channels/src/components/flag_message_modal/flag_post_modal.tsx → FlagPostModal
channels/src/components/forward_post_modal/forward_post_channel_select.tsx → FormattedOption, Option
channels/src/components/forward_post_modal/forward_post_comment_input.tsx → ForwardPostCommentInput
channels/src/components/forward_post_modal/index.tsx → ForwardPostModal
channels/src/components/get_public_link_modal/index.ts → (module scope)
channels/src/components/gif_picker/gif_picker_items.tsx → GifPickerItems
channels/src/components/gif_picker/gif_picker_search.tsx → GifPickerSearch
channels/src/components/global_classification_banner/global_classification_banner.tsx → GlobalClassificationBanner
channels/src/components/global_header/center_controls/global_search_nav/global_search_nav.tsx → GlobalSearchNav
channels/src/components/global_header/center_controls/user_guide_dropdown/index.ts → (module scope)
channels/src/components/global_header/hooks.tsx → useFirstAdminUser, useIsCurrentUserSystemAdmin, useIsLoggedIn, useIsModalOpen
channels/src/components/global_header/left_controls/product_menu/product_branding_team_edition/product_branding_free_edition.tsx → ProductBrandingFreeEdition
channels/src/components/global_header/left_controls/product_menu/product_menu_list/index.ts → (module scope)
channels/src/components/global_header/left_controls/product_menu/product_menu_list/product_menu_list.tsx → ProductMenuList
channels/src/components/global_header/left_controls/product_menu/product_menu.tsx → ProductMenu
channels/src/components/global_header/right_controls/at_mentions_button/at_mentions_button.tsx → AtMentionsButton
channels/src/components/global_header/right_controls/plan_upgrade_button/index.tsx → PlanUpgradeButton
channels/src/components/global_header/right_controls/right_controls.tsx → RightControls
channels/src/components/global_header/right_controls/saved_posts_button/saved_posts_button.tsx → SavedPostsButton
channels/src/components/global_header/right_controls/settings_button/index.ts → (module scope)
channels/src/components/header_footer_route/footer.tsx → Footer
channels/src/components/header_footer_route/header.tsx → Header
channels/src/components/header_footer_template/header_footer_template.tsx → HeaderFooterNotLoggedIn
channels/src/components/help/use_help_page_title.ts → useHelpPageTitle
channels/src/components/inline_action_button/index.tsx → InlineActionButton
channels/src/components/inline_entity_link/index.tsx → InlineEntityLink
channels/src/components/integrations/add_command/index.ts → (module scope)
channels/src/components/integrations/add_incoming_webhook/index.ts → (module scope)
channels/src/components/integrations/add_oauth_app/index.ts → (module scope)
channels/src/components/integrations/add_outgoing_webhook/index.ts → (module scope)
channels/src/components/integrations/bots/add_bot/index.ts → (module scope)
channels/src/components/integrations/bots/index.ts → (module scope)
channels/src/components/integrations/commands_container/index.ts → (module scope)
channels/src/components/integrations/confirm_integration/index.ts → (module scope)
channels/src/components/integrations/delete_integration_link/index.ts → (module scope)
channels/src/components/integrations/edit_command/index.ts → (module scope)
channels/src/components/integrations/edit_incoming_webhook/index.ts → (module scope)
channels/src/components/integrations/edit_oauth_app/index.ts → (module scope)
channels/src/components/integrations/edit_outgoing_webhook/index.ts → (module scope)
channels/src/components/integrations/index.ts → (module scope)
channels/src/components/integrations/installed_commands/index.ts → (module scope)
channels/src/components/integrations/installed_incoming_webhooks/index.ts → (module scope)
channels/src/components/integrations/installed_oauth_app/index.ts → (module scope)
channels/src/components/integrations/installed_oauth_apps/index.ts → (module scope)
channels/src/components/integrations/installed_outgoing_webhooks/index.ts → (module scope)
channels/src/components/integrations/outgoing_oauth_connections/abstract_outgoing_oauth_connection.tsx → AbstractOutgoingOAuthConnection
channels/src/components/integrations/outgoing_oauth_connections/add_outgoing_oauth_connection.tsx → AddOutgoingOAuthConnection
channels/src/components/integrations/outgoing_oauth_connections/edit_outgoing_oauth_connection.tsx → EditOutgoingOAuthConnection
channels/src/components/integrations/outgoing_oauth_connections/installed_outgoing_oauth_connections.tsx → InstalledOutgoingOAuthConnections
channels/src/components/integrations/outgoing_oauth_connections/oauth_connection_audience_input.tsx → OAuthConnectionAudienceInput
channels/src/components/intl_provider/index.tsx → (module scope)
channels/src/components/invitation_modal/index.tsx → (module scope)
channels/src/components/invitation_modal/invite_as.tsx → InviteAs
channels/src/components/invitation_modal/overage_users_banner_notice/index.tsx → OverageUsersBannerNotice
channels/src/components/keyboard_shortcuts/keyboard_shortcuts_modal/keyboard_shortcuts_modal.tsx → KeyboardShortcutsModal
channels/src/components/latex_block/index.ts → (module scope)
channels/src/components/latex_inline/index.ts → (module scope)
channels/src/components/learn_more_trial_modal/learn_more_trial_modal.tsx → LearnMoreTrialModal
channels/src/components/leave_channel_modal/index.ts → (module scope)
channels/src/components/leave_team_modal/index.ts → (module scope)
channels/src/components/linking_landing_page/index.tsx → (module scope)
channels/src/components/logged_in/index.ts → (module scope)
channels/src/components/login/login.tsx → Login
channels/src/components/markdown_image_expand/index.ts → (module scope)
channels/src/components/markdown_image/index.ts → (module scope)
channels/src/components/markdown/index.ts → (module scope)
channels/src/components/member_list_channel/index.ts → (module scope)
channels/src/components/member_list_team/index.ts → (module scope)
channels/src/components/menu/menu_item_link.tsx → MenuItemLink
channels/src/components/menu/menu_item.tsx → (anonymous)
channels/src/components/menu/menu.tsx → Menu, MenuModal
channels/src/components/menu/sub_menu.tsx → SubMenu, SubMenuModal
channels/src/components/mfa/mfa_controller/index.ts → (module scope)
channels/src/components/mfa/setup/index.ts → (module scope)
channels/src/components/mobile_channel_header/channel_info_button/index.ts → (module scope)
channels/src/components/mobile_channel_header/collapse_lhs_button/index.ts → (module scope)
channels/src/components/mobile_channel_header/collapse_rhs_button/index.ts → (module scope)
channels/src/components/mobile_channel_header/index.ts → (module scope)
channels/src/components/mobile_channel_header/show_search_button/index.ts → (module scope)
channels/src/components/mobile_channel_header/unmute_channel_button/index.ts → (module scope)
channels/src/components/mobile_sidebar_right/index.ts → (module scope)
channels/src/components/mobile_sidebar_right/mobile_sidebar_right_items/index.tsx → (module scope)
channels/src/components/mobile_view_watcher/index.ts → (module scope)
channels/src/components/modal_controller/index.ts → (module scope)
channels/src/components/more_direct_channels/index.ts → (module scope)
channels/src/components/more_direct_channels/list_item/index.ts → (module scope)
channels/src/components/more_direct_channels/list_item/user_details/index.ts → (module scope)
channels/src/components/more_direct_channels/list_item/user_details/user_details.tsx → UserDetails
channels/src/components/more_direct_channels/list/index.ts → (module scope)
channels/src/components/more_direct_channels/list/list.tsx → (anonymous)
channels/src/components/move_thread_modal/index.ts → (module scope)
channels/src/components/move_thread_modal/move_thread_modal.tsx → MoveThreadModal
channels/src/components/msg_typing/index.ts → (module scope)
channels/src/components/new_channel_modal/new_channel_modal.tsx → NewChannelModal
channels/src/components/new_replies_banner/index.ts → (module scope)
channels/src/components/new_search/hooks.tsx → useSearchSuggestions
channels/src/components/new_search/new_search.tsx → NewSearch
channels/src/components/new_search/search_box_hints.tsx → SearchBoxHints
channels/src/components/new_search/search_box_input.tsx → (anonymous)
channels/src/components/new_search/search_box_suggestions.tsx → SearchSuggestions
channels/src/components/new_search/search_box_type_selector.tsx → SearchTypeSelector
channels/src/components/new_search/select_team.tsx → SelectTeam
channels/src/components/notify_counts/index.ts → (module scope)
channels/src/components/onboarding_tasklist/onboarding_tasklist_completed.tsx → Completed
channels/src/components/onboarding_tasklist/onboarding_tasklist.tsx → OnBoardingTaskList
channels/src/components/onboarding_tasks/complete_your_profile_tour_tip.tsx → CompleteYourProfileTour
channels/src/components/onboarding_tasks/onboarding_tasks_manager.tsx → useHandleOnBoardingTaskData, useHandleOnBoardingTaskTrigger, useTasksList, useTasksListWithStatus
channels/src/components/onboarding_tasks/visit_system_console_tour_tip.tsx → VisitSystemConsoleTour
channels/src/components/password_reset_form/index.ts → (module scope)
channels/src/components/password_reset_send_link/index.ts → (module scope)
channels/src/components/permalink_view/index.ts → (module scope)
channels/src/components/permissions_gates/any_team_permission_gate.tsx → AnyTeamPermissionGate
channels/src/components/permissions_gates/channel_permission_gate.tsx → ChannelPermissionGate
channels/src/components/permissions_gates/system_permission_gate.tsx → SystemPermissionGate
channels/src/components/permissions_gates/team_permission_gate.tsx → TeamPermissionGate
channels/src/components/persist_notification_confirm_modal.tsx → PersistNotificationConfirmModal
channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_app/index.ts → (module scope)
channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/index.ts → (module scope)
channels/src/components/plugin_marketplace/marketplace_modal.tsx → MarketplaceModal
channels/src/components/popout_controller/popout_controller.tsx → PopoutController
channels/src/components/post_edit_history/edited_post_item/edited_post_item.tsx → EditedPostItem
channels/src/components/post_edit_history/edited_post_item/index.ts → (module scope)
channels/src/components/post_edit_history/index.ts → (module scope)
channels/src/components/post_edit_history/post_edit_history.tsx → PostEditHistory
channels/src/components/post_emoji/index.tsx → (module scope)
channels/src/components/post_markdown/index.ts → (module scope)
channels/src/components/post_priority/post_priority_picker.tsx → PostPriorityPicker
channels/src/components/post_profile_picture/index.ts → (module scope)
channels/src/components/post_reminder_custom_time_picker_modal/index.ts → (module scope)
channels/src/components/post_view/acknowledgements/index.ts → (module scope)
channels/src/components/post_view/acknowledgements/post_acknowledgements_users_popover.tsx → Row
channels/src/components/post_view/acknowledgements/post_acknowledgements.tsx → PostAcknowledgements
channels/src/components/post_view/burn_on_read_badge/burn_on_read_badge.tsx → BurnOnReadBadge
channels/src/components/post_view/channel_intro_message/add_members_button.tsx → AddMembersButton
channels/src/components/post_view/channel_intro_message/channel_intro_message.tsx → ChannelIntroBody
channels/src/components/post_view/channel_intro_message/index.ts → (module scope)
channels/src/components/post_view/channel_intro_message/pluggable_intro_buttons/index.ts → (module scope)
channels/src/components/post_view/combined_system_message/index.ts → (module scope)
channels/src/components/post_view/combined_user_activity_post/index.ts → (module scope)
channels/src/components/post_view/commented_on_files_message/index.ts → (module scope)
channels/src/components/post_view/data_spillage_report/data_spillage_actions/data_spillage_actions.tsx → DataSpillageAction
channels/src/components/post_view/data_spillage_report/data_spillage_footer/data_spillage_footer.tsx → DataSpillageFooter
channels/src/components/post_view/embedded_bindings/button_binding/index.ts → (module scope)
channels/src/components/post_view/embedded_bindings/embedded_binding/index.ts → (module scope)
channels/src/components/post_view/embedded_bindings/select_binding/index.ts → (module scope)
channels/src/components/post_view/failed_post_options/index.ts → (module scope)
channels/src/components/post_view/floating_timestamp/index.ts → (module scope)
channels/src/components/post_view/gm_conversion_message/gm_conversion_message.tsx → GMConversionMessage
channels/src/components/post_view/index.ts → (module scope)
channels/src/components/post_view/interactive_messages/index.tsx → InteractiveMessages
channels/src/components/post_view/message_attachments/action_button/index.ts → (module scope)
channels/src/components/post_view/message_attachments/action_menu/index.ts → (module scope)
channels/src/components/post_view/message_attachments/message_attachment/index.ts → (module scope)
channels/src/components/post_view/post_add_channel_member/index.ts → (module scope)
channels/src/components/post_view/post_attachment_container/post_attachment_container.tsx → PostAttachmentContainer
channels/src/components/post_view/post_attachment_opengraph/index.ts → (module scope)
channels/src/components/post_view/post_body_additional_content/index.ts → (module scope)
channels/src/components/post_view/post_edited_indicator/index.ts → (module scope)
channels/src/components/post_view/post_flag_icon/index.ts → (module scope)
channels/src/components/post_view/post_header_custom_status/post_header_custom_status.tsx → PostHeaderCustomStatus
channels/src/components/post_view/post_image/index.ts → (module scope)
channels/src/components/post_view/post_list_row/index.ts → (module scope)
channels/src/components/post_view/post_list_virtualized/latest_post_reader.tsx → LatestPostReader
channels/src/components/post_view/post_list/index.tsx → (module scope)
channels/src/components/post_view/post_message_preview/index.ts → (module scope)
channels/src/components/post_view/post_message_view/index.ts → (module scope)
channels/src/components/post_view/post_pre_header/index.ts → (module scope)
channels/src/components/post_view/post_reaction/index.ts → (module scope)
channels/src/components/post_view/post_recent_reactions/index.ts → (module scope)
channels/src/components/post_view/post_time/index.ts → (module scope)
channels/src/components/post_view/reaction_list/index.ts → (module scope)
channels/src/components/post_view/reaction/index.ts → (module scope)
channels/src/components/post_view/reaction/reaction_tooltip/index.ts → (module scope)
channels/src/components/post_view/show_more/index.ts → (module scope)
channels/src/components/post/index.tsx → (module scope)
channels/src/components/post/post_header_translate_icon.tsx → PostHeaderTranslateIcon
channels/src/components/preparing_workspace/index.tsx → (module scope)
channels/src/components/preparing_workspace/launching_workspace.tsx → LaunchingWorkspace
channels/src/components/preparing_workspace/organization.tsx → Organization
channels/src/components/preparing_workspace/preparing_workspace.tsx → PreparingWorkspace
channels/src/components/product_notices_modal/index.tsx → (module scope)
channels/src/components/profile_popover/profile_popover_add_to_channel.tsx → ProfilePopoverAddToChannel
channels/src/components/profile_popover/profile_popover_call_button_wrapper/index.tsx → CallButton
channels/src/components/profile_popover/profile_popover_calls_button/index.tsx → (module scope)
channels/src/components/profile_popover/profile_popover_calls_button/profile_popover_call_button.tsx → ProfilePopoverCallButton
channels/src/components/profile_popover/profile_popover_custom_attributes.tsx → ProfilePopoverCustomAttributes
channels/src/components/profile_popover/profile_popover_custom_status.tsx → ProfilePopoverCustomStatus
channels/src/components/profile_popover/profile_popover_last_active.tsx → ProfilePopoverLastActive
channels/src/components/profile_popover/profile_popover_other_user_row.tsx → ProfilePopoverOtherUserRow
channels/src/components/profile_popover/profile_popover_self_user_row.tsx → ProfilePopoverSelfUserRow
channels/src/components/profile_popover/profile_popover_title.tsx → ProfilePopoverTitle
channels/src/components/profile_popover/profile_popover.tsx → ProfilePopover
channels/src/components/query_param_actions/query_param_action_controller.tsx → QueryParamActionController
channels/src/components/quick_switch_modal/index.tsx → (module scope)
channels/src/components/readout/readout.tsx → Readout
channels/src/components/recaps_link/recaps_link.tsx → RecapsLink
channels/src/components/recaps/recap_channel_card.tsx → RecapChannelCard
channels/src/components/recaps/recap_item.tsx → RecapItem
channels/src/components/recaps/recap_text_formatter.tsx → RecapTextFormatter
channels/src/components/recaps/recap_usage_badge/recap_usage_badge.tsx → RecapUsageBadge
channels/src/components/recaps/recaps_list.tsx → RecapsList
channels/src/components/recaps/recaps.tsx → Recaps
channels/src/components/recaps/scheduled_recap_item.tsx → ScheduledRecapItem
channels/src/components/remove_flagged_message_confirmation_modal/remove_flagged_message_confirmation_modal.tsx → KeepRemoveFlaggedMessageConfirmationModal
channels/src/components/removed_from_channel_modal/index.ts → (module scope)
channels/src/components/rename_channel_modal/index.ts → (module scope)
channels/src/components/request_join_channel_modal/request_join_channel_modal.tsx → RequestJoinChannelModal
channels/src/components/reset_status_modal/index.ts → (module scope)
channels/src/components/resizable_sidebar/resizable_divider.tsx → ResizableDivider
channels/src/components/resizable_sidebar/resizable_rhs/index.tsx → ResizableRhs
channels/src/components/rhs_card_header/index.tsx → (module scope)
channels/src/components/rhs_card/index.ts → (module scope)
channels/src/components/rhs_header_post/index.ts → (module scope)
channels/src/components/rhs_plugin_popout/rhs_plugin_popout.tsx → RhsPluginPopout
channels/src/components/rhs_popout/rhs_popout.tsx → RhsPopout
channels/src/components/rhs_search_popout/rhs_search_popout.tsx → RhsSearchPopout
channels/src/components/rhs_thread/index.ts → (module scope)
channels/src/components/rhs_thread/rhs_thread.tsx → RhsThread
channels/src/components/root_post_divider/root_post_divider.tsx → RootPostDivider
channels/src/components/root/index.ts → (module scope)
channels/src/components/root/luxon_controller.tsx → LuxonController
channels/src/components/root/performance_reporter_controller.tsx → PerformanceReporterController
channels/src/components/root/root_redirect/index.ts → (module scope)
channels/src/components/root/shared_package_provider.tsx → useEmojiByName
channels/src/components/search_hint/search_hint.tsx → SearchHint
channels/src/components/search_results_header/index.tsx → (module scope)
channels/src/components/search_results/index.tsx → (module scope)
channels/src/components/search_results/messages_or_files_selector.tsx → MessagesOrFilesSelector
channels/src/components/search_results/post_search_results_item.tsx → PostSearchResultsItem
channels/src/components/search_results/search_limits_banner.tsx → SearchLimitsBanner
channels/src/components/search_results/search_results.tsx → SearchResults
channels/src/components/search/index.tsx → (module scope)
channels/src/components/search/search.tsx → Search
channels/src/components/select_team/index.ts → (module scope)
channels/src/components/settings_sidebar/index.ts → (module scope)
channels/src/components/should_verify_email/should_verify_email.tsx → ShouldVerifyEmail
channels/src/components/show_translation_modal/show_translation_modal.tsx → ShowTranslationModal
channels/src/components/sidebar_right/index.ts → (module scope)
channels/src/components/sidebar/add_channels_cta_button.tsx → AddChannelsCtaButton
channels/src/components/sidebar/channel_filter/index.ts → (module scope)
channels/src/components/sidebar/channel_navigator/index.ts → (module scope)
channels/src/components/sidebar/index.ts → (module scope)
channels/src/components/sidebar/invite_members_button.tsx → InviteMembersButton
channels/src/components/sidebar/mobile_sidebar_header/index.ts → (module scope)
channels/src/components/sidebar/sidebar_category/index.ts → (module scope)
channels/src/components/sidebar/sidebar_category/sidebar_category_menu/create_new_category_menu_item.tsx → CreateNewCategoryMenuItem
channels/src/components/sidebar/sidebar_category/sidebar_category_menu/index.tsx → SidebarCategoryMenu
channels/src/components/sidebar/sidebar_category/sidebar_category_menu/mark_as_read_menu_item.tsx → MarkAsUnreadItem
channels/src/components/sidebar/sidebar_category/sidebar_category_sorting_menu.tsx → SidebarCategorySortingMenu
channels/src/components/sidebar/sidebar_channel/channel_pencil_icon/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/sidebar_base_channel/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/sidebar_channel_link/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/sidebar_channel_menu/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/sidebar_channel_menu/sidebar_channel_menu.tsx → SidebarChannelMenu
channels/src/components/sidebar/sidebar_channel/sidebar_direct_channel/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/sidebar_group_channel/index.ts → (module scope)
channels/src/components/sidebar/sidebar_header/sidebar_browse_or_add_channel_menu.tsx → SidebarBrowserOrAddChannelMenu
channels/src/components/sidebar/sidebar_header/sidebar_header.tsx → SidebarHeader
channels/src/components/sidebar/sidebar_header/sidebar_team_menu.tsx → AddGroupsToTeamMenuItem, CreateTeamMenuItem, InvitePeopleMenuItem, LeaveTeamMenuItem, ManageGroupsMenuItem, ManageViewMembersMenuItem, PluginMenuItems, SidebarTeamMenu…
channels/src/components/sidebar/sidebar_join_request_counts_sync.tsx → SidebarJoinRequestCountsSync
channels/src/components/sidebar/sidebar_list/index.ts → (module scope)
channels/src/components/sidebar/unread_channels.tsx → UnreadChannels
channels/src/components/signup/signup.tsx → Signup
channels/src/components/single_image_view/index.ts → (module scope)
channels/src/components/start_trial_form_modal/failure_modal.tsx → StartTrialFormModalResult
channels/src/components/start_trial_form_modal/index.tsx → StartTrialFormModal
channels/src/components/suggestion/rhs_suggestion_list.tsx → RhsSuggestionList
channels/src/components/suggestion/search_channel_suggestion/index.ts → (module scope)
channels/src/components/suggestion/search_date_suggestion/index.ts → (module scope)
channels/src/components/suggestion/suggestion_box/index.ts → (module scope)
channels/src/components/suggestion/switch_channel_provider.tsx → (anonymous), (module scope)
channels/src/components/switch_to_yearly_plan_confirm_modal/index.tsx → SwitchToYearlyPlanConfirmModal
channels/src/components/system_notice/index.ts → (module scope)
channels/src/components/team_controller/index.ts → (module scope)
channels/src/components/team_controller/team_controller.tsx → TeamController
channels/src/components/team_groups_manage_modal/index.ts → (module scope)
channels/src/components/team_members_dropdown/index.ts → (module scope)
channels/src/components/team_members_modal/index.ts → (module scope)
channels/src/components/team_selector_modal/index.ts → (module scope)
channels/src/components/team_settings_modal/team_settings_modal.tsx → TeamSettingsModal
channels/src/components/team_settings/index.ts → (module scope)
channels/src/components/team_settings/team_access_policies_tab/index.ts → (module scope)
channels/src/components/team_settings/team_access_policies_tab/sync_status_footer.tsx → SyncStatusFooter
channels/src/components/team_settings/team_access_tab/index.ts → (module scope)
channels/src/components/team_settings/team_access_tab/invite_section_input.tsx → InviteSectionInput
channels/src/components/team_settings/team_info_tab/index.ts → (module scope)
channels/src/components/team_settings/team_membership_tab/team_membership_tab.tsx → TeamMembershipTab
channels/src/components/team_sidebar/index.ts → (module scope)
channels/src/components/terms_of_service/index.ts → (module scope)
channels/src/components/textbox/index.ts → (module scope)
channels/src/components/theme_provider/theme_provider.tsx → ThemeProvider
channels/src/components/thread_popout/thread_popout.tsx → ThreadPopout
channels/src/components/threading/channel_threads/posts_channel_reset_watcher/posts_channel_reset_watcher.tsx → PostsChannelResetWatcher
channels/src/components/threading/channel_threads/thread_footer/thread_footer.tsx → ThreadFooter
channels/src/components/threading/global_threads_link/global_threads_link.tsx → GlobalThreadsLink
channels/src/components/threading/global_threads/global_threads.tsx → GlobalThreads
channels/src/components/threading/global_threads/thread_item/attachments/file_card/index.ts → (module scope)
channels/src/components/threading/global_threads/thread_item/index.ts → (module scope)
channels/src/components/threading/global_threads/thread_item/thread_item.tsx → ThreadItem
channels/src/components/threading/global_threads/thread_list/thread_list.tsx → ThreadList
channels/src/components/threading/global_threads/thread_menu/thread_menu.tsx → ThreadMenu
channels/src/components/threading/global_threads/thread_pane/thread_pane.tsx → ThreadPane
channels/src/components/threading/hooks.ts → useThreadRouting
channels/src/components/threading/thread_viewer/index.ts → (module scope)
channels/src/components/threading/virtualized_thread_viewer/create_comment.tsx → (anonymous)
channels/src/components/threading/virtualized_thread_viewer/index.ts → (module scope)
channels/src/components/threading/virtualized_thread_viewer/reply/index.ts → (module scope)
channels/src/components/three_days_left_trial_modal/three_days_left_trial_modal.tsx → ThreeDaysLeftTrialModal
channels/src/components/timestamp/index.ts → (module scope)
channels/src/components/toast_wrapper/index.ts → (module scope)
channels/src/components/toggle_modal_button.tsx → ToggleModalButton
channels/src/components/tours/hooks.ts → useGetTourSteps, useHandleNavigationAndExtraActions
channels/src/components/tours/onboarding_tour/channels_and_direct_messages_tour_tip.tsx → ChannelsAndDirectMessagesTour
channels/src/components/tours/onboarding_tour/hooks.ts → useShowOnboardingTutorialStep
channels/src/components/tours/tour_manager.tsx → useTourTipManager
channels/src/components/trial_benefits_modal/trial_benefits_modal.tsx → TrialBenefitsModal
channels/src/components/unarchive_channel_modal/index.ts → (module scope)
channels/src/components/unreads_status_handler/index.ts → (module scope)
channels/src/components/update_user_group_modal/index.ts → (module scope)
channels/src/components/user_account_menu/index.ts → (module scope)
channels/src/components/user_account_menu/user_account_away_menuitem.tsx → UserAccountAwayMenuItem
channels/src/components/user_account_menu/user_account_custom_status_menuitem.tsx → UserAccountSetCustomStatusMenuItem
channels/src/components/user_account_menu/user_account_dnd_menuitem.tsx → UserAccountDndMenuItem
channels/src/components/user_account_menu/user_account_name_menuitem.tsx → UserAccountNameMenuItem
channels/src/components/user_account_menu/user_account_offline_menuitem.tsx → UserAccountOfflineMenuItem
channels/src/components/user_account_menu/user_account_online_menuitem.tsx → UserAccountOnlineMenuItem
channels/src/components/user_account_menu/user_account_out_of_office_menuitem.tsx → UserAccountOutOfOfficeMenuItem
channels/src/components/user_account_menu/user_account_profile_menuitem.tsx → UserAccountProfileMenuItem
channels/src/components/user_group_popover/group_member_list/group_member_list.tsx → Item
channels/src/components/user_group_popover/group_member_list/index.ts → (module scope)
channels/src/components/user_group_popover/user_group_popover_controller.tsx → UserGroupPopoverController
channels/src/components/user_group_popover/user_group_popover.tsx → UserGroupPopover
channels/src/components/user_groups_modal/ad_ldap_upsell_banner.tsx → ADLDAPUpsellBanner
channels/src/components/user_groups_modal/index.ts → (module scope)
channels/src/components/user_groups_modal/user_groups_list/index.ts → (module scope)
channels/src/components/user_list_row_with_error/index.ts → (module scope)
channels/src/components/user_list_row/index.ts → (module scope)
channels/src/components/user_profile/index.ts → (module scope)
channels/src/components/user_settings/advanced/index.ts → (module scope)
channels/src/components/user_settings/advanced/join_leave_section/index.ts → (module scope)
channels/src/components/user_settings/advanced/performance_debugging_section/index.ts → (module scope)
channels/src/components/user_settings/advanced/wysiwyg_editor_section/index.ts → (module scope)
channels/src/components/user_settings/advanced/wysiwyg_editor_section/wysiwyg_editor_section.tsx → WysiwygEditorSection
channels/src/components/user_settings/display/index.ts → (module scope)
channels/src/components/user_settings/display/manage_languages/index.ts → (module scope)
channels/src/components/user_settings/display/manage_timezones/index.ts → (module scope)
channels/src/components/user_settings/display/render_emoticons_as_emoji/index.ts → (module scope)
channels/src/components/user_settings/display/user_settings_theme/index.ts → (module scope)
channels/src/components/user_settings/display/user_settings_theme/premade_theme_chooser/index.ts → (module scope)
channels/src/components/user_settings/general/index.ts → (module scope)
channels/src/components/user_settings/general/user_settings_general.tsx → PluginDisplayName
channels/src/components/user_settings/modal/index.ts → (module scope)
channels/src/components/user_settings/notifications/email_notification_setting/index.ts → (module scope)
channels/src/components/user_settings/notifications/index.ts → (module scope)
channels/src/components/user_settings/plugin/plugin_setting.tsx → PluginSetting
channels/src/components/user_settings/plugin/radio.tsx → RadioInput
channels/src/components/user_settings/security/index.ts → (module scope)
channels/src/components/user_settings/security/mfa_section/index.ts → (module scope)
channels/src/components/user_settings/security/user_access_token_section/index.ts → (module scope)
channels/src/components/user_settings/sidebar/limit_visible_gms_dms/index.ts → (module scope)
channels/src/components/user_settings/sidebar/show_unreads_category/index.ts → (module scope)
channels/src/components/view_user_group_modal/index.ts → (module scope)
channels/src/components/view_user_group_modal/view_user_group_header_sub_menu/index.ts → (module scope)
channels/src/components/view_user_group_modal/view_user_group_list_item/index.ts → (module scope)
channels/src/components/view_user_group_modal/view_user_group_list_item/view_user_group_list_item.tsx → ViewUserGroupListItem
channels/src/components/view_user_group_modal/view_user_group_modal_header/index.ts → (module scope)
channels/src/components/widgets/menu/menu_items/menu_cloud_trial.tsx → MenuCloudTrial
channels/src/components/widgets/menu/menu_items/menu_item_cloud_limit.tsx → MenuItemCloudLimit
channels/src/components/widgets/menu/menu_items/menu_start_trial.tsx → MenuStartTrial
channels/src/components/widgets/tag/guest_tag.tsx → GuestTag
channels/src/components/widgets/users/avatars/avatars.tsx → Avatars, UserAvatar
channels/src/components/window_size_observer/WindowSizeObserver.tsx → WindowSizeObserver
channels/src/components/youtube_video/index.ts → (module scope)
channels/src/hooks/useBurnOnReadDeleteModal.ts → useBurnOnReadDeleteModal
channels/src/hooks/useChannelAccessControlActions.ts → useChannelAccessControlActions
channels/src/hooks/useChannelSystemPolicies.ts → useChannelSystemPolicies
channels/src/hooks/useEnabledSessionAttributeFields.ts → useEnabledSessionAttributeFields
channels/src/hooks/useGetCloudPreviewModalContent.ts → useGetCloudPreviewModalContent
channels/src/hooks/useReadout.ts → useReadout
channels/src/plugins/call_button/index.ts → (module scope)
channels/src/plugins/channel_header_plug/index.ts → (module scope)
channels/src/plugins/pluggable/pluggable.tsx → Pluggable
channels/src/plugins/rhs_plugin/index.ts → (module scope)
channels/src/plugins/rhs_plugin/rhs_plugin.tsx → RhsPlugin
channels/src/plugins/useGetPluginsActivationState.ts → useGetPluginsActivationState
channels/src/stores/hooks.ts → useGlobalState
channels/src/utils/popouts/use_popout_title.ts → usePopoutTitle
channels/src/utils/post_utils.ts → usePostAriaLabel
channels/src/utils/products.ts → useCurrentProduct, useCurrentProductId, useProducts
64% redux (69/107 fns run, 38 never run) · e.g. __DO_NOT_USE__ActionTypes, ctorName, dispatch, formatProdErrorMessage…
channels/src/components/access_history_modal/index.ts → mapDispatchToProps
channels/src/components/actions_menu/index.ts → mapDispatchToProps
channels/src/components/activity_log_modal/index.ts → mapDispatchToProps
channels/src/components/add_groups_to_channel_modal/index.ts → mapDispatchToProps
channels/src/components/add_groups_to_team_modal/index.ts → mapDispatchToProps
channels/src/components/add_user_to_channel_modal/index.ts → mapDispatchToProps
channels/src/components/add_user_to_group_multiselect/index.ts → mapDispatchToProps
channels/src/components/add_users_to_group_modal/index.ts → mapDispatchToProps
channels/src/components/add_users_to_team_modal/index.ts → mapDispatchToProps
channels/src/components/admin_console/access_control/index.ts → mapDispatchToProps
channels/src/components/admin_console/access_control/jobs/index.ts → mapDispatchToProps
channels/src/components/admin_console/access_control/policy_details/channel_list/index.ts → mapDispatchToProps
channels/src/components/admin_console/access_control/policy_details/index.ts → mapDispatchToProps
channels/src/components/admin_console/admin_navbar_dropdown/index.ts → mapDispatchToProps
channels/src/components/admin_console/admin_sidebar/index.ts → mapDispatchToProps
channels/src/components/admin_console/audits/index.ts → mapDispatchToProps
channels/src/components/admin_console/blockable_button/index.ts → mapDispatchToProps
channels/src/components/admin_console/blockable_link/index.ts → mapDispatchToProps
channels/src/components/admin_console/compliance_reports/index.ts → mapDispatchToProps
channels/src/components/admin_console/custom_terms_of_service_settings/index.ts → mapDispatchToProps
channels/src/components/admin_console/data_retention_settings/channel_list/index.ts → mapDispatchToProps
channels/src/components/admin_console/data_retention_settings/custom_policy_form/index.ts → mapDispatchToProps
channels/src/components/admin_console/data_retention_settings/global_policy_form/index.ts → mapDispatchToProps
channels/src/components/admin_console/data_retention_settings/index.ts → mapDispatchToProps
channels/src/components/admin_console/data_retention_settings/team_list/index.ts → mapDispatchToProps
channels/src/components/admin_console/database/index.tsx → mapDispatchToProps
channels/src/components/admin_console/feature_discovery/index.tsx → mapDispatchToProps
channels/src/components/admin_console/group_settings/group_details/index.ts → mapDispatchToProps
channels/src/components/admin_console/group_settings/groups_list/index.ts → mapDispatchToProps
channels/src/components/admin_console/index.ts → mapDispatchToProps
channels/src/components/admin_console/jobs/index.tsx → mapDispatchToProps
channels/src/components/admin_console/license_settings/index.ts → mapDispatchToProps
channels/src/components/admin_console/manage_roles_modal/index.ts → mapDispatchToProps
channels/src/components/admin_console/manage_teams_modal/index.tsx → mapDispatchToProps
channels/src/components/admin_console/manage_tokens_modal/index.ts → mapDispatchToProps
channels/src/components/admin_console/member_list_group/index.ts → mapDispatchToProps
channels/src/components/admin_console/openid_convert/index.ts → mapDispatchToProps
channels/src/components/admin_console/permission_policies/index.ts → mapDispatchToProps
channels/src/components/admin_console/permission_policies/policy_details/index.ts → mapDispatchToProps
channels/src/components/admin_console/permission_schemes_settings/edit_post_time_limit_modal/index.tsx → mapDispatchToProps
channels/src/components/admin_console/permission_schemes_settings/index.tsx → mapDispatchToProps
channels/src/components/admin_console/permission_schemes_settings/permission_system_scheme_settings/index.tsx → mapDispatchToProps
channels/src/components/admin_console/permission_schemes_settings/permission_team_scheme_settings/index.tsx → mapDispatchToProps
channels/src/components/admin_console/permission_schemes_settings/permission_team_scheme_settings/team_in_list/index.tsx → mapDispatchToProps
channels/src/components/admin_console/permission_schemes_settings/permissions_scheme_summary/index.tsx → mapDispatchToProps
channels/src/components/admin_console/plugin_management/index.tsx → mapDispatchToProps
channels/src/components/admin_console/reset_email_modal/index.ts → mapDispatchToProps
channels/src/components/admin_console/reset_password_modal/index.ts → mapDispatchToProps
channels/src/components/admin_console/revoke_token_button/index.ts → mapDispatchToProps
channels/src/components/admin_console/server_logs/index.ts → mapDispatchToProps
channels/src/components/admin_console/system_roles/system_role/add_users_to_role_modal/index.tsx → mapDispatchToProps
channels/src/components/admin_console/system_roles/system_role/index.tsx → mapDispatchToProps
channels/src/components/admin_console/system_roles/system_role/system_role_users/index.tsx → mapDispatchToProps
channels/src/components/admin_console/system_user_detail/team_list/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/channel/details/channel_members/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/channel/details/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/channel/list/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/group/group_users/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/team/details/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/team/details/team_members/index.ts → mapDispatchToProps
channels/src/components/admin_console/team_channel_settings/team/list/index.ts → mapDispatchToProps
channels/src/components/admin_console/user_autocomplete_setting/index.tsx → mapDispatchToProps
channels/src/components/analytics/team_analytics/index.ts → mapDispatchToProps
channels/src/components/announcement_bar/cloud_trial_announcement_bar/index.ts → mapDispatchToProps
channels/src/components/announcement_bar/configuration_bar/index.ts → mapDispatchToProps
channels/src/components/announcement_bar/default_announcement_bar/index.ts → mapDispatchToProps
channels/src/components/announcement_bar/index.ts → mapDispatchToProps
channels/src/components/apps_form/apps_form_field/index.ts → mapDispatchToProps
channels/src/components/apps_form/index.ts → mapDispatchToProps
channels/src/components/audit_table/index.ts → mapDispatchToProps
channels/src/components/authorize/index.ts → mapDispatchToProps
channels/src/components/browse_channels/index.ts → mapDispatchToProps
channels/src/components/channel_groups_manage_modal/index.ts → mapDispatchToProps
channels/src/components/channel_header/index.ts → mapDispatchToProps
channels/src/components/channel_info_rhs/index.ts → mapDispatchToProps
channels/src/components/channel_invite_modal/index.ts → mapDispatchToProps
channels/src/components/channel_layout/center_channel/index.ts → mapDispatchToProps
channels/src/components/channel_layout/channel_identifier_router/index.ts → mapDispatchToProps
channels/src/components/channel_members_dropdown/index.ts → mapDispatchToProps
channels/src/components/channel_members_modal/index.ts → mapDispatchToProps
channels/src/components/channel_members_rhs/index.ts → mapDispatchToProps
channels/src/components/channel_notifications_modal/index.ts → mapDispatchToProps
channels/src/components/channel_selector_modal/index.ts → mapDispatchToProps
channels/src/components/claim/index.ts → mapDispatchToProps
channels/src/components/convert_channel_modal/index.ts → mapDispatchToProps
channels/src/components/convert_gm_to_channel_modal/index.ts → mapDispatchToProps
channels/src/components/create_team/components/create_team_form/index.ts → mapDispatchToProps
channels/src/components/create_user_groups_modal/index.ts → mapDispatchToProps
channels/src/components/data_prefetch/index.ts → mapDispatchToProps
channels/src/components/delete_category_modal/index.ts → mapDispatchToProps
channels/src/components/delete_channel_modal/index.ts → mapDispatchToProps
channels/src/components/delete_post_modal/index.ts → mapDispatchToProps
channels/src/components/dialog_router/index.ts → mapDispatchToProps
channels/src/components/dnd_custom_time_picker_modal/index.ts → mapDispatchToProps
channels/src/components/dot_menu/index.ts → mapDispatchToProps
channels/src/components/edit_category_modal/index.ts → mapDispatchToProps
channels/src/components/edit_channel_header_modal/index.ts → mapDispatchToProps
channels/src/components/edit_channel_purpose_modal/index.tsx → mapDispatchToProps
channels/src/components/edit_scheduled_post/index.ts → mapDispatchToProps
channels/src/components/emoji_picker/index.ts → mapDispatchToProps
channels/src/components/emoji/add_emoji/index.ts → mapDispatchToProps
channels/src/components/emoji/emoji_list_item/index.ts → mapDispatchToProps
channels/src/components/emoji/emoji_list/index.ts → mapDispatchToProps
channels/src/components/emoji/index.ts → mapDispatchToProps
channels/src/components/file_attachment_list/index.ts → mapDispatchToProps
channels/src/components/file_attachment/index.ts → mapDispatchToProps
channels/src/components/file_preview/index.ts → mapDispatchToProps
channels/src/components/file_search_results/index.tsx → mapDispatchToProps
channels/src/components/file_upload/index.ts → mapDispatchToProps
channels/src/components/get_public_link_modal/index.ts → mapDispatchToProps
channels/src/components/global_header/center_controls/user_guide_dropdown/index.ts → mapDispatchToProps
channels/src/components/global_header/left_controls/product_menu/product_menu_list/index.ts → mapDispatchToProps
channels/src/components/global_header/right_controls/settings_button/index.ts → mapDispatchToProps
channels/src/components/integrations/add_command/index.ts → mapDispatchToProps
channels/src/components/integrations/add_incoming_webhook/index.ts → mapDispatchToProps
channels/src/components/integrations/add_oauth_app/index.ts → mapDispatchToProps
channels/src/components/integrations/add_outgoing_webhook/index.ts → mapDispatchToProps
channels/src/components/integrations/bots/add_bot/index.ts → mapDispatchToProps
channels/src/components/integrations/bots/index.ts → mapDispatchToProps
channels/src/components/integrations/commands_container/index.ts → mapDispatchToProps
channels/src/components/integrations/edit_command/index.ts → mapDispatchToProps
channels/src/components/integrations/edit_incoming_webhook/index.ts → mapDispatchToProps
channels/src/components/integrations/edit_oauth_app/index.ts → mapDispatchToProps
channels/src/components/integrations/edit_outgoing_webhook/index.ts → mapDispatchToProps
channels/src/components/integrations/installed_commands/index.ts → mapDispatchToProps
channels/src/components/integrations/installed_incoming_webhooks/index.ts → mapDispatchToProps
channels/src/components/integrations/installed_oauth_apps/index.ts → mapDispatchToProps
channels/src/components/integrations/installed_outgoing_webhooks/index.ts → mapDispatchToProps
channels/src/components/intl_provider/index.tsx → mapDispatchToProps
channels/src/components/invitation_modal/index.tsx → mapDispatchToProps
channels/src/components/leave_channel_modal/index.ts → mapDispatchToProps
channels/src/components/leave_team_modal/index.ts → mapDispatchToProps
channels/src/components/logged_in/index.ts → mapDispatchToProps
channels/src/components/markdown_image/index.ts → mapDispatchToProps
channels/src/components/member_list_channel/index.ts → mapDispatchToProps
channels/src/components/member_list_team/index.ts → mapDispatchToProps
channels/src/components/mfa/setup/index.ts → mapDispatchToProps
channels/src/components/mobile_channel_header/channel_info_button/index.ts → mapDispatchToProps
channels/src/components/mobile_channel_header/collapse_lhs_button/index.ts → mapDispatchToProps
channels/src/components/mobile_channel_header/collapse_rhs_button/index.ts → mapDispatchToProps
channels/src/components/mobile_channel_header/index.ts → mapDispatchToProps
channels/src/components/mobile_channel_header/show_search_button/index.ts → mapDispatchToProps
channels/src/components/mobile_channel_header/unmute_channel_button/index.ts → mapDispatchToProps
channels/src/components/mobile_sidebar_right/mobile_sidebar_right_items/index.tsx → mapDispatchToProps
channels/src/components/modal_controller/index.ts → mapDispatchToProps
channels/src/components/more_direct_channels/index.ts → mapDispatchToProps
channels/src/components/more_direct_channels/list_item/user_details/index.ts → mapDispatchToProps
channels/src/components/move_thread_modal/index.ts → mapDispatchToProps
channels/src/components/new_replies_banner/index.ts → mapDispatchToProps
channels/src/components/password_reset_form/index.ts → mapDispatchToProps
channels/src/components/password_reset_send_link/index.ts → mapDispatchToProps
channels/src/components/permalink_view/index.ts → mapDispatchToProps
channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_app/index.ts → mapDispatchToProps
channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/index.ts → mapDispatchToProps
channels/src/components/post_edit_history/edited_post_item/index.ts → mapDispatchToProps
channels/src/components/post_reminder_custom_time_picker_modal/index.ts → mapDispatchToProps
channels/src/components/post_view/channel_intro_message/index.ts → mapDispatchToProps
channels/src/components/post_view/combined_system_message/index.ts → mapDispatchToProps
channels/src/components/post_view/embedded_bindings/button_binding/index.ts → mapDispatchToProps
channels/src/components/post_view/embedded_bindings/select_binding/index.ts → mapDispatchToProps
channels/src/components/post_view/failed_post_options/index.ts → mapDispatchToProps
channels/src/components/post_view/message_attachments/message_attachment/index.ts → mapDispatchToProps
channels/src/components/post_view/post_add_channel_member/index.ts → mapDispatchToProps
channels/src/components/post_view/post_attachment_opengraph/index.ts → mapDispatchToProps
channels/src/components/post_view/post_body_additional_content/index.ts → mapDispatchToProps
channels/src/components/post_view/post_edited_indicator/index.ts → mapDispatchToProps
channels/src/components/post_view/post_flag_icon/index.ts → mapDispatchToProps
channels/src/components/post_view/post_image/index.ts → mapDispatchToProps
channels/src/components/post_view/post_list_row/index.ts → mapDispatchToProps
channels/src/components/post_view/post_list/index.tsx → mapDispatchToProps
channels/src/components/post_view/post_message_preview/index.ts → mapDispatchToProps
channels/src/components/post_view/post_pre_header/index.ts → mapDispatchToProps
channels/src/components/post_view/post_reaction/index.ts → mapDispatchToProps
channels/src/components/post_view/post_recent_reactions/index.ts → mapDispatchToProps
channels/src/components/post_view/reaction_list/index.ts → mapDispatchToProps
channels/src/components/post_view/reaction/index.ts → mapDispatchToProps
channels/src/components/post/index.tsx → mapDispatchToProps
channels/src/components/preparing_workspace/index.tsx → mapDispatchToProps
channels/src/components/product_notices_modal/index.tsx → mapDispatchToProps
channels/src/components/quick_switch_modal/index.tsx → mapDispatchToProps
channels/src/components/rename_channel_modal/index.ts → mapDispatchToProps
channels/src/components/reset_status_modal/index.ts → mapDispatchToProps
channels/src/components/rhs_card_header/index.tsx → mapDispatchToProps
channels/src/components/root/index.ts → mapDispatchToProps
channels/src/components/root/root_redirect/index.ts → mapDispatchToProps
channels/src/components/search_results_header/index.tsx → mapDispatchToProps
channels/src/components/search/index.tsx → mapDispatchToProps
channels/src/components/select_team/index.ts → mapDispatchToProps
channels/src/components/sidebar_right/index.ts → mapDispatchToProps
channels/src/components/sidebar/channel_filter/index.ts → mapDispatchToProps
channels/src/components/sidebar/channel_navigator/index.ts → mapDispatchToProps
channels/src/components/sidebar/index.ts → mapDispatchToProps
channels/src/components/sidebar/sidebar_category/index.ts → mapDispatchToProps
channels/src/components/sidebar/sidebar_channel/sidebar_base_channel/index.ts → mapDispatchToProps
channels/src/components/sidebar/sidebar_channel/sidebar_channel_link/index.ts → mapDispatchToProps
channels/src/components/sidebar/sidebar_channel/sidebar_direct_channel/index.ts → mapDispatchToProps
channels/src/components/sidebar/sidebar_channel/sidebar_group_channel/index.ts → mapDispatchToProps
channels/src/components/sidebar/sidebar_list/index.ts → mapDispatchToProps
channels/src/components/single_image_view/index.ts → mapDispatchToProps
channels/src/components/suggestion/suggestion_box/index.ts → mapDispatchToProps
channels/src/components/system_notice/index.ts → mapDispatchToProps
channels/src/components/team_groups_manage_modal/index.ts → mapDispatchToProps
channels/src/components/team_members_dropdown/index.ts → mapDispatchToProps
channels/src/components/team_members_modal/index.ts → mapDispatchToProps
channels/src/components/team_selector_modal/index.ts → mapDispatchToProps
channels/src/components/team_settings/team_access_policies_tab/index.ts → mapDispatchToProps
channels/src/components/team_settings/team_access_tab/index.ts → mapDispatchToProps
channels/src/components/team_settings/team_info_tab/index.ts → mapDispatchToProps
channels/src/components/team_sidebar/index.ts → mapDispatchToProps
channels/src/components/terms_of_service/index.ts → mapDispatchToProps
channels/src/components/textbox/index.ts → mapDispatchToProps
channels/src/components/threading/thread_viewer/index.ts → mapDispatchToProps
channels/src/components/toast_wrapper/index.ts → mapDispatchToProps
channels/src/components/unarchive_channel_modal/index.ts → mapDispatchToProps
channels/src/components/update_user_group_modal/index.ts → mapDispatchToProps
channels/src/components/user_account_menu/index.ts → mapDispatchToProps
channels/src/components/user_group_popover/group_member_list/index.ts → mapDispatchToProps
channels/src/components/user_groups_modal/index.ts → mapDispatchToProps
channels/src/components/user_groups_modal/user_groups_list/index.ts → mapDispatchToProps
channels/src/components/user_profile/index.ts → mapDispatchToProps
channels/src/components/user_settings/advanced/index.ts → mapDispatchToProps
channels/src/components/user_settings/advanced/join_leave_section/index.ts → mapDispatchToProps
channels/src/components/user_settings/advanced/wysiwyg_editor_section/index.ts → mapDispatchToProps
channels/src/components/user_settings/display/index.ts → mapDispatchToProps
channels/src/components/user_settings/display/manage_languages/index.ts → mapDispatchToProps
channels/src/components/user_settings/display/manage_timezones/index.ts → mapDispatchToProps
channels/src/components/user_settings/display/render_emoticons_as_emoji/index.ts → mapDispatchToProps
channels/src/components/user_settings/display/user_settings_theme/index.ts → mapDispatchToProps
channels/src/components/user_settings/general/index.ts → mapDispatchToProps
channels/src/components/user_settings/modal/index.ts → mapDispatchToProps
channels/src/components/user_settings/notifications/email_notification_setting/index.ts → mapDispatchToProps
channels/src/components/user_settings/security/index.ts → mapDispatchToProps
channels/src/components/user_settings/security/mfa_section/index.ts → mapDispatchToProps
channels/src/components/user_settings/security/user_access_token_section/index.ts → mapDispatchToProps
channels/src/components/view_user_group_modal/index.ts → mapDispatchToProps
channels/src/components/view_user_group_modal/view_user_group_header_sub_menu/index.ts → mapDispatchToProps
channels/src/components/view_user_group_modal/view_user_group_list_item/index.ts → mapDispatchToProps
channels/src/components/view_user_group_modal/view_user_group_modal_header/index.ts → mapDispatchToProps
channels/src/packages/mattermost-redux/src/reducers/entities/admin.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/agents.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/apps.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/bots.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/channel_bookmarks.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/channel_categories.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/channels.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/cloud.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/content_flagging.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/emojis.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/files.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/general.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/groups.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/hosted_customer.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/index.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/integrations.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/jobs.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/limits.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/preferences.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/properties.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/roles.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/scheduled_posts.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/schemes.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/search.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/shared_channels.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/teams.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/entities/users.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/admin.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/channels.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/files.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/general.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/index.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/posts.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/roles.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/search.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/teams.ts → (module scope)
channels/src/packages/mattermost-redux/src/reducers/requests/users.ts → (module scope)
channels/src/packages/mattermost-redux/src/store/configureStore.ts → configureStore
channels/src/packages/mattermost-redux/src/store/helpers.ts → createReducer
channels/src/plugins/channel_header_plug/index.ts → mapDispatchToProps
channels/src/reducers/plugins/index.ts → (module scope)
channels/src/reducers/storage.ts → (module scope)
channels/src/reducers/views/admin.ts → (module scope)
channels/src/reducers/views/announcement_bar.ts → (module scope)
channels/src/reducers/views/browser.ts → (module scope)
channels/src/reducers/views/channel_selector_modal.ts → (module scope)
channels/src/reducers/views/channel_sidebar.ts → (module scope)
channels/src/reducers/views/channel.ts → (module scope)
channels/src/reducers/views/drafts.ts → (module scope)
channels/src/reducers/views/emoji.ts → (module scope)
channels/src/reducers/views/i18n.ts → (module scope)
channels/src/reducers/views/index.ts → (module scope)
channels/src/reducers/views/lhs.ts → (module scope)
channels/src/reducers/views/marketplace.ts → (module scope)
channels/src/reducers/views/modals.ts → (module scope)
channels/src/reducers/views/notice.ts → (module scope)
channels/src/reducers/views/onboarding_tasks.ts → (module scope)
channels/src/reducers/views/posts.ts → (module scope)
channels/src/reducers/views/product_menu.ts → (module scope)
channels/src/reducers/views/rhs.ts → (module scope)
channels/src/reducers/views/search.ts → (module scope)
channels/src/reducers/views/system.ts → (module scope)
channels/src/reducers/views/textbox.ts → (module scope)
channels/src/reducers/views/threads.ts → (module scope)
66% react-router-dom (83/125 fns run, 42 never run, 10 file(s) never loaded) · e.g. BrowserRouter, HashRouter, _extends, _objectWithoutPropertiesLoose…
channels/src/components/admin_console/admin_console.tsx → (anonymous), AdminConsole, renderRoutes
channels/src/components/admin_console/admin_definition.tsx → link
channels/src/components/admin_console/admin_sidebar/admin_sidebar_category.tsx → AdminSidebarCategory
channels/src/components/admin_console/billing/company_info_edit.tsx → CompanyInfoEdit
channels/src/components/admin_console/blockable_link/blockable_link.tsx → BlockableLink
channels/src/components/admin_console/custom_enable_disable_guest_accounts_setting.tsx → a
channels/src/components/admin_console/custom_profile_attributes/custom_profile_attributes.tsx → link
channels/src/components/admin_console/custom_terms_of_service_settings/custom_terms_of_service_settings.tsx → a
channels/src/components/admin_console/global_attributes/global_attributes_table.tsx → ActionsCell
channels/src/components/admin_console/group_settings/group_details/group_users.tsx → a
channels/src/components/admin_console/group_settings/group_row.tsx → renderActions
channels/src/components/admin_console/localization/agents_settings.tsx → AgentsSettings
channels/src/components/admin_console/localization/auto_translation.tsx → AutoTranslation
channels/src/components/admin_console/manage_roles_modal/manage_roles_modal.tsx → link
channels/src/components/admin_console/message_export_settings.tsx → a
channels/src/components/admin_console/permission_schemes_settings/permissions_scheme_summary/permissions_scheme_summary.tsx → (anonymous)
channels/src/components/admin_console/plugin_management/plugin_management.tsx → PluginItem
channels/src/components/admin_console/schema_admin_settings.tsx → (anonymous)
channels/src/components/admin_console/secure_connections/secure_connection_detail.tsx → SecureConnectionDetail
channels/src/components/admin_console/secure_connections/secure_connection_row.tsx → (module scope), RowMenu
channels/src/components/admin_console/secure_connections/secure_connections.tsx → AddMenu
channels/src/components/admin_console/system_roles/system_roles.tsx → (anonymous)
channels/src/components/admin_console/system_users/system_users.tsx → SystemUsers
channels/src/components/admin_console/team_channel_settings/channel/details/channel_access_control_policy.tsx → (anonymous)
channels/src/components/admin_console/team_channel_settings/channel/list/channel_list.tsx → (anonymous)
channels/src/components/admin_console/team_channel_settings/team/details/team_access_control_policy.tsx → (anonymous), link
channels/src/components/admin_console/team_channel_settings/team/list/team_list.tsx → (anonymous)
channels/src/components/admin_console/workspace-optimization/cta_buttons.tsx → CtaButtons
channels/src/components/advanced_text_editor/scheduled_post_indicator/scheduled_post_indicator.tsx → ScheduledPostIndicator
channels/src/components/advanced_text_editor/scheduled_post_indicator/short_scheduled_post_indicator.tsx → a
channels/src/components/announcement_bar/configuration_bar/configuration_bar.tsx → linkConsole
channels/src/components/app.tsx → App
channels/src/components/backstage/backstage_controller.tsx → BackstageController, BackstageRoute
channels/src/components/backstage/components/backstage_category.tsx → BackstageCategory
channels/src/components/backstage/components/backstage_list.tsx → BackstageList
channels/src/components/backstage/components/backstage_section.tsx → BackstageSection
channels/src/components/backstage/index.ts → (module scope)
channels/src/components/channel_bookmarks/bookmark_item_content.tsx → (anonymous), useBookmarkLink
channels/src/components/channel_layout/center_channel/center_channel.tsx → render
channels/src/components/channel_layout/center_channel/index.ts → (module scope)
channels/src/components/channel_layout/channel_identifier_router/index.ts → (module scope)
channels/src/components/channel_layout/playbook_runner.tsx → PlaybookRunner
channels/src/components/channel_members_rhs/channel_members_rhs.tsx → ChannelMembersRHS
channels/src/components/channel_popout/channel_popout.tsx → ChannelPopout
channels/src/components/channel_view/index.ts → (module scope)
channels/src/components/claim/claim_controller.tsx → render
channels/src/components/commercial_support_modal/commercial_support_modal.tsx → debugLink
channels/src/components/common/back_button.tsx → BackButton
channels/src/components/create_recap_modal/create_recap_modal.tsx → CreateRecapModal
channels/src/components/create_team/create_team.tsx → render
channels/src/components/custom_status/custom_status_modal.tsx → CustomStatusModal
channels/src/components/delete_post_modal/delete_post_modal.tsx → (anonymous)
channels/src/components/delete_post_modal/index.ts → (module scope)
channels/src/components/desktop_auth_token.tsx → DesktopAuthToken
channels/src/components/do_verify_email/do_verify_email.tsx → DoVerifyEmail
channels/src/components/drafts/draft_row.tsx → DraftRow
channels/src/components/drafts/drafts_and_schedule_posts_tabs.tsx → DraftsAndSchedulePostsTabs
channels/src/components/drafts/drafts_link/drafts_link.tsx → DraftsLink
channels/src/components/emoji_picker/components/emoji_picker_custom_emoji_button.tsx → EmojiPickerCustomEmojiButton
channels/src/components/emoji/add_emoji/add_emoji.tsx → render
channels/src/components/emoji/emoji_page.tsx → EmojiPage
channels/src/components/error_page/error_page.tsx → render
channels/src/components/global_header/left_controls/history_buttons/history_buttons.tsx → HistoryButtons
channels/src/components/global_header/left_controls/product_menu/product_menu_item/product_menu_item.tsx → (module scope)
channels/src/components/header_footer_route/content_layouts/alternate_link.tsx → AlternateLink
channels/src/components/header_footer_route/header_footer_route.tsx → HFRoute
channels/src/components/header_footer_route/header.tsx → Header
channels/src/components/header_footer_template_route.tsx → HFTRoute, LoggedInHFTRoute
channels/src/components/help/help.tsx → Help
channels/src/components/integrations/abstract_command.tsx → render
channels/src/components/integrations/abstract_incoming_webhook.tsx → render
channels/src/components/integrations/abstract_oauth_app.tsx → render
channels/src/components/integrations/abstract_outgoing_webhook.tsx → render
channels/src/components/integrations/add_command/add_command.tsx → AddCommand
channels/src/components/integrations/add_oauth_app/add_oauth_app.tsx → AddOAuthApp
channels/src/components/integrations/add_outgoing_webhook/add_outgoing_webhook.tsx → AddOutgoingWebhook
channels/src/components/integrations/bots/add_bot/add_bot.tsx → render
channels/src/components/integrations/bots/bot.tsx → render
channels/src/components/integrations/bots/bots.tsx → a
channels/src/components/integrations/commands_container/commands_container.tsx → CommandRoute, render
channels/src/components/integrations/confirm_integration/confirm_integration.tsx → ConfirmIntegration
channels/src/components/integrations/installed_command.tsx → render
channels/src/components/integrations/installed_incoming_webhook.tsx → render
channels/src/components/integrations/installed_oauth_app/installed_oauth_app.tsx → render
channels/src/components/integrations/installed_outgoing_webhook.tsx → render
channels/src/components/integrations/integration_option.tsx → IntegrationOption
channels/src/components/integrations/outgoing_oauth_connections/abstract_outgoing_oauth_connection.tsx → AbstractOutgoingOAuthConnection
channels/src/components/integrations/outgoing_oauth_connections/add_outgoing_oauth_connection.tsx → AddOutgoingOAuthConnection
channels/src/components/integrations/outgoing_oauth_connections/installed_outgoing_oauth_connection.tsx → InstalledOutgoingOAuthConnection
channels/src/components/logged_in_route/index.tsx → LoggedInRoute
channels/src/components/logged_in/logged_in.tsx → render
channels/src/components/login/login.tsx → Login, getContent, getResetPasswordLink
channels/src/components/menu/menu_item_link.tsx → MenuItemLink
channels/src/components/mfa/mfa_controller/mfa_controller.tsx → render
channels/src/components/mobile_channel_header/index.ts → (module scope), mapStateToProps
channels/src/components/onboarding_tasklist/onboarding_tasklist.tsx → OnBoardingTaskList
channels/src/components/onboarding_tasks/onboarding_tasks_manager.tsx → useHandleOnBoardingTaskTrigger
channels/src/components/password_reset_form/password_reset_form.tsx → PasswordResetForm
channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/marketplace_item_plugin.tsx → getItemButton
channels/src/components/plugin_marketplace/marketplace_modal.tsx → linkConsole
channels/src/components/popout_controller/popout_controller.tsx → PopoutController
channels/src/components/post_view/data_spillage_report/data_spillage_report.tsx → DataSpillageReport
channels/src/components/post_view/index.ts → (module scope)
channels/src/components/post_view/post_attachment_container/post_attachment_container.tsx → PostAttachmentContainer, getTeamAndPostIdFromLink
channels/src/components/post_view/post_time/post_time.tsx → render
channels/src/components/query_param_actions/query_param_action_controller.tsx → QueryParamActionController
channels/src/components/reaction_limit_reached_modal.tsx → linkAdmin
channels/src/components/recaps_link/recaps_link.tsx → RecapsLink
channels/src/components/recaps/recaps.tsx → Recaps
channels/src/components/rhs_card/rhs_card.tsx → render
channels/src/components/rhs_plugin_popout/rhs_plugin_popout.tsx → RhsPluginPopout
channels/src/components/rhs_popout/rhs_popout.tsx → RhsPopout
channels/src/components/rhs_search_popout/rhs_search_popout.tsx → RhsSearchPopout
channels/src/components/root/index.ts → (module scope)
channels/src/components/root/root_redirect/root_redirect.tsx → RootRedirect
channels/src/components/root/root.tsx → (anonymous), render
channels/src/components/select_team/select_team.tsx → a, render
channels/src/components/should_verify_email/should_verify_email.tsx → ShouldVerifyEmail
channels/src/components/sidebar_right/index.ts → (module scope)
channels/src/components/sidebar/sidebar_channel/sidebar_channel_link/sidebar_channel_link.tsx → render
channels/src/components/sidebar/sidebar_header/sidebar_team_menu.tsx → CreateTeamMenuItem, JoinAnotherTeamMenuItem
channels/src/components/signup/signup.tsx → Signup, getContent
channels/src/components/team_controller/team_controller.tsx → (anonymous), TeamController
channels/src/components/team_sidebar/components/team_button.tsx → (anonymous), TeamButton
channels/src/components/team_sidebar/index.ts → (module scope)
channels/src/components/theme_provider/theme_context.ts → useAppBodyClass
channels/src/components/thread_popout/thread_popout.tsx → ThreadPopout
channels/src/components/threading/global_threads_link/global_threads_link.tsx → GlobalThreadsLink
channels/src/components/threading/global_threads/global_threads.tsx → GlobalThreads, link
channels/src/components/threading/hooks.ts → useThreadRouting
channels/src/components/three_days_left_trial_modal/learn_more_action_button.tsx → LearnMoreActionButton
channels/src/components/toast_wrapper/index.ts → (module scope)
channels/src/components/trial_benefits_modal/trial_benefits_modal_step_more.tsx → TrialBenefitsModalStepMore
channels/src/components/trial_benefits_modal/trial_benefits_modal.tsx → TrialBenefitsModal
channels/src/components/unreads_status_handler/index.ts → (module scope), mapStateToProps
channels/src/components/user_group_popover/group_member_list/group_member_list.tsx → GroupMemberList
channels/src/components/user_list_row_with_error/user_list_row_with_error.tsx → render
channels/src/components/user_settings/security/user_settings_security.tsx → (anonymous)
channels/src/components/widgets/admin_console/admin_panel_with_link.tsx → AdminPanelWithLink
channels/src/components/widgets/menu/menu_items/menu_item_link.tsx → MenuItemLinkImpl
channels/src/utils/http_utils.ts → useQuery
channels/src/utils/popouts/use_browser_popout.ts → useBrowserPopout
channels/src/utils/products.ts → (anonymous), useCurrentProduct, useCurrentProductId
67% moment-timezone (38/57 fns run, 19 never run) · e.g. OffsetAt, ZoneScore, countries, findChange…
channels/src/components/apps_form/apps_form_component.tsx → (anonymous)
channels/src/components/create_recap_modal/schedule_configuration.tsx → (anonymous)
channels/src/components/custom_status/custom_status_modal.tsx → CustomStatusModal, calculateExpiryTime
channels/src/components/custom_status/expiry_time.tsx → ExpiryTime
channels/src/components/datetime_input/datetime_input.tsx → (anonymous), getRoundedTime, getTimeInIntervals, handleDayChange
channels/src/components/recaps/schedule_time_format.ts → formatRelativeScheduleTime, resolveZone
channels/src/components/timestamp/timestamp.tsx → formatLabel, formatParts
channels/src/packages/mattermost-redux/src/utils/post_list.ts → pushPostDateIfNeeded
channels/src/selectors/views/custom_status.ts → isCustomStatusExpired
channels/src/utils/datetime.ts → getDiff, isWithinLastWeek, relativeFormatDate
channels/src/utils/timezone.ts → getBrowserUtcOffset, getCurrentDateForTimezone, getCurrentDateTimeForTimezone, getCurrentMomentForTimezone, getUtcOffsetForTimeZone, isValidTimezone, parseDateInTimezone
67% color-contrast-checker (16/24 fns run, 8 never run) · e.g. checkPairs, convertColorToSixDigit, isLevelAA, isLevelAAA…
channels/src/components/user_profile/utils.ts → generateColor
70% prop-types (44/63 fns run, 19 never run) · e.g. checkPropTypes, createObjectOfTypeChecker, createStrictShapeTypeChecker, emptyFunction…
channels/src/components/suggestion/suggestion_box/suggestion_box.jsx → (module scope)
71% color-hash (25/35 fns run, 10 never run) · e.g. BKDRHash, HmacSha2562, array, arrayBuffer…
channels/src/components/user_profile/utils.ts → generateColor
71% memoize-one (10/14 fns run, 4 never run) · e.g. clear, ponyfill
channels/src/components/admin_console/access_control/policy_details/channel_list/index.ts → makeMapStateToProps
channels/src/components/dynamic_virtualized_list/index.tsx → (module scope)
channels/src/components/post_markdown/post_markdown.tsx → (module scope)
channels/src/utils/emoji.ts → (module scope)
79% @testing-library/react (68/86 fns run, 18 never run, 1 file(s) never loaded) · e.g. configure, createLegacyRoot, debug, get…
platform/shared/src/testing/react_testing_utils.tsx → renderHookWithContext, renderWithContext
83% @tiptap/extension-placeholder (5/6 fns run, 1 never run, 1 file(s) never loaded) · e.g. Placeholder
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
83% @tiptap/extension-table-cell (5/6 fns run, 1 never run, 1 file(s) never loaded) · e.g. default
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
83% @tiptap/extension-table-header (5/6 fns run, 1 never run, 1 file(s) never loaded) · e.g. default
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
83% @tiptap/extension-table-row (5/6 fns run, 1 never run, 1 file(s) never loaded) · e.g. default
channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx → (anonymous)
… +5 more (full set in coverage-report.json)
NEVER LOADED by any test (3) — extracted but unexercised, so covtrim can't classify their code:
@giphy/js-fetch-api, @mattermost/calls-common, @mui/base
state: /private/tmp/claude-501/-Users-kika-Projects-chainstrip-app/29edf21e-5b94-46dd-b997-8bee3ed85ec2/scratchpad/mm-state/coverage-report.json
# Test-writing task — close chainstrip coverage gaps for webapp
You are an expert test author. Write tests that exercise the dependencies below by testing
**this project's own functions that call them**. The goal is **attack surface removed —
safely**. Each dep is tagged by exactly what a test buys, and the list is ordered by payoff:
- **UNLOCK <size>** — the dep ships whole or under weaker evidence today (no test loads it,
or covtrim's trim rolled back). A test lets chainstrip measure/remove it: NEW surface
reduction. These are the biggest wins.
- **CLASSIFY <size>** — functions reachable from your imports that no test ever executed.
A test converts unknown risk into truth: what it executes is proven LIVE (correctly kept
— a false-dead averted); what stays unexecuted stays held. Safety value, not bytes.
- **FIRM UP <size>** — chainstrip already shipped stubs on reachable-but-unexecuted
functions (aggressive mode). A test on those paths retires the false-dead risk (or
catches the live one before production does). De-risking, not new bytes.
## How to write the tests
- Test runner: **jest** (`npm run test --`). Match this repo's existing tests —
open a neighbouring `*.test.*` first and copy its import style, setup, and mocking.
- Do NOT test the dependency's API directly. Test **your** function at the call site listed
under each dep — exercising your REAL, used path is what proves the app works without the
dependency's unused code.
- **DETERMINISM IS THE #1 REQUIREMENT — a flaky test is WORSE than no test.** chainstrip
removes a dependency's unexercised functions only if every test that touches that dep
passes *repeatably* against the trimmed copy; if a test flakes even once, it REVERTS the
removal — so a timing-flaky test will DESTROY eliminations the existing suite already had.
Therefore: never use `setTimeout`, arbitrary `await new Promise(r => setTimeout(r,0))`, or
any wall-clock wait to let async work "settle." Instead **`await` the real promise**, or
**capture synchronously at call time** (e.g. record the argument inside a `sendMail`/handler
spy when it is *called*, not after it resolves). If a value is produced asynchronously,
await the actual operation — don't guess a delay.
- You do NOT need to reach the "never-run functions" listed per dep — chainstrip will remove
them *because* they're unexercised. Reaching them keeps them in the artifact. Just cover the
path your code genuinely uses, cleanly. (The list is shown only so you recognise which
behaviour is already covered vs not.)
- Mock only external I/O (network, DB, clock) the way nearby tests do. Every test must assert
real behaviour, not just call-and-ignore.
- Put each test next to the file under test. Run each file you write multiple times
(`npm run test -- <path>`, twice) to confirm it is NOT flaky before moving on.
- Do NOT conclude a location can't run under the test runner by reading workspace/config
files — two prior sessions skipped valid targets that way. VERIFY empirically (run the
runner's list command on your intended path, or run a trivial probe test there); only a
verified exclusion counts, and report it as such. Entries below include "Runner evidence"
— a traced test that already runs near the call site — when we have it.
## Priority worklist
⚠ = has a live CVE AND is under-tested — do these first.
### 1. `moment` — CLASSIFY 592KB — 592KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `moment.js (161 fns, 56KB)`, `locale/sl.js (5 fns, 11KB)`, `locale/cs.js (5 fns, 11KB)`, `locale/ru.js (8 fns, 10KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.tsx` → `CloudTrialBanner`, `onDismissBanner`
- `channels/src/components/admin_console/license_settings/renew_license_card/renew_license_card.tsx` → `RenewLicenseCard`
- `channels/src/components/admin_console/license_settings/trial_license_card/trial_license_card.tsx` → `messageBody`
- `channels/src/components/admin_console/list_table/elapsed_duration_cell.tsx` → `(anonymous)`, `ElapsedDurationCell`
- `channels/src/components/advanced_text_editor/send_button/scheduled_post_custom_time_modal/scheduled_post_custom_time_modal.tsx` → `(anonymous)`, `ScheduledPostCustomTimeModal`
- `channels/src/components/announcement_bar/show_tree_days_left_trial_modal/show_three_days_left_trial_modal.tsx` → `ShowThreeDaysLeftTrialModal`
- `channels/src/components/commercial_support_modal/commercial_support_modal.tsx` → `(anonymous)`
- `channels/src/components/dnd_custom_time_picker_modal/dnd_custom_time_picker_modal.tsx` → `constructor`
- `channels/src/components/drafts/draft_actions/schedule_post_actions/scheduled_post_actions.tsx` → `(anonymous)`
- `channels/src/components/trial_benefits_modal/trial_benefits_modal.tsx` → `TrialBenefitsModal`
- `channels/src/components/user_account_menu/user_account_dnd_menuitem.tsx` → `getSecondaryLabel`, `handleSubMenuItemClick`
- `channels/src/components/user_groups_modal/ad_ldap_upsell_banner.tsx` → `ADLDAPUpsellBanner`
- `channels/src/components/widgets/menu/menu_items/menu_cloud_trial.tsx` → `MenuCloudTrial`
- `channels/src/selectors/views/threads.ts` → `(anonymous)`
- `channels/src/utils/license_utils.ts` → `daysToLicenseExpire`, `isLicenseExpired`
- `channels/src/utils/utils.tsx` → `getLocaleDateFromUTC`, `getNextBillingDate`
Existing test(s) that load `moment` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+1079 more).
Currently-unexercised functions in `moment` (context only — chainstrip removes these; do NOT write tests to reach them): `ISO_8601`, `MM`, `RFC_2822`, `abs`, `add$1`, `addSubtract$1`, `as`, `calculateOffset`, `calendar`, `calendar$1`, `checkWeekday`, `chooseLocale` … (+189 more).
### 2. `date-fns` — CLASSIFY 268KB — 268KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/packages/mattermost-redux/src/utils/integration_utils.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `chainstrip-chunk-DDk1gqh7.cjs (201 fns, 75KB)`, `chainstrip-chunk-BJKofC7e.cjs (129 fns, 44KB)`, `chainstrip-chunk-CRoFvI58.mjs (124 fns, 31KB)`, `chainstrip-chunk-D5SPu-HF.cjs (15 fns, 26KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Witness probes so far: 0 witnessed, 1 unreached — stated reasons: "- `fn:date-fns/chainstrip-chunk-BJKofC7e.cjs@233844` (parse): none of the listed app call paths import date-fns's `parse` — they use `parseISO`, `isValid`, `format`, `addDays`, etc. Calling `parse` would require importing the dependency directly.". (A stated unreachable-through-the-app reason is evidence for the report — never a removal.)
Your call sites to test (write/extend tests for these functions):
- `channels/src/packages/mattermost-redux/src/utils/integration_utils.ts` → `resolveBoundToDate`, `validateDateTimeValue`
- `channels/src/utils/date_utils.ts` → `dateToString`, `momentToString`, `resolveRelativeDate`, `stringToDate`, `stringToMoment`
Existing test(s) that load `date-fns` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/command.test.js`, `channels/src/actions/global_actions.test.ts`, `channels/src/actions/websocket_actions.test.jsx`, `channels/src/components/actions_menu/actions_menu.test.tsx` … (+347 more).
Currently-unexercised functions in `date-fns` (context only — chainstrip removes these; do NOT write tests to reach them): `B`, `D`, `DateToSystemTimezoneSetter`, `E`, `G`, `H`, `I`, `K`, `L`, `M`, `O`, `Q` … (+350 more).
### 3. `react-beautiful-dnd` — CLASSIFY 262KB — 262KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/admin_console/system_properties/user_properties_dot_menu.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/react-beautiful-dnd.esm.js (384 fns, 135KB)`, `dist/react-beautiful-dnd.cjs.js (340 fns, 127KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/system_properties/ranked_schema_modal.tsx` → `(anonymous)`, `RankedSchemaModal`
- `channels/src/components/sidebar/sidebar_category/sidebar_category.tsx` → `(anonymous)`, `render`
- `channels/src/components/sidebar/sidebar_channel/sidebar_channel.tsx` → `SidebarChannel`
- `channels/src/components/sidebar/sidebar_list/sidebar_list.tsx` → `render`
- `channels/src/components/team_sidebar/components/team_button.tsx` → `TeamButton`
- `channels/src/components/team_sidebar/team_sidebar.tsx` → `render`
Existing test(s) that load `react-beautiful-dnd` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_definition_abac_audit_logging.test.tsx`, `channels/src/components/admin_console/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_board_attributes.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_channel_viewed_messages.test.tsx` … (+27 more).
Currently-unexercised functions in `react-beautiful-dnd` (context only — chainstrip removes these; do NOT write tests to reach them): `Placeholder`, `RbdInvariant`, `abort`, `add`, `addPlaceholder`, `adjustAdditionsForScrollChanges`, `adjustForSizeLimits`, `animateDrop`, `areLocationsEqual`, `atIndex`, `beforeCapture`, `beforeInitialCapture` … (+300 more).
### 4. `@floating-ui/react` — CLASSIFY 173KB — 173KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/access_control/modals/simulate_access/simulate_access_modal.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/floating-ui.react.mjs (137 fns, 96KB)`, `dist/floating-ui.react.umd.js (86 fns, 76KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Witness probes so far: 0 witnessed, 2 unreached — stated reasons: "- `fn:@floating-ui/react/dist/floating-ui.react.umd.js@153706` (useListNavigation): none of the listed call-path files actually import `useListNavigation` by name (they import `useFloating`, `useClick`, `useDismiss`, `useRole`, `FloatingFocusManager`, etc.). Driving it would require importing the dependency directly, which violates rule 1."; "- `fn:@floating-ui/react/dist/floating-ui.react.mjs@87546` (FloatingFocusManager): the two files that import it (`session_attribute_editor.tsx`, `system_users_filters_popover/index.tsx`) are full components whose required props and open-state wiring aren't visible in the given excerpts; rendering them correctly enough to reach the open/focus-managed branch can't be done reliably without guessing the contract.". (A stated unreachable-through-the-app reason is evidence for the report — never a removal.)
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/access_control/modals/simulate_access/session_attribute_editor.tsx` → `SessionAttributeEditorButton`
- `channels/src/components/admin_console/list_table/row_drop_indicator.tsx` → `RowDropIndicator`
- `channels/src/components/admin_console/system_users/system_users_filters_popover/index.tsx` → `SystemUsersFilterPopover`
- `channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.tsx` → `(anonymous)`
- `channels/src/components/advanced_text_editor/formatting_bar/link_popover.tsx` → `LinkPopover`
- `channels/src/components/advanced_text_editor/use_editor_emoji_picker.tsx` → `useEditorEmojiPicker`
- `channels/src/components/channel_header/channel_header_text_popover.tsx` → `ChannelHeaderTextPopover`
- `channels/src/components/common/scrollbars.tsx` → `(anonymous)`
- `channels/src/components/date_picker/date_picker.tsx` → `DatePicker`
- `channels/src/components/emoji_picker/use_emoji_picker.tsx` → `useEmojiPicker`
- `channels/src/components/feature_toast/feature_toast.tsx` → `FeatureToast`
- `channels/src/components/new_search/new_search.tsx` → `NewSearch`
- `channels/src/components/onboarding_tasklist/onboarding_tasklist_popover.tsx` → `TaskListPopover`
- `channels/src/components/plugin_link_tooltip/index.tsx` → `PluginLinkTooltip`
- `channels/src/components/post_view/acknowledgements/post_acknowledgements.tsx` → `PostAcknowledgements`
- `channels/src/components/profile_popover/profile_popover_controller.tsx` → `ProfilePopoverController`
- `channels/src/components/recaps/recap_usage_badge/recap_usage_badge.tsx` → `RecapUsageBadge`
- `channels/src/components/user_group_popover/user_group_popover_controller.tsx` → `UserGroupPopoverController`
- `channels/src/plugins/channel_header_plug/channel_header_plug.tsx` → `(anonymous)`
- `channels/src/utils/floating.ts` → `fn`
- `platform/shared/src/components/tooltip/with_tooltip.tsx` → `WithTooltip`
Existing test(s) that load `@floating-ui/react` but don't reach the functions above — **extend these**: `channels/src/actions/command.test.js`, `channels/src/components/about_build_modal/about_build_modal.test.tsx`, `channels/src/components/actions_menu/actions_menu.test.tsx`, `channels/src/components/actions_menu/actions_menu_mobile.test.tsx`, `channels/src/components/actions_menu/index.test.tsx` … (+493 more).
Currently-unexercised functions in `@floating-ui/react` (context only — chainstrip removes these; do NOT write tests to reach them): `Composite`, `CompositeItem`, `FloatingDelayGroup`, `FloatingFocusManager`, `FloatingList`, `FloatingNode`, `FloatingOverlay`, `FloatingTree`, `FocusGuard`, `VisuallyHiddenDismiss`, `addPreviouslyFocusedElement`, `applyAttributeToOthers` … (+129 more).
### 5. `luxon` — CLASSIFY 141KB — 141KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/advanced_text_editor/send_button/send_post_options/core_menu_options.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `src/luxon.js (295 fns, 97KB)`, `build/node/luxon.js (185 fns, 45KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/advanced_text_editor/send_button/send_post_options/core_menu_options.tsx` → `CoreMenuOptions`, `getScheduledTimeInTeammateTimezone`
- `channels/src/components/advanced_text_editor/send_button/send_post_options/recent_used_custom_date.tsx` → `RecentUsedCustomDate`, `getDateOption`, `isTimestampWithinLast30Days`
- `channels/src/components/advanced_text_editor/use_post_box_indicator.tsx` → `updateTime`
- `channels/src/components/profile_popover/profile_popover_timezone.tsx` → `ProfileTimezone`, `TimeZoneDifference`
- `channels/src/components/root/luxon_controller.tsx` → `(anonymous)`
- `channels/src/components/timestamp/semantic_time.tsx` → `SemanticTime`
- `channels/src/utils/datetime.ts` → `relativeFormatDate`
- `channels/src/utils/remote_cluster_connection.ts` → `isRemoteClusterConnected`
Existing test(s) that load `luxon` but don't reach the functions above — **extend these**: `channels/src/actions/command.test.js`, `channels/src/components/actions_menu/actions_menu.test.tsx`, `channels/src/components/actions_menu/actions_menu_mobile.test.tsx`, `channels/src/components/actions_menu/index.test.tsx`, `channels/src/components/add_user_to_group_multiselect/add_user_to_group_multiselect.test.tsx` … (+255 more).
Currently-unexercised functions in `luxon` (context only — chainstrip removes these; do NOT write tests to reach them): `DATETIME_FULL`, `DATETIME_FULL_WITH_SECONDS`, `DATETIME_HUGE`, `DATETIME_HUGE_WITH_SECONDS`, `DATETIME_MED`, `DATETIME_MED_WITH_SECONDS`, `DATETIME_MED_WITH_WEEKDAY`, `DATETIME_SHORT`, `DATETIME_SHORT_WITH_SECONDS`, `DATE_FULL`, `DATE_HUGE`, `DATE_MED` … (+335 more).
### 6. `@atlaskit/pragmatic-drag-and-drop` — CLASSIFY 140KB — 140KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/list_table/hooks/use_list_table_dnd.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `chainstrip-chunk-D5c77O-z.mjs (96 fns, 70KB)`, `chainstrip-chunk-DpHiGrRd.cjs (54 fns, 47KB)`, `dist/esm/entry-point/element/set-custom-native-drag-preview.js (3 fns, 5KB)`, `dist/cjs/entry-point/element/set-custom-native-drag-preview.js (2 fns, 4KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Witness probes so far: 0 witnessed, 5 unreached. (A stated unreachable-through-the-app reason is evidence for the report — never a removal.)
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/board_attributes/hooks/use_board_option_dnd.ts` → `(anonymous)`, `onGenerateDragPreview`
- `channels/src/components/admin_console/board_attributes/hooks/use_board_options_dnd.ts` → `(anonymous)`
- `channels/src/components/admin_console/list_table/hooks/use_list_table_dnd.ts` → `(anonymous)`
- `channels/src/components/admin_console/list_table/hooks/use_list_table_row_dnd.ts` → `(anonymous)`, `onGenerateDragPreview`
- `channels/src/components/channel_bookmarks/bookmarks_bar_menu.tsx` → `(anonymous)`
- `channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.ts` → `(anonymous)`, `onDragStart`, `onDrop`, `onGenerateDragPreview`
- `channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.ts` → `(anonymous)`
Existing test(s) that load `@atlaskit/pragmatic-drag-and-drop` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_definition_abac_audit_logging.test.tsx`, `channels/src/components/admin_console/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_board_attributes.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_channel_viewed_messages.test.tsx` … (+91 more).
Currently-unexercised functions in `@atlaskit/pragmatic-drag-and-drop` (context only — chainstrip removes these; do NOT write tests to reach them): `F`, `_arrayLikeToArray`, `_arrayLikeToArray$1`, `_arrayWithHoles`, `_arrayWithoutHoles`, `_createForOfIteratorHelper`, `_createForOfIteratorHelper$1`, `_defineProperty`, `_iterableToArray`, `_iterableToArrayLimit`, `_nonIterableRest`, `_nonIterableSpread` … (+95 more).
### 7. `css-vars-ponyfill` — CLASSIFY 140KB — 140KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/utils/message_html_to_component.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/css-vars-ponyfill.esm.js (127 fns, 80KB)`, `dist/css-vars-ponyfill.js (25 fns, 59KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Witness probes so far: 0 witnessed, 5 unreached — stated reasons: "- `fn:css-vars-ponyfill/dist/css-vars-ponyfill.esm.js@17164` (parseCss, esm build): under Jest's CommonJS module resolution, dynamic `import('css-vars-ponyfill')` from `utils.tsx` resolves the package's `main`/cjs entry, not the `.esm.js` file used by the webpack bundle — so this specific chunk is not reachable from a Jest-driven probe without importing the dependency file directly.". (A stated unreachable-through-the-app reason is evidence for the report — never a removal.)
Your call sites to test (write/extend tests for these functions):
- `channels/src/utils/utils.tsx` → `applyTheme`
Existing test(s) that load `css-vars-ponyfill` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+529 more).
Currently-unexercised functions in `css-vars-ponyfill` (context only — chainstrip removes these; do NOT write tests to reach them): `_extends`, `_import`, `addMutationObserver`, `at_custom_m`, `at_document`, `at_fontface`, `at_host`, `at_keyframes`, `at_media`, `at_page`, `at_page_margin_box`, `at_rule` … (+75 more).
### 8. `lodash` — CLASSIFY 126KB — 126KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/access_control/policy_details/channel_list/channel_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `lodash.js (436 fns, 114KB)`, `chainstrip-chunk-8wmSxfu6.cjs (14 fns, 3KB)`, `merge.js (4 fns, 2KB)`, `chainstrip-chunk-BxPiJKzC.cjs (6 fns, 1KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/access_control/policy_details/channel_list/channel_list.tsx` → `componentDidUpdate`, `constructor`
- `channels/src/components/admin_console/access_control/policy_details/policy_details.tsx` → `(anonymous)`
- `channels/src/components/admin_console/admin_sidebar/admin_sidebar.tsx` → `componentDidUpdate`
- `channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.tsx` → `CloudTrialBanner`
- `channels/src/components/admin_console/board_attributes/board_attributes_utils.ts` → `beforeUpdate`, `byNamesLower`, `commit`
- `channels/src/components/admin_console/data_retention_settings/channel_list/channel_list.tsx` → `componentDidUpdate`
- `channels/src/components/admin_console/group_settings/group_details/group_teams_and_channels_row.tsx` → `(anonymous)`
- `channels/src/components/admin_console/search_keyword_marking.tsx` → `(anonymous)`
- `channels/src/components/admin_console/system_properties/user_properties_utils.ts` → `beforeUpdate`, `byNamesLower`, `commit`
- `channels/src/components/admin_console/system_roles/system_role/system_role.tsx` → `(anonymous)`
- `channels/src/components/admin_console/team_channel_settings/channel/details/channel_details.tsx` → `(anonymous)`
- `channels/src/components/admin_console/team_channel_settings/channel/details/channel_moderation.tsx` → `(anonymous)`, `ChannelModerationTableRow`
- `channels/src/components/admin_console/team_channel_settings/team/details/team_details.tsx` → `(anonymous)`
- `channels/src/components/advanced_text_editor/formatting_bar/hooks.tsx` → `(anonymous)`
- `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx` → `parseJsonModeContent`
- `channels/src/components/announcement_bar/payment_announcement_bar/index.tsx` → `(anonymous)`, `PaymentAnnouncementBar`
- `channels/src/components/app_bar/app_bar.tsx` → `AppBar`
- `channels/src/components/channel_invite_modal/channel_invite_modal.tsx` → `(anonymous)`
- `channels/src/components/channel_members_rhs/channel_members_rhs.tsx` → `(anonymous)`
- `channels/src/components/channel_settings_modal/channel_settings_plugin_tab.tsx` → `ChannelSettingsPluginTab`
- `channels/src/components/common/hocs/cloud/with_get_cloud_subscription.tsx` → `componentDidMount`
- `channels/src/components/drafts/draft_actions/delete_draft_modal.tsx` → `DeleteDraftModal`
- `channels/src/components/drafts/draft_actions/schedule_post_actions/delete_scheduled_post_modal.tsx` → `DeleteScheduledPostModal`
- `channels/src/components/drafts/draft_list/virtualized_draft_list.tsx` → `(anonymous)`
- `channels/src/components/drafts/draft_row.tsx` → `DraftRow`
- `channels/src/components/drafts/scheduled_post_list/virtualized_scheduled_post_list.tsx` → `(anonymous)`
- `channels/src/components/emoji_picker/components/emoji_picker_current_results.tsx` → `(anonymous)`
- `channels/src/components/emoji_picker/components/emoji_picker_item.tsx` → `(anonymous)`
- `channels/src/components/emoji_picker/emoji_picker.tsx` → `EmojiPicker`
- `channels/src/components/emoji_picker/utils/index.ts` → `createCategoryAndEmojiRows`
- `channels/src/components/file_preview_modal/popover_bar/popover_bar.tsx` → `render`
- `channels/src/components/integrations/outgoing_oauth_connections/oauth_connection_audience_input.tsx` → `(anonymous)`
- `channels/src/components/login/login.tsx` → `Login`
- `channels/src/components/menu/menu_item.tsx` → `handleClick`
- `channels/src/components/pdf_preview.tsx` → `(anonymous)`
- `channels/src/components/post_view/message_attachments/message_attachment/message_attachment.tsx` → `render`
- `channels/src/components/root/index.ts` → `mapStateToProps`
- `channels/src/components/signup/signup.tsx` → `Signup`
- `channels/src/components/team_settings/team_access_policies_tab/team_policy_editor.tsx` → `(anonymous)`
- `channels/src/components/threading/global_threads/global_threads.tsx` → `GlobalThreads`
- `channels/src/components/threading/global_threads/thread_list/thread_list.tsx` → `ThreadList`
- `channels/src/components/timestamp/timestamp.tsx` → `formatRelative`, `isUnitDescriptor`
- `channels/src/components/user_group_popover/user_group_popover.tsx` → `(anonymous)`
- `channels/src/components/window_size_observer/WindowSizeObserver.tsx` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/threads.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/reducers/entities/channels.ts` → `receiveChannelMember`, `roles`, `stats`
- `channels/src/packages/mattermost-redux/src/reducers/entities/users.ts` → `receiveUserProfile`
- `channels/src/packages/mattermost-redux/src/selectors/entities/channels.ts` → `(anonymous)`
- `channels/src/reducers/plugins/index.ts` → `components`
- `channels/src/reducers/views/threads.ts` → `selectedThreadIdInTeam`
- `channels/src/selectors/admin_console.tsx` → `(anonymous)`
- `channels/src/utils/func.ts` → `(anonymous)`
- `channels/src/utils/paste.tsx` → `pasteHandler`
- `channels/src/utils/utils.tsx` → `isTextSelectedInPostOrReply`
- `platform/components/src/common/hooks/useMeasurePunchouts.ts` → `useMeasurePunchouts`
Existing test(s) that load `lodash` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/burn_on_read_deletion.test.ts`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js` … (+1122 more).
Currently-unexercised functions in `lodash` (context only — chainstrip removes these; do NOT write tests to reach them): `LazyWrapper`, `ListCache`, `LodashWrapper`, `SetCache`, `Stack`, `after`, `arrayAggregator`, `arrayEachRight`, `arrayEvery`, `arrayIncludes`, `arrayIncludesWith`, `arrayLikeKeys` … (+403 more).
### 9. `react-day-picker` — CLASSIFY 91KB — 91KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/suggestion/suggestion_box/suggestion_box.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/index.esm.js (122 fns, 70KB)`, `dist/index.js (30 fns, 22KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/date_picker/date_picker.tsx` → `DatePicker`
- `channels/src/components/suggestion/search_date_suggestion/search_date_suggestion.tsx` → `SearchDateSuggestion`
Existing test(s) that load `react-day-picker` but don't reach the functions above — **extend these**: `channels/src/actions/command.test.js`, `channels/src/components/actions_menu/actions_menu.test.tsx`, `channels/src/components/actions_menu/actions_menu_mobile.test.tsx`, `channels/src/components/actions_menu/index.test.tsx`, `channels/src/components/add_user_to_group_multiselect/add_user_to_group_multiselect.test.tsx` … (+234 more).
Currently-unexercised functions in `react-day-picker` (context only — chainstrip removes these; do NOT write tests to reach them): `Caption`, `CaptionDropdowns`, `CaptionLabel`, `CaptionNavigation`, `Day`, `DayContent`, `DayPicker`, `DayPickerProvider`, `Dropdown`, `FocusProvider`, `Footer`, `Head` … (+121 more).
### 10. `@tiptap/react` — CLASSIFY 80KB — 80KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_suggestion_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/index.cjs (77 fns, 46KB)`, `dist/index.js (83 fns, 34KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx` → `(anonymous)`
Existing test(s) that load `@tiptap/react` but don't reach the functions above — **extend these**: `channels/src/components/advanced_text_editor/advanced_text_editor.test.tsx`, `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.test.tsx`, `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_suggestion_list.test.tsx`, `channels/src/components/channel_layout/center_channel/center_channel.test.tsx`, `channels/src/components/channel_view/channel_view.test.tsx` … (+12 more).
Currently-unexercised functions in `@tiptap/react` (context only — chainstrip removes these; do NOT write tests to reach them): `EditorConsumer`, `EditorContent`, `EditorContext`, `EditorProvider`, `MarkViewContent`, `NodeViewContent`, `NodeViewWrapper`, `Portals`, `PureEditorContent`, `ReactMarkView`, `ReactMarkViewContext`, `ReactMarkViewRenderer` … (+101 more).
### 11. `react-window` — CLASSIFY 53KB — 53KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/threading/global_threads/thread_list/thread_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/index.cjs.js (49 fns, 40KB)`, `dist/index.esm.js (21 fns, 13KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/channel_members_rhs/member_list.tsx` → `(anonymous)`
- `channels/src/components/drafts/draft_list/virtualized_draft_list.tsx` → `(anonymous)`
- `channels/src/components/drafts/scheduled_post_list/virtualized_scheduled_post_list.tsx` → `(anonymous)`
- `channels/src/components/emoji_picker/components/emoji_picker_current_results.tsx` → `(anonymous)`
- `channels/src/components/threading/global_threads/thread_list/virtualized_thread_list.tsx` → `(anonymous)`
- `channels/src/components/user_group_popover/group_member_list/group_member_list.tsx` → `(anonymous)`
- `channels/src/components/user_groups_modal/user_groups_list/user_groups_list.tsx` → `(anonymous)`
Existing test(s) that load `react-window` but don't reach the functions above — **extend these**: `channels/src/actions/command.test.js`, `channels/src/components/actions_menu/actions_menu.test.tsx`, `channels/src/components/actions_menu/actions_menu_mobile.test.tsx`, `channels/src/components/actions_menu/index.test.tsx`, `channels/src/components/add_user_to_group_multiselect/add_user_to_group_multiselect.test.tsx` … (+234 more).
Currently-unexercised functions in `react-window` (context only — chainstrip removes these; do NOT write tests to reach them): `Grid`, `_callPropsCallbacks`, `_getHorizontalRangeToRender`, `_getVerticalRangeToRender`, `_onScrollHorizontal`, `_onScrollVertical`, `cancelTimeout`, `componentDidMount`, `componentDidUpdate`, `componentWillUnmount`, `defaultItemKey`, `findNearestItem` … (+32 more).
### 12. `@tiptap/markdown` — CLASSIFY 47KB — 47KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_suggestion_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/index.js (61 fns, 34KB)`, `dist/index.cjs (22 fns, 13KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx` → `(anonymous)`
Existing test(s) that load `@tiptap/markdown` but don't reach the functions above — **extend these**: `channels/src/components/advanced_text_editor/advanced_text_editor.test.tsx`, `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.test.tsx`, `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_markdown.test.ts`, `channels/src/components/channel_layout/center_channel/center_channel.test.tsx`, `channels/src/components/channel_view/channel_view.test.tsx` … (+12 more).
Currently-unexercised functions in `@tiptap/markdown` (context only — chainstrip removes these; do NOT write tests to reach them): `addCommands`, `addOptions`, `addStorage`, `applyMark`, `applyMarkToContent`, `assumeContentType`, `closeMarksBeforeNode`, `constructor`, `createNode`, `createParseHelpers`, `createTextNode`, `escapeRegex` … (+47 more).
### 13. `@tiptap/extension-table` — CLASSIFY 33KB — 33KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_suggestion_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/index.js (62 fns, 18KB)`, `dist/index.cjs (24 fns, 15KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx` → `(anonymous)`
Existing test(s) that load `@tiptap/extension-table` but don't reach the functions above — **extend these**: `channels/src/components/advanced_text_editor/advanced_text_editor.test.tsx`, `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.test.tsx`, `channels/src/components/channel_layout/center_channel/center_channel.test.tsx`, `channels/src/components/channel_view/channel_view.test.tsx`, `channels/src/components/popout_controller/popout_controller.test.tsx` … (+11 more).
Currently-unexercised functions in `@tiptap/extension-table` (context only — chainstrip removes these; do NOT write tests to reach them): `DEFAULT_CELL_LINE_SEPARATOR`, `Shift-Tab`, `Tab`, `TableKit`, `TableView`, `addAttributes`, `addColumnAfter`, `addColumnBefore`, `addCommands`, `addExtensions`, `addKeyboardShortcuts`, `addOptions` … (+38 more).
### 14. `react-transition-group` — CLASSIFY 30KB — 30KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `esm/index.js (56 fns, 18KB)`, `cjs/index.js (32 fns, 13KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.tsx` → `(anonymous)`
- `channels/src/components/channel_info_rhs/components/linelimiter.tsx` → `LineLimiterBase`
- `channels/src/components/common/auto_height_switcher.tsx` → `AutoHeightSwitcher`
- `channels/src/components/emoji_picker/components/emoji_picker_skin.tsx` → `render`
- `channels/src/components/info_toast/info_toast.tsx` → `InfoToast`
- `channels/src/components/mobile_sidebar_right/mobile_sidebar_right.tsx` → `MobileRightDrawer`
- `channels/src/components/onboarding_tasklist/onboarding_tasklist_completed.tsx` → `Completed`
- `channels/src/components/onboarding_tasklist/onboarding_tasklist_popover.tsx` → `TaskListPopover`
- `channels/src/components/preparing_workspace/invite_members.tsx` → `InviteMembers`
- `channels/src/components/preparing_workspace/launching_workspace.tsx` → `LaunchingWorkspace`
- `channels/src/components/preparing_workspace/organization.tsx` → `Organization`
- `channels/src/components/preparing_workspace/plugins.tsx` → `Plugins`
- `channels/src/components/preparing_workspace/progress.tsx` → `TransitionedProgress`
- `channels/src/components/widgets/menu/menu_wrapper_animation.tsx` → `MenuWrapperAnimation`
- `channels/src/components/widgets/modals/full_screen_modal.tsx` → `render`
Existing test(s) that load `react-transition-group` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+611 more).
Currently-unexercised functions in `react-transition-group` (context only — chainstrip removes these; do NOT write tests to reach them): `ReplaceTransition`, `SwitchTransition`, `TransitionGroup`, `_assertThisInitialized`, `_extends`, `_objectWithoutPropertiesLoose`, `addClass`, `addClass$1`, `areChildrenDifferent`, `callHook`, `changeState`, `childFactory` … (+32 more).
### 15. `redux-persist` — CLASSIFY 23KB — 23KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/reducers/plugins/index.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `lib/index.js (33 fns, 22KB)`, `es/index.js (19 fns, 1KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/reducers/storage.ts` → `storage`
- `channels/src/store/index.ts` → `(anonymous)`, `next`
Existing test(s) that load `redux-persist` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/burn_on_read_deletion.test.ts`, `channels/src/actions/burn_on_read_posts.test.ts`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js` … (+1250 more).
Currently-unexercised functions in `redux-persist` (context only — chainstrip removes these; do NOT write tests to reach them): `_arrayWithoutHoles`, `_defineProperty`, `_iterableToArray`, `_nonIterableSpread`, `_objectSpread`, `_objectWithoutProperties`, `_objectWithoutPropertiesLoose`, `_toConsumableArray`, `_typeof`, `autoMergeLevel1$1`, `autoMergeLevel2$1`, `createPersistoid$1` … (+20 more).
### 16. `mark.js` — CLASSIFY 18KB — 18KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/admin_console/access_control/modals/simulate_access/simulate_access_modal.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/mark.js (57 fns, 18KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/search_keyword_marking.tsx` → `doMark`
Existing test(s) that load `mark.js` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_sidebar/admin_sidebar.test.tsx`, `channels/src/components/admin_console/search_keyword_marking.test.tsx`.
Currently-unexercised functions in `mark.js` (context only — chainstrip removes these; do NOT write tests to reach them): `callNoMatchOnInvalidRanges`, `checkEnd`, `checkIframeFilter`, `checkRanges`, `checkWhitespaceRanges`, `compareNodeIframe`, `createInstanceOnIframe`, `createJoinersRegExp`, `createSynonymsRegExp`, `createWildcardsRegExp`, `eachCb`, `forEachIframe` … (+18 more).
### 17. `tinycolor2` — CLASSIFY 13KB — 13KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/admin_console/classification_markings/components/level_name_cell.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `cjs/tinycolor.js (43 fns, 9KB)`, `esm/tinycolor.js (12 fns, 4KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/classification_markings/components/classification_color_input.tsx` → `(anonymous)`, `ClassificationColorInput`
- `channels/src/components/color_input.tsx` → `onBlur`, `onChange`
- `channels/src/components/gif_picker/gif_picker_search.tsx` → `(anonymous)`
- `channels/src/components/widgets/users/avatars/avatars.tsx` → `(anonymous)`
Existing test(s) that load `tinycolor2` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_definition_abac_audit_logging.test.tsx`, `channels/src/components/admin_console/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_board_attributes.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_channel_viewed_messages.test.tsx` … (+61 more).
Currently-unexercised functions in `tinycolor2` (context only — chainstrip removes these; do NOT write tests to reach them): `_analogous`, `_applyCombination`, `_applyModification`, `_brighten`, `_complement`, `_darken`, `_desaturate`, `_greyscale`, `_lighten`, `_monochromatic`, `_saturate`, `_spin` … (+58 more).
### 18. `rebound` — CLASSIFY 11KB — 11KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
⚠ **Flake risk:** every call site is a React component/hook file — timing-flaky tests DESTROY existing eliminations; take this only if you can await real async and pin time (no settle-waits).
Runner evidence: `channels/src/components/sidebar/sidebar_list/sidebar_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/rebound.js (46 fns, 11KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/sidebar/sidebar_list/sidebar_list.tsx` → `constructor`
Existing test(s) that load `rebound` but don't reach the functions above — **extend these**: `channels/src/components/sidebar/sidebar.test.tsx`, `channels/src/components/sidebar/sidebar_list/sidebar_list.test.tsx`, `channels/src/components/team_controller/team_controller.test.tsx`, `channels/src/utils/performance_telemetry/element_identification.test.tsx`.
Currently-unexercised functions in `rebound` (context only — chainstrip removes these; do NOT write tests to reach them): `BouncyConversion`, `SimulationLooper`, `SteppingSimulationLooper`, `_interpolate`, `activateSpring`, `addListener`, `advance`, `b3Friction1`, `b3Friction2`, `b3Friction3`, `b3Nobounce`, `bind` … (+53 more).
### 19. `ipaddr.js` — CLASSIFY 11KB — 11KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/ip_filtering/ip_filtering.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `lib/ipaddr.js (30 fns, 11KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/ip_filtering/ip_filtering_utils.ts` → `isIPAddressInRanges`, `validateCIDR`
Existing test(s) that load `ipaddr.js` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_definition_abac_audit_logging.test.tsx`, `channels/src/components/admin_console/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_board_attributes.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_channel_viewed_messages.test.tsx` … (+17 more).
Currently-unexercised functions in `ipaddr.js` (context only — chainstrip removes these; do NOT write tests to reach them): `broadcastAddressFromCIDR`, `fromByteArray`, `isIPv4`, `isIPv4MappedAddress`, `isIPv6`, `isValid`, `isValidFourPartDecimal`, `networkAddressFromCIDR`, `padPart`, `prefixLengthFromSubnetMask`, `process`, `range` … (+10 more).
### 20. `web-vitals` — CLASSIFY 9KB — 9KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/utils/performance_telemetry/reporter.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/web-vitals.attribution.umd.cjs (28 fns, 9KB)`, `dist/web-vitals.attribution.js (5 fns, 0KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/utils/performance_telemetry/reporter.ts` → `observe`
Existing test(s) that load `web-vitals` but don't reach the functions above — **extend these**: `channels/src/utils/performance_telemetry/reporter.test.ts`.
Currently-unexercised functions in `web-vitals` (context only — chainstrip removes these; do NOT write tests to reach them): `B`, `C`, `D`, `E`, `L`, `M`, `O`, `T`, `U`, `_`, `a`, `b` … (+20 more).
### 21. `react-redux` — CLASSIFY 9KB — 9KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/access_control/modals/job_details/job_details_modal.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/cjs/index.js (19 fns, 5KB)`, `dist/react-redux.mjs (8 fns, 2KB)`, `chainstrip-chunk-CQ3sVI98.cjs (4 fns, 2KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Witness probes so far: 1 witnessed, 0 unreached. (A stated unreachable-through-the-app reason is evidence for the report — never a removal.)
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/about_build_modal/about_build_modal_cloud/about_build_modal_cloud.tsx` → `AboutBuildModalCloud`
- `channels/src/components/actions_menu/popover.tsx` → `Popover`
- `channels/src/components/admin_console/access_control/jobs/access_control_sync_job_table.tsx` → `AccessControlSyncJobTable`
- `channels/src/components/admin_console/access_control/modals/job_details/job_details_modal.tsx` → `JobDetailsModal`
- `channels/src/components/admin_console/access_control/modals/policy_test/test_modal.tsx` → `TestResultsModal`
- `channels/src/components/admin_console/access_control/modals/simulate_access/simulate_access_modal.tsx` → `SimulateAccessModal`
- `channels/src/components/admin_console/access_control/modals/user_sync/synced_user_list.tsx` → `SyncedUserList`
- `channels/src/components/admin_console/admin_settings/hooks.tsx` → `useAdminSettingState`, `useIsSetByEnv`
- `channels/src/components/admin_console/billing/billing_history_modal.tsx` → `BillingHistoryModal`
- `channels/src/components/admin_console/billing/billing_history_table.tsx` → `BillingHistoryTable`
- `channels/src/components/admin_console/billing/billing_history.tsx` → `BillingHistory`
- `channels/src/components/admin_console/billing/billing_subscriptions/cloud_trial_banner.tsx` → `CloudTrialBanner`
- `channels/src/components/admin_console/billing/billing_subscriptions/index.tsx` → `BillingSubscriptions`
- `channels/src/components/admin_console/billing/billing_subscriptions/limits.tsx` → `Limits`
- `channels/src/components/admin_console/billing/billing_summary/billing_summary.tsx` → `InvoiceInfo`
- `channels/src/components/admin_console/billing/company_info_display.tsx` → `CompanyInfoDisplay`
- `channels/src/components/admin_console/billing/company_info_edit.tsx` → `CompanyInfoEdit`
- `channels/src/components/admin_console/billing/company_info.tsx` → `CompanyInfo`
- `channels/src/components/admin_console/billing/delete_workspace/progress_modal.tsx` → `DeleteWorkspaceProgressModal`
- `channels/src/components/admin_console/billing/delete_workspace/result_modal.tsx` → `ResultModal`
- `channels/src/components/admin_console/billing/plan_details/index.tsx` → `PlanDetails`
- `channels/src/components/admin_console/board_attributes/board_attributes_delete_modal.tsx` → `useBoardAttributeFieldDelete`
- `channels/src/components/admin_console/board_attributes/board_attributes.tsx` → `BoardAttributes`
- `channels/src/components/admin_console/classification_markings/classification_markings.tsx` → `ClassificationMarkings`
- `channels/src/components/admin_console/content_flagging/content_reviewers/team_reviewers_section/team_reviewers_section.tsx` → `TeamReviewers`
- `channels/src/components/admin_console/content_flagging/user_multiselector/user_multiselector.tsx` → `UserSelector`
- `channels/src/components/admin_console/content_flagging/user_multiselector/user_profile_option.tsx` → `MultiUserOptionComponent`, `SingleUserOptionComponent`
- `channels/src/components/admin_console/content_flagging/user_multiselector/user_profile_pill.tsx` → `BaseUserProfilePill`
- `channels/src/components/admin_console/custom_profile_attributes/custom_profile_attributes.tsx` → `CustomProfileAttributes`, `PluginManagedFieldHelpText`
- `channels/src/components/admin_console/global_attributes/attribute_details/attribute_details.tsx` → `AttributeDetails`
- `channels/src/components/admin_console/global_attributes/attribute_details/attribute_external_source.tsx` → `AttributeExternalSource`
- `channels/src/components/admin_console/global_attributes/global_attribute_delete_modal.tsx` → `useGlobalAttributeFieldDelete`
- `channels/src/components/admin_console/global_attributes/global_attributes_table.tsx` → `ActionsCell`, `GlobalAttributesTable`, `SourceCell`, `useClassificationMarkingsReachable`
- `channels/src/components/admin_console/ip_filtering/index.tsx` → `IPFiltering`
- `channels/src/components/admin_console/license_settings/enterprise_edition/enterprise_edition_left_panel.tsx` → `EnterpriseEditionLeftPanel`
- `channels/src/components/admin_console/license_settings/modals/confirm_license_removal_modal.tsx` → `ConfirmLicenseRemovalModal`
- `channels/src/components/admin_console/license_settings/modals/ee_license_modal.tsx` → `EELicenseModal`
- `channels/src/components/admin_console/license_settings/modals/upload_license_modal.tsx` → `UploadLicenseModal`
- `channels/src/components/admin_console/license_settings/trial_banner/trial_banner.tsx` → `TrialBanner`
- `channels/src/components/admin_console/license_settings/user_seat_alert_banner.tsx` → `UserSeatAlertBanner`
- `channels/src/components/admin_console/permission_policies/policy_details/permission_policy_details.tsx` → `PermissionPolicyDetails`
- `channels/src/components/admin_console/secure_connections/modals/modal_utils.tsx` → `useRemoteClusterAcceptInvite`, `useRemoteClusterCreate`, `useRemoteClusterCreateInvite`, `useRemoteClusterDelete`, `useSharedChannelsAdd`, `useSharedChannelsRemove`
- `channels/src/components/admin_console/secure_connections/modals/shared_channels_add_modal.tsx` → `ChannelError`, `SharedChannelsAddModal`
- `channels/src/components/admin_console/secure_connections/secure_connection_detail.tsx` → `ChannelIcon`, `SecureConnectionDetail`
- `channels/src/components/admin_console/secure_connections/utils.ts` → `useSharedChannelRemoteRows`, `useTeamOptions`
- `channels/src/components/admin_console/session_attributes/session_attributes_dot_menu.tsx` → `SessionAttributesDotMenu`
- `channels/src/components/admin_console/session_attributes/session_attributes.tsx` → `SessionAttributesPage`
- `channels/src/components/admin_console/session_attributes/use_session_attribute_edits.ts` → `useSessionAttributeEdits`
- `channels/src/components/admin_console/system_properties/section_utils.ts` → `useThing`
- `channels/src/components/admin_console/system_properties/system_properties.tsx` → `SystemProperties`
- `channels/src/components/admin_console/system_properties/user_properties_delete_modal.tsx` → `useUserPropertyFieldDelete`
- `channels/src/components/admin_console/system_properties/user_properties_dot_menu.tsx` → `DotMenu`, `useAttributeLinkModal`
- `channels/src/components/admin_console/system_properties/user_properties_values.tsx` → `UserPropertyValues`
- `channels/src/components/admin_console/system_user_detail/system_user_detail.tsx` → `CpaFieldManagementIndicator`, `PluginDisplayName`
- `channels/src/components/admin_console/system_users/revoke_sessions_button/index.tsx` → `RevokeSessionsButton`
- `channels/src/components/admin_console/system_users/system_users_date_range_menu/index.tsx` → `SystemUsersDateRangeMenu`
- `channels/src/components/admin_console/system_users/system_users_export/export_user_data_modal.tsx` → `ExportUserDataModal`
- `channels/src/components/admin_console/system_users/system_users_export/index.tsx` → `SystemUsersExport`
- `channels/src/components/admin_console/system_users/system_users_filters_popover/index.tsx` → `SystemUsersFilterPopover`
- `channels/src/components/admin_console/system_users/system_users_filters_popover/system_users_filter_team/index.tsx` → `SystemUsersFilterTeam`
- `channels/src/components/admin_console/system_users/system_users_list_actions/confirm_reset_failed_attempts_modal.tsx` → `ConfirmResetFailedAttemptsModal`
- `channels/src/components/admin_console/system_users/system_users_list_actions/create_group_syncables_membership_modal.tsx` → `CreateGroupSyncablesMembershipsModal`
- `channels/src/components/admin_console/system_users/system_users_list_actions/deactivate_member_modal.tsx` → `DeactivateMemberModal`
- `channels/src/components/admin_console/system_users/system_users_list_actions/demote_to_guest_modal.tsx` → `DemoteToGuestModal`
- `channels/src/components/admin_console/system_users/system_users_list_actions/index.tsx` → `SystemUsersListAction`
- `channels/src/components/admin_console/system_users/system_users_list_actions/promote_to_member_modal.tsx` → `PromoteToMemberModal`
- `channels/src/components/admin_console/system_users/system_users_list_actions/revoke_sessions_modal.tsx` → `RevokeSessionsModal`
- `channels/src/components/admin_console/system_users/system_users_search/index.tsx` → `SystemUsersSearch`
- `channels/src/components/admin_console/team_channel_settings/channel/details/channel_level_access_rules.tsx` → `ChannelLevelAccessRules`
- `channels/src/components/admin_console/team_channel_settings/channel/list/admin_channel_shared_indicator.tsx` → `AdminChannelSharedIndicator`
- `channels/src/components/admin_console/team_channel_settings/team/details/team_level_access_rules.tsx` → `TeamLevelAccessRules`
- `channels/src/components/admin_console/team_channel_settings/team/details/team_membership_sync_footer.tsx` → `TeamMembershipSyncFooter`
- `channels/src/components/admin_console/team_channel_settings/team/details/team_profile.tsx` → `TeamProfile`
- `channels/src/components/admin_console/workspace-optimization/dashboard.data.tsx` → `useMetricsData`
- `channels/src/components/advanced_create_post/advanced_create_post.tsx` → `AdvancedCreatePost`
- `channels/src/components/advanced_create_post/prewritten_chips.tsx` → `PrewrittenChips`
- `channels/src/components/advanced_text_editor/advanced_text_editor.tsx` → `AdvancedTextEditor`
- `channels/src/components/advanced_text_editor/ai_actions_menu.tsx` → `AIActionsMenu`
- `channels/src/components/advanced_text_editor/edit_post_footer.tsx` → `EditPostFooter`
- `channels/src/components/advanced_text_editor/rewrite_menu.tsx` → `RewriteMenu`, `RewriteSubMenuHeader`
- `channels/src/components/advanced_text_editor/scheduled_post_indicator/scheduled_post_indicator.tsx` → `ScheduledPostIndicator`
- `channels/src/components/advanced_text_editor/send_button/scheduled_post_custom_time_modal/dm_user_timezone.tsx` → `DMUserTimezone`
- `channels/src/components/advanced_text_editor/send_button/scheduled_post_custom_time_modal/scheduled_post_custom_time_modal.tsx` → `ScheduledPostCustomTimeModal`
- `channels/src/components/advanced_text_editor/send_button/send_button.tsx` → `SendButton`
- `channels/src/components/advanced_text_editor/send_button/send_post_options/core_menu_options.tsx` → `CoreMenuOptions`
- `channels/src/components/advanced_text_editor/send_button/send_post_options/index.tsx` → `SendPostOptions`
- `channels/src/components/advanced_text_editor/send_button/send_post_options/recent_used_custom_date.tsx` → `RecentUsedCustomDate`
- `channels/src/components/advanced_text_editor/use_burn_on_read.tsx` → `useBurnOnRead`
- `channels/src/components/advanced_text_editor/use_composer_placeholder.ts` → `useComposerPlaceholder`
- `channels/src/components/advanced_text_editor/use_editor_emoji_picker.tsx` → `useEditorEmojiPicker`
- `channels/src/components/advanced_text_editor/use_groups.tsx` → `useGroups`
- `channels/src/components/advanced_text_editor/use_key_handler.tsx` → `useKeyHandler`
- `channels/src/components/advanced_text_editor/use_plugin_items.tsx` → `usePluginItems`
- `channels/src/components/advanced_text_editor/use_post_box_indicator.tsx` → `useTimePostBoxIndicator`
- `channels/src/components/advanced_text_editor/use_priority.tsx` → `usePriority`
- `channels/src/components/advanced_text_editor/use_rewrite.tsx` → `useRewrite`
- `channels/src/components/advanced_text_editor/use_submit.tsx` → `useSubmit`
- `channels/src/components/advanced_text_editor/use_textbox_focus.tsx` → `useTextboxFocus`
- `channels/src/components/advanced_text_editor/use_upload_files.tsx` → `useUploadFiles`
- `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx` → `(anonymous)`
- `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_suggestion_list.tsx` → `WysiwygSuggestionList`
- `channels/src/components/air_gapped_contact_sales_modal/index.tsx` → `AirGappedContactSalesModal`
- `channels/src/components/announcement_bar/cloud_preview_announcement_bar/index.tsx` → `CloudPreviewAnnouncementBar`
- `channels/src/components/announcement_bar/cloud_trial_ended_announcement_bar/index.tsx` → `CloudTrialEndAnnouncementBar`
- `channels/src/components/announcement_bar/non_production_license_bar/index.tsx` → `NonProductionLicenseAnnouncementBar`
- `channels/src/components/announcement_bar/notification_permission_bar/index.tsx` → `NotificationPermissionBar`
- `channels/src/components/announcement_bar/overage_users_banner/index.tsx` → `OverageUsersBanner`
- `channels/src/components/announcement_bar/payment_announcement_bar/index.tsx` → `PaymentAnnouncementBar`
- `channels/src/components/announcement_bar/post_history_limit_banner/index.tsx` → `PostHistoryLimitBanner`
- `channels/src/components/announcement_bar/show_start_trial_modal/show_start_trial_modal.tsx` → `ShowStartTrialModal`
- `channels/src/components/announcement_bar/show_tree_days_left_trial_modal/show_three_days_left_trial_modal.tsx` → `ShowThreeDaysLeftTrialModal`
- `channels/src/components/announcement_bar/single_channel_guest_limit_banner/index.tsx` → `SingleChannelGuestLimitBanner`
- `channels/src/components/announcement_bar/users_limits_announcement_bar/index.tsx` → `UsersLimitsAnnouncementBar`
- `channels/src/components/app_bar/app_bar_binding.tsx` → `AppBarBinding`
- `channels/src/components/app_bar/app_bar_marketplace.tsx` → `AppBarMarketplace`
- `channels/src/components/app_bar/app_bar_plugin_component.tsx` → `AppBarPluginComponent`
- `channels/src/components/app_bar/app_bar.tsx` → `AppBar`
- `channels/src/components/app_bar/new_channel_with_board_tour_tip.tsx` → `NewChannelWithBoardTourTip`
- `channels/src/components/app.tsx` → `App`
- `channels/src/components/apps_form/apps_form_action_button.tsx` → `AppsFormActionButton`
- `channels/src/components/apps_form/apps_form_datetime_field/apps_form_datetime_field.tsx` → `AppsFormDateTimeField`
- `channels/src/components/apps_form/apps_form_file_upload/apps_form_file_upload.tsx` → `AppsFormFileUpload`
- `channels/src/components/audit_table/audit_row/audit_row.tsx` → `AuditRow`
- `channels/src/components/audit_table/channel_row/channel_create_direct_row.tsx` → `ChannelCreateDirectRow`
- `channels/src/components/audit_table/channel_row/channel_default_row.tsx` → `ChannelDefaultRow`
- `channels/src/components/audit_table/channel_row/channel_row.tsx` → `ChannelRow`
- `channels/src/components/audit_table/user_row/user_update_active_session_row.tsx` → `UserUpdateActiveSessionRow`
- `channels/src/components/block_renderer/button_element.tsx` → `ButtonElement`
- `channels/src/components/block_renderer/image_block.tsx` → `ImageBlock`
- `channels/src/components/block_renderer/static_select_element.tsx` → `StaticSelectElement`
- `channels/src/components/burn_on_read/burn_on_read_tour_tip.tsx` → `BurnOnReadTourTip`
- `channels/src/components/category_selector/category_selector.tsx` → `CategorySelector`
- `channels/src/components/channel_banner/channel_banner.tsx` → `ChannelBanner`
- `channels/src/components/channel_bookmarks/bookmark_dot_menu.tsx` → `BookmarkItemDotMenu`
- `channels/src/components/channel_bookmarks/bookmark_icon.tsx` → `BookmarkIcon`
- `channels/src/components/channel_bookmarks/bookmark_item_content.tsx` → `useBookmarkLink`
- `channels/src/components/channel_bookmarks/channel_bookmarks_create_modal.tsx` → `ChannelBookmarkCreateModal`
- `channels/src/components/channel_bookmarks/channel_bookmarks_menu.tsx` → `useBookmarkAddActions`
- `channels/src/components/channel_bookmarks/utils.ts` → `useCanGetLinkPreviews`, `useCanGetPublicLink`, `useCanUploadFiles`, `useChannelBookmarkPermission`, `useChannelBookmarks`
- `channels/src/components/channel_header_menu/channel_header_menu_items/channel_header_direct_menu.tsx` → `ChannelHeaderDirectMenu`
- `channels/src/components/channel_header_menu/channel_header_menu_items/channel_header_group_menu.tsx` → `ChannelHeaderGroupMenu`
- `channels/src/components/channel_header_menu/channel_header_menu.tsx` → `ChannelHeaderMenu`
- `channels/src/components/channel_header_menu/menu_items/add_channel_members.tsx` → `AddChannelMembers`
- `channels/src/components/channel_header_menu/menu_items/add_group_members.tsx` → `AddGroupMembers`
- `channels/src/components/channel_header_menu/menu_items/archive_channel.tsx` → `ArchiveChannel`
- `channels/src/components/channel_header_menu/menu_items/autotranslation.tsx` → `Autotranslation`
- `channels/src/components/channel_header_menu/menu_items/channel_bookmarks_submenu.tsx` → `ChannelBookmarksSubmenu`
- `channels/src/components/channel_header_menu/menu_items/channel_settings_menu.tsx` → `ChannelSettingsMenu`
- `channels/src/components/channel_header_menu/menu_items/close_message.tsx` → `CloseMessage`
- `channels/src/components/channel_header_menu/menu_items/convert_gm_to_private.tsx` → `ConvertGMtoPrivate`
- `channels/src/components/channel_header_menu/menu_items/edit_conversation_header.tsx` → `EditConversationHeader`
- `channels/src/components/channel_header_menu/menu_items/groups.tsx` → `Groups`
- `channels/src/components/channel_header_menu/menu_items/leave_channel.tsx` → `LeaveChannel`
- `channels/src/components/channel_header_menu/menu_items/mobile_channel_header_plugins.tsx` → `MobileChannelHeaderPlugins`
- `channels/src/components/channel_header_menu/menu_items/notification.tsx` → `Notification`
- `channels/src/components/channel_header_menu/menu_items/open_in_new_window.tsx` → `MenuItemOpenInNewWindow`
- `channels/src/components/channel_header_menu/menu_items/open_members_rhs.tsx` → `OpenMembersRHS`
- `channels/src/components/channel_header_menu/menu_items/toggle_favorite_channel.tsx` → `ToggleFavoriteChannel`
- `channels/src/components/channel_header_menu/menu_items/toggle_info.tsx` → `ToggleInfo`
- `channels/src/components/channel_header_menu/menu_items/toggle_mute_channel.tsx` → `ToggleMuteChannel`
- `channels/src/components/channel_header_menu/menu_items/unarchive_channel.tsx` → `UnarchiveChannel`
- `channels/src/components/channel_header_menu/menu_items/view_pinned_posts.tsx` → `ViewPinnedPosts`
- `channels/src/components/channel_header/channel_header_text_popover.tsx` → `ChannelHeaderTextPopover`
- `channels/src/components/channel_header/channel_header_text.tsx` → `AddChannelHeaderTextButton`
- `channels/src/components/channel_header/channel_header_title_direct.tsx` → `ChannelHeaderTitleDirect`
- `channels/src/components/channel_header/channel_header_title_favorite.tsx` → `ChannelHeaderTitleFavorite`
- `channels/src/components/channel_header/channel_header_title_group.tsx` → `ChannelHeaderTitleGroup`
- `channels/src/components/channel_header/channel_header_title.tsx` → `ChannelHeaderTitle`
- `channels/src/components/channel_header/channel_info_button.tsx` → `ChannelInfoButton`
- `channels/src/components/channel_header/channel_join_request_count_sync.tsx` → `ChannelJoinRequestCountSync`
- `channels/src/components/channel_info_rhs/menu.tsx` → `Menu`
- `channels/src/components/channel_invite_modal/channel_invite_modal.tsx` → `ChannelInviteModalComponent`
- `channels/src/components/channel_invite_modal/group_option/group_option.tsx` → `GroupOption`
- `channels/src/components/channel_invite_modal/team_warning_banner/team_warning_banner.tsx` → `TeamWarningBanner`
- `channels/src/components/channel_layout/channel_controller.tsx` → `ChannelController`
- `channels/src/components/channel_layout/playbook_runner.tsx` → `PlaybookRunner`
- `channels/src/components/channel_members_dropdown/channel_members_dropdown.tsx` → `ChannelMembersDropdown`
- `channels/src/components/channel_members_rhs/channel_members_rhs.tsx` → `ChannelMembersRHS`
- `channels/src/components/channel_members_rhs/pending_join_requests.tsx` → `PendingJoinRequestRow`, `PendingJoinRequests`
- `channels/src/components/channel_move_to_sub_menu_old/index.tsx` → `ChannelMoveToSubMenuOld`
- `channels/src/components/channel_move_to_sub_menu/index.tsx` → `ChannelMoveToSubMenu`
- `channels/src/components/channel_name_form_field/channel_name_form_field.tsx` → `ChannelNameFormField`
- `channels/src/components/channel_popout/channel_popout.tsx` → `ChannelPopout`
- `channels/src/components/channel_settings_modal/channel_access_rules_confirm_modal.tsx` → `ChannelAccessRulesConfirmModal`
- `channels/src/components/channel_settings_modal/channel_settings_access_rules_tab.tsx` → `ChannelSettingsAccessRulesTab`
- `channels/src/components/channel_settings_modal/channel_settings_archive_tab.tsx` → `ChannelSettingsArchiveTab`
- `channels/src/components/channel_settings_modal/channel_settings_configuration_tab.tsx` → `ChannelSettingsConfigurationTab`
- `channels/src/components/channel_settings_modal/channel_settings_info_tab.tsx` → `ChannelSettingsInfoTab`
- `channels/src/components/channel_settings_modal/channel_settings_modal.tsx` → `ChannelSettingsModal`
- `channels/src/components/channel_settings_modal/channel_settings_permissions_policy_tab.tsx` → `ChannelSettingsPermissionsPolicyTab`
- `channels/src/components/channel_type_icon/useChannelIconClassName.ts` → `useChannelIconClassName`
- `channels/src/components/channel_type_icon/useChannelIconOverrideName.ts` → `useChannelIconOverrideName`
- `channels/src/components/channel_view/channel_composer_banner.tsx` → `ChannelComposerBanner`
- `channels/src/components/cloud_effects/index.tsx` → `CloudEffectsWrapper`
- `channels/src/components/cloud_fetch_error/index.tsx` → `CloudFetchError`
- `channels/src/components/cloud_invoice_preview/index.tsx` → `CloudInvoicePreview`
- `channels/src/components/cloud_preview_modal/cloud_preview_modal_controller.tsx` → `CloudPreviewModal`
- `channels/src/components/cloud_subscribe_result_modal/error.tsx` → `ErrorModal`
- `channels/src/components/cloud_subscribe_result_modal/success.tsx` → `SuccessModal`
- `channels/src/components/cloud_usage_modal/lhs_nearing_limit_modal.tsx` → `LHSNearingLimitsModal`
- `channels/src/components/code_block/code_block.tsx` → `CodeBlock`
- `channels/src/components/common/agents/use_selected_agent.ts` → `useSelectedAgent`
- `channels/src/components/common/hooks/use_external_link.ts` → `useExternalLink`
- `channels/src/components/common/hooks/use_field_orphaned.ts` → `useInstalledPluginIds`
- `channels/src/components/common/hooks/use_search_results_actions.ts` → `useSearchResultsActions`
- `channels/src/components/common/hooks/useAccessControlAttributes.ts` → `useAccessControlAttributes`
- `channels/src/components/common/hooks/useAdminConfigSync.ts` → `useAdminConfigSync`
- `channels/src/components/common/hooks/useChannelClassificationBanner.ts` → `useChannelClassificationBanner`
- `channels/src/components/common/hooks/useClassificationMarkings.ts` → `useClassificationMarkings`
- `channels/src/components/common/hooks/useControlModal.ts` → `useControlModal`
- `channels/src/components/common/hooks/useCWSAvailabilityCheck.ts` → `useCWSAvailabilityCheck`
- `channels/src/components/common/hooks/useEntity.ts` → `useEntity`
- `channels/src/components/common/hooks/useFetchAdminConfig.ts` → `useFetchAdminConfig`
- `channels/src/components/common/hooks/useFetchStandardAnalytics.ts` → `useFetchStandardAnalytics`
- `channels/src/components/common/hooks/useGetAgentsBridgeEnabled.ts` → `useGetAgentsBridgeEnabled`
- `channels/src/components/common/hooks/useGetCloudInstallationStatus.ts` → `useGetCloudInstallationStatus`
- `channels/src/components/common/hooks/useGetFeatureFlagValue.ts` → `useGetFeatureFlagValue`
- `channels/src/components/common/hooks/useGetLimits.ts` → `useGetLimits`
- `channels/src/components/common/hooks/useGetLLMServices.ts` → `useGetLLMServices`
- `channels/src/components/common/hooks/useGetServerLimits.ts` → `useGetServerLimits`
- `channels/src/components/common/hooks/useGetSubscription.ts` → `useGetSubscription`
- `channels/src/components/common/hooks/useGetTotalUsersNoBots.ts` → `useGetTotalUsersNoBots`
- `channels/src/components/common/hooks/useGetUsage.ts` → `useGetUsage`
- `channels/src/components/common/hooks/useOpenInvitePeopleModal.ts` → `useOpenInvitePeopleModal`
- `channels/src/components/common/hooks/useOpenSalesLink.ts` → `useOpenSalesLink`
- `channels/src/components/common/hooks/useOpenStartTrialFormModal.ts` → `useOpenStartTrialFormModal`
- `channels/src/components/common/hooks/useOpenZendeskForm.ts` → `useOpenCloudZendeskSupportForm`
- `channels/src/components/common/hooks/usePluginStatusesSync.ts` → `usePluginStatusesSync`
- `channels/src/components/common/hooks/usePreference.ts` → `usePreference`
- `channels/src/components/common/hooks/useSavePreferences.ts` → `useSavePreferences`
- `channels/src/components/common/hooks/useShowAdminLimitReached.ts` → `useShowAdminLimitReached`
- `channels/src/components/common/hooks/useTelemetryIdentifySync.tsx` → `useTelemetryIdentitySync`
- `channels/src/components/common/plan_label/index.tsx` → `PlanLabel`
- `channels/src/components/convert_gm_to_channel_modal/convert_gm_to_channel_modal.tsx` → `ConvertGmToChannelModal`
- `channels/src/components/convert_gm_to_channel_modal/team_selector/team_selector.tsx` → `TeamSelector`
- `channels/src/components/create_recap_modal/create_recap_modal.tsx` → `CreateRecapModal`
- `channels/src/components/create_recap_modal/schedule_configuration.tsx` → `ScheduleConfiguration`
- `channels/src/components/create_team/components/create_team_form/create_team_form.tsx` → `CreateTeamForm`
- `channels/src/components/custom_status/custom_status_emoji.tsx` → `CustomStatusEmoji`
- `channels/src/components/custom_status/custom_status_modal.tsx` → `CustomStatusModal`
- `channels/src/components/custom_status/custom_status_text.tsx` → `CustomStatusText`
- `channels/src/components/date_time_picker_modal/date_time_picker_modal.tsx` → `DateTimePickerModal`
- `channels/src/components/datetime_input/datetime_input.tsx` → `DateTimeInputContainer`
- `channels/src/components/desktop_auth_token.tsx` → `DesktopAuthToken`
- `channels/src/components/disable_autotranslation_modal.tsx` → `DisableAutotranslationModal`
- `channels/src/components/do_verify_email/do_verify_email.tsx` → `DoVerifyEmail`
- `channels/src/components/dot_menu/post_reminder_submenu.tsx` → `PostReminderSubmenu`
- `channels/src/components/downgrade_modal/index.tsx` → `DowngradeModal`
- `channels/src/components/drafts/draft_actions/draft_actions.tsx` → `DraftActions`
- `channels/src/components/drafts/draft_actions/schedule_post_actions/scheduled_post_actions.tsx` → `ScheduledPostActions`
- `channels/src/components/drafts/draft_list/index.tsx` → `DraftList`
- `channels/src/components/drafts/draft_row.tsx` → `DraftRow`
- `channels/src/components/drafts/draft_title/draft_title.tsx` → `DraftTitle`
- `channels/src/components/drafts/drafts_and_schedule_posts_tabs.tsx` → `DraftsAndSchedulePostsTabs`
- `channels/src/components/drafts/drafts_link/drafts_link.tsx` → `DraftsLink`
- `channels/src/components/drafts/index.tsx` → `Drafts`
- `channels/src/components/drafts/panel/panel_body.tsx` → `PanelBody`
- `channels/src/components/drafts/scheduled_post_list/index.tsx` → `ScheduledPostList`
- `channels/src/components/edit_post/edit_post.tsx` → `EditPost`
- `channels/src/components/edit_scheduled_post/edit_post_footer.tsx` → `EditPostFooter`
- `channels/src/components/edit_scheduled_post/edit_post.tsx` → `EditPost`
- `channels/src/components/emoji_picker/use_emoji_picker.tsx` → `useEmojiPicker`
- `channels/src/components/error_page/messages/cloud_archived.tsx` → `CloudArchived`
- `channels/src/components/feature_restricted_modal/feature_restricted_modal.tsx` → `FeatureRestrictedModal`
- `channels/src/components/feature_toast/feature_toast.tsx` → `FeatureToast`
- `channels/src/components/feedback_modal/feedback.tsx` → `FeedbackModal`
- `channels/src/components/file_attachment_list/media_gallery/media_gallery.tsx` → `MediaGallery`
- `channels/src/components/file_attachment_list/media_gallery/tiles/tile_utility_buttons.tsx` → `TileUtilityButtons`
- `channels/src/components/file_limit_sticky_banner/index.tsx` → `FileLimitStickyBanner`
- `channels/src/components/file_preview_modal/file_preview_modal_info/file_preview_modal_info.tsx` → `FilePreviewModalInfo`
- `channels/src/components/file_preview_modal/file_preview_modal_main_actions/file_preview_modal_main_actions.tsx` → `FilePreviewModalMainActions`
- `channels/src/components/flag_message_modal/flag_post_modal.tsx` → `FlagPostModal`
- `channels/src/components/forward_post_modal/forward_post_channel_select.tsx` → `FormattedOption`, `Option`
- `channels/src/components/forward_post_modal/forward_post_comment_input.tsx` → `ForwardPostCommentInput`
- `channels/src/components/forward_post_modal/index.tsx` → `ForwardPostModal`
- `channels/src/components/gif_picker/gif_picker_items.tsx` → `GifPickerItems`
- `channels/src/components/gif_picker/gif_picker_search.tsx` → `GifPickerSearch`
- `channels/src/components/global_classification_banner/global_classification_banner.tsx` → `GlobalClassificationBanner`
- `channels/src/components/global_header/center_controls/global_search_nav/global_search_nav.tsx` → `GlobalSearchNav`
- `channels/src/components/global_header/hooks.tsx` → `useFirstAdminUser`, `useIsCurrentUserSystemAdmin`, `useIsLoggedIn`, `useIsModalOpen`
- `channels/src/components/global_header/left_controls/product_menu/product_branding_team_edition/product_branding_free_edition.tsx` → `ProductBrandingFreeEdition`
- `channels/src/components/global_header/left_controls/product_menu/product_menu_list/product_menu_list.tsx` → `ProductMenuList`
- `channels/src/components/global_header/left_controls/product_menu/product_menu.tsx` → `ProductMenu`
- `channels/src/components/global_header/right_controls/at_mentions_button/at_mentions_button.tsx` → `AtMentionsButton`
- `channels/src/components/global_header/right_controls/plan_upgrade_button/index.tsx` → `PlanUpgradeButton`
- `channels/src/components/global_header/right_controls/right_controls.tsx` → `RightControls`
- `channels/src/components/global_header/right_controls/saved_posts_button/saved_posts_button.tsx` → `SavedPostsButton`
- `channels/src/components/header_footer_route/footer.tsx` → `Footer`
- `channels/src/components/header_footer_route/header.tsx` → `Header`
- `channels/src/components/header_footer_template/header_footer_template.tsx` → `HeaderFooterNotLoggedIn`
- `channels/src/components/help/use_help_page_title.ts` → `useHelpPageTitle`
- `channels/src/components/inline_action_button/index.tsx` → `InlineActionButton`
- `channels/src/components/inline_entity_link/index.tsx` → `InlineEntityLink`
- `channels/src/components/integrations/outgoing_oauth_connections/abstract_outgoing_oauth_connection.tsx` → `AbstractOutgoingOAuthConnection`
- `channels/src/components/integrations/outgoing_oauth_connections/add_outgoing_oauth_connection.tsx` → `AddOutgoingOAuthConnection`
- `channels/src/components/integrations/outgoing_oauth_connections/edit_outgoing_oauth_connection.tsx` → `EditOutgoingOAuthConnection`
- `channels/src/components/integrations/outgoing_oauth_connections/installed_outgoing_oauth_connections.tsx` → `InstalledOutgoingOAuthConnections`
- `channels/src/components/integrations/outgoing_oauth_connections/oauth_connection_audience_input.tsx` → `OAuthConnectionAudienceInput`
- `channels/src/components/invitation_modal/invite_as.tsx` → `InviteAs`
- `channels/src/components/invitation_modal/overage_users_banner_notice/index.tsx` → `OverageUsersBannerNotice`
- `channels/src/components/keyboard_shortcuts/keyboard_shortcuts_modal/keyboard_shortcuts_modal.tsx` → `KeyboardShortcutsModal`
- `channels/src/components/learn_more_trial_modal/learn_more_trial_modal.tsx` → `LearnMoreTrialModal`
- `channels/src/components/login/login.tsx` → `Login`
- `channels/src/components/menu/menu_item_link.tsx` → `MenuItemLink`
- `channels/src/components/menu/menu_item.tsx` → `(anonymous)`
- `channels/src/components/menu/menu.tsx` → `Menu`, `MenuModal`
- `channels/src/components/menu/sub_menu.tsx` → `SubMenu`, `SubMenuModal`
- `channels/src/components/more_direct_channels/list_item/user_details/user_details.tsx` → `UserDetails`
- `channels/src/components/more_direct_channels/list/list.tsx` → `(anonymous)`
- `channels/src/components/move_thread_modal/move_thread_modal.tsx` → `MoveThreadModal`
- `channels/src/components/new_channel_modal/new_channel_modal.tsx` → `NewChannelModal`
- `channels/src/components/new_search/hooks.tsx` → `useSearchSuggestions`
- `channels/src/components/new_search/new_search.tsx` → `NewSearch`
- `channels/src/components/new_search/search_box_hints.tsx` → `SearchBoxHints`
- `channels/src/components/new_search/search_box_input.tsx` → `(anonymous)`
- `channels/src/components/new_search/search_box_suggestions.tsx` → `SearchSuggestions`
- `channels/src/components/new_search/search_box_type_selector.tsx` → `SearchTypeSelector`
- `channels/src/components/new_search/select_team.tsx` → `SelectTeam`
- `channels/src/components/onboarding_tasklist/onboarding_tasklist_completed.tsx` → `Completed`
- `channels/src/components/onboarding_tasklist/onboarding_tasklist.tsx` → `OnBoardingTaskList`
- `channels/src/components/onboarding_tasks/complete_your_profile_tour_tip.tsx` → `CompleteYourProfileTour`
- `channels/src/components/onboarding_tasks/onboarding_tasks_manager.tsx` → `useHandleOnBoardingTaskData`, `useHandleOnBoardingTaskTrigger`, `useTasksList`, `useTasksListWithStatus`
- `channels/src/components/onboarding_tasks/visit_system_console_tour_tip.tsx` → `VisitSystemConsoleTour`
- `channels/src/components/permissions_gates/any_team_permission_gate.tsx` → `AnyTeamPermissionGate`
- `channels/src/components/permissions_gates/channel_permission_gate.tsx` → `ChannelPermissionGate`
- `channels/src/components/permissions_gates/system_permission_gate.tsx` → `SystemPermissionGate`
- `channels/src/components/permissions_gates/team_permission_gate.tsx` → `TeamPermissionGate`
- `channels/src/components/persist_notification_confirm_modal.tsx` → `PersistNotificationConfirmModal`
- `channels/src/components/plugin_marketplace/marketplace_modal.tsx` → `MarketplaceModal`
- `channels/src/components/popout_controller/popout_controller.tsx` → `PopoutController`
- `channels/src/components/post_edit_history/edited_post_item/edited_post_item.tsx` → `EditedPostItem`
- `channels/src/components/post_edit_history/post_edit_history.tsx` → `PostEditHistory`
- `channels/src/components/post_priority/post_priority_picker.tsx` → `PostPriorityPicker`
- `channels/src/components/post_view/acknowledgements/post_acknowledgements_users_popover.tsx` → `Row`
- `channels/src/components/post_view/acknowledgements/post_acknowledgements.tsx` → `PostAcknowledgements`
- `channels/src/components/post_view/burn_on_read_badge/burn_on_read_badge.tsx` → `BurnOnReadBadge`
- `channels/src/components/post_view/channel_intro_message/add_members_button.tsx` → `AddMembersButton`
- `channels/src/components/post_view/channel_intro_message/channel_intro_message.tsx` → `ChannelIntroBody`
- `channels/src/components/post_view/data_spillage_report/data_spillage_actions/data_spillage_actions.tsx` → `DataSpillageAction`
- `channels/src/components/post_view/data_spillage_report/data_spillage_footer/data_spillage_footer.tsx` → `DataSpillageFooter`
- `channels/src/components/post_view/gm_conversion_message/gm_conversion_message.tsx` → `GMConversionMessage`
- `channels/src/components/post_view/interactive_messages/index.tsx` → `InteractiveMessages`
- `channels/src/components/post_view/post_attachment_container/post_attachment_container.tsx` → `PostAttachmentContainer`
- `channels/src/components/post_view/post_header_custom_status/post_header_custom_status.tsx` → `PostHeaderCustomStatus`
- `channels/src/components/post_view/post_list_virtualized/latest_post_reader.tsx` → `LatestPostReader`
- `channels/src/components/post/post_header_translate_icon.tsx` → `PostHeaderTranslateIcon`
- `channels/src/components/preparing_workspace/launching_workspace.tsx` → `LaunchingWorkspace`
- `channels/src/components/preparing_workspace/organization.tsx` → `Organization`
- `channels/src/components/preparing_workspace/preparing_workspace.tsx` → `PreparingWorkspace`
- `channels/src/components/profile_popover/profile_popover_add_to_channel.tsx` → `ProfilePopoverAddToChannel`
- `channels/src/components/profile_popover/profile_popover_call_button_wrapper/index.tsx` → `CallButton`
- `channels/src/components/profile_popover/profile_popover_calls_button/profile_popover_call_button.tsx` → `ProfilePopoverCallButton`
- `channels/src/components/profile_popover/profile_popover_custom_attributes.tsx` → `ProfilePopoverCustomAttributes`
- `channels/src/components/profile_popover/profile_popover_custom_status.tsx` → `ProfilePopoverCustomStatus`
- `channels/src/components/profile_popover/profile_popover_last_active.tsx` → `ProfilePopoverLastActive`
- `channels/src/components/profile_popover/profile_popover_other_user_row.tsx` → `ProfilePopoverOtherUserRow`
- `channels/src/components/profile_popover/profile_popover_self_user_row.tsx` → `ProfilePopoverSelfUserRow`
- `channels/src/components/profile_popover/profile_popover_title.tsx` → `ProfilePopoverTitle`
- `channels/src/components/profile_popover/profile_popover.tsx` → `ProfilePopover`
- `channels/src/components/query_param_actions/query_param_action_controller.tsx` → `QueryParamActionController`
- `channels/src/components/readout/readout.tsx` → `Readout`
- `channels/src/components/recaps_link/recaps_link.tsx` → `RecapsLink`
- `channels/src/components/recaps/recap_channel_card.tsx` → `RecapChannelCard`
- `channels/src/components/recaps/recap_item.tsx` → `RecapItem`
- `channels/src/components/recaps/recap_text_formatter.tsx` → `RecapTextFormatter`
- `channels/src/components/recaps/recap_usage_badge/recap_usage_badge.tsx` → `RecapUsageBadge`
- `channels/src/components/recaps/recaps_list.tsx` → `RecapsList`
- `channels/src/components/recaps/recaps.tsx` → `Recaps`
- `channels/src/components/recaps/scheduled_recap_item.tsx` → `ScheduledRecapItem`
- `channels/src/components/remove_flagged_message_confirmation_modal/remove_flagged_message_confirmation_modal.tsx` → `KeepRemoveFlaggedMessageConfirmationModal`
- `channels/src/components/request_join_channel_modal/request_join_channel_modal.tsx` → `RequestJoinChannelModal`
- `channels/src/components/resizable_sidebar/resizable_divider.tsx` → `ResizableDivider`
- `channels/src/components/resizable_sidebar/resizable_rhs/index.tsx` → `ResizableRhs`
- `channels/src/components/rhs_plugin_popout/rhs_plugin_popout.tsx` → `RhsPluginPopout`
- `channels/src/components/rhs_popout/rhs_popout.tsx` → `RhsPopout`
- `channels/src/components/rhs_search_popout/rhs_search_popout.tsx` → `RhsSearchPopout`
- `channels/src/components/rhs_thread/rhs_thread.tsx` → `RhsThread`
- `channels/src/components/root_post_divider/root_post_divider.tsx` → `RootPostDivider`
- `channels/src/components/root/luxon_controller.tsx` → `LuxonController`
- `channels/src/components/root/performance_reporter_controller.tsx` → `PerformanceReporterController`
- `channels/src/components/root/shared_package_provider.tsx` → `useEmojiByName`
- `channels/src/components/search_hint/search_hint.tsx` → `SearchHint`
- `channels/src/components/search_results/messages_or_files_selector.tsx` → `MessagesOrFilesSelector`
- `channels/src/components/search_results/post_search_results_item.tsx` → `PostSearchResultsItem`
- `channels/src/components/search_results/search_limits_banner.tsx` → `SearchLimitsBanner`
- `channels/src/components/search_results/search_results.tsx` → `SearchResults`
- `channels/src/components/search/search.tsx` → `Search`
- `channels/src/components/should_verify_email/should_verify_email.tsx` → `ShouldVerifyEmail`
- `channels/src/components/show_translation_modal/show_translation_modal.tsx` → `ShowTranslationModal`
- `channels/src/components/sidebar/add_channels_cta_button.tsx` → `AddChannelsCtaButton`
- `channels/src/components/sidebar/invite_members_button.tsx` → `InviteMembersButton`
- `channels/src/components/sidebar/sidebar_category/sidebar_category_menu/create_new_category_menu_item.tsx` → `CreateNewCategoryMenuItem`
- `channels/src/components/sidebar/sidebar_category/sidebar_category_menu/index.tsx` → `SidebarCategoryMenu`
- `channels/src/components/sidebar/sidebar_category/sidebar_category_menu/mark_as_read_menu_item.tsx` → `MarkAsUnreadItem`
- `channels/src/components/sidebar/sidebar_category/sidebar_category_sorting_menu.tsx` → `SidebarCategorySortingMenu`
- `channels/src/components/sidebar/sidebar_channel/sidebar_channel_menu/sidebar_channel_menu.tsx` → `SidebarChannelMenu`
- `channels/src/components/sidebar/sidebar_header/sidebar_browse_or_add_channel_menu.tsx` → `SidebarBrowserOrAddChannelMenu`
- `channels/src/components/sidebar/sidebar_header/sidebar_header.tsx` → `SidebarHeader`
- `channels/src/components/sidebar/sidebar_header/sidebar_team_menu.tsx` → `AddGroupsToTeamMenuItem`, `CreateTeamMenuItem`, `InvitePeopleMenuItem`, `LeaveTeamMenuItem`, `ManageGroupsMenuItem`, `ManageViewMembersMenuItem`, `PluginMenuItems`, `SidebarTeamMenu`, `TeamSettingsMenuItem`
- `channels/src/components/sidebar/sidebar_join_request_counts_sync.tsx` → `SidebarJoinRequestCountsSync`
- `channels/src/components/sidebar/unread_channels.tsx` → `UnreadChannels`
- `channels/src/components/signup/signup.tsx` → `Signup`
- `channels/src/components/start_trial_form_modal/failure_modal.tsx` → `StartTrialFormModalResult`
- `channels/src/components/start_trial_form_modal/index.tsx` → `StartTrialFormModal`
- `channels/src/components/suggestion/rhs_suggestion_list.tsx` → `RhsSuggestionList`
- `channels/src/components/suggestion/switch_channel_provider.tsx` → `(anonymous)`
- `channels/src/components/switch_to_yearly_plan_confirm_modal/index.tsx` → `SwitchToYearlyPlanConfirmModal`
- `channels/src/components/team_controller/team_controller.tsx` → `TeamController`
- `channels/src/components/team_settings_modal/team_settings_modal.tsx` → `TeamSettingsModal`
- `channels/src/components/team_settings/team_access_policies_tab/sync_status_footer.tsx` → `SyncStatusFooter`
- `channels/src/components/team_settings/team_access_tab/invite_section_input.tsx` → `InviteSectionInput`
- `channels/src/components/team_settings/team_membership_tab/team_membership_tab.tsx` → `TeamMembershipTab`
- `channels/src/components/theme_provider/theme_provider.tsx` → `ThemeProvider`
- `channels/src/components/thread_popout/thread_popout.tsx` → `ThreadPopout`
- `channels/src/components/threading/channel_threads/posts_channel_reset_watcher/posts_channel_reset_watcher.tsx` → `PostsChannelResetWatcher`
- `channels/src/components/threading/channel_threads/thread_footer/thread_footer.tsx` → `ThreadFooter`
- `channels/src/components/threading/global_threads_link/global_threads_link.tsx` → `GlobalThreadsLink`
- `channels/src/components/threading/global_threads/global_threads.tsx` → `GlobalThreads`
- `channels/src/components/threading/global_threads/thread_item/thread_item.tsx` → `ThreadItem`
- `channels/src/components/threading/global_threads/thread_list/thread_list.tsx` → `ThreadList`
- `channels/src/components/threading/global_threads/thread_menu/thread_menu.tsx` → `ThreadMenu`
- `channels/src/components/threading/global_threads/thread_pane/thread_pane.tsx` → `ThreadPane`
- `channels/src/components/threading/hooks.ts` → `useThreadRouting`
- `channels/src/components/threading/virtualized_thread_viewer/create_comment.tsx` → `(anonymous)`
- `channels/src/components/three_days_left_trial_modal/three_days_left_trial_modal.tsx` → `ThreeDaysLeftTrialModal`
- `channels/src/components/toggle_modal_button.tsx` → `ToggleModalButton`
- `channels/src/components/tours/hooks.ts` → `useGetTourSteps`, `useHandleNavigationAndExtraActions`
- `channels/src/components/tours/onboarding_tour/channels_and_direct_messages_tour_tip.tsx` → `ChannelsAndDirectMessagesTour`
- `channels/src/components/tours/onboarding_tour/hooks.ts` → `useShowOnboardingTutorialStep`
- `channels/src/components/tours/tour_manager.tsx` → `useTourTipManager`
- `channels/src/components/trial_benefits_modal/trial_benefits_modal.tsx` → `TrialBenefitsModal`
- `channels/src/components/user_account_menu/user_account_away_menuitem.tsx` → `UserAccountAwayMenuItem`
- `channels/src/components/user_account_menu/user_account_custom_status_menuitem.tsx` → `UserAccountSetCustomStatusMenuItem`
- `channels/src/components/user_account_menu/user_account_dnd_menuitem.tsx` → `UserAccountDndMenuItem`
- `channels/src/components/user_account_menu/user_account_name_menuitem.tsx` → `UserAccountNameMenuItem`
- `channels/src/components/user_account_menu/user_account_offline_menuitem.tsx` → `UserAccountOfflineMenuItem`
- `channels/src/components/user_account_menu/user_account_online_menuitem.tsx` → `UserAccountOnlineMenuItem`
- `channels/src/components/user_account_menu/user_account_out_of_office_menuitem.tsx` → `UserAccountOutOfOfficeMenuItem`
- `channels/src/components/user_account_menu/user_account_profile_menuitem.tsx` → `UserAccountProfileMenuItem`
- `channels/src/components/user_group_popover/group_member_list/group_member_list.tsx` → `Item`
- `channels/src/components/user_group_popover/user_group_popover_controller.tsx` → `UserGroupPopoverController`
- `channels/src/components/user_group_popover/user_group_popover.tsx` → `UserGroupPopover`
- `channels/src/components/user_groups_modal/ad_ldap_upsell_banner.tsx` → `ADLDAPUpsellBanner`
- `channels/src/components/user_settings/advanced/wysiwyg_editor_section/wysiwyg_editor_section.tsx` → `WysiwygEditorSection`
- `channels/src/components/user_settings/general/user_settings_general.tsx` → `PluginDisplayName`
- `channels/src/components/user_settings/plugin/plugin_setting.tsx` → `PluginSetting`
- `channels/src/components/user_settings/plugin/radio.tsx` → `RadioInput`
- `channels/src/components/view_user_group_modal/view_user_group_list_item/view_user_group_list_item.tsx` → `ViewUserGroupListItem`
- `channels/src/components/widgets/menu/menu_items/menu_cloud_trial.tsx` → `MenuCloudTrial`
- `channels/src/components/widgets/menu/menu_items/menu_item_cloud_limit.tsx` → `MenuItemCloudLimit`
- `channels/src/components/widgets/menu/menu_items/menu_start_trial.tsx` → `MenuStartTrial`
- `channels/src/components/widgets/tag/guest_tag.tsx` → `GuestTag`
- `channels/src/components/widgets/users/avatars/avatars.tsx` → `Avatars`, `UserAvatar`
- `channels/src/components/window_size_observer/WindowSizeObserver.tsx` → `WindowSizeObserver`
- `channels/src/hooks/useBurnOnReadDeleteModal.ts` → `useBurnOnReadDeleteModal`
- `channels/src/hooks/useChannelAccessControlActions.ts` → `useChannelAccessControlActions`
- `channels/src/hooks/useChannelSystemPolicies.ts` → `useChannelSystemPolicies`
- `channels/src/hooks/useEnabledSessionAttributeFields.ts` → `useEnabledSessionAttributeFields`
- `channels/src/hooks/useGetCloudPreviewModalContent.ts` → `useGetCloudPreviewModalContent`
- `channels/src/hooks/useReadout.ts` → `useReadout`
- `channels/src/plugins/pluggable/pluggable.tsx` → `Pluggable`
- `channels/src/plugins/rhs_plugin/rhs_plugin.tsx` → `RhsPlugin`
- `channels/src/plugins/useGetPluginsActivationState.ts` → `useGetPluginsActivationState`
- `channels/src/stores/hooks.ts` → `useGlobalState`
- `channels/src/utils/popouts/use_popout_title.ts` → `usePopoutTitle`
- `channels/src/utils/post_utils.ts` → `usePostAriaLabel`
- `channels/src/utils/products.ts` → `useCurrentProduct`, `useCurrentProductId`, `useProducts`
Existing test(s) that load `react-redux` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/burn_on_read_deletion.test.ts`, `channels/src/actions/burn_on_read_posts.test.ts`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js` … (+1250 more).
Currently-unexercised functions in `react-redux` (context only — chainstrip removes these; do NOT write tests to reach them): `B`, `C`, `Ct`, `Dt`, `F`, `Mt`, `Oe`, `Ot`, `R`, `Rt`, `bt`, `createInvalidArgFactory` … (+22 more).
### 22. `redux` — CLASSIFY 6KB — 6KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/team_channel_settings/channel/details/channel_members/channel_members.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/cjs/redux.cjs (11 fns, 3KB)`, `dist/redux.mjs (7 fns, 3KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/access_history_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/actions_menu/index.ts` → `mapDispatchToProps`
- `channels/src/components/activity_log_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/add_groups_to_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/add_groups_to_team_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/add_user_to_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/add_user_to_group_multiselect/index.ts` → `mapDispatchToProps`
- `channels/src/components/add_users_to_group_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/add_users_to_team_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/access_control/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/access_control/jobs/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/access_control/policy_details/channel_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/access_control/policy_details/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/admin_navbar_dropdown/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/admin_sidebar/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/audits/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/blockable_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/blockable_link/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/compliance_reports/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/custom_terms_of_service_settings/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/data_retention_settings/channel_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/data_retention_settings/custom_policy_form/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/data_retention_settings/global_policy_form/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/data_retention_settings/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/data_retention_settings/team_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/database/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/feature_discovery/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/group_settings/group_details/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/group_settings/groups_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/jobs/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/license_settings/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/manage_roles_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/manage_teams_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/manage_tokens_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/member_list_group/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/openid_convert/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_policies/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_policies/policy_details/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_schemes_settings/edit_post_time_limit_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_schemes_settings/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_schemes_settings/permission_system_scheme_settings/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_schemes_settings/permission_team_scheme_settings/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_schemes_settings/permission_team_scheme_settings/team_in_list/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/permission_schemes_settings/permissions_scheme_summary/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/plugin_management/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/reset_email_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/reset_password_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/revoke_token_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/server_logs/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/system_roles/system_role/add_users_to_role_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/system_roles/system_role/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/system_roles/system_role/system_role_users/index.tsx` → `mapDispatchToProps`
- `channels/src/components/admin_console/system_user_detail/team_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/channel/details/channel_members/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/channel/details/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/channel/list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/group/group_users/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/team/details/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/team/details/team_members/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/team_channel_settings/team/list/index.ts` → `mapDispatchToProps`
- `channels/src/components/admin_console/user_autocomplete_setting/index.tsx` → `mapDispatchToProps`
- `channels/src/components/analytics/team_analytics/index.ts` → `mapDispatchToProps`
- `channels/src/components/announcement_bar/cloud_trial_announcement_bar/index.ts` → `mapDispatchToProps`
- `channels/src/components/announcement_bar/configuration_bar/index.ts` → `mapDispatchToProps`
- `channels/src/components/announcement_bar/default_announcement_bar/index.ts` → `mapDispatchToProps`
- `channels/src/components/announcement_bar/index.ts` → `mapDispatchToProps`
- `channels/src/components/apps_form/apps_form_field/index.ts` → `mapDispatchToProps`
- `channels/src/components/apps_form/index.ts` → `mapDispatchToProps`
- `channels/src/components/audit_table/index.ts` → `mapDispatchToProps`
- `channels/src/components/authorize/index.ts` → `mapDispatchToProps`
- `channels/src/components/browse_channels/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_groups_manage_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_header/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_info_rhs/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_invite_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_layout/center_channel/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_layout/channel_identifier_router/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_members_dropdown/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_members_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_members_rhs/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_notifications_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/channel_selector_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/claim/index.ts` → `mapDispatchToProps`
- `channels/src/components/convert_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/convert_gm_to_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/create_team/components/create_team_form/index.ts` → `mapDispatchToProps`
- `channels/src/components/create_user_groups_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/data_prefetch/index.ts` → `mapDispatchToProps`
- `channels/src/components/delete_category_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/delete_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/delete_post_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/dialog_router/index.ts` → `mapDispatchToProps`
- `channels/src/components/dnd_custom_time_picker_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/dot_menu/index.ts` → `mapDispatchToProps`
- `channels/src/components/edit_category_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/edit_channel_header_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/edit_channel_purpose_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/edit_scheduled_post/index.ts` → `mapDispatchToProps`
- `channels/src/components/emoji_picker/index.ts` → `mapDispatchToProps`
- `channels/src/components/emoji/add_emoji/index.ts` → `mapDispatchToProps`
- `channels/src/components/emoji/emoji_list_item/index.ts` → `mapDispatchToProps`
- `channels/src/components/emoji/emoji_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/emoji/index.ts` → `mapDispatchToProps`
- `channels/src/components/file_attachment_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/file_attachment/index.ts` → `mapDispatchToProps`
- `channels/src/components/file_preview/index.ts` → `mapDispatchToProps`
- `channels/src/components/file_search_results/index.tsx` → `mapDispatchToProps`
- `channels/src/components/file_upload/index.ts` → `mapDispatchToProps`
- `channels/src/components/get_public_link_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/global_header/center_controls/user_guide_dropdown/index.ts` → `mapDispatchToProps`
- `channels/src/components/global_header/left_controls/product_menu/product_menu_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/global_header/right_controls/settings_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/add_command/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/add_incoming_webhook/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/add_oauth_app/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/add_outgoing_webhook/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/bots/add_bot/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/bots/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/commands_container/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/edit_command/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/edit_incoming_webhook/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/edit_oauth_app/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/edit_outgoing_webhook/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/installed_commands/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/installed_incoming_webhooks/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/installed_oauth_apps/index.ts` → `mapDispatchToProps`
- `channels/src/components/integrations/installed_outgoing_webhooks/index.ts` → `mapDispatchToProps`
- `channels/src/components/intl_provider/index.tsx` → `mapDispatchToProps`
- `channels/src/components/invitation_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/leave_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/leave_team_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/logged_in/index.ts` → `mapDispatchToProps`
- `channels/src/components/markdown_image/index.ts` → `mapDispatchToProps`
- `channels/src/components/member_list_channel/index.ts` → `mapDispatchToProps`
- `channels/src/components/member_list_team/index.ts` → `mapDispatchToProps`
- `channels/src/components/mfa/setup/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_channel_header/channel_info_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_channel_header/collapse_lhs_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_channel_header/collapse_rhs_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_channel_header/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_channel_header/show_search_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_channel_header/unmute_channel_button/index.ts` → `mapDispatchToProps`
- `channels/src/components/mobile_sidebar_right/mobile_sidebar_right_items/index.tsx` → `mapDispatchToProps`
- `channels/src/components/modal_controller/index.ts` → `mapDispatchToProps`
- `channels/src/components/more_direct_channels/index.ts` → `mapDispatchToProps`
- `channels/src/components/more_direct_channels/list_item/user_details/index.ts` → `mapDispatchToProps`
- `channels/src/components/move_thread_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/new_replies_banner/index.ts` → `mapDispatchToProps`
- `channels/src/components/password_reset_form/index.ts` → `mapDispatchToProps`
- `channels/src/components/password_reset_send_link/index.ts` → `mapDispatchToProps`
- `channels/src/components/permalink_view/index.ts` → `mapDispatchToProps`
- `channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_app/index.ts` → `mapDispatchToProps`
- `channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_edit_history/edited_post_item/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_reminder_custom_time_picker_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/channel_intro_message/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/combined_system_message/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/embedded_bindings/button_binding/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/embedded_bindings/select_binding/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/failed_post_options/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/message_attachments/message_attachment/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_add_channel_member/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_attachment_opengraph/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_body_additional_content/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_edited_indicator/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_flag_icon/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_image/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_list_row/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_list/index.tsx` → `mapDispatchToProps`
- `channels/src/components/post_view/post_message_preview/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_pre_header/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_reaction/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/post_recent_reactions/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/reaction_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/post_view/reaction/index.ts` → `mapDispatchToProps`
- `channels/src/components/post/index.tsx` → `mapDispatchToProps`
- `channels/src/components/preparing_workspace/index.tsx` → `mapDispatchToProps`
- `channels/src/components/product_notices_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/quick_switch_modal/index.tsx` → `mapDispatchToProps`
- `channels/src/components/rename_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/reset_status_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/rhs_card_header/index.tsx` → `mapDispatchToProps`
- `channels/src/components/root/index.ts` → `mapDispatchToProps`
- `channels/src/components/root/root_redirect/index.ts` → `mapDispatchToProps`
- `channels/src/components/search_results_header/index.tsx` → `mapDispatchToProps`
- `channels/src/components/search/index.tsx` → `mapDispatchToProps`
- `channels/src/components/select_team/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar_right/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/channel_filter/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/channel_navigator/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/sidebar_category/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/sidebar_channel/sidebar_base_channel/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/sidebar_channel/sidebar_channel_link/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/sidebar_channel/sidebar_direct_channel/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/sidebar_channel/sidebar_group_channel/index.ts` → `mapDispatchToProps`
- `channels/src/components/sidebar/sidebar_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/single_image_view/index.ts` → `mapDispatchToProps`
- `channels/src/components/suggestion/suggestion_box/index.ts` → `mapDispatchToProps`
- `channels/src/components/system_notice/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_groups_manage_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_members_dropdown/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_members_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_selector_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_settings/team_access_policies_tab/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_settings/team_access_tab/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_settings/team_info_tab/index.ts` → `mapDispatchToProps`
- `channels/src/components/team_sidebar/index.ts` → `mapDispatchToProps`
- `channels/src/components/terms_of_service/index.ts` → `mapDispatchToProps`
- `channels/src/components/textbox/index.ts` → `mapDispatchToProps`
- `channels/src/components/threading/thread_viewer/index.ts` → `mapDispatchToProps`
- `channels/src/components/toast_wrapper/index.ts` → `mapDispatchToProps`
- `channels/src/components/unarchive_channel_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/update_user_group_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_account_menu/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_group_popover/group_member_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_groups_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_groups_modal/user_groups_list/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_profile/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/advanced/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/advanced/join_leave_section/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/advanced/wysiwyg_editor_section/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/display/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/display/manage_languages/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/display/manage_timezones/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/display/render_emoticons_as_emoji/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/display/user_settings_theme/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/general/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/notifications/email_notification_setting/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/security/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/security/mfa_section/index.ts` → `mapDispatchToProps`
- `channels/src/components/user_settings/security/user_access_token_section/index.ts` → `mapDispatchToProps`
- `channels/src/components/view_user_group_modal/index.ts` → `mapDispatchToProps`
- `channels/src/components/view_user_group_modal/view_user_group_header_sub_menu/index.ts` → `mapDispatchToProps`
- `channels/src/components/view_user_group_modal/view_user_group_list_item/index.ts` → `mapDispatchToProps`
- `channels/src/components/view_user_group_modal/view_user_group_modal_header/index.ts` → `mapDispatchToProps`
- `channels/src/packages/mattermost-redux/src/store/configureStore.ts` → `configureStore`
- `channels/src/packages/mattermost-redux/src/store/helpers.ts` → `createReducer`
- `channels/src/plugins/channel_header_plug/index.ts` → `mapDispatchToProps`
Existing test(s) that load `redux` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+1086 more).
Currently-unexercised functions in `redux` (context only — chainstrip removes these; do NOT write tests to reach them): `__DO_NOT_USE__ActionTypes`, `ctorName`, `dispatch`, `formatProdErrorMessage`, `isAction`, `isDate`, `isError`, `isPlainObject`, `kindOf`, `miniKindOf`, `observable`, `observeState` … (+4 more).
### 23. `color-hash` — CLASSIFY 5KB — 5KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/user_profile/user_profile.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/color-hash.js (7 fns, 5KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/user_profile/utils.ts` → `generateColor`
Existing test(s) that load `color-hash` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/access_control/editors/cel_editor/editor.test.tsx`, `channels/src/components/admin_console/access_control/editors/table_editor/table_editor.test.tsx`, `channels/src/components/admin_console/access_control/editors/table_editor/table_editor_channel_admin.test.tsx`, `channels/src/components/admin_console/access_control/jobs/access_control_sync_job_table.test.tsx`, `channels/src/components/admin_console/access_control/modals/job_details/job_details_modal.test.tsx` … (+93 more).
Currently-unexercised functions in `color-hash` (context only — chainstrip removes these; do NOT write tests to reach them): `BKDRHash`, `HmacSha2562`, `array`, `arrayBuffer`, `digest`, `finalize`, `toString`.
### 24. `react-router-dom` — CLASSIFY 4KB — 4KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/team_channel_settings/channel/details/channel_details.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `chainstrip-chunk-BfP2Ed6J.cjs (16 fns, 3KB)`, `esm/react-router-dom.js (6 fns, 1KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/admin_console.tsx` → `(anonymous)`, `AdminConsole`, `renderRoutes`
- `channels/src/components/admin_console/admin_definition.tsx` → `link`
- `channels/src/components/admin_console/admin_sidebar/admin_sidebar_category.tsx` → `AdminSidebarCategory`
- `channels/src/components/admin_console/billing/company_info_edit.tsx` → `CompanyInfoEdit`
- `channels/src/components/admin_console/blockable_link/blockable_link.tsx` → `BlockableLink`
- `channels/src/components/admin_console/custom_enable_disable_guest_accounts_setting.tsx` → `a`
- `channels/src/components/admin_console/custom_profile_attributes/custom_profile_attributes.tsx` → `link`
- `channels/src/components/admin_console/custom_terms_of_service_settings/custom_terms_of_service_settings.tsx` → `a`
- `channels/src/components/admin_console/global_attributes/global_attributes_table.tsx` → `ActionsCell`
- `channels/src/components/admin_console/group_settings/group_details/group_users.tsx` → `a`
- `channels/src/components/admin_console/group_settings/group_row.tsx` → `renderActions`
- `channels/src/components/admin_console/localization/agents_settings.tsx` → `AgentsSettings`
- `channels/src/components/admin_console/localization/auto_translation.tsx` → `AutoTranslation`
- `channels/src/components/admin_console/manage_roles_modal/manage_roles_modal.tsx` → `link`
- `channels/src/components/admin_console/message_export_settings.tsx` → `a`
- `channels/src/components/admin_console/permission_schemes_settings/permissions_scheme_summary/permissions_scheme_summary.tsx` → `(anonymous)`
- `channels/src/components/admin_console/plugin_management/plugin_management.tsx` → `PluginItem`
- `channels/src/components/admin_console/schema_admin_settings.tsx` → `(anonymous)`
- `channels/src/components/admin_console/secure_connections/secure_connection_detail.tsx` → `SecureConnectionDetail`
- `channels/src/components/admin_console/secure_connections/secure_connection_row.tsx` → `RowMenu`
- `channels/src/components/admin_console/secure_connections/secure_connections.tsx` → `AddMenu`
- `channels/src/components/admin_console/system_roles/system_roles.tsx` → `(anonymous)`
- `channels/src/components/admin_console/system_users/system_users.tsx` → `SystemUsers`
- `channels/src/components/admin_console/team_channel_settings/channel/details/channel_access_control_policy.tsx` → `(anonymous)`
- `channels/src/components/admin_console/team_channel_settings/channel/list/channel_list.tsx` → `(anonymous)`
- `channels/src/components/admin_console/team_channel_settings/team/details/team_access_control_policy.tsx` → `(anonymous)`, `link`
- `channels/src/components/admin_console/team_channel_settings/team/list/team_list.tsx` → `(anonymous)`
- `channels/src/components/admin_console/workspace-optimization/cta_buttons.tsx` → `CtaButtons`
- `channels/src/components/advanced_text_editor/scheduled_post_indicator/scheduled_post_indicator.tsx` → `ScheduledPostIndicator`
- `channels/src/components/advanced_text_editor/scheduled_post_indicator/short_scheduled_post_indicator.tsx` → `a`
- `channels/src/components/announcement_bar/configuration_bar/configuration_bar.tsx` → `linkConsole`
- `channels/src/components/app.tsx` → `App`
- `channels/src/components/backstage/backstage_controller.tsx` → `BackstageController`, `BackstageRoute`
- `channels/src/components/backstage/components/backstage_category.tsx` → `BackstageCategory`
- `channels/src/components/backstage/components/backstage_list.tsx` → `BackstageList`
- `channels/src/components/backstage/components/backstage_section.tsx` → `BackstageSection`
- `channels/src/components/channel_bookmarks/bookmark_item_content.tsx` → `(anonymous)`, `useBookmarkLink`
- `channels/src/components/channel_layout/center_channel/center_channel.tsx` → `render`
- `channels/src/components/channel_layout/playbook_runner.tsx` → `PlaybookRunner`
- `channels/src/components/channel_members_rhs/channel_members_rhs.tsx` → `ChannelMembersRHS`
- `channels/src/components/channel_popout/channel_popout.tsx` → `ChannelPopout`
- `channels/src/components/claim/claim_controller.tsx` → `render`
- `channels/src/components/commercial_support_modal/commercial_support_modal.tsx` → `debugLink`
- `channels/src/components/common/back_button.tsx` → `BackButton`
- `channels/src/components/create_recap_modal/create_recap_modal.tsx` → `CreateRecapModal`
- `channels/src/components/create_team/create_team.tsx` → `render`
- `channels/src/components/custom_status/custom_status_modal.tsx` → `CustomStatusModal`
- `channels/src/components/delete_post_modal/delete_post_modal.tsx` → `(anonymous)`
- `channels/src/components/desktop_auth_token.tsx` → `DesktopAuthToken`
- `channels/src/components/do_verify_email/do_verify_email.tsx` → `DoVerifyEmail`
- `channels/src/components/drafts/draft_row.tsx` → `DraftRow`
- `channels/src/components/drafts/drafts_and_schedule_posts_tabs.tsx` → `DraftsAndSchedulePostsTabs`
- `channels/src/components/drafts/drafts_link/drafts_link.tsx` → `DraftsLink`
- `channels/src/components/emoji_picker/components/emoji_picker_custom_emoji_button.tsx` → `EmojiPickerCustomEmojiButton`
- `channels/src/components/emoji/add_emoji/add_emoji.tsx` → `render`
- `channels/src/components/emoji/emoji_page.tsx` → `EmojiPage`
- `channels/src/components/error_page/error_page.tsx` → `render`
- `channels/src/components/global_header/left_controls/history_buttons/history_buttons.tsx` → `HistoryButtons`
- `channels/src/components/header_footer_route/content_layouts/alternate_link.tsx` → `AlternateLink`
- `channels/src/components/header_footer_route/header_footer_route.tsx` → `HFRoute`
- `channels/src/components/header_footer_route/header.tsx` → `Header`
- `channels/src/components/header_footer_template_route.tsx` → `HFTRoute`, `LoggedInHFTRoute`
- `channels/src/components/help/help.tsx` → `Help`
- `channels/src/components/integrations/abstract_command.tsx` → `render`
- `channels/src/components/integrations/abstract_incoming_webhook.tsx` → `render`
- `channels/src/components/integrations/abstract_oauth_app.tsx` → `render`
- `channels/src/components/integrations/abstract_outgoing_webhook.tsx` → `render`
- `channels/src/components/integrations/add_command/add_command.tsx` → `AddCommand`
- `channels/src/components/integrations/add_oauth_app/add_oauth_app.tsx` → `AddOAuthApp`
- `channels/src/components/integrations/add_outgoing_webhook/add_outgoing_webhook.tsx` → `AddOutgoingWebhook`
- `channels/src/components/integrations/bots/add_bot/add_bot.tsx` → `render`
- `channels/src/components/integrations/bots/bot.tsx` → `render`
- `channels/src/components/integrations/bots/bots.tsx` → `a`
- `channels/src/components/integrations/commands_container/commands_container.tsx` → `CommandRoute`, `render`
- `channels/src/components/integrations/confirm_integration/confirm_integration.tsx` → `ConfirmIntegration`
- `channels/src/components/integrations/installed_command.tsx` → `render`
- `channels/src/components/integrations/installed_incoming_webhook.tsx` → `render`
- `channels/src/components/integrations/installed_oauth_app/installed_oauth_app.tsx` → `render`
- `channels/src/components/integrations/installed_outgoing_webhook.tsx` → `render`
- `channels/src/components/integrations/integration_option.tsx` → `IntegrationOption`
- `channels/src/components/integrations/outgoing_oauth_connections/abstract_outgoing_oauth_connection.tsx` → `AbstractOutgoingOAuthConnection`
- `channels/src/components/integrations/outgoing_oauth_connections/add_outgoing_oauth_connection.tsx` → `AddOutgoingOAuthConnection`
- `channels/src/components/integrations/outgoing_oauth_connections/installed_outgoing_oauth_connection.tsx` → `InstalledOutgoingOAuthConnection`
- `channels/src/components/logged_in_route/index.tsx` → `LoggedInRoute`
- `channels/src/components/logged_in/logged_in.tsx` → `render`
- `channels/src/components/login/login.tsx` → `Login`, `getContent`, `getResetPasswordLink`
- `channels/src/components/menu/menu_item_link.tsx` → `MenuItemLink`
- `channels/src/components/mfa/mfa_controller/mfa_controller.tsx` → `render`
- `channels/src/components/mobile_channel_header/index.ts` → `mapStateToProps`
- `channels/src/components/onboarding_tasklist/onboarding_tasklist.tsx` → `OnBoardingTaskList`
- `channels/src/components/onboarding_tasks/onboarding_tasks_manager.tsx` → `useHandleOnBoardingTaskTrigger`
- `channels/src/components/password_reset_form/password_reset_form.tsx` → `PasswordResetForm`
- `channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/marketplace_item_plugin.tsx` → `getItemButton`
- `channels/src/components/plugin_marketplace/marketplace_modal.tsx` → `linkConsole`
- `channels/src/components/popout_controller/popout_controller.tsx` → `PopoutController`
- `channels/src/components/post_view/data_spillage_report/data_spillage_report.tsx` → `DataSpillageReport`
- `channels/src/components/post_view/post_attachment_container/post_attachment_container.tsx` → `PostAttachmentContainer`, `getTeamAndPostIdFromLink`
- `channels/src/components/post_view/post_time/post_time.tsx` → `render`
- `channels/src/components/query_param_actions/query_param_action_controller.tsx` → `QueryParamActionController`
- `channels/src/components/reaction_limit_reached_modal.tsx` → `linkAdmin`
- `channels/src/components/recaps_link/recaps_link.tsx` → `RecapsLink`
- `channels/src/components/recaps/recaps.tsx` → `Recaps`
- `channels/src/components/rhs_card/rhs_card.tsx` → `render`
- `channels/src/components/rhs_plugin_popout/rhs_plugin_popout.tsx` → `RhsPluginPopout`
- `channels/src/components/rhs_popout/rhs_popout.tsx` → `RhsPopout`
- `channels/src/components/rhs_search_popout/rhs_search_popout.tsx` → `RhsSearchPopout`
- `channels/src/components/root/root_redirect/root_redirect.tsx` → `RootRedirect`
- `channels/src/components/root/root.tsx` → `(anonymous)`, `render`
- `channels/src/components/select_team/select_team.tsx` → `a`, `render`
- `channels/src/components/should_verify_email/should_verify_email.tsx` → `ShouldVerifyEmail`
- `channels/src/components/sidebar/sidebar_channel/sidebar_channel_link/sidebar_channel_link.tsx` → `render`
- `channels/src/components/sidebar/sidebar_header/sidebar_team_menu.tsx` → `CreateTeamMenuItem`, `JoinAnotherTeamMenuItem`
- `channels/src/components/signup/signup.tsx` → `Signup`, `getContent`
- `channels/src/components/team_controller/team_controller.tsx` → `(anonymous)`, `TeamController`
- `channels/src/components/team_sidebar/components/team_button.tsx` → `(anonymous)`, `TeamButton`
- `channels/src/components/theme_provider/theme_context.ts` → `useAppBodyClass`
- `channels/src/components/thread_popout/thread_popout.tsx` → `ThreadPopout`
- `channels/src/components/threading/global_threads_link/global_threads_link.tsx` → `GlobalThreadsLink`
- `channels/src/components/threading/global_threads/global_threads.tsx` → `GlobalThreads`, `link`
- `channels/src/components/threading/hooks.ts` → `useThreadRouting`
- `channels/src/components/three_days_left_trial_modal/learn_more_action_button.tsx` → `LearnMoreActionButton`
- `channels/src/components/trial_benefits_modal/trial_benefits_modal_step_more.tsx` → `TrialBenefitsModalStepMore`
- `channels/src/components/trial_benefits_modal/trial_benefits_modal.tsx` → `TrialBenefitsModal`
- `channels/src/components/unreads_status_handler/index.ts` → `mapStateToProps`
- `channels/src/components/user_group_popover/group_member_list/group_member_list.tsx` → `GroupMemberList`
- `channels/src/components/user_list_row_with_error/user_list_row_with_error.tsx` → `render`
- `channels/src/components/user_settings/security/user_settings_security.tsx` → `(anonymous)`
- `channels/src/components/widgets/admin_console/admin_panel_with_link.tsx` → `AdminPanelWithLink`
- `channels/src/components/widgets/menu/menu_items/menu_item_link.tsx` → `MenuItemLinkImpl`
- `channels/src/utils/http_utils.ts` → `useQuery`
- `channels/src/utils/popouts/use_browser_popout.ts` → `useBrowserPopout`
- `channels/src/utils/products.ts` → `(anonymous)`, `useCurrentProduct`, `useCurrentProductId`
Existing test(s) that load `react-router-dom` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/burn_on_read_deletion.test.ts`, `channels/src/actions/burn_on_read_posts.test.ts`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js` … (+1250 more).
Currently-unexercised functions in `react-router-dom` (context only — chainstrip removes these; do NOT write tests to reach them): `BrowserRouter`, `HashRouter`, `_extends`, `_objectWithoutPropertiesLoose`, `_setPrototypeOf`, `componentDidMount`, `e`, `forwardRefShim`, `forwardRefShim$1`, `invariant`, `isModifiedEvent`, `joinClassnames` … (+3 more).
### 25. `moment-timezone` — CLASSIFY 4KB — 4KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/packages/mattermost-redux/src/utils/integration_utils.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `index.js (18 fns, 4KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/apps_form/apps_form_component.tsx` → `(anonymous)`
- `channels/src/components/create_recap_modal/schedule_configuration.tsx` → `(anonymous)`
- `channels/src/components/custom_status/custom_status_modal.tsx` → `CustomStatusModal`, `calculateExpiryTime`
- `channels/src/components/custom_status/expiry_time.tsx` → `ExpiryTime`
- `channels/src/components/datetime_input/datetime_input.tsx` → `(anonymous)`, `getRoundedTime`, `getTimeInIntervals`, `handleDayChange`
- `channels/src/components/recaps/schedule_time_format.ts` → `formatRelativeScheduleTime`, `resolveZone`
- `channels/src/components/timestamp/timestamp.tsx` → `formatLabel`, `formatParts`
- `channels/src/packages/mattermost-redux/src/utils/post_list.ts` → `pushPostDateIfNeeded`
- `channels/src/selectors/views/custom_status.ts` → `isCustomStatusExpired`
- `channels/src/utils/datetime.ts` → `getDiff`, `isWithinLastWeek`, `relativeFormatDate`
- `channels/src/utils/timezone.ts` → `getBrowserUtcOffset`, `getCurrentDateForTimezone`, `getCurrentDateTimeForTimezone`, `getCurrentMomentForTimezone`, `getUtcOffsetForTimeZone`, `isValidTimezone`, `parseDateInTimezone`
Existing test(s) that load `moment-timezone` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+1079 more).
Currently-unexercised functions in `moment-timezone` (context only — chainstrip removes these; do NOT write tests to reach them): `OffsetAt`, `ZoneScore`, `countries`, `findChange`, `getCountry`, `getCountryNames`, `guess`, `guessesForUserOffsets`, `logError`, `offset`, `rebuildGuess`, `scoreOffsetAt` … (+5 more).
### 26. `@atlaskit/pragmatic-drag-and-drop-hitbox` — CLASSIFY 3KB — 3KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/list_table/hooks/use_list_table_dnd.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/esm/closest-edge.js (11 fns, 2KB)`, `dist/cjs/closest-edge.js (2 fns, 0KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/board_attributes/hooks/use_board_option_dnd.ts` → `getData`, `onDrag`
- `channels/src/components/admin_console/board_attributes/hooks/use_board_options_dnd.ts` → `onDrop`
- `channels/src/components/admin_console/list_table/hooks/use_list_table_dnd.ts` → `onDrop`
- `channels/src/components/admin_console/list_table/hooks/use_list_table_row_dnd.ts` → `getData`, `onDrag`
- `channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.ts` → `getData`, `onDrag`
- `channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.ts` → `onDrop`
Existing test(s) that load `@atlaskit/pragmatic-drag-and-drop-hitbox` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_definition_abac_audit_logging.test.tsx`, `channels/src/components/admin_console/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_board_attributes.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_channel_viewed_messages.test.tsx` … (+91 more).
Currently-unexercised functions in `@atlaskit/pragmatic-drag-and-drop-hitbox` (context only — chainstrip removes these; do NOT write tests to reach them): `_defineProperty`, `_objectSpread`, `_typeof`, `attachClosestEdge`, `bottom`, `extractClosestEdge`, `left`, `ownKeys`, `right`, `toPrimitive`, `toPropertyKey`, `top`.
### 27. `@redux-devtools/extension` — CLASSIFY 2KB — 2KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/packages/mattermost-redux/src/store/reducer_registry.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `lib/cjs/index.js (8 fns, 2KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/packages/mattermost-redux/src/store/configureStore.ts` → `configureStore`
Existing test(s) that load `@redux-devtools/extension` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+1039 more).
Currently-unexercised functions in `@redux-devtools/extension` (context only — chainstrip removes these; do NOT write tests to reach them): `_getRequireWildcardCache`, `assign$1`, `composeWithDevTools`, `composeWithEnhancer`, `enhancer`, `extensionComposeStub`, `get`.
### 28. `color-contrast-checker` — CLASSIFY 2KB — 2KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/user_profile/user_profile.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `src/color-contrast-checker.js (8 fns, 2KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/user_profile/utils.ts` → `generateColor`
Existing test(s) that load `color-contrast-checker` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/access_control/editors/cel_editor/editor.test.tsx`, `channels/src/components/admin_console/access_control/editors/table_editor/table_editor.test.tsx`, `channels/src/components/admin_console/access_control/editors/table_editor/table_editor_channel_admin.test.tsx`, `channels/src/components/admin_console/access_control/jobs/access_control_sync_job_table.test.tsx`, `channels/src/components/admin_console/access_control/modals/job_details/job_details_modal.test.tsx` … (+93 more).
Currently-unexercised functions in `color-contrast-checker` (context only — chainstrip removes these; do NOT write tests to reach them): `checkPairs`, `convertColorToSixDigit`, `isLevelAA`, `isLevelAAA`, `toString`, `verifyContrastRatio`.
### 29. `react-is` — CLASSIFY 1KB — 1KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/timestamp/timestamp.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `index.js (2 fns, 1KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/timestamp/timestamp.tsx` → `(anonymous)`
- `channels/src/plugins/registry.ts` → `resolveReactElement`
Existing test(s) that load `react-is` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/burn_on_read_deletion.test.ts`, `channels/src/actions/burn_on_read_posts.test.ts`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js` … (+1250 more).
Currently-unexercised functions in `react-is` (context only — chainstrip removes these; do NOT write tests to reach them): `isAsyncMode`, `isConcurrentMode`, `isContextConsumer`, `isContextProvider`, `isElement`, `isForwardRef`, `isFragment`, `isLazy`, `isMemo`, `isPortal`, `isProfiler`, `isStrictMode` … (+2 more).
### 30. `redux-batched-actions` — CLASSIFY 0KB — 0KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/packages/mattermost-redux/src/actions/channels.test.ts` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `lib/index.js (1 fns, 0KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/actions/channel_actions.ts` → `(anonymous)`
- `channels/src/actions/file_actions.ts` → `onerror`, `onload`
- `channels/src/actions/global_actions.tsx` → `switchToChannel`
- `channels/src/actions/new_post.ts` → `(anonymous)`
- `channels/src/actions/post_actions.ts` → `(anonymous)`
- `channels/src/actions/user_actions.ts` → `(anonymous)`
- `channels/src/actions/views/channel.ts` → `(anonymous)`
- `channels/src/actions/views/drafts.ts` → `(anonymous)`
- `channels/src/actions/views/login.ts` → `handleLoginSuccess`
- `channels/src/actions/views/rhs.ts` → `(anonymous)`
- `channels/src/actions/views/threads.ts` → `manuallyMarkThreadAsUnread`
- `channels/src/actions/websocket_actions.ts` → `(anonymous)`, `handleClose`, `handleDeleteTeamEvent`, `handleFirstConnect`, `handleLeaveTeamEvent`, `handleMyGroupUpdate`, `handleUserRemovedEvent`
- `channels/src/packages/mattermost-redux/src/actions/access_control.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/admin.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/channel_categories.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/channels.ts` → `(anonymous)`, `removeFromChannelWrapper`
- `channels/src/packages/mattermost-redux/src/actions/emojis.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/general.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/groups.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/integrations.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/posts.ts` → `(anonymous)`, `createPostWrapper`
- `channels/src/packages/mattermost-redux/src/actions/search.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/teams.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/threads.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/users.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/actions/websocket.ts` → `(anonymous)`
- `channels/src/packages/mattermost-redux/src/store/helpers.ts` → `createReducer`
- `channels/src/store/index.ts` → `(anonymous)`
Existing test(s) that load `redux-batched-actions` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+1049 more).
Currently-unexercised functions in `redux-batched-actions` (context only — chainstrip removes these; do NOT write tests to reach them): `batchDispatchMiddleware`.
### 31. `memoize-one` — CLASSIFY 0KB — 0KB of functions are REACHABLE from your code's imports but never executed by any test, so covtrim holds them un-stubbed (the default disposition). A test exercising those paths converts unknown risk into truth: functions it executes are proven LIVE (correctly kept — a false-dead averted); what stays unexecuted stays held. This buys SAFETY and classification, not bytes — held bytes are removed by reachability precision, not by tests. (Reachability is lexical + conservative: if you are confident these paths cannot run in production, say so in your report instead of forcing a test.)
Runner evidence: `channels/src/components/admin_console/access_control/policy_details/channel_list/channel_list.test.tsx` already runs under jest near these call sites — a test placed alongside it WILL be picked up. Do not assume a workspace exclusion without verifying.
Held functions live in: `dist/memoize-one.cjs.js (1 fns, 0KB)`, `dist/memoize-one.esm.js (1 fns, 0KB)` — if existing tests look like they cover this dep, the at-risk surface is in THESE files, not the ones they touch.
Your call sites to test (write/extend tests for these functions):
- `channels/src/components/admin_console/access_control/policy_details/channel_list/index.ts` → `makeMapStateToProps`
Existing test(s) that load `memoize-one` but don't reach the functions above — **extend these**: `channels/src/actions/admin_actions.test.js`, `channels/src/actions/channel_actions.test.ts`, `channels/src/actions/command.test.js`, `channels/src/actions/emoji_actions.test.js`, `channels/src/actions/emoji_actions_load_recent.test.ts` … (+1014 more).
Currently-unexercised functions in `memoize-one` (context only — chainstrip removes these; do NOT write tests to reach them): `clear`, `ponyfill`.
## Recommended skips — reasons given; override only with good cause
11 dep(s) we recommend NOT writing unit tests for. Each lists why — if you
disagree (e.g. you can add a test under the right runner, or an e2e), go ahead;
otherwise leave them: they are covered by the production-build oracle + pinning.
- `@tiptap/core` (~329KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_editor.tsx`, `channels/src/components/advanced_text_editor/wysiwyg_editor/wysiwyg_markdown.ts`
- `katex` (~206KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/components/latex_block/latex_block.tsx`, `channels/src/components/latex_inline/latex_inline.tsx`, `channels/src/entry.tsx`
- `localforage` (~118KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/reducers/storage.ts`, `channels/src/store/index.ts`
- `tippy.js` (~58KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/components/app_bar/new_channel_with_board_tour_tip.tsx`, `channels/src/components/tours/channels_tour_tip.tsx`, `platform/components/src/tour_tip/tour_tip.tsx`
- `history` (~45KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/components/admin_console/admin_console.tsx`, `channels/src/components/admin_console/secure_connections/utils.ts`, `channels/src/components/channel_layout/channel_identifier_router/actions.ts`, `channels/src/components/channel_layout/channel_identifier_router/channel_identifier_router.tsx` …
- `react-router` (~16KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/components/terms_of_service/terms_of_service.tsx`
- `@tippyjs/react` (~14KB) — skip because every importer sits outside jest's scope (no traced test file lives in those packages) — a unit test here can't load it via the sanctioned runner. Coverable only with that package's own runner or an e2e.
imported at: `platform/components/src/tour_tip/tour_tip.tsx`
- `zen-observable` (~13KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/store/index.ts`
- `localforage-observable` (~7KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/store/index.ts`
- `prop-types` (~7KB) — skip because it has no plain function call site — only module-scope/DI/decorator wiring imports it, so a unit test can't exercise it in isolation. An e2e/integration test could; meanwhile the production-build oracle + pinning cover it.
imported at: `channels/src/components/suggestion/suggestion_box/suggestion_box.jsx`, `channels/src/plugins/export.ts`
- `@testing-library/react` (~2KB) — skip because every importer sits outside jest's scope (no traced test file lives in those packages) — a unit test here can't load it via the sanctioned runner. Coverable only with that package's own runner or an e2e.
imported at: `platform/shared/src/testing/react_testing_utils.tsx`
## When done
Run `npm run test --` until green, then re-run `chainstrip coverage` — the covered
percentages should rise and chainstrip can trim/eliminate more of those dependencies.
_Generated by `chainstrip coverage --prompt` at 2026-08-31T20:52:59.898Z. Worklist is prioritised: live-CVE deps first, then least-covered._
What's left
The marked upgrade is the team's to make, callers named. The 4 unresolved
advisories stay on the books. The 12 pinned-stock dependencies ship
hash-pinned and update-gated, waiting on evidence. And the run report
records the per-dependency extraction frontiers by name — chart.js's
jest-mock module identity, @mui's load layer behind @emotion/styled,
react-select and react-color's export interop — each with its reason, and
the export-shape oracle keeps a broken bundle from ever shipping while
those stay open.
One note on what was measured, so the commit above is not read as more than
it is. The tree is upstream Mattermost at c5835cd2b1, and nothing we added
changed which packages get installed. Four commits sit on top of it: our own
configuration, deploy scripts and gitignore entries, together with an
approval entry for install scripts in the measured workspace and a
Playwright manifest in a separate end-to-end workspace; a change that builds
the Mattermost server from this checkout rather than from a released build,
because a released server rejects this branch's API calls; the generated
tests described earlier; and a field-evidence file recorded while
ChainStrip's crawler exercised the running app. All four are public, and
the tree exactly as measured is our commit
98ed3d6.
And the standing caveat: every removal above means proven dead, removed from the artifact, and revalidated by Mattermost's own suite and build — not "verified safe in production."
Sound like your stack?
These results should transfer if:
- You maintain a large, long-lived React frontend — webpack or similar, a monorepo, dependency versions with history behind them.
- You have a big suite you trust (a thousand-plus test files). Here that meant every extraction validated against tests, none leaning on the build oracle alone.
- Your nightmare is hardening breaking the build: the toolchain-hold rule and the build gate exist for exactly the lodash and react-table incidents this study shows being caught.
- Your audit noise is old versions, not fresh CVEs — the win is learning which of them never enter the artifact at all (50 of 55 here), and getting named callers for the one that does.
Book a demo What we can show in 15 minutes (or less): walkthrough of an implementation of ChainStrip for an OSS project, analysis of your lockfile without access to your codebase, or custom analysis of an OSS project which is close to yours in structure and frameworks used, if time permits.