chainstrip Book a demo

case study

open-source collaboration platform · the big-suite React frontend

TypeScriptReactjestwebpackmonorepo

35of 40 advisories never enter the artifact
−62%dependency bytes shipped, extracted set
0interventions across an 11-stage run
dependencies
127 runtime dependencies
test suite
1,108 test files, mapped to 227 packages
installed
1.1 GB webapp node_modules
build oracle
webpack production build as second oracle

measured at checkout c2e1b4c of 2026-07-12

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,108 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:

day one — the full score output on webapp/, all 1,634 cards, worst first (re-run 2026-07-26; scroll inside)
$ chainstrip score --dir webapp

querying OSV: 42 advisories across 29 packages...

1634 packages — A 1527 · B 76 · C 20 · D 10 · F 1
29 with known CVEs · 10 with install scripts · 15 with native code

F  marked@0.3.6
   5 CVEs: 3 HIGH, 2 MODERATE
   surface: bin
D  minimatch@9.0.3
   3 CVEs: 3 HIGH
   surface: none
D  shell-quote@1.8.3
   2 CVEs: 1 CRITICAL, 1 HIGH
   surface: none
D  webpack-dev-server@5.2.2
   4 CVEs: 4 MODERATE
   surface: eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin
D  sharp@0.34.5
   1 CVEs: 1 HIGH
   surface: install-script · native · child_process · dynamic-require · network · fs-write
D  websocket-driver@0.7.4
   2 CVEs: 1 CRITICAL, 1 MODERATE
   surface: network
D  fast-uri@3.1.2
   2 CVEs: 2 HIGH
   surface: network
D  brace-expansion@2.1.0
   2 CVEs: 2 HIGH
   surface: none
D  brace-expansion@1.1.14
   2 CVEs: 2 HIGH
   surface: none
D  brace-expansion@5.0.6
   2 CVEs: 2 HIGH
   surface: none
D  immutable@4.3.8
   2 CVEs: 2 HIGH
   surface: none
C  svgo@2.8.2
   1 CVEs: 1 HIGH
   surface: dynamic-require · network · dynamic-import · fs-write · bin
C  js-yaml@4.1.1
   2 CVEs: 1 HIGH, 1 MODERATE
   surface: bin
C  webpack@5.106.2
   no known CVEs
   surface: obfuscation · eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin
C  lmdb@2.8.5
   no known CVEs
   surface: install-script · native · child_process · fs-write · bin
C  prettier@2.3.2
   no known CVEs
   surface: eval · process.binding · child_process · dynamic-require · network · dynamic-import · fs-write · bin
C  @parcel/watcher@2.5.6
   no known CVEs
   surface: install-script · native · child_process · dynamic-require
C  msgpackr-extract@3.0.3
   no known CVEs
   surface: install-script · native · child_process · bin
C  monaco-editor@0.52.2
   no known CVEs
   surface: obfuscation · eval · dynamic-require · network · dynamic-import · fs-write
C  @parcel/reporter-dev-server@2.16.4
   no known CVEs
   surface: eval · process.binding · child_process · dynamic-require · network
C  @swc/core@1.15.33
   no known CVEs
   surface: install-script · child_process · dynamic-require · fs-write
C  eslint@8.57.0
   no known CVEs
   surface: eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin
C  form-data@4.0.5
   1 CVEs: 1 HIGH
   surface: network
C  rollup@2.80.0
   no known CVEs
   surface: eval · child_process · dynamic-require · network · dynamic-import · fs-write · bin
C  ws@8.20.1
   1 CVEs: 1 HIGH
   surface: network
C  tmp@0.2.5
   1 CVEs: 1 HIGH
   surface: fs-write
C  blessed@0.1.81
   no known CVEs
   surface: eval · child_process · dynamic-require · network · fs-write · bin
C  bootstrap@3.4.1
   2 CVEs: 2 MODERATE
   surface: dynamic-require · fs-write
C  unrs-resolver@1.11.1
   no known CVEs
   surface: install-script · child_process · dynamic-require
C  js-cookie@2.2.1
   1 CVEs: 1 HIGH
   surface: none
C  postcss@8.5.13
   1 CVEs: 1 HIGH
   surface: none
B  @parcel/source-map@2.1.1
   no known CVEs
   surface: native · child_process · dynamic-require · network
B  @parcel/utils@2.16.4
   no known CVEs
   surface: eval · child_process · dynamic-require · network · fs-write
B  pdfjs-dist@4.10.38
   no known CVEs
   surface: obfuscation · eval · network · dynamic-import
B  core-js@3.49.0
   no known CVEs
   surface: install-script · network · fs-write
B  core-js-pure@3.49.0
   no known CVEs
   surface: install-script · network · fs-write
B  flexsearch@0.6.32
   no known CVEs
   surface: eval · child_process · dynamic-import · fs-write · bin
B  html-minifier-terser@7.2.0
   no known CVEs
   surface: eval · dynamic-require · network · fs-write · bin
B  core-js@2.6.12
   no known CVEs
   surface: install-script · fs-write
B  napi-postinstall@0.3.4
   no known CVEs
   surface: child_process · dynamic-require · network · fs-write · bin
B  webpack-cli@6.0.1
   no known CVEs
   surface: eval · dynamic-require · dynamic-import · fs-write · bin
B  @mixmark-io/domino@2.2.0
   no known CVEs
   surface: eval · dynamic-require · network · fs-write
B  @statsig/js-client@3.33.0
   no known CVEs
   surface: obfuscation · eval
B  ajv@6.15.0
   no known CVEs
   surface: eval · dynamic-require · network · fs-write
B  file-type@16.5.4
   1 CVEs: 1 MODERATE
   surface: eval
B  envinfo@7.21.0
   no known CVEs
   surface: process.binding · child_process · bin
B  launch-editor@2.13.2
   1 CVEs: 1 MODERATE
   surface: child_process
B  react-bootstrap@0.32.4
   no known CVEs
   surface: install-script
B  terser@5.47.1
   no known CVEs
   surface: eval · network · fs-write · bin
B  @parcel/package-manager@2.16.4
   no known CVEs
   surface: child_process · dynamic-require · dynamic-import · fs-write
B  @parcel/runtime-js@2.16.4
   no known CVEs
   surface: eval · dynamic-require · network
B  browserslist@4.20.2
   no known CVEs
   surface: child_process · dynamic-require · fs-write · bin
B  typescript@5.6.3
   no known CVEs
   surface: child_process · network · fs-write · bin
B  @napi-rs/canvas@0.1.100
   no known CVEs
   surface: child_process · dynamic-require · network
B  ajv@8.20.0
   no known CVEs
   surface: eval · dynamic-require · dynamic-import
B  crypto-browserify@3.12.0
   no known CVEs
   surface: obfuscation · dynamic-require
B  http-proxy-middleware@2.0.9
   1 CVEs: 1 MODERATE
   surface: network
B  loader-runner@4.3.2
   no known CVEs
   surface: eval · dynamic-require · dynamic-import
B  meow@13.2.0
   no known CVEs
   surface: child_process · dynamic-require · network
B  phin@2.9.3
   1 CVEs: 1 MODERATE
   surface: network
B  qs@6.15.1
   1 CVEs: 1 MODERATE
   surface: dynamic-require
B  tsconfig-paths@3.15.0
   no known CVEs
   surface: child_process · dynamic-require · network
B  @parcel/workers@2.16.4
   no known CVEs
   surface: child_process · dynamic-require · fs-write
B  es-module-lexer@2.1.0
   no known CVEs
   surface: obfuscation · dynamic-import
B  flat@5.0.2
   no known CVEs
   surface: child_process · dynamic-require · bin
B  node-addon-api@7.1.1
   no known CVEs
   surface: child_process · dynamic-require · fs-write
B  node-addon-api@6.1.0
   no known CVEs
   surface: child_process · dynamic-require · fs-write
B  node-gyp-build-optional-packages@5.1.1
   no known CVEs
   surface: child_process · dynamic-require · bin
B  node-gyp-build-optional-packages@5.2.2
   no known CVEs
   surface: child_process · dynamic-require · bin
B  resolve@1.22.12
   no known CVEs
   surface: dynamic-require · network · fs-write · bin
B  uuid@9.0.1
   1 CVEs: 1 MODERATE
   surface: bin
B  uuid@8.3.2
   1 CVEs: 1 MODERATE
   surface: bin
B  @parcel/codeframe@2.16.4
   no known CVEs
   surface: eval · network
B  debug@2.6.9
   no known CVEs
   surface: process.binding · network
B  handle-thing@2.0.1
   no known CVEs
   surface: process.binding · network
B  highlight.js@11.6.0
   no known CVEs
   surface: eval · network
B  http-deceiver@1.2.7
   no known CVEs
   surface: process.binding · network
B  lz-string@1.5.0
   no known CVEs
   surface: obfuscation · bin
B  msgpackr@1.11.12
   no known CVEs
   surface: eval · dynamic-require
B  source-map-support@0.5.21
   no known CVEs
   surface: eval · dynamic-require
B  update-browserslist-db@1.2.3
   no known CVEs
   surface: child_process · fs-write · bin
B  whatwg-url@14.2.0
   no known CVEs
   surface: eval · network
B  @img/sharp-darwin-arm64@0.34.5
   no known CVEs
   surface: native
B  @jest/snapshot-utils@30.1.2
   no known CVEs
   surface: eval · fs-write
B  @lmdb/lmdb-darwin-arm64@2.8.5
   no known CVEs
   surface: native
B  @msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3
   no known CVEs
   surface: native
B  @napi-rs/canvas-darwin-arm64@0.1.100
   no known CVEs
   surface: native
B  @parcel/node-resolver-core@3.7.4
   no known CVEs
   surface: child_process · network
B  @parcel/rust@2.16.4
   no known CVEs
   surface: child_process · network
B  @parcel/rust-darwin-arm64@2.16.4
   no known CVEs
   surface: native
B  @parcel/watcher-darwin-arm64@2.5.6
   no known CVEs
   surface: native
B  @swc/core-darwin-arm64@1.15.33
   no known CVEs
   surface: native
B  @unrs/resolver-binding-darwin-arm64@1.11.1
   no known CVEs
   surface: native
B  cjs-module-lexer@2.2.0
   no known CVEs
   surface: obfuscation
B  cosmiconfig@9.0.1
   no known CVEs
   surface: eval · dynamic-import
B  decimal.js@10.6.0
   no known CVEs
   surface: obfuscation
B  fb-watchman@2.0.2
   no known CVEs
   surface: child_process · network
B  fsevents@2.3.3
   no known CVEs
   surface: native
B  jest-cli@30.1.3
   no known CVEs
   surface: process.binding · bin
B  jest-haste-map@30.1.0
   no known CVEs
   surface: child_process · dynamic-require
B  jest-worker@30.1.0
   no known CVEs
   surface: child_process · dynamic-require
B  jest-worker@27.5.1
   no known CVEs
   surface: child_process · dynamic-require
B  lightningcss-darwin-arm64@1.32.0
   no known CVEs
   surface: native
B  loader-utils@2.0.4
   no known CVEs
   surface: obfuscation
B  lodash@4.18.1
   no known CVEs
   surface: process.binding · fs-write
B  lodash-es@4.18.1
   no known CVEs
   surface: process.binding · fs-write
B  moment-timezone@0.5.38
   no known CVEs
   surface: obfuscation
A  concurrently@9.0.1
   no known CVEs
   surface: child_process · bin
A  detect-libc@1.0.3
   no known CVEs
   surface: child_process · bin
A  html-minifier-terser@6.1.0
   no known CVEs
   surface: dynamic-require · fs-write · bin
A  katex@0.16.21
   no known CVEs
   surface: network · fs-write · bin
A  material-colors@1.2.6
   no known CVEs
   surface: child_process · fs-write
A  patch-package@8.0.1
   no known CVEs
   surface: dynamic-require · fs-write · bin
A  resolve@2.0.0-next.6
   no known CVEs
   surface: dynamic-require · fs-write · bin
A  rollup-plugin-ts@2.0.7
   no known CVEs
   surface: dynamic-require · dynamic-import · fs-write
A  selfsigned@2.4.1
   no known CVEs
   surface: child_process · fs-write
A  tree-kill@1.2.2
   no known CVEs
   surface: child_process · bin
A  @emnapi/runtime@1.10.0
   no known CVEs
   surface: eval
A  @formatjs/ts-transformer@3.13.14
   no known CVEs
   surface: eval
A  @formatjs/ts-transformer@3.13.1
   no known CVEs
   surface: eval
A  @jsonjoy.com/codegen@1.0.0
   no known CVEs
   surface: eval
A  @jsonjoy.com/codegen@17.67.0
   no known CVEs
   surface: eval
A  @parcel/transformer-postcss@2.16.4
   no known CVEs
   surface: dynamic-require · network
A  @parcel/transformer-react-refresh-wrap@2.16.4
   no known CVEs
   surface: dynamic-require · network
A  @sinonjs/commons@3.0.1
   no known CVEs
   surface: eval
A  @typescript-eslint/eslint-plugin@7.18.0
   no known CVEs
   surface: eval
A  axe-core@4.11.4
   no known CVEs
   surface: eval
A  builtin-modules@3.3.0
   no known CVEs
   surface: process.binding
A  depd@2.0.0
   no known CVEs
   surface: eval
A  depd@1.1.2
   no known CVEs
   surface: eval
A  eslint-scope@7.2.2
   no known CVEs
   surface: eval
A  eslint-scope@5.1.1
   no known CVEs
   surface: eval
A  express@4.22.2
   no known CVEs
   surface: dynamic-require · network
A  glob-to-regex.js@1.2.0
   no known CVEs
   surface: eval
A  globalthis@1.0.4
   no known CVEs
   surface: eval
A  is-core-module@2.16.2
   no known CVEs
   surface: dynamic-require · network
A  istanbul-lib-instrument@6.0.3
   no known CVEs
   surface: eval
A  lodash.merge@4.6.2
   no known CVEs
   surface: process.binding
A  node-forge@1.4.0
   no known CVEs
   surface: eval
A  ordered-binary@1.6.1
   no known CVEs
   surface: eval
A  safer-buffer@2.1.2
   no known CVEs
   surface: process.binding
A  source-map-js@1.2.1
   no known CVEs
   surface: eval
A  source-map-support@0.5.13
   no known CVEs
   surface: eval
A  stacktrace-gps@3.1.2
   no known CVEs
   surface: eval
A  stacktrace-js@2.0.2
   no known CVEs
   surface: eval
A  tapable@2.3.3
   no known CVEs
   surface: eval
A  terser-webpack-plugin@5.5.0
   no known CVEs
   surface: eval
A  tmpl@1.0.5
   no known CVEs
   surface: eval
A  @atlaskit/feature-gate-js-client@5.5.11
   no known CVEs
   surface: network · fs-write
A  @atlaskit/tokens@11.4.3
   no known CVEs
   surface: dynamic-require · dynamic-import
A  @istanbuljs/load-nyc-config@1.1.0
   no known CVEs
   surface: dynamic-require · dynamic-import
A  @jest/core@30.1.3
   no known CVEs
   surface: dynamic-require · fs-write
A  @jsonjoy.com/json-pack@1.21.0
   no known CVEs
   surface: network · fs-write
A  @jsonjoy.com/json-pack@17.67.0
   no known CVEs
   surface: network · fs-write
A  @parcel/core@2.16.4
   no known CVEs
   surface: dynamic-require · fs-write
A  @parcel/fs@2.16.4
   no known CVEs
   surface: dynamic-require · fs-write
A  @parcel/packager-js@2.16.4
   no known CVEs
   surface: dynamic-require · dynamic-import
A  @parcel/types-internal@2.16.4
   no known CVEs
   surface: dynamic-require · fs-write
A  babel-loader@9.1.2
   no known CVEs
   surface: dynamic-require · fs-write
A  babel-plugin-istanbul@7.0.1
   no known CVEs
   surface: child_process
A  browserslist@4.28.2
   no known CVEs
   surface: dynamic-require · bin
A  commander@10.0.1
   no known CVEs
   surface: child_process
A  commander@12.1.0
   no known CVEs
   surface: child_process
A  commander@2.20.3
   no known CVEs
   surface: child_process
A  commander@7.2.0
   no known CVEs
   surface: child_process
A  commander@8.3.0
   no known CVEs
   surface: child_process
A  cross-spawn@7.0.6
   no known CVEs
   surface: child_process
A  css-loader@6.7.3
   no known CVEs
   surface: dynamic-require · dynamic-import
A  default-browser@5.5.0
   no known CVEs
   surface: child_process
A  default-browser-id@5.0.1
   no known CVEs
   surface: child_process
A  detect-libc@2.1.2
   no known CVEs
   surface: child_process
A  execa@5.1.1
   no known CVEs
   surface: child_process
A  exit-x@0.2.2
   no known CVEs
   surface: child_process
A  foreground-child@3.3.1
   no known CVEs
   surface: child_process
A  get-css-data@2.1.1
   no known CVEs
   surface: child_process
A  image-minimizer-webpack-plugin@5.0.0
   no known CVEs
   surface: dynamic-require · dynamic-import
A  import-local@3.2.0
   no known CVEs
   surface: dynamic-require · bin
A  inline-style-prefixer@7.0.1
   no known CVEs
   surface: dynamic-require · fs-write
A  istanbul-reports@3.2.0
   no known CVEs
   surface: dynamic-require · fs-write
A  jest-config@30.1.3
   no known CVEs
   surface: dynamic-require · dynamic-import
A  jest-snapshot@30.1.2
   no known CVEs
   surface: dynamic-require · fs-write
A  jest-util@30.0.5
   no known CVEs
   surface: dynamic-require · dynamic-import
A  jest-util@30.4.1
   no known CVEs
   surface: dynamic-require · dynamic-import
A  jimp@0.16.1
   no known CVEs
   surface: network · fs-write
A  multicast-dns@7.2.5
   no known CVEs
   surface: network · bin
A  nock@13.2.8
   no known CVEs
   surface: network · fs-write
A  open@7.4.2
   no known CVEs
   surface: child_process
A  open@10.2.0
   no known CVEs
   surface: child_process
A  parcel@2.16.4
   no known CVEs
   surface: network · bin
A  run-applescript@7.1.0
   no known CVEs
   surface: child_process
A  term-size@2.2.1
   no known CVEs
   surface: child_process
A  tldts@6.1.86
   no known CVEs
   surface: network · bin
A  webpack-dev-middleware@7.4.5
   no known CVEs
   surface: network · fs-write
A  zen-observable@0.10.0
   no known CVEs
   surface: child_process
A  zen-observable@0.2.1
   no known CVEs
   surface: child_process
A  @babel/core@7.28.5
   1 CVEs: 1 LOW
   surface: dynamic-import
A  @babel/parser@7.29.3
   no known CVEs
   surface: dynamic-import · bin
A  json5@2.2.3
   no known CVEs
   surface: fs-write · bin
A  json5@1.0.2
   no known CVEs
   surface: fs-write · bin
A  mime@1.6.0
   no known CVEs
   surface: fs-write · bin
A  rimraf@3.0.2
   no known CVEs
   surface: fs-write · bin
A  stylelint@16.10.0
   no known CVEs
   surface: dynamic-import · bin
A  yaml@2.8.4
   no known CVEs
   surface: dynamic-import · bin
A  @asamuzakjp/css-color@3.2.0
   no known CVEs
   surface: network
A  @babel/helper-define-polyfill-provider@0.6.8
   no known CVEs
   surface: dynamic-require
A  @babel/plugin-transform-modules-commonjs@7.28.6
   no known CVEs
   surface: dynamic-require
A  @babel/plugin-transform-typescript@7.28.6
   no known CVEs
   surface: dynamic-require
A  @eslint/eslintrc@2.1.4
   no known CVEs
   surface: dynamic-require
A  @giphy/js-analytics@5.0.0
   no known CVEs
   surface: network
A  @giphy/js-fetch-api@5.7.0
   no known CVEs
   surface: network
A  @parcel/error-overlay@2.16.4
   no known CVEs
   surface: network
A  @parcel/reporter-cli@2.16.4
   no known CVEs
   surface: network
A  @parcel/runtime-browser-hmr@2.16.4
   no known CVEs
   surface: network
A  @parcel/transformer-js@2.16.4
   no known CVEs
   surface: dynamic-require
A  @parcel/transformer-posthtml@2.16.4
   no known CVEs
   surface: dynamic-require
A  @rollup/plugin-commonjs@21.1.0
   no known CVEs
   surface: dynamic-require
A  @types/ws@8.18.1
   no known CVEs
   surface: network
A  @typescript-eslint/scope-manager@6.21.0
   no known CVEs
   surface: network
A  @typescript-eslint/scope-manager@7.18.0
   no known CVEs
   surface: network
A  @typescript-eslint/scope-manager@8.60.0
   no known CVEs
   surface: network
A  @webpack-cli/serve@3.0.1
   no known CVEs
   surface: dynamic-require
A  agent-base@7.1.4
   no known CVEs
   surface: network
A  centra@2.7.0
   no known CVEs
   surface: network
A  clean-css@5.3.3
   no known CVEs
   surface: network
A  domutils@3.2.2
   no known CVEs
   surface: network
A  domutils@2.8.0
   no known CVEs
   surface: network
A  eslint-import-resolver-webpack@0.13.8
   no known CVEs
   surface: dynamic-require
A  eslint-module-utils@2.12.1
   no known CVEs
   surface: dynamic-require
A  eslint-plugin-jsx-a11y@6.10.2
   no known CVEs
   surface: dynamic-require
A  eslint-plugin-react@7.34.0
   no known CVEs
   surface: dynamic-require
A  fast-json-stable-stringify@2.1.0
   no known CVEs
   surface: dynamic-require
A  fastest-stable-stringify@2.0.2
   no known CVEs
   surface: dynamic-require
A  faye-websocket@0.11.4
   no known CVEs
   surface: network
A  find-root@1.1.0
   no known CVEs
   surface: dynamic-require
A  follow-redirects@1.16.0
   no known CVEs
   surface: network
A  get-port@4.2.0
   no known CVEs
   surface: network
A  hpack.js@2.1.6
   no known CVEs
   surface: network
A  html-loader@5.1.0
   no known CVEs
   surface: dynamic-require
A  htmlparser2@6.1.0
   no known CVEs
   surface: network
A  http-proxy@1.18.1
   no known CVEs
   surface: network
A  http-proxy-agent@7.0.2
   no known CVEs
   surface: network
A  import-fresh@3.3.1
   no known CVEs
   surface: dynamic-require
A  is-network-error@1.3.2
   no known CVEs
   surface: network
A  isarray@0.0.1
   no known CVEs
   surface: dynamic-require
A  isbot@3.4.5
   no known CVEs
   surface: network
A  jest-pnp-resolver@1.2.3
   no known CVEs
   surface: dynamic-require
A  jest-resolve@30.1.3
   no known CVEs
   surface: dynamic-require
A  jest-runner@30.1.3
   no known CVEs
   surface: dynamic-require
A  jest-runtime@30.1.3
   no known CVEs
   surface: dynamic-require
A  jsx-ast-utils@3.3.5
   no known CVEs
   surface: dynamic-require
A  keycode@2.2.1
   no known CVEs
   surface: dynamic-require
A  keyv@4.5.4
   no known CVEs
   surface: dynamic-require
A  lightningcss@1.32.0
   no known CVEs
   surface: dynamic-require
A  load-bmfont@1.4.2
   no known CVEs
   surface: network
A  lru-cache@10.4.3
   no known CVEs
   surface: network
A  methods@1.1.2
   no known CVEs
   surface: network
A  mini-css-extract-plugin@2.7.5
   no known CVEs
   surface: dynamic-require
A  monaco-editor-webpack-plugin@7.1.0
   no known CVEs
   surface: dynamic-require
A  node-fetch@2.7.0
   no known CVEs
   surface: network
A  on-headers@1.1.0
   no known CVEs
   surface: network
A  prop-types@15.8.1
   no known CVEs
   surface: dynamic-require
A  rechoir@0.8.0
   no known CVEs
   surface: dynamic-require
A  regexpu-core@6.4.0
   no known CVEs
   surface: dynamic-require
A  require-directory@2.1.1
   no known CVEs
   surface: dynamic-require
A  requires-port@1.0.0
   no known CVEs
   surface: network
A  retry@0.13.1
   no known CVEs
   surface: network
A  rollup-plugin-scss@4.0.0
   no known CVEs
   surface: network
A  rxjs@7.8.2
   no known CVEs
   surface: network
A  sass-loader@16.0.2
   no known CVEs
   surface: dynamic-require
A  select-hose@2.0.0
   no known CVEs
   surface: network
A  sockjs@0.3.24
   no known CVEs
   surface: network
A  spdy@4.0.2
   no known CVEs
   surface: network
A  spdy-transport@3.0.0
   no known CVEs
   surface: network
A  style-loader@4.0.0
   no known CVEs
   surface: dynamic-require
A  stylelint-config-idiomatic-order@10.0.0
   no known CVEs
   surface: dynamic-require
A  tldts-core@6.1.86
   no known CVEs
   surface: network
A  tough-cookie@5.1.2
   no known CVEs
   surface: network
A  unicode-emoji-utils@1.3.1
   no known CVEs
   surface: network
A  uri-js@4.4.1
   no known CVEs
   surface: network
A  websocket-extensions@0.1.4
   no known CVEs
   surface: network
A  whatwg-url@5.0.0
   no known CVEs
   surface: network
A  yargs@17.7.2
   no known CVEs
   surface: dynamic-require
A  yargs-parser@21.1.1
   no known CVEs
   surface: dynamic-require
A  @adobe/css-tools@4.4.4
   no known CVEs
   surface: dynamic-import
A  @formatjs/cli@6.7.4
   no known CVEs
   surface: bin
A  @humanwhocodes/module-importer@1.0.1
   no known CVEs
   surface: dynamic-import
A  @icons/material@0.2.4
   no known CVEs
   surface: fs-write
A  @jest/test-sequencer@30.1.3
   no known CVEs
   surface: fs-write
A  @jest/transform@30.1.2
   no known CVEs
   surface: fs-write
A  @jimp/core@0.16.13
   no known CVEs
   surface: fs-write
A  @jsonjoy.com/fs-core@4.57.2
   no known CVEs
   surface: fs-write
A  @jsonjoy.com/fs-fsa@4.57.2
   no known CVEs
   surface: fs-write
A  @jsonjoy.com/fs-node@4.57.2
   no known CVEs
   surface: fs-write
A  @jsonjoy.com/fs-node-to-fsa@4.57.2
   no known CVEs
   surface: fs-write
A  @jsonjoy.com/fs-snapshot@4.57.2
   no known CVEs
   surface: fs-write
A  @parcel/cache@2.16.4
   no known CVEs
   surface: fs-write
A  @parcel/profiler@2.16.4
   no known CVEs
   surface: fs-write
A  @parcel/reporter-tracer@2.16.4
   no known CVEs
   surface: fs-write
A  @parcel/ts-utils@2.16.4
   no known CVEs
   surface: fs-write
A  @rollup/plugin-typescript@11.1.6
   no known CVEs
   surface: fs-write
A  @stylistic/stylelint-plugin@3.1.2
   no known CVEs
   surface: dynamic-import
A  @swc/helpers@0.5.21
   no known CVEs
   surface: fs-write
A  @typescript-eslint/typescript-estree@6.21.0
   no known CVEs
   surface: fs-write
A  @typescript-eslint/typescript-estree@7.18.0
   no known CVEs
   surface: fs-write
A  @typescript-eslint/typescript-estree@8.60.0
   no known CVEs
   surface: fs-write
A  @yarnpkg/lockfile@1.1.0
   no known CVEs
   surface: fs-write
A  acorn@8.16.0
   no known CVEs
   surface: bin
A  ansi-html-community@0.0.8
   no known CVEs
   surface: bin
A  argparse@2.0.1
   no known CVEs
   surface: fs-write
A  baseline-browser-mapping@2.10.29
   no known CVEs
   surface: bin
A  bmp-js@0.1.0
   no known CVEs
   surface: fs-write
A  body-parser@1.20.5
   1 CVEs: 1 LOW
   surface: none
A  cross-env@7.0.3
   no known CVEs
   surface: bin
A  cssesc@3.0.0
   no known CVEs
   surface: bin
A  elliptic@6.6.1
   1 CVEs: 1 LOW
   surface: none
A  eslint-plugin-import@2.32.0
   no known CVEs
   surface: dynamic-import
A  exif-parser@0.1.12
   no known CVEs
   surface: fs-write
A  fastest-levenshtein@1.0.16
   no known CVEs
   surface: fs-write
A  flat-cache@3.2.0
   no known CVEs
   surface: fs-write
A  flat-cache@5.0.0
   no known CVEs
   surface: fs-write
A  fs-extra@10.1.0
   no known CVEs
   surface: fs-write
A  gifwrap@0.9.4
   no known CVEs
   surface: fs-write
A  glob@10.5.0
   no known CVEs
   surface: bin
A  graceful-fs@4.2.11
   no known CVEs
   surface: fs-write
A  he@1.2.0
   no known CVEs
   surface: bin
A  is-docker@2.2.1
   no known CVEs
   surface: bin
A  is-docker@3.0.0
   no known CVEs
   surface: bin
A  is-inside-container@1.0.0
   no known CVEs
   surface: bin
A  isexe@2.0.0
   no known CVEs
   surface: fs-write
A  istanbul-lib-report@3.0.1
   no known CVEs
   surface: fs-write
A  jest@30.1.3
   no known CVEs
   surface: bin
A  jsesc@3.1.0
   no known CVEs
   surface: bin
A  jsonfile@6.2.1
   no known CVEs
   surface: fs-write
A  loose-envify@1.4.0
   no known CVEs
   surface: bin
A  memfs@4.57.2
   no known CVEs
   surface: fs-write
A  memory-fs@0.2.0
   no known CVEs
   surface: fs-write
A  miller-rabin@4.0.1
   no known CVEs
   surface: bin
A  mime@2.4.6
   no known CVEs
   surface: bin
A  mkdirp@0.5.6
   no known CVEs
   surface: bin
A  nanoid@3.3.12
   no known CVEs
   surface: bin
A  node-localstorage@1.3.1
   no known CVEs
   surface: fs-write
A  omggif@1.0.10
   no known CVEs
   surface: fs-write
A  pixelmatch@4.0.2
   no known CVEs
   surface: bin
A  postcss-modules-values@4.0.0
   no known CVEs
   surface: dynamic-import
A  regjsparser@0.13.1
   no known CVEs
   surface: bin
A  sass@1.80.5
   no known CVEs
   surface: bin
A  semver@7.6.3
   no known CVEs
   surface: bin
A  semver@7.8.0
   no known CVEs
   surface: bin
A  semver@6.3.1
   no known CVEs
   surface: bin
A  semver@5.7.2
   no known CVEs
   surface: bin
A  semver@7.8.1
   no known CVEs
   surface: bin
A  sha.js@2.4.12
   no known CVEs
   surface: bin
A  strtok3@6.3.0
   no known CVEs
   surface: fs-write
A  styled-components@5.3.7
   no known CVEs
   surface: fs-write
A  synckit@0.11.12
   no known CVEs
   surface: fs-write
A  ts-api-utils@1.4.3
   no known CVEs
   surface: dynamic-import
A  typescript-eslint-language-service@5.0.5
   no known CVEs
   surface: fs-write
A  ua-parser-js@1.0.41
   no known CVEs
   surface: bin
A  which@2.0.2
   no known CVEs
   surface: bin
A  which@1.3.1
   no known CVEs
   surface: bin
A  write-file-atomic@5.0.1
   no known CVEs
   surface: fs-write
A  write-file-atomic@1.3.4
   no known CVEs
   surface: fs-write
A  y18n@5.0.8
   no known CVEs
   surface: fs-write
A  @atlaskit/atlassian-context@0.8.0
   no known CVEs
   surface: none
A  @atlaskit/ds-lib@6.0.0
   no known CVEs
   surface: none
A  @atlaskit/platform-feature-flags@1.1.3
   no known CVEs
   surface: none
A  @atlaskit/pragmatic-drag-and-drop@1.7.7
   no known CVEs
   surface: none
A  @atlaskit/pragmatic-drag-and-drop-hitbox@1.1.0
   no known CVEs
   surface: none
A  @atlaskit/pragmatic-drag-and-drop-react-drop-indicator@3.2.12
   no known CVEs
   surface: none
A  @babel/code-frame@7.29.0
   no known CVEs
   surface: none
A  @babel/compat-data@7.29.3
   no known CVEs
   surface: none
A  @babel/generator@7.29.1
   no known CVEs
   surface: none
A  @babel/helper-annotate-as-pure@7.27.3
   no known CVEs
   surface: none
A  @babel/helper-compilation-targets@7.28.6
   no known CVEs
   surface: none
A  @babel/helper-create-class-features-plugin@7.29.3
   no known CVEs
   surface: none
A  @babel/helper-create-regexp-features-plugin@7.28.5
   no known CVEs
   surface: none
A  @babel/helper-globals@7.28.0
   no known CVEs
   surface: none
A  @babel/helper-member-expression-to-functions@7.28.5
   no known CVEs
   surface: none
A  @babel/helper-module-imports@7.28.6
   no known CVEs
   surface: none
A  @babel/helper-module-transforms@7.28.6
   no known CVEs
   surface: none
A  @babel/helper-optimise-call-expression@7.27.1
   no known CVEs
   surface: none
A  @babel/helper-plugin-utils@7.28.6
   no known CVEs
   surface: none
A  @babel/helper-remap-async-to-generator@7.27.1
   no known CVEs
   surface: none
A  @babel/helper-replace-supers@7.28.6
   no known CVEs
   surface: none
A  @babel/helper-skip-transparent-expression-wrappers@7.27.1
   no known CVEs
   surface: none
A  @babel/helper-string-parser@7.27.1
   no known CVEs
   surface: none
A  @babel/helper-validator-identifier@7.28.5
   no known CVEs
   surface: none
A  @babel/helper-validator-option@7.27.1
   no known CVEs
   surface: none
A  @babel/helper-wrap-function@7.28.6
   no known CVEs
   surface: none
A  @babel/helpers@7.29.2
   no known CVEs
   surface: none
A  @babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5
   no known CVEs
   surface: none
A  @babel/plugin-bugfix-safari-class-field-initializer-scope@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2
   no known CVEs
   surface: none
A  @babel/plugin-syntax-async-generators@7.8.4
   no known CVEs
   surface: none
A  @babel/plugin-syntax-bigint@7.8.3
   no known CVEs
   surface: none
A  @babel/plugin-syntax-class-properties@7.12.13
   no known CVEs
   surface: none
A  @babel/plugin-syntax-class-static-block@7.14.5
   no known CVEs
   surface: none
A  @babel/plugin-syntax-import-assertions@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-syntax-import-attributes@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-syntax-import-meta@7.10.4
   no known CVEs
   surface: none
A  @babel/plugin-syntax-json-strings@7.8.3
   no known CVEs
   surface: none
A  @babel/plugin-syntax-jsx@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-syntax-logical-assignment-operators@7.10.4
   no known CVEs
   surface: none
A  @babel/plugin-syntax-nullish-coalescing-operator@7.8.3
   no known CVEs
   surface: none
A  @babel/plugin-syntax-numeric-separator@7.10.4
   no known CVEs
   surface: none
A  @babel/plugin-syntax-object-rest-spread@7.8.3
   no known CVEs
   surface: none
A  @babel/plugin-syntax-optional-catch-binding@7.8.3
   no known CVEs
   surface: none
A  @babel/plugin-syntax-optional-chaining@7.8.3
   no known CVEs
   surface: none
A  @babel/plugin-syntax-private-property-in-object@7.14.5
   no known CVEs
   surface: none
A  @babel/plugin-syntax-top-level-await@7.14.5
   no known CVEs
   surface: none
A  @babel/plugin-syntax-typescript@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-syntax-unicode-sets-regex@7.18.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-arrow-functions@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-async-generator-functions@7.29.0
   no known CVEs
   surface: none
A  @babel/plugin-transform-async-to-generator@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-block-scoped-functions@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-block-scoping@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-class-properties@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-class-static-block@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-classes@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-computed-properties@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-destructuring@7.28.5
   no known CVEs
   surface: none
A  @babel/plugin-transform-dotall-regex@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-duplicate-keys@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-duplicate-named-capturing-groups-regex@7.29.0
   no known CVEs
   surface: none
A  @babel/plugin-transform-dynamic-import@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-explicit-resource-management@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-exponentiation-operator@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-export-namespace-from@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-for-of@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-function-name@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-json-strings@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-literals@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-logical-assignment-operators@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-member-expression-literals@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-modules-amd@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-modules-systemjs@7.29.4
   no known CVEs
   surface: none
A  @babel/plugin-transform-modules-umd@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-named-capturing-groups-regex@7.29.0
   no known CVEs
   surface: none
A  @babel/plugin-transform-new-target@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-nullish-coalescing-operator@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-numeric-separator@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-object-rest-spread@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-object-super@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-optional-catch-binding@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-optional-chaining@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-parameters@7.27.7
   no known CVEs
   surface: none
A  @babel/plugin-transform-private-methods@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-private-property-in-object@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-property-literals@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-react-display-name@7.28.0
   no known CVEs
   surface: none
A  @babel/plugin-transform-react-jsx@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-react-jsx-development@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-react-pure-annotations@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-regenerator@7.29.0
   no known CVEs
   surface: none
A  @babel/plugin-transform-regexp-modifiers@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-reserved-words@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-runtime@7.29.0
   no known CVEs
   surface: none
A  @babel/plugin-transform-shorthand-properties@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-spread@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-sticky-regex@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-template-literals@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-typeof-symbol@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-unicode-escapes@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-unicode-property-regex@7.28.6
   no known CVEs
   surface: none
A  @babel/plugin-transform-unicode-regex@7.27.1
   no known CVEs
   surface: none
A  @babel/plugin-transform-unicode-sets-regex@7.28.6
   no known CVEs
   surface: none
A  @babel/preset-env@7.29.2
   no known CVEs
   surface: none
A  @babel/preset-modules@0.1.6-no-external-plugins
   no known CVEs
   surface: none
A  @babel/preset-react@7.28.5
   no known CVEs
   surface: none
A  @babel/preset-typescript@7.28.5
   no known CVEs
   surface: none
A  @babel/runtime@7.29.2
   no known CVEs
   surface: none
A  @babel/runtime-corejs2@7.29.2
   no known CVEs
   surface: none
A  @babel/runtime-corejs3@7.29.2
   no known CVEs
   surface: none
A  @babel/template@7.28.6
   no known CVEs
   surface: none
A  @babel/traverse@7.29.0
   no known CVEs
   surface: none
A  @babel/types@7.29.0
   no known CVEs
   surface: none
A  @bcoe/v8-coverage@0.2.3
   no known CVEs
   surface: none
A  @compiled/react@0.18.6
   no known CVEs
   surface: none
A  @csstools/color-helpers@5.1.0
   no known CVEs
   surface: none
A  @csstools/css-calc@2.1.4
   no known CVEs
   surface: none
A  @csstools/css-color-parser@3.1.0
   no known CVEs
   surface: none
A  @csstools/css-parser-algorithms@3.0.5
   no known CVEs
   surface: none
A  @csstools/css-tokenizer@3.0.4
   no known CVEs
   surface: none
A  @csstools/media-query-list-parser@3.0.1
   no known CVEs
   surface: none
A  @csstools/selector-specificity@4.0.0
   no known CVEs
   surface: none
A  @deanwhillier/jest-matchmedia-mock@1.2.0
   no known CVEs
   surface: none
A  @discoveryjs/json-ext@0.6.3
   no known CVEs
   surface: none
A  @dual-bundle/import-meta-resolve@4.2.1
   no known CVEs
   surface: none
A  @emotion/babel-plugin@11.13.5
   no known CVEs
   surface: none
A  @emotion/cache@11.14.0
   no known CVEs
   surface: none
A  @emotion/hash@0.9.2
   no known CVEs
   surface: none
A  @emotion/is-prop-valid@1.4.0
   no known CVEs
   surface: none
A  @emotion/memoize@0.9.0
   no known CVEs
   surface: none
A  @emotion/react@11.14.0
   no known CVEs
   surface: none
A  @emotion/serialize@1.3.3
   no known CVEs
   surface: none
A  @emotion/sheet@1.4.0
   no known CVEs
   surface: none
A  @emotion/stylis@0.8.5
   no known CVEs
   surface: none
A  @emotion/unitless@0.7.5
   no known CVEs
   surface: none
A  @emotion/unitless@0.10.0
   no known CVEs
   surface: none
A  @emotion/use-insertion-effect-with-fallbacks@1.2.0
   no known CVEs
   surface: none
A  @emotion/utils@1.4.2
   no known CVEs
   surface: none
A  @emotion/weak-memoize@0.4.0
   no known CVEs
   surface: none
A  @eslint-community/eslint-utils@4.9.1
   no known CVEs
   surface: none
A  @eslint-community/regexpp@4.12.2
   no known CVEs
   surface: none
A  @eslint/js@8.57.0
   no known CVEs
   surface: none
A  @floating-ui/core@1.7.5
   no known CVEs
   surface: none
A  @floating-ui/dom@1.7.6
   no known CVEs
   surface: none
A  @floating-ui/react@0.26.6
   no known CVEs
   surface: none
A  @floating-ui/react-dom@2.1.8
   no known CVEs
   surface: none
A  @floating-ui/utils@0.2.11
   no known CVEs
   surface: none
A  @formatjs/ecma402-abstract@2.3.6
   no known CVEs
   surface: none
A  @formatjs/ecma402-abstract@2.0.0
   no known CVEs
   surface: none
A  @formatjs/ecma402-abstract@1.15.0
   no known CVEs
   surface: none
A  @formatjs/fast-memoize@2.2.7
   no known CVEs
   surface: none
A  @formatjs/icu-messageformat-parser@2.11.4
   no known CVEs
   surface: none
A  @formatjs/icu-messageformat-parser@2.7.8
   no known CVEs
   surface: none
A  @formatjs/icu-messageformat-parser@2.4.0
   no known CVEs
   surface: none
A  @formatjs/icu-skeleton-parser@1.8.16
   no known CVEs
   surface: none
A  @formatjs/icu-skeleton-parser@1.8.2
   no known CVEs
   surface: none
A  @formatjs/icu-skeleton-parser@1.4.0
   no known CVEs
   surface: none
A  @formatjs/intl@3.1.8
   no known CVEs
   surface: none
A  @formatjs/intl-localematcher@0.6.2
   no known CVEs
   surface: none
A  @formatjs/intl-localematcher@0.5.4
   no known CVEs
   surface: none
A  @formatjs/intl-localematcher@0.2.32
   no known CVEs
   surface: none
A  @giphy/colors@1.0.1
   no known CVEs
   surface: none
A  @giphy/js-types@5.1.0
   no known CVEs
   surface: none
A  @giphy/js-util@5.2.0
   no known CVEs
   surface: none
A  @giphy/react-components@10.1.0
   no known CVEs
   surface: none
A  @guyplusplus/turndown-plugin-gfm@1.0.7
   no known CVEs
   surface: none
A  @humanwhocodes/config-array@0.11.14
   no known CVEs
   surface: none
A  @humanwhocodes/object-schema@2.0.3
   no known CVEs
   surface: none
A  @img/colour@1.1.0
   no known CVEs
   surface: none
A  @img/sharp-libvips-darwin-arm64@1.2.4
   no known CVEs
   surface: none
A  @isaacs/cliui@8.0.2
   no known CVEs
   surface: none
A  @istanbuljs/schema@0.1.6
   no known CVEs
   surface: none
A  @jest/console@30.1.2
   no known CVEs
   surface: none
A  @jest/create-cache-key-function@30.4.1
   no known CVEs
   surface: none
A  @jest/diff-sequences@30.0.1
   no known CVEs
   surface: none
A  @jest/diff-sequences@30.4.0
   no known CVEs
   surface: none
A  @jest/environment@30.1.2
   no known CVEs
   surface: none
A  @jest/environment@30.1.0
   no known CVEs
   surface: none
A  @jest/expect@30.1.2
   no known CVEs
   surface: none
A  @jest/expect-utils@30.1.2
   no known CVEs
   surface: none
A  @jest/expect-utils@30.4.1
   no known CVEs
   surface: none
A  @jest/fake-timers@30.1.2
   no known CVEs
   surface: none
A  @jest/fake-timers@30.1.0
   no known CVEs
   surface: none
A  @jest/get-type@30.1.0
   no known CVEs
   surface: none
A  @jest/globals@30.1.2
   no known CVEs
   surface: none
A  @jest/pattern@30.0.1
   no known CVEs
   surface: none
A  @jest/pattern@30.4.0
   no known CVEs
   surface: none
A  @jest/reporters@30.1.3
   no known CVEs
   surface: none
A  @jest/schemas@30.4.1
   no known CVEs
   surface: none
A  @jest/schemas@30.0.5
   no known CVEs
   surface: none
A  @jest/source-map@30.0.1
   no known CVEs
   surface: none
A  @jest/test-result@30.1.3
   no known CVEs
   surface: none
A  @jest/types@30.0.5
   no known CVEs
   surface: none
A  @jest/types@30.4.1
   no known CVEs
   surface: none
A  @jimp/bmp@0.16.13
   no known CVEs
   surface: none
A  @jimp/custom@0.16.13
   no known CVEs
   surface: none
A  @jimp/gif@0.16.13
   no known CVEs
   surface: none
A  @jimp/jpeg@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-blit@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-blur@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-circle@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-color@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-contain@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-cover@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-crop@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-displace@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-dither@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-fisheye@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-flip@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-gaussian@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-invert@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-mask@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-normalize@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-print@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-resize@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-rotate@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-scale@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-shadow@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugin-threshold@0.16.13
   no known CVEs
   surface: none
A  @jimp/plugins@0.16.13
   no known CVEs
   surface: none
A  @jimp/png@0.16.13
   no known CVEs
   surface: none
A  @jimp/tiff@0.16.13
   no known CVEs
   surface: none
A  @jimp/types@0.16.13
   no known CVEs
   surface: none
A  @jimp/utils@0.16.13
   no known CVEs
   surface: none
A  @jridgewell/gen-mapping@0.3.13
   no known CVEs
   surface: none
A  @jridgewell/remapping@2.3.5
   no known CVEs
   surface: none
A  @jridgewell/resolve-uri@3.1.2
   no known CVEs
   surface: none
A  @jridgewell/source-map@0.3.11
   no known CVEs
   surface: none
A  @jridgewell/sourcemap-codec@1.5.5
   no known CVEs
   surface: none
A  @jridgewell/trace-mapping@0.3.31
   no known CVEs
   surface: none
A  @jsonjoy.com/base64@1.1.2
   no known CVEs
   surface: none
A  @jsonjoy.com/base64@17.67.0
   no known CVEs
   surface: none
A  @jsonjoy.com/buffers@17.67.0
   no known CVEs
   surface: none
A  @jsonjoy.com/buffers@1.2.1
   no known CVEs
   surface: none
A  @jsonjoy.com/fs-node-builtins@4.57.2
   no known CVEs
   surface: none
A  @jsonjoy.com/fs-node-utils@4.57.2
   no known CVEs
   surface: none
A  @jsonjoy.com/fs-print@4.57.2
   no known CVEs
   surface: none
A  @jsonjoy.com/json-pointer@1.0.2
   no known CVEs
   surface: none
A  @jsonjoy.com/json-pointer@17.67.0
   no known CVEs
   surface: none
A  @jsonjoy.com/util@1.9.0
   no known CVEs
   surface: none
A  @jsonjoy.com/util@17.67.0
   no known CVEs
   surface: none
A  @leichtgewicht/ip-codec@2.0.5
   no known CVEs
   surface: none
A  @lezer/common@1.5.2
   no known CVEs
   surface: none
A  @lezer/lr@1.4.10
   no known CVEs
   surface: none
A  @mattermost/calls-common@0.27.0
   no known CVEs
   surface: none
A  @mattermost/compass-icons@0.1.61
   no known CVEs
   surface: none
A  @mattermost/desktop-api@6.3.0-1
   no known CVEs
   surface: none
A  @mdn/browser-compat-data@4.2.1
   no known CVEs
   surface: none
A  @mischnic/json-sourcemap@0.1.1
   no known CVEs
   surface: none
A  @mui/base@5.0.0-alpha.127
   no known CVEs
   surface: none
A  @mui/base@5.0.0-alpha.124
   no known CVEs
   surface: none
A  @mui/core-downloads-tracker@5.18.0
   no known CVEs
   surface: none
A  @mui/material@5.11.16
   no known CVEs
   surface: none
A  @mui/private-theming@5.17.1
   no known CVEs
   surface: none
A  @mui/styled-engine@5.18.0
   no known CVEs
   surface: none
A  @mui/styled-engine-sc@5.11.11
   no known CVEs
   surface: none
A  @mui/system@5.18.0
   no known CVEs
   surface: none
A  @mui/types@7.4.12
   no known CVEs
   surface: none
A  @mui/types@7.2.24
   no known CVEs
   surface: none
A  @mui/utils@5.17.1
   no known CVEs
   surface: none
A  @nodelib/fs.scandir@2.1.5
   no known CVEs
   surface: none
A  @nodelib/fs.stat@2.0.5
   no known CVEs
   surface: none
A  @nodelib/fs.walk@1.2.8
   no known CVEs
   surface: none
A  @parcel/bundler-default@2.16.4
   no known CVEs
   surface: none
A  @parcel/bundler-library@2.16.4
   no known CVEs
   surface: none
A  @parcel/compressor-raw@2.16.4
   no known CVEs
   surface: none
A  @parcel/config-default@2.16.4
   no known CVEs
   surface: none
A  @parcel/diagnostic@2.16.4
   no known CVEs
   surface: none
A  @parcel/events@2.16.4
   no known CVEs
   surface: none
A  @parcel/feature-flags@2.16.4
   no known CVEs
   surface: none
A  @parcel/graph@3.6.4
   no known CVEs
   surface: none
A  @parcel/logger@2.16.4
   no known CVEs
   surface: none
A  @parcel/markdown-ansi@2.16.4
   no known CVEs
   surface: none
A  @parcel/namer-default@2.16.4
   no known CVEs
   surface: none
A  @parcel/optimizer-css@2.16.4
   no known CVEs
   surface: none
A  @parcel/optimizer-html@2.16.4
   no known CVEs
   surface: none
A  @parcel/optimizer-image@2.16.4
   no known CVEs
   surface: none
A  @parcel/optimizer-svg@2.16.4
   no known CVEs
   surface: none
A  @parcel/optimizer-swc@2.16.4
   no known CVEs
   surface: none
A  @parcel/packager-css@2.16.4
   no known CVEs
   surface: none
A  @parcel/packager-html@2.16.4
   no known CVEs
   surface: none
A  @parcel/packager-raw@2.16.4
   no known CVEs
   surface: none
A  @parcel/packager-svg@2.16.4
   no known CVEs
   surface: none
A  @parcel/packager-ts@2.16.4
   no known CVEs
   surface: none
A  @parcel/packager-wasm@2.16.4
   no known CVEs
   surface: none
A  @parcel/plugin@2.16.4
   no known CVEs
   surface: none
A  @parcel/resolver-default@2.16.4
   no known CVEs
   surface: none
A  @parcel/runtime-rsc@2.16.4
   no known CVEs
   surface: none
A  @parcel/runtime-service-worker@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-babel@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-css@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-html@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-image@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-json@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-node@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-raw@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-svg@2.16.4
   no known CVEs
   surface: none
A  @parcel/transformer-typescript-types@2.16.4
   no known CVEs
   surface: none
A  @parcel/types@2.16.4
   no known CVEs
   surface: none
A  @pkgjs/parseargs@0.11.0
   no known CVEs
   surface: none
A  @pkgr/core@0.2.9
   no known CVEs
   surface: none
A  @popperjs/core@2.11.8
   no known CVEs
   surface: none
A  @redux-devtools/extension@3.3.0
   no known CVEs
   surface: none
A  @rollup/plugin-babel@5.3.1
   no known CVEs
   surface: none
A  @rollup/plugin-node-resolve@13.3.0
   no known CVEs
   surface: none
A  @rollup/pluginutils@4.2.1
   no known CVEs
   surface: none
A  @rollup/pluginutils@3.1.0
   no known CVEs
   surface: none
A  @rollup/pluginutils@5.3.0
   no known CVEs
   surface: none
A  @rtsao/scc@1.1.0
   no known CVEs
   surface: none
A  @sinclair/typebox@0.34.49
   no known CVEs
   surface: none
A  @sinonjs/fake-timers@13.0.5
   no known CVEs
   surface: none
A  @statsig/client-core@3.33.0
   no known CVEs
   surface: none
A  @stylistic/eslint-plugin@3.1.0
   no known CVEs
   surface: none
A  @swc/counter@0.1.3
   no known CVEs
   surface: none
A  @swc/jest@0.2.39
   no known CVEs
   surface: none
A  @swc/types@0.1.26
   no known CVEs
   surface: none
A  @tanstack/react-table@8.10.7
   no known CVEs
   surface: none
A  @tanstack/table-core@8.10.7
   no known CVEs
   surface: none
A  @testing-library/dom@10.4.1
   no known CVEs
   surface: none
A  @testing-library/jest-dom@6.8.0
   no known CVEs
   surface: none
A  @testing-library/react@16.3.0
   no known CVEs
   surface: none
A  @testing-library/user-event@14.6.1
   no known CVEs
   surface: none
A  @tippyjs/react@4.2.6
   no known CVEs
   surface: none
A  @tokenizer/token@0.3.0
   no known CVEs
   surface: none
A  @types/aria-query@5.0.4
   no known CVEs
   surface: none
A  @types/babel__core@7.20.5
   no known CVEs
   surface: none
A  @types/babel__generator@7.27.0
   no known CVEs
   surface: none
A  @types/babel__helper-plugin-utils@7.10.3
   no known CVEs
   surface: none
A  @types/babel__template@7.4.4
   no known CVEs
   surface: none
A  @types/babel__traverse@7.28.0
   no known CVEs
   surface: none
A  @types/body-parser@1.19.6
   no known CVEs
   surface: none
A  @types/bonjour@3.5.13
   no known CVEs
   surface: none
A  @types/color-hash@1.0.2
   no known CVEs
   surface: none
A  @types/connect@3.4.38
   no known CVEs
   surface: none
A  @types/connect-history-api-fallback@1.5.4
   no known CVEs
   surface: none
A  @types/country-list@2.1.0
   no known CVEs
   surface: none
A  @types/eslint@8.56.12
   no known CVEs
   surface: none
A  @types/eslint-scope@3.7.7
   no known CVEs
   surface: none
A  @types/estree@0.0.51
   no known CVEs
   surface: none
A  @types/express@4.17.25
   no known CVEs
   surface: none
A  @types/express-serve-static-core@4.19.8
   no known CVEs
   surface: none
A  @types/history@4.7.11
   no known CVEs
   surface: none
A  @types/hoist-non-react-statics@3.3.7
   no known CVEs
   surface: none
A  @types/html-minifier-terser@6.1.0
   no known CVEs
   surface: none
A  @types/http-errors@2.0.5
   no known CVEs
   surface: none
A  @types/http-proxy@1.17.17
   no known CVEs
   surface: none
A  @types/istanbul-lib-coverage@2.0.6
   no known CVEs
   surface: none
A  @types/istanbul-lib-report@3.0.3
   no known CVEs
   surface: none
A  @types/istanbul-reports@3.0.4
   no known CVEs
   surface: none
A  @types/jest@30.0.0
   no known CVEs
   surface: none
A  @types/jquery@4.0.0
   no known CVEs
   surface: none
A  @types/js-cookie@2.2.7
   no known CVEs
   surface: none
A  @types/jsdom@21.1.7
   no known CVEs
   surface: none
A  @types/json-schema@7.0.15
   no known CVEs
   surface: none
A  @types/json-stable-stringify@1.1.0
   no known CVEs
   surface: none
A  @types/json5@0.0.29
   no known CVEs
   surface: none
A  @types/katex@0.11.0
   no known CVEs
   surface: none
A  @types/lodash@4.14.202
   no known CVEs
   surface: none
A  @types/luxon@3.0.2
   no known CVEs
   surface: none
A  @types/mark.js@8.11.6
   no known CVEs
   surface: none
A  @types/marked@0.7.4
   no known CVEs
   surface: none
A  @types/mime@1.3.5
   no known CVEs
   surface: none
A  @types/node@16.9.1
   no known CVEs
   surface: none
A  @types/node@17.0.45
   no known CVEs
   surface: none
A  @types/node@16.18.126
   no known CVEs
   surface: none
A  @types/node@24.10.4
   no known CVEs
   surface: none
A  @types/node-fetch@2.6.13
   no known CVEs
   surface: none
A  @types/node-forge@1.3.14
   no known CVEs
   surface: none
A  @types/object-path@0.11.4
   no known CVEs
   surface: none
A  @types/parse-json@4.0.2
   no known CVEs
   surface: none
A  @types/picomatch@2.3.4
   no known CVEs
   surface: none
A  @types/prop-types@15.7.15
   no known CVEs
   surface: none
A  @types/qs@6.15.1
   no known CVEs
   surface: none
A  @types/range-parser@1.2.7
   no known CVEs
   surface: none
A  @types/react@18.2.64
   no known CVEs
   surface: none
A  @types/react-beautiful-dnd@13.1.2
   no known CVEs
   surface: none
A  @types/react-bootstrap@0.32.35
   no known CVEs
   surface: none
A  @types/react-color@3.0.6
   no known CVEs
   surface: none
A  @types/react-dom@18.2.25
   no known CVEs
   surface: none
A  @types/react-is@18.2.1
   no known CVEs
   surface: none
A  @types/react-overlays@1.1.3
   no known CVEs
   surface: none
A  @types/react-router@5.1.20
   no known CVEs
   surface: none
A  @types/react-router-dom@5.3.3
   no known CVEs
   surface: none
A  @types/react-transition-group@4.4.5
   no known CVEs
   surface: none
A  @types/react-virtualized-auto-sizer@1.0.1
   no known CVEs
   surface: none
A  @types/react-window@1.8.5
   no known CVEs
   surface: none
A  @types/react-window-infinite-loader@1.0.6
   no known CVEs
   surface: none
A  @types/reactcss@1.2.13
   no known CVEs
   surface: none
A  @types/redux-mock-store@1.5.0
   no known CVEs
   surface: none
A  @types/regenerator-runtime@0.13.8
   no known CVEs
   surface: none
A  @types/resolve@1.17.1
   no known CVEs
   surface: none
A  @types/retry@0.12.2
   no known CVEs
   surface: none
A  @types/scheduler@0.16.8
   no known CVEs
   surface: none
A  @types/semver@7.5.8
   no known CVEs
   surface: none
A  @types/send@1.2.1
   no known CVEs
   surface: none
A  @types/send@0.17.6
   no known CVEs
   surface: none
A  @types/serve-index@1.9.4
   no known CVEs
   surface: none
A  @types/serve-static@1.15.10
   no known CVEs
   surface: none
A  @types/shallow-equals@1.0.3
   no known CVEs
   surface: none
A  @types/sockjs@0.3.36
   no known CVEs
   surface: none
A  @types/stack-utils@2.0.3
   no known CVEs
   surface: none
A  @types/styled-components@5.1.32
   no known CVEs
   surface: none
A  @types/tinycolor2@1.4.6
   no known CVEs
   surface: none
A  @types/tough-cookie@4.0.5
   no known CVEs
   surface: none
A  @types/turndown@5.0.5
   no known CVEs
   surface: none
A  @types/ua-parser-js@0.7.39
   no known CVEs
   surface: none
A  @types/use-sync-external-store@0.0.6
   no known CVEs
   surface: none
A  @types/yargs@17.0.35
   no known CVEs
   surface: none
A  @types/yargs-parser@21.0.3
   no known CVEs
   surface: none
A  @types/zen-observable@0.8.7
   no known CVEs
   surface: none
A  @typescript-eslint/parser@7.18.0
   no known CVEs
   surface: none
A  @typescript-eslint/project-service@8.60.0
   no known CVEs
   surface: none
A  @typescript-eslint/tsconfig-utils@8.60.0
   no known CVEs
   surface: none
A  @typescript-eslint/type-utils@7.18.0
   no known CVEs
   surface: none
A  @typescript-eslint/types@6.21.0
   no known CVEs
   surface: none
A  @typescript-eslint/types@7.18.0
   no known CVEs
   surface: none
A  @typescript-eslint/types@8.60.0
   no known CVEs
   surface: none
A  @typescript-eslint/utils@6.21.0
   no known CVEs
   surface: none
A  @typescript-eslint/utils@7.18.0
   no known CVEs
   surface: none
A  @typescript-eslint/utils@8.60.0
   no known CVEs
   surface: none
A  @typescript-eslint/visitor-keys@6.21.0
   no known CVEs
   surface: none
A  @typescript-eslint/visitor-keys@7.18.0
   no known CVEs
   surface: none
A  @typescript-eslint/visitor-keys@8.60.0
   no known CVEs
   surface: none
A  @ungap/structured-clone@1.3.1
   no known CVEs
   surface: none
A  @webassemblyjs/ast@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/floating-point-hex-parser@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/helper-api-error@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/helper-buffer@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/helper-numbers@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/helper-wasm-bytecode@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/helper-wasm-section@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/ieee754@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/leb128@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/utf8@1.13.2
   no known CVEs
   surface: none
A  @webassemblyjs/wasm-edit@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/wasm-gen@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/wasm-opt@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/wasm-parser@1.14.1
   no known CVEs
   surface: none
A  @webassemblyjs/wast-printer@1.14.1
   no known CVEs
   surface: none
A  @webpack-cli/configtest@3.0.1
   no known CVEs
   surface: none
A  @webpack-cli/info@3.0.1
   no known CVEs
   surface: none
A  @wessberg/stringutil@1.0.19
   no known CVEs
   surface: none
A  @xobotyi/scrollbar-width@1.9.5
   no known CVEs
   surface: none
A  @xtuc/ieee754@1.2.0
   no known CVEs
   surface: none
A  @xtuc/long@4.2.2
   no known CVEs
   surface: none
A  abort-controller@3.0.0
   no known CVEs
   surface: none
A  accepts@1.3.8
   no known CVEs
   surface: none
A  acorn-import-phases@1.0.4
   no known CVEs
   surface: none
A  acorn-jsx@5.3.2
   no known CVEs
   surface: none
A  ajv-formats@2.1.1
   no known CVEs
   surface: none
A  ajv-keywords@5.1.0
   no known CVEs
   surface: none
A  ansi-escapes@4.3.2
   no known CVEs
   surface: none
A  ansi-escapes@7.3.0
   no known CVEs
   surface: none
A  ansi-regex@5.0.1
   no known CVEs
   surface: none
A  ansi-regex@6.2.2
   no known CVEs
   surface: none
A  ansi-styles@4.3.0
   no known CVEs
   surface: none
A  ansi-styles@5.2.0
   no known CVEs
   surface: none
A  ansi-styles@6.2.3
   no known CVEs
   surface: none
A  any-base@1.1.0
   no known CVEs
   surface: none
A  anymatch@3.1.3
   no known CVEs
   surface: none
A  append-query@2.1.1
   no known CVEs
   surface: none
A  aria-query@5.3.0
   no known CVEs
   surface: none
A  aria-query@5.3.2
   no known CVEs
   surface: none
A  array-buffer-byte-length@1.0.2
   no known CVEs
   surface: none
A  array-flatten@1.1.1
   no known CVEs
   surface: none
A  array-includes@3.1.9
   no known CVEs
   surface: none
A  array-union@2.1.0
   no known CVEs
   surface: none
A  array.prototype.find@2.2.3
   no known CVEs
   surface: none
A  array.prototype.findlast@1.2.5
   no known CVEs
   surface: none
A  array.prototype.findlastindex@1.2.6
   no known CVEs
   surface: none
A  array.prototype.flat@1.3.3
   no known CVEs
   surface: none
A  array.prototype.flatmap@1.3.3
   no known CVEs
   surface: none
A  array.prototype.toreversed@1.1.2
   no known CVEs
   surface: none
A  array.prototype.tosorted@1.1.4
   no known CVEs
   surface: none
A  arraybuffer.prototype.slice@1.0.4
   no known CVEs
   surface: none
A  asn1.js@5.4.1
   no known CVEs
   surface: none
A  ast-types-flow@0.0.8
   no known CVEs
   surface: none
A  astral-regex@2.0.0
   no known CVEs
   surface: none
A  async-function@1.0.0
   no known CVEs
   surface: none
A  asynckit@0.4.0
   no known CVEs
   surface: none
A  available-typed-arrays@1.0.7
   no known CVEs
   surface: none
A  axobject-query@4.1.0
   no known CVEs
   surface: none
A  babel-jest@30.1.2
   no known CVEs
   surface: none
A  babel-plugin-formatjs@10.5.1
   no known CVEs
   surface: none
A  babel-plugin-jest-hoist@30.0.1
   no known CVEs
   surface: none
A  babel-plugin-macros@3.1.0
   no known CVEs
   surface: none
A  babel-plugin-polyfill-corejs2@0.4.17
   no known CVEs
   surface: none
A  babel-plugin-polyfill-corejs3@0.13.0
   no known CVEs
   surface: none
A  babel-plugin-polyfill-corejs3@0.14.2
   no known CVEs
   surface: none
A  babel-plugin-polyfill-regenerator@0.6.8
   no known CVEs
   surface: none
A  babel-plugin-styled-components@2.1.4
   no known CVEs
   surface: none
A  babel-preset-current-node-syntax@1.2.0
   no known CVEs
   surface: none
A  babel-preset-jest@30.0.1
   no known CVEs
   surface: none
A  balanced-match@1.0.2
   no known CVEs
   surface: none
A  balanced-match@2.0.0
   no known CVEs
   surface: none
A  balanced-match@4.0.4
   no known CVEs
   surface: none
A  base-x@3.0.11
   no known CVEs
   surface: none
A  base64-js@1.5.1
   no known CVEs
   surface: none
A  batch@0.6.1
   no known CVEs
   surface: none
A  big.js@5.2.2
   no known CVEs
   surface: none
A  binary-extensions@2.3.0
   no known CVEs
   surface: none
A  bind-event-listener@3.0.0
   no known CVEs
   surface: none
A  bn.js@5.2.3
   no known CVEs
   surface: none
A  bn.js@4.12.3
   no known CVEs
   surface: none
A  bonjour-service@1.3.0
   no known CVEs
   surface: none
A  boolbase@1.0.0
   no known CVEs
   surface: none
A  braces@3.0.3
   no known CVEs
   surface: none
A  brorand@1.1.0
   no known CVEs
   surface: none
A  browserify-aes@1.2.0
   no known CVEs
   surface: none
A  browserify-cipher@1.0.1
   no known CVEs
   surface: none
A  browserify-des@1.0.2
   no known CVEs
   surface: none
A  browserify-rsa@4.1.1
   no known CVEs
   surface: none
A  browserify-sign@4.2.5
   no known CVEs
   surface: none
A  browserslist-generator@1.0.66
   no known CVEs
   surface: none
A  bser@2.1.1
   no known CVEs
   surface: none
A  buffer@6.0.3
   no known CVEs
   surface: none
A  buffer@5.7.1
   no known CVEs
   surface: none
A  buffer-equal@0.0.1
   no known CVEs
   surface: none
A  buffer-from@1.1.2
   no known CVEs
   surface: none
A  buffer-xor@1.0.3
   no known CVEs
   surface: none
A  bundle-name@4.1.0
   no known CVEs
   surface: none
A  bytes@3.1.2
   no known CVEs
   surface: none
A  call-bind@1.0.9
   no known CVEs
   surface: none
A  call-bind-apply-helpers@1.0.2
   no known CVEs
   surface: none
A  call-bound@1.0.4
   no known CVEs
   surface: none
A  callsites@3.1.0
   no known CVEs
   surface: none
A  camel-case@4.1.2
   no known CVEs
   surface: none
A  camelcase@5.3.1
   no known CVEs
   surface: none
A  camelcase@6.3.0
   no known CVEs
   surface: none
A  camelize@1.0.1
   no known CVEs
   surface: none
A  caniuse-lite@1.0.30001792
   no known CVEs
   surface: none
A  chalk@5.3.0
   no known CVEs
   surface: none
A  chalk@4.1.2
   no known CVEs
   surface: none
A  char-regex@1.0.2
   no known CVEs
   surface: none
A  chart.js@3.8.2
   no known CVEs
   surface: none
A  chokidar@4.0.3
   no known CVEs
   surface: none
A  chokidar@3.6.0
   no known CVEs
   surface: none
A  chrome-trace-event@1.0.4
   no known CVEs
   surface: none
A  ci-info@4.4.0
   no known CVEs
   surface: none
A  ci-info@3.9.0
   no known CVEs
   surface: none
A  cipher-base@1.0.7
   no known CVEs
   surface: none
A  classnames@2.3.2
   no known CVEs
   surface: none
A  cliui@8.0.1
   no known CVEs
   surface: none
A  clone@2.1.2
   no known CVEs
   surface: none
A  clone-deep@4.0.1
   no known CVEs
   surface: none
A  clsx@1.2.1
   no known CVEs
   surface: none
A  clsx@2.1.1
   no known CVEs
   surface: none
A  co@4.6.0
   no known CVEs
   surface: none
A  collect-v8-coverage@1.0.3
   no known CVEs
   surface: none
A  color-contrast-checker@2.1.0
   no known CVEs
   surface: none
A  color-convert@2.0.1
   no known CVEs
   surface: none
A  color-hash@2.0.1
   no known CVEs
   surface: none
A  color-name@1.1.4
   no known CVEs
   surface: none
A  colord@2.9.3
   no known CVEs
   surface: none
A  colorette@2.0.20
   no known CVEs
   surface: none
A  combined-stream@1.0.8
   no known CVEs
   surface: none
A  commondir@1.0.1
   no known CVEs
   surface: none
A  compatfactory@0.0.13
   no known CVEs
   surface: none
A  compressible@2.0.18
   no known CVEs
   surface: none
A  compression@1.8.1
   no known CVEs
   surface: none
A  compute-scroll-into-view@3.1.1
   no known CVEs
   surface: none
A  concat-map@0.0.1
   no known CVEs
   surface: none
A  connect-history-api-fallback@2.0.0
   no known CVEs
   surface: none
A  content-disposition@0.5.4
   no known CVEs
   surface: none
A  content-type@1.0.5
   no known CVEs
   surface: none
A  convert-source-map@2.0.0
   no known CVEs
   surface: none
A  convert-source-map@1.9.0
   no known CVEs
   surface: none
A  cookie@0.7.2
   no known CVEs
   surface: none
A  cookie-signature@1.0.7
   no known CVEs
   surface: none
A  copy-to-clipboard@3.3.3
   no known CVEs
   surface: none
A  copy-webpack-plugin@14.0.0
   no known CVEs
   surface: none
A  core-js-compat@3.49.0
   no known CVEs
   surface: none
A  core-util-is@1.0.3
   no known CVEs
   surface: none
A  cosmiconfig@7.1.0
   no known CVEs
   surface: none
A  country-list@2.2.0
   no known CVEs
   surface: none
A  create-ecdh@4.0.4
   no known CVEs
   surface: none
A  create-hash@1.2.0
   no known CVEs
   surface: none
A  create-hmac@1.1.7
   no known CVEs
   surface: none
A  crosspath@1.0.0
   no known CVEs
   surface: none
A  css-box-model@1.2.1
   no known CVEs
   surface: none
A  css-color-keywords@1.0.0
   no known CVEs
   surface: none
A  css-color-names@1.0.1
   no known CVEs
   surface: none
A  css-functions-list@3.3.3
   no known CVEs
   surface: none
A  css-in-js-utils@3.1.0
   no known CVEs
   surface: none
A  css-select@4.3.0
   no known CVEs
   surface: none
A  css-to-react-native@3.2.0
   no known CVEs
   surface: none
A  css-tree@1.1.3
   no known CVEs
   surface: none
A  css-tree@3.2.1
   no known CVEs
   surface: none
A  css-vars-ponyfill@2.4.8
   no known CVEs
   surface: none
A  css-what@6.2.2
   no known CVEs
   surface: none
A  css.escape@1.5.1
   no known CVEs
   surface: none
A  cssfontparser@1.2.1
   no known CVEs
   surface: none
A  csso@4.2.0
   no known CVEs
   surface: none
A  cssstyle@4.6.0
   no known CVEs
   surface: none
A  csstype@3.2.3
   no known CVEs
   surface: none
A  damerau-levenshtein@1.0.8
   no known CVEs
   surface: none
A  data-urls@5.0.0
   no known CVEs
   surface: none
A  data-view-buffer@1.0.2
   no known CVEs
   surface: none
A  data-view-byte-length@1.0.2
   no known CVEs
   surface: none
A  data-view-byte-offset@1.0.1
   no known CVEs
   surface: none
A  date-fns@2.29.3
   no known CVEs
   surface: none
A  debug@4.4.3
   no known CVEs
   surface: none
A  debug@3.2.7
   no known CVEs
   surface: none
A  dedent@1.7.2
   no known CVEs
   surface: none
A  deep-is@0.1.4
   no known CVEs
   surface: none
A  deepmerge@4.3.1
   no known CVEs
   surface: none
A  define-data-property@1.1.4
   no known CVEs
   surface: none
A  define-lazy-prop@3.0.0
   no known CVEs
   surface: none
A  define-properties@1.2.1
   no known CVEs
   surface: none
A  delayed-stream@1.0.0
   no known CVEs
   surface: none
A  dequal@2.0.3
   no known CVEs
   surface: none
A  des.js@1.1.0
   no known CVEs
   surface: none
A  destroy@1.2.0
   no known CVEs
   surface: none
A  detect-newline@3.1.0
   no known CVEs
   surface: none
A  detect-node@2.1.0
   no known CVEs
   surface: none
A  diffie-hellman@5.0.3
   no known CVEs
   surface: none
A  dir-glob@3.0.1
   no known CVEs
   surface: none
A  dns-packet@5.6.1
   no known CVEs
   surface: none
A  doctrine@3.0.0
   no known CVEs
   surface: none
A  doctrine@2.1.0
   no known CVEs
   surface: none
A  dom-accessibility-api@0.6.3
   no known CVEs
   surface: none
A  dom-converter@0.2.0
   no known CVEs
   surface: none
A  dom-helpers@3.4.0
   no known CVEs
   surface: none
A  dom-helpers@5.2.1
   no known CVEs
   surface: none
A  dom-serializer@2.0.0
   no known CVEs
   surface: none
A  dom-serializer@1.4.1
   no known CVEs
   surface: none
A  dom-walk@0.1.2
   no known CVEs
   surface: none
A  domelementtype@2.3.0
   no known CVEs
   surface: none
A  domhandler@5.0.3
   no known CVEs
   surface: none
A  domhandler@4.3.1
   no known CVEs
   surface: none
A  dot-case@3.0.4
   no known CVEs
   surface: none
A  dotenv@16.6.1
   no known CVEs
   surface: none
A  dotenv-expand@11.0.7
   no known CVEs
   surface: none
A  dunder-proto@1.0.1
   no known CVEs
   surface: none
A  eastasianwidth@0.2.0
   no known CVEs
   surface: none
A  ee-first@1.1.1
   no known CVEs
   surface: none
A  electron-to-chromium@1.5.354
   no known CVEs
   surface: none
A  emittery@0.13.1
   no known CVEs
   surface: none
A  emoji-datasource@6.1.1
   no known CVEs
   surface: none
A  emoji-datasource-apple@6.1.1
   no known CVEs
   surface: none
A  emoji-datasource-google@6.1.1
   no known CVEs
   surface: none
A  emoji-regex@10.2.1
   no known CVEs
   surface: none
A  emoji-regex@8.0.0
   no known CVEs
   surface: none
A  emoji-regex@9.2.2
   no known CVEs
   surface: none
A  emoji-regex-xs@2.0.1
   no known CVEs
   surface: none
A  emojis-list@3.0.0
   no known CVEs
   surface: none
A  encodeurl@2.0.0
   no known CVEs
   surface: none
A  enhanced-resolve@0.9.1
   no known CVEs
   surface: none
A  enhanced-resolve@5.21.3
   no known CVEs
   surface: none
A  entities@4.5.0
   no known CVEs
   surface: none
A  entities@2.2.0
   no known CVEs
   surface: none
A  entities@6.0.1
   no known CVEs
   surface: none
A  env-paths@2.2.1
   no known CVEs
   surface: none
A  environment@1.1.0
   no known CVEs
   surface: none
A  error-ex@1.3.4
   no known CVEs
   surface: none
A  error-stack-parser@2.1.4
   no known CVEs
   surface: none
A  es-abstract@1.24.2
   no known CVEs
   surface: none
A  es-define-property@1.0.1
   no known CVEs
   surface: none
A  es-errors@1.3.0
   no known CVEs
   surface: none
A  es-iterator-helpers@1.3.2
   no known CVEs
   surface: none
A  es-object-atoms@1.1.1
   no known CVEs
   surface: none
A  es-set-tostringtag@2.1.0
   no known CVEs
   surface: none
A  es-shim-unscopables@1.1.0
   no known CVEs
   surface: none
A  es-to-primitive@1.3.0
   no known CVEs
   surface: none
A  escalade@3.2.0
   no known CVEs
   surface: none
A  escape-html@1.0.3
   no known CVEs
   surface: none
A  escape-string-regexp@4.0.0
   no known CVEs
   surface: none
A  escape-string-regexp@2.0.0
   no known CVEs
   surface: none
A  eslint-import-resolver-node@0.3.10
   no known CVEs
   surface: none
A  eslint-plugin-formatjs@4.13.3
   no known CVEs
   surface: none
A  eslint-plugin-headers@1.3.4
   no known CVEs
   surface: none
A  eslint-plugin-no-only-tests@3.1.0
   no known CVEs
   surface: none
A  eslint-plugin-react-hooks@4.6.0
   no known CVEs
   surface: none
A  eslint-visitor-keys@3.4.3
   no known CVEs
   surface: none
A  eslint-visitor-keys@4.2.1
   no known CVEs
   surface: none
A  eslint-visitor-keys@5.0.1
   no known CVEs
   surface: none
A  espree@9.6.1
   no known CVEs
   surface: none
A  espree@10.4.0
   no known CVEs
   surface: none
A  esquery@1.7.0
   no known CVEs
   surface: none
A  esrecurse@4.3.0
   no known CVEs
   surface: none
A  estraverse@5.3.0
   no known CVEs
   surface: none
A  estraverse@4.3.0
   no known CVEs
   surface: none
A  estree-walker@2.0.2
   no known CVEs
   surface: none
A  estree-walker@0.6.1
   no known CVEs
   surface: none
A  estree-walker@1.0.1
   no known CVEs
   surface: none
A  esutils@2.0.3
   no known CVEs
   surface: none
A  etag@1.8.1
   no known CVEs
   surface: none
A  event-target-shim@5.0.1
   no known CVEs
   surface: none
A  eventemitter3@4.0.7
   no known CVEs
   surface: none
A  events@3.3.0
   no known CVEs
   surface: none
A  evp_bytestokey@1.0.3
   no known CVEs
   surface: none
A  exif2css@1.3.0
   no known CVEs
   surface: none
A  expect@30.4.1
   no known CVEs
   surface: none
A  expect@30.1.2
   no known CVEs
   surface: none
A  extend@3.0.2
   no known CVEs
   surface: none
A  external-remotes-plugin@1.0.0
   no known CVEs
   surface: none
A  fast-deep-equal@3.1.3
   no known CVEs
   surface: none
A  fast-glob@3.3.3
   no known CVEs
   surface: none
A  fast-levenshtein@2.0.6
   no known CVEs
   surface: none
A  fast-shallow-equal@1.0.0
   no known CVEs
   surface: none
A  fastq@1.20.1
   no known CVEs
   surface: none
A  fdir@6.5.0
   no known CVEs
   surface: none
A  file-entry-cache@6.0.1
   no known CVEs
   surface: none
A  file-entry-cache@9.1.0
   no known CVEs
   surface: none
A  fill-range@7.1.1
   no known CVEs
   surface: none
A  finalhandler@1.3.2
   no known CVEs
   surface: none
A  find-cache-dir@3.3.2
   no known CVEs
   surface: none
A  find-up@5.0.0
   no known CVEs
   surface: none
A  find-up@4.1.0
   no known CVEs
   surface: none
A  find-yarn-workspace-root@2.0.0
   no known CVEs
   surface: none
A  flatted@3.4.2
   no known CVEs
   surface: none
A  font-awesome@4.7.0
   no known CVEs
   surface: none
A  for-each@0.3.5
   no known CVEs
   surface: none
A  forwarded@0.2.0
   no known CVEs
   surface: none
A  fresh@0.5.2
   no known CVEs
   surface: none
A  fs.realpath@1.0.0
   no known CVEs
   surface: none
A  function-bind@1.1.2
   no known CVEs
   surface: none
A  function.prototype.name@1.1.8
   no known CVEs
   surface: none
A  functions-have-names@1.2.3
   no known CVEs
   surface: none
A  generator-function@2.0.1
   no known CVEs
   surface: none
A  gensync@1.0.0-beta.2
   no known CVEs
   surface: none
A  get-caller-file@2.0.5
   no known CVEs
   surface: none
A  get-intrinsic@1.3.0
   no known CVEs
   surface: none
A  get-package-type@0.1.0
   no known CVEs
   surface: none
A  get-proto@1.0.1
   no known CVEs
   surface: none
A  get-stream@6.0.1
   no known CVEs
   surface: none
A  get-symbol-description@1.1.0
   no known CVEs
   surface: none
A  glob@7.2.3
   no known CVEs
   surface: none
A  glob-parent@6.0.2
   no known CVEs
   surface: none
A  glob-parent@5.1.2
   no known CVEs
   surface: none
A  glob-to-regexp@0.4.1
   no known CVEs
   surface: none
A  global@4.4.0
   no known CVEs
   surface: none
A  global-modules@2.0.0
   no known CVEs
   surface: none
A  global-prefix@3.0.0
   no known CVEs
   surface: none
A  globals@13.24.0
   no known CVEs
   surface: none
A  globby@11.1.0
   no known CVEs
   surface: none
A  globjoin@0.1.4
   no known CVEs
   surface: none
A  gopd@1.2.0
   no known CVEs
   surface: none
A  graphemer@1.4.0
   no known CVEs
   surface: none
A  harmony-reflect@1.6.2
   no known CVEs
   surface: none
A  has-bigints@1.1.0
   no known CVEs
   surface: none
A  has-flag@4.0.0
   no known CVEs
   surface: none
A  has-flag@3.0.0
   no known CVEs
   surface: none
A  has-property-descriptors@1.0.2
   no known CVEs
   surface: none
A  has-proto@1.2.0
   no known CVEs
   surface: none
A  has-symbols@1.1.0
   no known CVEs
   surface: none
A  has-tostringtag@1.0.2
   no known CVEs
   surface: none
A  hash-base@3.1.2
   no known CVEs
   surface: none
A  hash.js@1.1.7
   no known CVEs
   surface: none
A  hasown@2.0.3
   no known CVEs
   surface: none
A  helpertypes@0.0.18
   no known CVEs
   surface: none
A  history@4.10.1
   no known CVEs
   surface: none
A  hmac-drbg@1.0.1
   no known CVEs
   surface: none
A  hoist-non-react-statics@3.3.2
   no known CVEs
   surface: none
A  html-encoding-sniffer@4.0.0
   no known CVEs
   surface: none
A  html-escaper@2.0.2
   no known CVEs
   surface: none
A  html-tags@3.3.1
   no known CVEs
   surface: none
A  html-to-react@1.6.0
   no known CVEs
   surface: none
A  html-webpack-plugin@5.5.0
   no known CVEs
   surface: none
A  htmlparser2@8.0.2
   no known CVEs
   surface: none
A  http-errors@2.0.1
   no known CVEs
   surface: none
A  http-errors@1.8.1
   no known CVEs
   surface: none
A  http-parser-js@0.5.10
   no known CVEs
   surface: none
A  human-signals@2.1.0
   no known CVEs
   surface: none
A  hyperdyperid@1.2.0
   no known CVEs
   surface: none
A  hyphenate-style-name@1.1.0
   no known CVEs
   surface: none
A  iconv-lite@0.4.24
   no known CVEs
   surface: none
A  iconv-lite@0.6.3
   no known CVEs
   surface: none
A  icss-utils@5.1.0
   no known CVEs
   surface: none
A  identity-obj-proxy@3.0.0
   no known CVEs
   surface: none
A  ieee754@1.2.1
   no known CVEs
   surface: none
A  ignore@5.3.2
   no known CVEs
   surface: none
A  ignore@6.0.2
   no known CVEs
   surface: none
A  image-q@4.0.0
   no known CVEs
   surface: none
A  immediate@3.0.6
   no known CVEs
   surface: none
A  imurmurhash@0.1.4
   no known CVEs
   surface: none
A  indent-string@4.0.0
   no known CVEs
   surface: none
A  inflight@1.0.6
   no known CVEs
   surface: none
A  inherits@2.0.4
   no known CVEs
   surface: none
A  ini@1.3.8
   no known CVEs
   surface: none
A  internal-slot@1.1.0
   no known CVEs
   surface: none
A  interpret@1.4.0
   no known CVEs
   surface: none
A  interpret@3.1.1
   no known CVEs
   surface: none
A  intersection-observer@0.12.2
   no known CVEs
   surface: none
A  intl-messageformat@10.7.18
   no known CVEs
   surface: none
A  invariant@2.2.4
   no known CVEs
   surface: none
A  ipaddr.js@2.1.0
   no known CVEs
   surface: none
A  ipaddr.js@1.9.1
   no known CVEs
   surface: none
A  is-array-buffer@3.0.5
   no known CVEs
   surface: none
A  is-arrayish@0.2.1
   no known CVEs
   surface: none
A  is-async-function@2.1.1
   no known CVEs
   surface: none
A  is-bigint@1.1.0
   no known CVEs
   surface: none
A  is-binary-path@2.1.0
   no known CVEs
   surface: none
A  is-boolean-object@1.2.2
   no known CVEs
   surface: none
A  is-builtin-module@3.2.1
   no known CVEs
   surface: none
A  is-callable@1.2.7
   no known CVEs
   surface: none
A  is-data-view@1.0.2
   no known CVEs
   surface: none
A  is-date-object@1.1.0
   no known CVEs
   surface: none
A  is-extglob@2.1.1
   no known CVEs
   surface: none
A  is-finalizationregistry@1.1.1
   no known CVEs
   surface: none
A  is-fullwidth-code-point@3.0.0
   no known CVEs
   surface: none
A  is-function@1.0.2
   no known CVEs
   surface: none
A  is-generator-fn@2.1.0
   no known CVEs
   surface: none
A  is-generator-function@1.1.2
   no known CVEs
   surface: none
A  is-glob@4.0.3
   no known CVEs
   surface: none
A  is-map@2.0.3
   no known CVEs
   surface: none
A  is-module@1.0.0
   no known CVEs
   surface: none
A  is-negative-zero@2.0.3
   no known CVEs
   surface: none
A  is-number@7.0.0
   no known CVEs
   surface: none
A  is-number-object@1.1.1
   no known CVEs
   surface: none
A  is-path-inside@3.0.3
   no known CVEs
   surface: none
A  is-plain-obj@3.0.0
   no known CVEs
   surface: none
A  is-plain-object@5.0.0
   no known CVEs
   surface: none
A  is-plain-object@2.0.4
   no known CVEs
   surface: none
A  is-potential-custom-element-name@1.0.1
   no known CVEs
   surface: none
A  is-reference@1.2.1
   no known CVEs
   surface: none
A  is-regex@1.2.1
   no known CVEs
   surface: none
A  is-set@2.0.3
   no known CVEs
   surface: none
A  is-shared-array-buffer@1.0.4
   no known CVEs
   surface: none
A  is-stream@2.0.1
   no known CVEs
   surface: none
A  is-string@1.1.1
   no known CVEs
   surface: none
A  is-symbol@1.1.1
   no known CVEs
   surface: none
A  is-typed-array@1.1.15
   no known CVEs
   surface: none
A  is-weakmap@2.0.2
   no known CVEs
   surface: none
A  is-weakref@1.1.1
   no known CVEs
   surface: none
A  is-weakset@2.0.4
   no known CVEs
   surface: none
A  is-wsl@2.2.0
   no known CVEs
   surface: none
A  is-wsl@3.1.1
   no known CVEs
   surface: none
A  isarray@2.0.5
   no known CVEs
   surface: none
A  isarray@1.0.0
   no known CVEs
   surface: none
A  isobject@3.0.1
   no known CVEs
   surface: none
A  istanbul-lib-coverage@3.2.2
   no known CVEs
   surface: none
A  istanbul-lib-source-maps@5.0.6
   no known CVEs
   surface: none
A  iterator.prototype@1.1.5
   no known CVEs
   surface: none
A  jackspeak@3.4.3
   no known CVEs
   surface: none
A  jest-canvas-mock@2.5.0
   no known CVEs
   surface: none
A  jest-changed-files@30.0.5
   no known CVEs
   surface: none
A  jest-circus@30.1.3
   no known CVEs
   surface: none
A  jest-diff@30.4.1
   no known CVEs
   surface: none
A  jest-diff@30.1.2
   no known CVEs
   surface: none
A  jest-docblock@30.0.1
   no known CVEs
   surface: none
A  jest-each@30.1.0
   no known CVEs
   surface: none
A  jest-environment-node@30.1.2
   no known CVEs
   surface: none
A  jest-leak-detector@30.1.0
   no known CVEs
   surface: none
A  jest-matcher-utils@30.4.1
   no known CVEs
   surface: none
A  jest-matcher-utils@30.1.2
   no known CVEs
   surface: none
A  jest-message-util@30.1.0
   no known CVEs
   surface: none
A  jest-message-util@30.4.1
   no known CVEs
   surface: none
A  jest-mock@30.0.5
   no known CVEs
   surface: none
A  jest-mock@30.4.1
   no known CVEs
   surface: none
A  jest-regex-util@30.0.1
   no known CVEs
   surface: none
A  jest-regex-util@30.4.0
   no known CVEs
   surface: none
A  jest-resolve-dependencies@30.1.3
   no known CVEs
   surface: none
A  jest-validate@30.1.0
   no known CVEs
   surface: none
A  jest-watch-typeahead@3.0.1
   no known CVEs
   surface: none
A  jest-watcher@30.1.3
   no known CVEs
   surface: none
A  jpeg-js@0.4.4
   no known CVEs
   surface: none
A  js-tokens@4.0.0
   no known CVEs
   surface: none
A  json-buffer@3.0.1
   no known CVEs
   surface: none
A  json-parse-even-better-errors@2.3.1
   no known CVEs
   surface: none
A  json-schema-traverse@0.4.1
   no known CVEs
   surface: none
A  json-schema-traverse@1.0.0
   no known CVEs
   surface: none
A  json-stable-stringify@1.3.0
   no known CVEs
   surface: none
A  json-stable-stringify-without-jsonify@1.0.1
   no known CVEs
   surface: none
A  json-stringify-safe@5.0.1
   no known CVEs
   surface: none
A  jsonc-parser@3.3.1
   no known CVEs
   surface: none
A  jsonify@0.0.1
   no known CVEs
   surface: none
A  kind-of@6.0.3
   no known CVEs
   surface: none
A  klaw-sync@6.0.0
   no known CVEs
   surface: none
A  known-css-properties@0.34.0
   no known CVEs
   surface: none
A  language-subtag-registry@0.3.23
   no known CVEs
   surface: none
A  language-tags@1.0.9
   no known CVEs
   surface: none
A  leven@3.1.0
   no known CVEs
   surface: none
A  levn@0.4.1
   no known CVEs
   surface: none
A  lie@3.1.1
   no known CVEs
   surface: none
A  lines-and-columns@1.2.4
   no known CVEs
   surface: none
A  localforage@1.10.0
   no known CVEs
   surface: none
A  localforage-observable@2.1.1
   no known CVEs
   surface: none
A  locate-path@6.0.0
   no known CVEs
   surface: none
A  locate-path@5.0.0
   no known CVEs
   surface: none
A  lodash.camelcase@4.3.0
   no known CVEs
   surface: none
A  lodash.debounce@4.0.8
   no known CVEs
   surface: none
A  lodash.isplainobject@4.0.6
   no known CVEs
   surface: none
A  lodash.truncate@4.4.2
   no known CVEs
   surface: none
A  lower-case@2.0.2
   no known CVEs
   surface: none
A  lru-cache@5.1.1
   no known CVEs
   surface: none
A  luxon@3.6.1
   no known CVEs
   surface: none
A  magic-string@0.25.9
   no known CVEs
   surface: none
A  magic-string@0.26.7
   no known CVEs
   surface: none
A  magic-string@0.30.21
   no known CVEs
   surface: none
A  make-dir@3.1.0
   no known CVEs
   surface: none
A  make-dir@4.0.0
   no known CVEs
   surface: none
A  makeerror@1.0.12
   no known CVEs
   surface: none
A  mark.js@8.11.1
   no known CVEs
   surface: none
A  math-intrinsics@1.1.0
   no known CVEs
   surface: none
A  mathml-tag-names@2.1.3
   no known CVEs
   surface: none
A  md5.js@1.3.5
   no known CVEs
   surface: none
A  mdn-data@2.0.14
   no known CVEs
   surface: none
A  mdn-data@2.28.1
   no known CVEs
   surface: none
A  mdn-data@2.27.1
   no known CVEs
   surface: none
A  media-typer@0.3.0
   no known CVEs
   surface: none
A  memoize-one@6.0.0
   no known CVEs
   surface: none
A  memoize-one@5.2.1
   no known CVEs
   surface: none
A  merge-descriptors@1.0.3
   no known CVEs
   surface: none
A  merge-stream@2.0.0
   no known CVEs
   surface: none
A  merge2@1.4.1
   no known CVEs
   surface: none
A  micromatch@4.0.8
   no known CVEs
   surface: none
A  mime-db@1.54.0
   no known CVEs
   surface: none
A  mime-db@1.52.0
   no known CVEs
   surface: none
A  mime-types@2.1.35
   no known CVEs
   surface: none
A  mime-types@3.0.2
   no known CVEs
   surface: none
A  mimic-fn@2.1.0
   no known CVEs
   surface: none
A  min-document@2.19.2
   no known CVEs
   surface: none
A  min-indent@1.0.1
   no known CVEs
   surface: none
A  minimalistic-assert@1.0.1
   no known CVEs
   surface: none
A  minimalistic-crypto-utils@1.0.1
   no known CVEs
   surface: none
A  minimatch@9.0.9
   no known CVEs
   surface: none
A  minimatch@3.1.5
   no known CVEs
   surface: none
A  minimatch@10.2.5
   no known CVEs
   surface: none
A  minimist@1.2.8
   no known CVEs
   surface: none
A  minipass@7.1.3
   no known CVEs
   surface: none
A  moment@2.30.1
   no known CVEs
   surface: none
A  moo-color@1.0.3
   no known CVEs
   surface: none
A  ms@2.1.3
   no known CVEs
   surface: none
A  ms@2.0.0
   no known CVEs
   surface: none
A  nano-css@5.6.2
   no known CVEs
   surface: none
A  natural-compare@1.4.0
   no known CVEs
   surface: none
A  negotiator@0.6.4
   no known CVEs
   surface: none
A  negotiator@0.6.3
   no known CVEs
   surface: none
A  neo-async@2.6.2
   no known CVEs
   surface: none
A  no-case@3.0.4
   no known CVEs
   surface: none
A  node-exports-info@1.6.0
   no known CVEs
   surface: none
A  node-int64@0.4.0
   no known CVEs
   surface: none
A  node-releases@2.0.44
   no known CVEs
   surface: none
A  normalize-path@3.0.0
   no known CVEs
   surface: none
A  npm-run-path@4.0.1
   no known CVEs
   surface: none
A  nth-check@2.1.1
   no known CVEs
   surface: none
A  nullthrows@1.1.1
   no known CVEs
   surface: none
A  nwsapi@2.2.23
   no known CVEs
   surface: none
A  object-assign@4.1.1
   no known CVEs
   surface: none
A  object-inspect@1.13.4
   no known CVEs
   surface: none
A  object-keys@1.1.1
   no known CVEs
   surface: none
A  object-path@0.11.8
   no known CVEs
   surface: none
A  object.assign@4.1.7
   no known CVEs
   surface: none
A  object.entries@1.1.9
   no known CVEs
   surface: none
A  object.fromentries@2.0.8
   no known CVEs
   surface: none
A  object.groupby@1.0.3
   no known CVEs
   surface: none
A  object.hasown@1.1.4
   no known CVEs
   surface: none
A  object.values@1.2.1
   no known CVEs
   surface: none
A  obuf@1.1.2
   no known CVEs
   surface: none
A  on-finished@2.4.1
   no known CVEs
   surface: none
A  once@1.4.0
   no known CVEs
   surface: none
A  onetime@5.1.2
   no known CVEs
   surface: none
A  optionator@0.9.4
   no known CVEs
   surface: none
A  own-keys@1.0.1
   no known CVEs
   surface: none
A  p-limit@3.1.0
   no known CVEs
   surface: none
A  p-limit@2.3.0
   no known CVEs
   surface: none
A  p-locate@5.0.0
   no known CVEs
   surface: none
A  p-locate@4.1.0
   no known CVEs
   surface: none
A  p-queue@7.3.0
   no known CVEs
   surface: none
A  p-retry@6.2.1
   no known CVEs
   surface: none
A  p-timeout@5.1.0
   no known CVEs
   surface: none
A  p-try@2.2.0
   no known CVEs
   surface: none
A  package-json-from-dist@1.0.1
   no known CVEs
   surface: none
A  pako@1.0.11
   no known CVEs
   surface: none
A  param-case@3.0.4
   no known CVEs
   surface: none
A  parent-module@1.0.1
   no known CVEs
   surface: none
A  parse-asn1@5.1.9
   no known CVEs
   surface: none
A  parse-bmfont-ascii@1.0.6
   no known CVEs
   surface: none
A  parse-bmfont-binary@1.0.6
   no known CVEs
   surface: none
A  parse-bmfont-xml@1.1.6
   no known CVEs
   surface: none
A  parse-headers@2.0.6
   no known CVEs
   surface: none
A  parse-json@5.2.0
   no known CVEs
   surface: none
A  parse5@7.3.0
   no known CVEs
   surface: none
A  parseurl@1.3.3
   no known CVEs
   surface: none
A  pascal-case@3.1.2
   no known CVEs
   surface: none
A  path-exists@4.0.0
   no known CVEs
   surface: none
A  path-is-absolute@1.0.1
   no known CVEs
   surface: none
A  path-key@3.1.1
   no known CVEs
   surface: none
A  path-parse@1.0.7
   no known CVEs
   surface: none
A  path-scurry@1.11.1
   no known CVEs
   surface: none
A  path-to-regexp@1.9.0
   no known CVEs
   surface: none
A  path-to-regexp@0.1.13
   no known CVEs
   surface: none
A  path-type@4.0.0
   no known CVEs
   surface: none
A  pbkdf2@3.1.5
   no known CVEs
   surface: none
A  peek-readable@4.1.0
   no known CVEs
   surface: none
A  phin@3.7.1
   no known CVEs
   surface: none
A  picocolors@1.1.1
   no known CVEs
   surface: none
A  picomatch@4.0.4
   no known CVEs
   surface: none
A  picomatch@2.3.2
   no known CVEs
   surface: none
A  pirates@4.0.7
   no known CVEs
   surface: none
A  pkg-dir@4.2.0
   no known CVEs
   surface: none
A  pngjs@3.4.0
   no known CVEs
   surface: none
A  possible-typed-array-names@1.1.0
   no known CVEs
   surface: none
A  postcss-media-query-parser@0.2.3
   no known CVEs
   surface: none
A  postcss-modules-extract-imports@3.1.0
   no known CVEs
   surface: none
A  postcss-modules-local-by-default@4.2.0
   no known CVEs
   surface: none
A  postcss-modules-scope@3.2.1
   no known CVEs
   surface: none
A  postcss-resolve-nested-selector@0.1.6
   no known CVEs
   surface: none
A  postcss-safe-parser@7.0.1
   no known CVEs
   surface: none
A  postcss-scss@4.0.9
   no known CVEs
   surface: none
A  postcss-selector-parser@6.1.2
   no known CVEs
   surface: none
A  postcss-selector-parser@7.1.1
   no known CVEs
   surface: none
A  postcss-sorting@8.0.2
   no known CVEs
   surface: none
A  postcss-value-parser@4.2.0
   no known CVEs
   surface: none
A  prelude-ls@1.2.1
   no known CVEs
   surface: none
A  pretty-error@4.0.0
   no known CVEs
   surface: none
A  pretty-format@27.5.1
   no known CVEs
   surface: none
A  pretty-format@30.0.5
   no known CVEs
   surface: none
A  pretty-format@30.4.1
   no known CVEs
   surface: none
A  process@0.11.10
   no known CVEs
   surface: none
A  process-nextick-args@2.0.1
   no known CVEs
   surface: none
A  prop-types-extra@1.1.1
   no known CVEs
   surface: none
A  propagate@2.0.1
   no known CVEs
   surface: none
A  proxy-addr@2.0.7
   no known CVEs
   surface: none
A  public-encrypt@4.0.3
   no known CVEs
   surface: none
A  punycode@2.3.1
   no known CVEs
   surface: none
A  pure-rand@7.0.1
   no known CVEs
   surface: none
A  queue-microtask@1.2.3
   no known CVEs
   surface: none
A  raf-schd@4.0.3
   no known CVEs
   surface: none
A  randombytes@2.1.0
   no known CVEs
   surface: none
A  randomfill@1.0.4
   no known CVEs
   surface: none
A  range-parser@1.2.1
   no known CVEs
   surface: none
A  raw-body@2.5.3
   no known CVEs
   surface: none
A  react@18.2.0
   no known CVEs
   surface: none
A  react-beautiful-dnd@13.1.1
   no known CVEs
   surface: none
A  react-color@2.19.3
   no known CVEs
   surface: none
A  react-day-picker@8.3.6
   no known CVEs
   surface: none
A  react-dom@18.2.0
   no known CVEs
   surface: none
A  react-intl@7.1.14
   no known CVEs
   surface: none
A  react-is@18.2.0
   no known CVEs
   surface: none
A  react-is@18.3.1
   no known CVEs
   surface: none
A  react-is@19.2.6
   no known CVEs
   surface: none
A  react-is@16.13.1
   no known CVEs
   surface: none
A  react-is@17.0.2
   no known CVEs
   surface: none
A  react-lifecycles-compat@3.0.4
   no known CVEs
   surface: none
A  react-overlays@0.9.3
   no known CVEs
   surface: none
A  react-prop-types@0.4.0
   no known CVEs
   surface: none
A  react-redux@9.2.0
   no known CVEs
   surface: none
A  react-refresh@0.16.0
   no known CVEs
   surface: none
A  react-router@5.3.4
   no known CVEs
   surface: none
A  react-router-dom@5.3.4
   no known CVEs
   surface: none
A  react-select@5.9.0
   no known CVEs
   surface: none
A  react-transition-group@4.4.5
   no known CVEs
   surface: none
A  react-transition-group@2.9.0
   no known CVEs
   surface: none
A  react-universal-interface@0.6.2
   no known CVEs
   surface: none
A  react-use@17.6.0
   no known CVEs
   surface: none
A  react-virtualized-auto-sizer@1.0.25
   no known CVEs
   surface: none
A  react-window@1.8.11
   no known CVEs
   surface: none
A  react-window-infinite-loader@1.0.10
   no known CVEs
   surface: none
A  reactcss@1.2.3
   no known CVEs
   surface: none
A  readable-stream@2.3.8
   no known CVEs
   surface: none
A  readable-stream@3.6.2
   no known CVEs
   surface: none
A  readable-stream@4.7.0
   no known CVEs
   surface: none
A  readable-web-to-node-stream@3.0.4
   no known CVEs
   surface: none
A  readdirp@4.1.2
   no known CVEs
   surface: none
A  readdirp@3.6.0
   no known CVEs
   surface: none
A  rebound@0.1.0
   no known CVEs
   surface: none
A  redent@3.0.0
   no known CVEs
   surface: none
A  redux@5.0.1
   no known CVEs
   surface: none
A  redux@4.2.1
   no known CVEs
   surface: none
A  redux-batched-actions@0.5.0
   no known CVEs
   surface: none
A  redux-mock-store@1.5.4
   no known CVEs
   surface: none
A  redux-persist@6.0.0
   no known CVEs
   surface: none
A  redux-persist-node-storage@2.0.0
   no known CVEs
   surface: none
A  redux-thunk@3.1.0
   no known CVEs
   surface: none
A  reflect.getprototypeof@1.0.10
   no known CVEs
   surface: none
A  regenerate@1.4.2
   no known CVEs
   surface: none
A  regenerate-unicode-properties@10.2.2
   no known CVEs
   surface: none
A  regenerator-runtime@0.13.10
   no known CVEs
   surface: none
A  regenerator-runtime@0.14.1
   no known CVEs
   surface: none
A  regexp.prototype.flags@1.5.4
   no known CVEs
   surface: none
A  regjsgen@0.8.0
   no known CVEs
   surface: none
A  relateurl@0.2.7
   no known CVEs
   surface: none
A  renderkid@3.0.0
   no known CVEs
   surface: none
A  require-from-string@2.0.2
   no known CVEs
   surface: none
A  resize-observer-polyfill@1.5.1
   no known CVEs
   surface: none
A  resolve-cwd@3.0.0
   no known CVEs
   surface: none
A  resolve-from@4.0.0
   no known CVEs
   surface: none
A  resolve-from@5.0.0
   no known CVEs
   surface: none
A  resolve-pathname@3.0.0
   no known CVEs
   surface: none
A  reusify@1.1.0
   no known CVEs
   surface: none
A  ripemd160@2.0.3
   no known CVEs
   surface: none
A  rollup-pluginutils@2.8.2
   no known CVEs
   surface: none
A  rrweb-cssom@0.8.0
   no known CVEs
   surface: none
A  rtl-css-js@1.16.1
   no known CVEs
   surface: none
A  run-parallel@1.2.0
   no known CVEs
   surface: none
A  safe-array-concat@1.1.4
   no known CVEs
   surface: none
A  safe-buffer@5.2.1
   no known CVEs
   surface: none
A  safe-buffer@5.1.2
   no known CVEs
   surface: none
A  safe-push-apply@1.0.0
   no known CVEs
   surface: none
A  safe-regex-test@1.1.0
   no known CVEs
   surface: none
A  sax@1.6.0
   no known CVEs
   surface: none
A  saxes@6.0.0
   no known CVEs
   surface: none
A  scheduler@0.23.2
   no known CVEs
   surface: none
A  schema-utils@4.3.3
   no known CVEs
   surface: none
A  screenfull@5.2.0
   no known CVEs
   surface: none
A  scroll-into-view-if-needed@3.1.0
   no known CVEs
   surface: none
A  send@0.19.2
   no known CVEs
   surface: none
A  serialize-error@11.0.3
   no known CVEs
   surface: none
A  serialize-javascript@7.0.5
   no known CVEs
   surface: none
A  serve-index@1.9.2
   no known CVEs
   surface: none
A  serve-static@1.16.3
   no known CVEs
   surface: none
A  set-function-length@1.2.2
   no known CVEs
   surface: none
A  set-function-name@2.0.2
   no known CVEs
   surface: none
A  set-harmonic-interval@1.0.1
   no known CVEs
   surface: none
A  set-proto@1.0.0
   no known CVEs
   surface: none
A  setprototypeof@1.2.0
   no known CVEs
   surface: none
A  shallow-clone@3.0.1
   no known CVEs
   surface: none
A  shallow-equals@1.0.0
   no known CVEs
   surface: none
A  shallowequal@1.1.0
   no known CVEs
   surface: none
A  shebang-command@2.0.0
   no known CVEs
   surface: none
A  shebang-regex@3.0.0
   no known CVEs
   surface: none
A  side-channel@1.1.0
   no known CVEs
   surface: none
A  side-channel-list@1.0.1
   no known CVEs
   surface: none
A  side-channel-map@1.0.1
   no known CVEs
   surface: none
A  side-channel-weakmap@1.0.2
   no known CVEs
   surface: none
A  signal-exit@3.0.7
   no known CVEs
   surface: none
A  signal-exit@4.1.0
   no known CVEs
   surface: none
A  simplebar-core@1.3.2
   no known CVEs
   surface: none
A  simplebar-react@3.3.2
   no known CVEs
   surface: none
A  slash@3.0.0
   no known CVEs
   surface: none
A  slash@2.0.0
   no known CVEs
   surface: none
A  slash@5.1.0
   no known CVEs
   surface: none
A  slice-ansi@4.0.0
   no known CVEs
   surface: none
A  slide@1.1.6
   no known CVEs
   surface: none
A  smooth-scroll-into-view-if-needed@2.0.2
   no known CVEs
   surface: none
A  source-list-map@2.0.1
   no known CVEs
   surface: none
A  source-map@0.6.1
   no known CVEs
   surface: none
A  source-map@0.5.6
   no known CVEs
   surface: none
A  source-map@0.5.7
   no known CVEs
   surface: none
A  sourcemap-codec@1.4.8
   no known CVEs
   surface: none
A  stable@0.1.8
   no known CVEs
   surface: none
A  stack-generator@2.0.10
   no known CVEs
   surface: none
A  stack-utils@2.0.6
   no known CVEs
   surface: none
A  stackframe@1.3.4
   no known CVEs
   surface: none
A  statuses@2.0.2
   no known CVEs
   surface: none
A  statuses@1.5.0
   no known CVEs
   surface: none
A  stop-iteration-iterator@1.1.0
   no known CVEs
   surface: none
A  stream-browserify@3.0.0
   no known CVEs
   surface: none
A  string_decoder@1.1.1
   no known CVEs
   surface: none
A  string_decoder@1.3.0
   no known CVEs
   surface: none
A  string-length@4.0.2
   no known CVEs
   surface: none
A  string-length@6.0.0
   no known CVEs
   surface: none
A  string-width@4.2.3
   no known CVEs
   surface: none
A  string-width@5.1.2
   no known CVEs
   surface: none
A  string.prototype.includes@2.0.1
   no known CVEs
   surface: none
A  string.prototype.matchall@4.0.12
   no known CVEs
   surface: none
A  string.prototype.trim@1.2.10
   no known CVEs
   surface: none
A  string.prototype.trimend@1.0.9
   no known CVEs
   surface: none
A  string.prototype.trimstart@1.0.8
   no known CVEs
   surface: none
A  strip-ansi@7.1.0
   no known CVEs
   surface: none
A  strip-ansi@6.0.1
   no known CVEs
   surface: none
A  strip-bom@4.0.0
   no known CVEs
   surface: none
A  strip-bom@3.0.0
   no known CVEs
   surface: none
A  strip-final-newline@2.0.0
   no known CVEs
   surface: none
A  strip-indent@3.0.0
   no known CVEs
   surface: none
A  strip-json-comments@3.1.1
   no known CVEs
   surface: none
A  style-search@0.1.0
   no known CVEs
   surface: none
A  stylelint-config-recommended@14.0.1
   no known CVEs
   surface: none
A  stylelint-config-recommended-scss@14.1.0
   no known CVEs
   surface: none
A  stylelint-order@6.0.4
   no known CVEs
   surface: none
A  stylelint-scss@6.8.1
   no known CVEs
   surface: none
A  stylis@4.2.0
   no known CVEs
   surface: none
A  stylis@4.4.0
   no known CVEs
   surface: none
A  supports-color@7.2.0
   no known CVEs
   surface: none
A  supports-color@8.1.1
   no known CVEs
   surface: none
A  supports-color@5.5.0
   no known CVEs
   surface: none
A  supports-hyperlinks@3.2.0
   no known CVEs
   surface: none
A  supports-preserve-symlinks-flag@1.0.0
   no known CVEs
   surface: none
A  svg-tags@1.0.0
   no known CVEs
   surface: none
A  symbol-tree@3.2.4
   no known CVEs
   surface: none
A  tabbable@6.4.0
   no known CVEs
   surface: none
A  table@6.9.0
   no known CVEs
   surface: none
A  tapable@0.1.10
   no known CVEs
   surface: none
A  test-exclude@6.0.0
   no known CVEs
   surface: none
A  text-table@0.2.0
   no known CVEs
   surface: none
A  thingies@2.6.0
   no known CVEs
   surface: none
A  throttle-debounce@3.0.1
   no known CVEs
   surface: none
A  thunky@1.1.0
   no known CVEs
   surface: none
A  timezones.json@1.7.1
   no known CVEs
   surface: none
A  timm@1.7.1
   no known CVEs
   surface: none
A  tiny-invariant@1.3.3
   no known CVEs
   surface: none
A  tiny-warning@1.0.3
   no known CVEs
   surface: none
A  tinycolor2@1.6.0
   no known CVEs
   surface: none
A  tinyglobby@0.2.16
   no known CVEs
   surface: none
A  tippy.js@6.3.7
   no known CVEs
   surface: none
A  to-buffer@1.2.2
   no known CVEs
   surface: none
A  to-regex-range@5.0.1
   no known CVEs
   surface: none
A  toggle-selection@1.0.6
   no known CVEs
   surface: none
A  toidentifier@1.0.1
   no known CVEs
   surface: none
A  token-types@4.2.1
   no known CVEs
   surface: none
A  tr46@5.1.1
   no known CVEs
   surface: none
A  tr46@0.0.3
   no known CVEs
   surface: none
A  tree-dump@1.1.0
   no known CVEs
   surface: none
A  ts-api-utils@2.5.0
   no known CVEs
   surface: none
A  ts-clone-node@0.3.32
   no known CVEs
   surface: none
A  ts-easing@0.2.0
   no known CVEs
   surface: none
A  tslib@2.8.1
   no known CVEs
   surface: none
A  tslib@2.6.2
   no known CVEs
   surface: none
A  turndown@7.2.2
   no known CVEs
   surface: none
A  type-check@0.4.0
   no known CVEs
   surface: none
A  type-detect@4.0.8
   no known CVEs
   surface: none
A  type-fest@0.20.2
   no known CVEs
   surface: none
A  type-fest@2.19.0
   no known CVEs
   surface: none
A  type-fest@0.21.3
   no known CVEs
   surface: none
A  type-is@1.6.18
   no known CVEs
   surface: none
A  typed-array-buffer@1.0.3
   no known CVEs
   surface: none
A  typed-array-byte-length@1.0.3
   no known CVEs
   surface: none
A  typed-array-byte-offset@1.0.4
   no known CVEs
   surface: none
A  typed-array-length@1.0.7
   no known CVEs
   surface: none
A  unbox-primitive@1.1.0
   no known CVEs
   surface: none
A  uncontrollable@5.1.0
   no known CVEs
   surface: none
A  undici-types@7.16.0
   no known CVEs
   surface: none
A  unicode-canonical-property-names-ecmascript@2.0.1
   no known CVEs
   surface: none
A  unicode-match-property-ecmascript@2.0.0
   no known CVEs
   surface: none
A  unicode-match-property-value-ecmascript@2.2.1
   no known CVEs
   surface: none
A  unicode-property-aliases-ecmascript@2.2.0
   no known CVEs
   surface: none
A  universalify@2.0.1
   no known CVEs
   surface: none
A  unpipe@1.0.0
   no known CVEs
   surface: none
A  use-isomorphic-layout-effect@1.2.1
   no known CVEs
   surface: none
A  use-memo-one@1.1.3
   no known CVEs
   surface: none
A  use-sync-external-store@1.6.0
   no known CVEs
   surface: none
A  utif@2.0.1
   no known CVEs
   surface: none
A  util-deprecate@1.0.2
   no known CVEs
   surface: none
A  utila@0.4.0
   no known CVEs
   surface: none
A  utility-types@3.11.0
   no known CVEs
   surface: none
A  utils-merge@1.0.1
   no known CVEs
   surface: none
A  v8-to-istanbul@9.3.0
   no known CVEs
   surface: none
A  value-equal@1.0.1
   no known CVEs
   surface: none
A  vary@1.1.2
   no known CVEs
   surface: none
A  w3c-xmlserializer@5.0.0
   no known CVEs
   surface: none
A  walker@1.0.8
   no known CVEs
   surface: none
A  warning@3.0.0
   no known CVEs
   surface: none
A  warning@4.0.3
   no known CVEs
   surface: none
A  watchpack@2.5.1
   no known CVEs
   surface: none
A  wbuf@1.7.3
   no known CVEs
   surface: none
A  weak-lru-cache@1.2.2
   no known CVEs
   surface: none
A  web-vitals@5.0.3
   no known CVEs
   surface: none
A  webidl-conversions@7.0.0
   no known CVEs
   surface: none
A  webidl-conversions@3.0.1
   no known CVEs
   surface: none
A  webpack-merge@6.0.1
   no known CVEs
   surface: none
A  webpack-pwa-manifest@4.3.0
   no known CVEs
   surface: none
A  webpack-sources@2.3.1
   no known CVEs
   surface: none
A  webpack-sources@3.4.1
   no known CVEs
   surface: none
A  whatwg-encoding@3.1.1
   no known CVEs
   surface: none
A  whatwg-mimetype@4.0.0
   no known CVEs
   surface: none
A  which-boxed-primitive@1.1.1
   no known CVEs
   surface: none
A  which-builtin-type@1.2.1
   no known CVEs
   surface: none
A  which-collection@1.0.2
   no known CVEs
   surface: none
A  which-typed-array@1.1.20
   no known CVEs
   surface: none
A  wildcard@2.0.1
   no known CVEs
   surface: none
A  word-wrap@1.2.5
   no known CVEs
   surface: none
A  wrap-ansi@7.0.0
   no known CVEs
   surface: none
A  wrap-ansi@8.1.0
   no known CVEs
   surface: none
A  wrappy@1.0.2
   no known CVEs
   surface: none
A  wsl-utils@0.1.0
   no known CVEs
   surface: none
A  xhr@2.6.0
   no known CVEs
   surface: none
A  xml-name-validator@5.0.0
   no known CVEs
   surface: none
A  xml-parse-from-string@1.0.1
   no known CVEs
   surface: none
A  xml2js@0.5.0
   no known CVEs
   surface: none
A  xmlbuilder@11.0.1
   no known CVEs
   surface: none
A  xmlchars@2.2.0
   no known CVEs
   surface: none
A  xtend@4.0.2
   no known CVEs
   surface: none
A  yallist@3.1.1
   no known CVEs
   surface: none
A  yaml@1.10.3
   no known CVEs
   surface: none
A  yocto-queue@0.1.0
   no known CVEs
   surface: none

One F in 1,634 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-07-21 run went from inventory to packed artifact in 2 hours 18 minutes, unattended. That is the from-zero price, paid once — no 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 127 runtime dependencies, 67 were extracted down to what the webapp reaches, 24 were pruned conservatively but kept complete, and 36 shipped as pinned stock. All 91 hardened dependencies overlaid at once; the full suite passed differentially with zero new failures, plus the production build.

installedshippedchange
dependencies12767 extracted + 24 pruned + 36 pinned stockall update-gated
files, validated extractions11,254752−93.3%
bytes, validated extractions46.0 MB17.6 MB−61.8%

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 40 advisories. After hardening:

verdictcountmeaning here
not shipped35the 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
eliminated0no vulnerable symbol on this tree is provably dead
reached1the webapp really runs this code; the fix is upgrading, not removal
unresolved4advisory 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

stephuman time
cold score on the checkout~2 min
config file (34 lines)one sitting
chainstrip run, zero to artifactnone — 2 h 18 min unattended
ongoing, per PR~1 s, automatic

No tests were written and no probe campaign ran on this target: with 1,108 test files, the suite already carries the evidence, and the run's numbers are what it produces as found. 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 — 40 CLASSIFY targets (a test proves the code live, or it stays held; precision does the removing) and 16 skips with reasons:

the coverage worklist — full real output (printed 2026-07-26; scroll inside)
$ chainstrip coverage --callers

whole-suite coverage gap — 63 deps measured · median 42% of functions executed
  0–25%: 13 · 25–50%: 24 · 50–75%: 17 · 75–100%: 9
  4 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):
   63%  marked  ⚠ 5 live CVEs (HIGH)  (40/63 fns run, 23 never run) · e.g. blockquote, br, code, codespan…
          channels/src/components/admin_console/schema_text.tsx → SchemaText
          channels/src/components/formatted_markdown_message.tsx → (module scope), FormattedMarkdownMessage
          channels/src/utils/markdown/index.ts → formatWithRenderer
          channels/src/utils/markdown/plain_renderer.ts → (module scope)
          channels/src/utils/markdown/remove_markdown.ts → (module scope)
          channels/src/utils/markdown/renderer.tsx → (module scope), tablecell
    1%  tippy.js  (2/244 fns run, 242 never run, 3 file(s) never loaded) · e.g. TIPPY_DEFAULT_APPEND_TO2, actualContains, addDocumentPress, addListeners…
    3%  @popperjs/core  (8/256 fns run, 248 never run) · e.g. _loop, applyStyles, areValidElements, arrow…
    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
    7%  mark.js  (10/136 fns run, 126 never run) · e.g. DOMIterator, Mark, callNoMatchOnInvalidRanges, checkEnd…
          channels/src/components/admin_console/search_keyword_marking.tsx → doMark
    9%  serialize-error  (1/11 fns run, 10 never run) · e.g. continueDestroyCircular, destroyCircular, getErrorConstructor, isErrorLike…
          channels/src/packages/mattermost-redux/src/actions/errors.ts → (anonymous)
   14%  moment  (153/1059 fns run, 906 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
   15%  @tanstack/react-table  (231/1498 fns run, 1267 never run) · e.g. _autoResetExpanded, _autoResetPageIndex, _getColumnDefs, _getPinnedRows…
          channels/src/components/admin_console/classification_markings/components/classification_levels_table.tsx → ClassificationLevelsTable
          channels/src/components/admin_console/list_table/list_table.tsx → (anonymous)
          channels/src/components/admin_console/secure_connections/secure_connection_detail.tsx → SharedChannelRemotesTable
          channels/src/components/admin_console/system_properties/user_properties_table.tsx → (module scope), UserPropertiesTable
          channels/src/components/admin_console/system_users/system_users.tsx → SystemUsers
   15%  regenerator-runtime  (8/53 fns run, 45 never run) · e.g. AsyncIterator, Context, Generator, GeneratorFunction…
          channels/src/plugins/index.ts → (module scope)
   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…
   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
   25%  localforage  (81/323 fns run, 242 never run) · e.g. INTERNAL, Promise, QueueItem, _binStringToArrayBuffer…
          channels/src/reducers/storage.ts → (module scope)
          channels/src/store/index.ts → (module scope)
   26%  history  (83/315 fns run, 232 never run, 2 file(s) never loaded) · e.g. addLeadingSlash, block, canGo, checkDOMListeners…
          channels/src/utils/browser_history.tsx → (module scope)
   26%  node-fetch  (69/262 fns run, 193 never run, 2 file(s) never loaded) · e.g. AbortError, ByteString, DOMString, Date…
          platform/client/setup_jest.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…
   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%  @atlaskit/pragmatic-drag-and-drop  (82/255 fns run, 173 never run, 10 file(s) never loaded) · e.g. _arrayLikeToArray, _arrayWithHoles, _arrayWithoutHoles, _createForOfIteratorHelper…
          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)
   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/list_table/list_table.tsx → (anonymous), ListTable
          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
   38%  intl-messageformat  (222/587 fns run, 365 never run) · e.g. FormatError2, InvalidValueError2, InvalidValueTypeError2, MissingValueError2…
   39%  @floating-ui/react  (388/988 fns run, 600 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/system_users/system_users_filters_popover/index.tsx → SystemUsersFilterPopover
          channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.tsx → FormattingBar
          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/user_group_popover/user_group_popover_controller.tsx → UserGroupPopoverController
          channels/src/utils/floating.ts → fn
          platform/shared/src/components/tooltip/with_tooltip.tsx → WithTooltip
   39%  web-vitals  (84/215 fns run, 131 never run) · e.g. B, C, D, E…
          channels/src/utils/performance_telemetry/reporter.ts → observe
   40%  react-window  (107/268 fns run, 161 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)
   40%  p-queue  (29/73 fns run, 44 never run) · e.g. EE, _PQueue_onEvent, _PQueue_onInterval, _PQueue_onResumeInterval…
          channels/src/components/data_prefetch/data_prefetch.tsx → (module scope)
   41%  html-to-react  (187/461 fns run, 274 never run) · e.g. CDATA, Comment, ProcessingInstruction, ProcessingInstructions…
          channels/src/utils/message_html_to_component.tsx → messageHtmlToComponent
   41%  @atlaskit/pragmatic-drag-and-drop-hitbox  (13/32 fns run, 19 never run, 1 file(s) never loaded) · e.g. _defineProperty, _objectSpread, _typeof, attachClosestEdge…
          channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.ts → getData, onDrag
          channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.ts → onDrop
   42%  semver  (67/161 fns run, 94 never run) · e.g. cmp, coerce, compareBuild, compareLoose…
          channels/src/components/admin_console/admin_definition.tsx → validate
          channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/marketplace_item_plugin.tsx → UpdateConfirmationModal, UpdateDetails
          channels/src/selectors/calls.ts → isCallsEnabled
          channels/src/utils/desktop_api.ts → (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  (527/1200 fns run, 673 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/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/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 → ChannelMembersRHS
          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/plugin_marketplace/marketplace_modal.tsx → MarketplaceModal
          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 → UserGroupPopover
          channels/src/components/window_size_observer/WindowSizeObserver.tsx → WindowSizeObserver
          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.jsx → (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
   47%  country-list  (7/15 fns run, 8 never run) · e.g. getCode, getCodeList, getCodes, getName…
          channels/src/components/admin_console/billing/company_info_edit.tsx → CompanyInfoEdit
          channels/src/components/payment_form/country_selector.tsx → CountrySelector
          channels/src/utils/countries.ts → (module scope)
          channels/src/utils/utils.tsx → getBlankAddressWithCountry
   49%  react-transition-group  (125/256 fns run, 131 never run) · e.g. ReplaceTransition, SwitchTransition, TransitionGroup, _assertThisInitialized…
          channels/src/components/advanced_text_editor/formatting_bar/formatting_bar.tsx → FormattingBar
          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
   50%  react-router-dom  (62/125 fns run, 63 never run, 10 file(s) never loaded) · e.g. BrowserRouter, HashRouter, _setPrototypeOf, componentDidMount…
          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/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/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
   50%  exif2css  (6/12 fns run, 6 never run) · e.g. exif2css, expandTransform, expandTransformStrings, expandTransforms…
          channels/src/utils/file_utils.tsx → getOrientationStyles
   54%  react-redux  (227/417 fns run, 190 never run, 2 file(s) never loaded) · e.g. createInvalidArgFactory, get, getListeners, initMergePropsProxy…
          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/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/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/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/system_properties/orphaned_fields_utils.ts → useIsFieldOrphaned
          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 → 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 → 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_members/index.ts → (module scope)
          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/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_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/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/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_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/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/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/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/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/index.ts → (module scope)
          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/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/hooks/use_external_link.ts → useExternalLink
          channels/src/components/common/hooks/use_search_results_actions.ts → useSearchResultsActions
          channels/src/components/common/hooks/useAccessControlAttributes.ts → useAccessControlAttributes
          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/usePluginVisibilityInSharedChannel.ts → usePluginVisibilityInSharedChannel
          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_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/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/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/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/recaps_list.tsx → RecapsList
          channels/src/components/recaps/recaps.tsx → Recaps
          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/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_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.js → (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_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/enable_concurrent_react_experimental_section.tsx → EnableConcurrentReactExperimentalSection
          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/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/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
   55%  @testing-library/jest-dom  (368/673 fns run, 305 never run, 1 file(s) never loaded) · e.g. F, _arrayLikeToArray, _arrayWithHoles, _createForOfIteratorHelper…
   56%  date-fns  (1939/3434 fns run, 1495 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%  simplebar-react  (100/174 fns run, 74 never run) · e.g. __assign, _onMouseEntered, _onStopScrolling, _onWindowResize…
          channels/src/components/common/scrollbars.tsx → (anonymous)
   57%  localforage-observable  (37/65 fns run, 28 never run) · e.g. complete, destroy, error, getItemObservable…
          channels/src/store/index.ts → (module scope)
   57%  smooth-scroll-into-view-if-needed  (35/61 fns run, 26 never run) · e.g. e, l, method, n…
          channels/src/components/common/auto_height_switcher.tsx → (anonymous)
   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.js → 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/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-overlays  (262/395 fns run, 133 never run) · e.g. Affix, AutoAffix, Moz, O…
          channels/src/plugins/channel_header_plug/channel_header_plug.tsx → render
   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/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/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%  @floating-ui/react-dom  (256/368 fns run, 112 never run, 1 file(s) never loaded) · e.g. a, expandPaddingObject, fn, frameLoop…
          channels/src/components/onboarding_tasklist/onboarding_tasklist_popover.tsx → TaskListPopover
   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
   84%  react-window-infinite-loader  (38/45 fns run, 7 never run) · e.g. _loadUnloadedRanges, _loop, isRangeVisible, resetloadMoreItemsCache
          channels/src/components/channel_members_rhs/member_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 → UserGroupsList
  … +7 more (full set in coverage-report.json)

NEVER LOADED by any test (4) — extracted but unexercised, so covtrim can't classify their code:
  @giphy/js-fetch-api, @mattermost/calls-common, @mattermost/desktop-api, @mui/base
.chainstrip/coverage-prompt.md — the standing work order: 40 CLASSIFY targets and 16 reasoned skips (printed 2026-07-26; scroll inside)
# 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. ⚠ `marked` — 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.)  ⚠ 5 live CVEs (HIGH)
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: `lib/marked.js (14 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/schema_text.tsx` → `SchemaText`
- `channels/src/components/formatted_markdown_message.tsx` → `FormattedMarkdownMessage`
- `channels/src/utils/markdown/index.ts` → `formatWithRenderer`
- `channels/src/utils/markdown/renderer.tsx` → `tablecell`
Existing test(s) that load `marked` 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` … (+509 more).
Currently-unexercised functions in `marked` (context only — chainstrip removes these; do NOT write tests to reach them): `blockquote`, `br`, `code`, `codespan`, `done`, `hr`, `html`, `image`, `inlinelatex`, `link`, `list`, `listitem` … (+8 more).

### 2. `moment` — CLASSIFY 601KB — 601KB 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 (163 fns, 59KB)`, `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` … (+960 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` … (+190 more).

### 3. `@tanstack/react-table` — CLASSIFY 300KB — 300KB 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/global_classification_indicators.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: `build/lib/index.mjs (450 fns, 220KB)`, `build/lib/index.js (255 fns, 81KB)` — 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_levels_table.tsx` → `ClassificationLevelsTable`
- `channels/src/components/admin_console/list_table/list_table.tsx` → `(anonymous)`
- `channels/src/components/admin_console/secure_connections/secure_connection_detail.tsx` → `SharedChannelRemotesTable`
- `channels/src/components/admin_console/system_properties/user_properties_table.tsx` → `UserPropertiesTable`
- `channels/src/components/admin_console/system_users/system_users.tsx` → `SystemUsers`
Existing test(s) that load `@tanstack/react-table` but don't reach the functions above — **extend these**: `channels/src/components/admin_console/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx`, `channels/src/components/admin_console/admin_definition_dcr_allowlist.test.tsx`, `channels/src/components/admin_console/admin_definition_enable_testing.test.tsx` … (+70 more).
Currently-unexercised functions in `@tanstack/react-table` (context only — chainstrip removes these; do NOT write tests to reach them): `_autoResetExpanded`, `_autoResetPageIndex`, `_getColumnDefs`, `_getPinnedRows`, `_getRowId`, `_queue`, `accessRows`, `accessor`, `accessorFn`, `aggregatedCell`, `alphanumeric`, `alphanumericCaseSensitive` … (+256 more).

### 4. `date-fns` — CLASSIFY 278KB — 278KB 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/emoji_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 (203 fns, 78KB)`, `chainstrip-chunk-BJKofC7e.cjs (129 fns, 46KB)`, `chainstrip-chunk-CRoFvI58.mjs (124 fns, 33KB)`, `chainstrip-chunk-D5SPu-HF.cjs (15 fns, 27KB)` — 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/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` … (+291 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).

### 5. `react-beautiful-dnd` — CLASSIFY 272KB — 272KB 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_category/sidebar_category_menu/index.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, 140KB)`, `dist/react-beautiful-dnd.cjs.js (340 fns, 132KB)` — 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/list_table/list_table.tsx` → `(anonymous)`, `ListTable`
- `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_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx`, `channels/src/components/admin_console/admin_definition_dcr_allowlist.test.tsx`, `channels/src/components/admin_console/admin_definition_enable_testing.test.tsx` … (+73 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).

### 6. `@floating-ui/react` — CLASSIFY 175KB — 175KB 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, 98KB)`, `dist/floating-ui.react.umd.js (86 fns, 77KB)` — 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/modals/simulate_access/session_attribute_editor.tsx` → `SessionAttributeEditorButton`
- `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` → `FormattingBar`
- `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/user_group_popover/user_group_popover_controller.tsx` → `UserGroupPopoverController`
- `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` … (+417 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).

### 7. `luxon` — CLASSIFY 148KB — 148KB 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, 100KB)`, `build/node/luxon.js (185 fns, 47KB)` — 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` … (+216 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).

### 8. `css-vars-ponyfill` — CLASSIFY 142KB — 142KB 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, 82KB)`, `dist/css-vars-ponyfill.js (25 fns, 60KB)` — 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/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` … (+461 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).

### 9. `lodash` — CLASSIFY 134KB — 134KB 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, 120KB)`, `chainstrip-chunk-8wmSxfu6.cjs (14 fns, 3KB)`, `merge.js (4 fns, 2KB)`, `remove.js (5 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/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/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/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` → `ChannelMembersRHS`
- `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/plugin_marketplace/marketplace_modal.tsx` → `MarketplaceModal`
- `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` → `UserGroupPopover`
- `channels/src/components/window_size_observer/WindowSizeObserver.tsx` → `WindowSizeObserver`
- `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.jsx` → `(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` … (+1000 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).

### 10. `react-day-picker` — CLASSIFY 93KB — 93KB 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, 71KB)`, `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` … (+200 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).

### 11. `@atlaskit/pragmatic-drag-and-drop` — CLASSIFY 66KB — 66KB 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/channel_bookmarks/hooks/use_keyboard_reorder.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-DpHiGrRd.cjs (70 fns, 54KB)`, `dist/cjs/entry-point/element/set-custom-native-drag-preview.js (2 fns, 4KB)`, `chainstrip-chunk-eU7LlN4C.cjs (9 fns, 3KB)`, `dist/cjs/entry-point/prevent-unhandled.js (4 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/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/channel_bookmarks/bookmark_item_content.test.tsx`, `channels/src/components/channel_bookmarks/bookmarks_bar_menu.test.tsx`, `channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.test.ts`, `channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.test.ts`.
Currently-unexercised functions in `@atlaskit/pragmatic-drag-and-drop` (context only — chainstrip removes these; do NOT write tests to reach them): `_arrayLikeToArray`, `_arrayWithHoles`, `_arrayWithoutHoles`, `_createForOfIteratorHelper`, `_defineProperty`, `_iterableToArray`, `_iterableToArrayLimit`, `_nonIterableRest`, `_nonIterableSpread`, `_objectSpread`, `_slicedToArray`, `_toConsumableArray` … (+69 more).

### 12. `react-window` — CLASSIFY 56KB — 56KB 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 (51 fns, 43KB)`, `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` … (+200 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).

### 13. `html-to-react` — CLASSIFY 55KB — 55KB 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: `index.js (164 fns, 55KB)` — 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/message_html_to_component.tsx` → `messageHtmlToComponent`
Existing test(s) that load `html-to-react` 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/admin_console/access_control/editors/shared.test.tsx` … (+140 more).
Currently-unexercised functions in `html-to-react` (context only — chainstrip removes these; do NOT write tests to reach them): `CDATA`, `Comment`, `ProcessingInstruction`, `ProcessingInstructions`, `addConditionally`, `addToNumericResult`, `alwaysValid`, `append`, `appendChild`, `arrayReduce`, `asciiToArray`, `asciiWords` … (+145 more).

### 14. `semver` — CLASSIFY 40KB — 40KB 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/plugin_marketplace/marketplace_item/marketplace_item_plugin/marketplace_item_plugin.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 (57 fns, 40KB)` — 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_definition.tsx` → `validate`
- `channels/src/components/plugin_marketplace/marketplace_item/marketplace_item_plugin/marketplace_item_plugin.tsx` → `UpdateConfirmationModal`, `UpdateDetails`
- `channels/src/selectors/calls.ts` → `isCallsEnabled`
- `channels/src/utils/desktop_api.ts` → `(anonymous)`
Existing test(s) that load `semver` 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` … (+1103 more).
Currently-unexercised functions in `semver` (context only — chainstrip removes these; do NOT write tests to reach them): `cmp`, `coerce`, `compareBuild`, `compareLoose`, `comparePre`, `constructor`, `delete`, `diff`, `eq`, `format`, `get`, `gtr` … (+46 more).

### 15. `react-overlays` — CLASSIFY 38KB — 38KB 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/plugins/channel_header_plug/channel_header_plug.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/index.js (34 fns, 14KB)`, `chainstrip-chunk-BJ4ejTtV.cjs (30 fns, 14KB)`, `chainstrip-chunk-wlqCXKoq.cjs (15 fns, 6KB)`, `chainstrip-chunk-7Bb8QEul.cjs (8 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/plugins/channel_header_plug/channel_header_plug.tsx` → `render`
Existing test(s) that load `react-overlays` 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` … (+524 more).
Currently-unexercised functions in `react-overlays` (context only — chainstrip removes these; do NOT write tests to reach them): `Affix`, `AutoAffix`, `Moz`, `O`, `Overlay`, `Portal`, `Position`, `UNSAFE_componentWillReceiveProps`, `_classCallCheck`, `_extends`, `_mountOverlayTarget`, `_objectWithoutProperties` … (+57 more).

### 16. `mark.js` — CLASSIFY 36KB — 36KB 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 (102 fns, 36KB)` — 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`.
Currently-unexercised functions in `mark.js` (context only — chainstrip removes these; do NOT write tests to reach them): `DOMIterator`, `Mark`, `callNoMatchOnInvalidRanges`, `checkEnd`, `checkIframeFilter`, `checkRanges`, `checkWhitespaceRanges`, `classCallCheck`, `compareNodeIframe`, `createAccuracyRegExp`, `createDiacriticsRegExp`, `createInstanceOnIframe` … (+49 more).

### 17. `react-transition-group` — CLASSIFY 32KB — 32KB 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` → `FormattingBar`
- `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` … (+532 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` … (+33 more).

### 18. `@floating-ui/react-dom` — CLASSIFY 28KB — 28KB 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/onboarding_tasklist/onboarding_tasklist_completed.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-dom.mjs (27 fns, 17KB)`, `dist/floating-ui.react-dom.umd.js (16 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/onboarding_tasklist/onboarding_tasklist_popover.tsx` → `TaskListPopover`
Existing test(s) that load `@floating-ui/react-dom` 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` … (+417 more).
Currently-unexercised functions in `@floating-ui/react-dom` (context only — chainstrip removes these; do NOT write tests to reach them): `a`, `expandPaddingObject`, `fn`, `frameLoop`, `get`, `getBoundingClientRect`, `getBoundingRect`, `getClientRects`, `getContainingBlock`, `getDocumentRect`, `getExpandedPlacements`, `getHTMLOffset` … (+23 more).

### 19. `simplebar-react` — CLASSIFY 27KB — 27KB 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/common/agents/agent_dropdown.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.mjs (30 fns, 14KB)`, `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/common/scrollbars.tsx` → `(anonymous)`
Existing test(s) that load `simplebar-react` but don't reach the functions above — **extend these**: `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/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx` … (+39 more).
Currently-unexercised functions in `simplebar-react` (context only — chainstrip removes these; do NOT write tests to reach them): `__assign`, `_onMouseEntered`, `_onStopScrolling`, `_onWindowResize`, `baseGetTag`, `baseTrim`, `drag`, `flush`, `getContentElement`, `getOptions$1`, `getRawTag`, `getScrollElement` … (+26 more).

### 20. `redux-persist` — CLASSIFY 24KB — 24KB 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/views/rhs.test.js` 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, 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/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` … (+1103 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).

### 21. `react-redux` — CLASSIFY 16KB — 16KB 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/searchable_sync_job_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/cjs/index.js (7 fns, 11KB)`, `chainstrip-chunk-CQ3sVI98.cjs (3 fns, 3KB)`, `dist/react-redux.mjs (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/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/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/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/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/system_properties/orphaned_fields_utils.ts` → `useIsFieldOrphaned`
- `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` → `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` → `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_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/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_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/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/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_datetime_field/apps_form_datetime_field.tsx` → `AppsFormDateTimeField`
- `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/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_info_rhs/menu.tsx` → `Menu`
- `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_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/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/hooks/use_external_link.ts` → `useExternalLink`
- `channels/src/components/common/hooks/use_search_results_actions.ts` → `useSearchResultsActions`
- `channels/src/components/common/hooks/useAccessControlAttributes.ts` → `useAccessControlAttributes`
- `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/usePluginVisibilityInSharedChannel.ts` → `usePluginVisibilityInSharedChannel`
- `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_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_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/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/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/recaps_list.tsx` → `RecapsList`
- `channels/src/components/recaps/recaps.tsx` → `Recaps`
- `channels/src/components/remove_flagged_message_confirmation_modal/remove_flagged_message_confirmation_modal.tsx` → `KeepRemoveFlaggedMessageConfirmationModal`
- `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/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/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/enable_concurrent_react_experimental_section.tsx` → `EnableConcurrentReactExperimentalSection`
- `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/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` … (+1103 more).
Currently-unexercised functions in `react-redux` (context only — chainstrip removes these; do NOT write tests to reach them): `createInvalidArgFactory`, `get`, `getListeners`, `initMergePropsProxy`, `is`, `isContextConsumer`, `isSubscribed`, `mergePropsProxy`, `notify`, `requireReactRedux_production_min`, `requireUseSyncExternalStoreWithSelector_production`, `stringifyComponent` … (+3 more).

### 22. `tinycolor2` — CLASSIFY 14KB — 14KB 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/global_classification_indicators.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, 10KB)`, `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_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx`, `channels/src/components/admin_console/admin_definition_dcr_allowlist.test.tsx`, `channels/src/components/admin_console/admin_definition_enable_testing.test.tsx` … (+55 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).

### 23. `rebound` — CLASSIFY 12KB — 12KB 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, 12KB)` — 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/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).

### 24. `ipaddr.js` — CLASSIFY 12KB — 12KB 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, 12KB)` — 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_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx`, `channels/src/components/admin_console/admin_definition_dcr_allowlist.test.tsx`, `channels/src/components/admin_console/admin_definition_enable_testing.test.tsx` … (+10 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).

### 25. `web-vitals` — CLASSIFY 10KB — 10KB 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).

### 26. `react-router-dom` — CLASSIFY 8KB — 8KB 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 (6 fns, 7KB)`, `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/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/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` … (+1103 more).
Currently-unexercised functions in `react-router-dom` (context only — chainstrip removes these; do NOT write tests to reach them): `BrowserRouter`, `HashRouter`, `_setPrototypeOf`, `componentDidMount`, `forwardRefShim`, `invariant`, `render`, `requireReactRouterDom_min`.

### 27. `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.js` → `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/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` … (+970 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).

### 28. `react-window-infinite-loader` — 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.)
⚠ **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.esm.js (5 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/channel_members_rhs/member_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` → `UserGroupsList`
Existing test(s) that load `react-window-infinite-loader` 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` … (+198 more).
Currently-unexercised functions in `react-window-infinite-loader` (context only — chainstrip removes these; do NOT write tests to reach them): `_loadUnloadedRanges`, `_loop`, `isRangeVisible`, `resetloadMoreItemsCache`.

### 29. `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/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/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx` … (+83 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`.

### 30. `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/emoji_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/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/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` … (+960 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).

### 31. `@atlaskit/pragmatic-drag-and-drop-hitbox` — 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/channel_bookmarks/hooks/use_keyboard_reorder.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/cjs/closest-edge.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/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/channel_bookmarks/bookmark_item_content.test.tsx`, `channels/src/components/channel_bookmarks/bookmarks_bar_menu.test.tsx`, `channels/src/components/channel_bookmarks/hooks/use_bookmark_drag_drop.test.ts`, `channels/src/components/channel_bookmarks/hooks/use_bookmarks_dnd.test.ts`.
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`.

### 32. `serialize-error` — 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/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: `index.js (5 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/actions/errors.ts` → `(anonymous)`
Existing test(s) that load `serialize-error` 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` … (+549 more).
Currently-unexercised functions in `serialize-error` (context only — chainstrip removes these; do NOT write tests to reach them): `continueDestroyCircular`, `destroyCircular`, `getErrorConstructor`, `isErrorLike`, `serializeError`, `toJSON`.

### 33. `@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` … (+925 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`.

### 34. `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/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/admin_definition_allow_download_logs.test.tsx`, `channels/src/components/admin_console/admin_definition_burn_on_read.test.tsx`, `channels/src/components/admin_console/admin_definition_data_spillage.test.tsx` … (+83 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`.

### 35. `smooth-scroll-into-view-if-needed` — 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.)
⚠ **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/common/agents/agent_dropdown.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 (7 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/common/auto_height_switcher.tsx` → `(anonymous)`
Existing test(s) that load `smooth-scroll-into-view-if-needed` 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/use_submit.test.tsx`, `channels/src/components/browse_channels/browse_channels.test.tsx`, `channels/src/components/channel_header/channel_header.test.tsx`, `channels/src/components/channel_header/channel_header_text.test.tsx` … (+50 more).
Currently-unexercised functions in `smooth-scroll-into-view-if-needed` (context only — chainstrip removes these; do NOT write tests to reach them): `e`, `l`, `method`, `n`, `o`, `o$2`, `r`, `t`.

### 36. `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` … (+1103 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).

### 37. `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`
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` … (+934 more).
Currently-unexercised functions in `redux-batched-actions` (context only — chainstrip removes these; do NOT write tests to reach them): `batchDispatchMiddleware`.

### 38. `exif2css` — 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.)
⚠ **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: `build/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/utils/file_utils.tsx` → `getOrientationStyles`
Existing test(s) that load `exif2css` 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` … (+315 more).
Currently-unexercised functions in `exif2css` (context only — chainstrip removes these; do NOT write tests to reach them): `exif2css`, `expandTransform`, `expandTransformStrings`, `expandTransforms`, `getValue`.

### 39. `country-list` — 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.)
⚠ **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/billing/billing_history.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: `country-list.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/billing/company_info_edit.tsx` → `CompanyInfoEdit`
- `channels/src/components/payment_form/country_selector.tsx` → `CountrySelector`
- `channels/src/utils/utils.tsx` → `getBlankAddressWithCountry`
Existing test(s) that load `country-list` 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` … (+465 more).
Currently-unexercised functions in `country-list` (context only — chainstrip removes these; do NOT write tests to reach them): `getCode`, `getCodeList`, `getCodes`, `getName`, `getNameList`, `getNames`.

### 40. `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` … (+902 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
16 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.

- `katex` (~211KB) — 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` (~123KB) — 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`
- `@popperjs/core` (~104KB) — 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/formatting_bar/hooks.tsx`
- `intl-messageformat` (~94KB) — 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/types.ts`, `channels/src/components/widgets/modals/components/base_setting_item.tsx`
- `tippy.js` (~59KB) — 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`
- `@testing-library/jest-dom` (~56KB) — 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: `platform/components/setup_jest.ts`, `platform/shared/setup_jest.ts`
- `history` (~49KB) — 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` …
- `node-fetch` (~44KB) — 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: `platform/client/setup_jest.ts`
- `regenerator-runtime` (~22KB) — 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/plugins/index.ts`
- `react-router` (~17KB) — 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` (~15KB) — 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` (~14KB) — 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` (~8KB) — 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`
- `p-queue` (~6KB) — 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/data_prefetch/data_prefetch.tsx`
- `@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-07-26T19:16:30.167Z. 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 36 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.

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:

Book a demo A 15-minute walkthrough: a live elimination on an open-source tree, plus a rough cut of your own ladder from nothing but your lockfile.