Skip to content

fix(core): use camelCase attribute names in slider for react#708

Merged
mihar-22 merged 1 commit intomainfrom
fix/slider-react-attr-casing
Mar 4, 2026
Merged

fix(core): use camelCase attribute names in slider for react#708
mihar-22 merged 1 commit intomainfrom
fix/slider-react-attr-casing

Conversation

@mihar-22
Copy link
Copy Markdown
Member

@mihar-22 mihar-22 commented Mar 4, 2026

Summary

SliderCore.getAttrs() returned lowercase HTML attribute names (tabindex, autocomplete) which caused React console warnings when passed through to createElement. This aligns slider attributes with the existing createButton() convention that already uses camelCase (tabIndex).

Changes

  • Use tabIndex / autoComplete (camelCase) in SliderCore.getAttrs() instead of tabindex / autocomplete
  • Update test assertions across slider, time-slider, and volume-slider core tests
Implementation details

The HTML custom element path (applyElementProps) calls setAttribute() which normalizes attribute names to lowercase per the DOM spec, so camelCase keys still produce correct tabindex="0" attributes in the DOM. The HTML element tests (getAttribute('tabindex')) pass without changes.

Testing

pnpm -F @videojs/core test src/core/ui/slider src/core/ui/time-slider src/core/ui/volume-slider — 69 tests pass.
pnpm -F @videojs/html test src/ui/slider — 23 tests pass.

@netlify
Copy link
Copy Markdown

netlify bot commented Mar 4, 2026

Deploy Preview for vjs10-site ready!

Name Link
🔨 Latest commit 05e154c
🔍 Latest deploy log https://app.netlify.com/projects/vjs10-site/deploys/69a87c639cd735000899c017
😎 Deploy Preview https://deploy-preview-708--vjs10-site.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@mihar-22 mihar-22 changed the title fix(core): use camelCase attribute names in slider getAttrs for React compatibility fix(core): use camelCase attribute names in slider for react Mar 4, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Mar 4, 2026

📦 Bundle Size Report

Package Size Diff %
@videojs/core 10.41 kB -2 B ██░░░░░░ -0.0% 🔽
@videojs/element 1.60 kB 0 B ░░░░░░░░ 0%
@videojs/html 26.95 kB -27 B ████████ -0.1% 🔽
@videojs/icons 7.49 kB 0 B ░░░░░░░░ 0%
@videojs/react 15.08 kB -7 B ████░░░░ -0.0% 🔽
@videojs/store 1.96 kB 0 B ░░░░░░░░ 0%
@videojs/utils 2.81 kB 0 B ░░░░░░░░ 0%

Total: 66.30 kB · -36 B · -0.1%


Entry Breakdown

Subpath sizes are the additional bytes on top of the root entry point, measured by bundling root + subpath together and subtracting the root-only size.

@videojs/core
Entry Base PR Diff %
. 4.39 kB 4.39 kB +7 B +0.2% 🔺
./dom 6.03 kB 6.02 kB -9 B -0.1% 🔽
total 10.41 kB 10.41 kB -2 B -0.0%
@videojs/element
Entry Base PR Diff %
. 817 B 817 B 0 B 0%
./context 823 B 823 B 0 B 0%
total 1.60 kB 1.60 kB 0 B 0%
@videojs/html
Entry Base PR Diff %
. 15.45 kB 15.47 kB +15 B +0.1% 🔺
./video 9.44 kB 9.41 kB -35 B -0.4% 🔽
./audio 1.06 kB 1.04 kB -14 B -1.3% 🔽
./background 1.02 kB 1.03 kB +7 B +0.7% 🔺
total 26.98 kB 26.95 kB -27 B -0.1%
@videojs/icons
Entry Base PR Diff %
./react 2.27 kB 2.27 kB 0 B 0%
./html 1.52 kB 1.52 kB 0 B 0%
./render 1.59 kB 1.59 kB 0 B 0%
./element 2.11 kB 2.11 kB 0 B 0%
total 7.49 kB 7.49 kB 0 B 0%
@videojs/store
Entry Base PR Diff %
. 1.31 kB 1.31 kB 0 B 0%
./html 472 B 472 B 0 B 0%
./react 199 B 199 B 0 B 0%
total 1.96 kB 1.96 kB 0 B 0%
@videojs/utils
Entry Base PR Diff %
./array 104 B 104 B 0 B 0%
./dom 928 B 928 B 0 B 0%
./events 227 B 227 B 0 B 0%
./function 261 B 261 B 0 B 0%
./object 119 B 119 B 0 B 0%
./predicate 265 B 265 B 0 B 0%
./string 148 B 148 B 0 B 0%
./style 185 B 185 B 0 B 0%
./time 478 B 478 B 0 B 0%
./number 158 B 158 B 0 B 0%
total 2.81 kB 2.81 kB 0 B 0%

ℹ️ How to interpret

Sizes are minified + brotli, measured with esbuild.
Package totals are computed as root size + marginal subpath costs.
Subpath marginal cost = (root + subpath bundled together) − root alone.

Icon Meaning
No change
🔺 Increased ≤ 10%
🔴 Increased > 10%
🔽 Decreased
🆕 New (no baseline)

Run pnpm size locally to check current sizes.

@mihar-22 mihar-22 merged commit 4e1f3af into main Mar 4, 2026
19 checks passed
@mihar-22 mihar-22 deleted the fix/slider-react-attr-casing branch March 4, 2026 18:46
This was referenced Mar 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant