Skip to content

Add Slovak (sk) language support and fix getTranslationText() bug#748

Merged
joedolson merged 5 commits into
ableplayer:developfrom
rraddatch:main
Jun 21, 2026
Merged

Add Slovak (sk) language support and fix getTranslationText() bug#748
joedolson merged 5 commits into
ableplayer:developfrom
rraddatch:main

Conversation

@rraddatch

Copy link
Copy Markdown
Contributor

Summary

Follow-up to #747 (Slovak translation). This PR adds:

  1. Bug fix in getTranslationText() (affects all languages using data-lang)

    Three bugs in the data-lang attribute code path:

    • Missing ! negation: Object.hasOwn(supportedLangs, this.lang) entered the
      "not supported" fallback even for supported languages like sk
    • In the fallback loop: this.lang = value assigned the display name (e.g.
      "Slovak") instead of the language code ("sk"), breaking the module lookup
    • Object.hasOwn(...) !== -1hasOwn returns boolean, not -1

    Without this fix, data-lang="sk" causes the player to fall back to English
    despite Slovak being listed in getSupportedLangs().

  2. Slovak registered in all non-minified build files

    Added Slovak variable declarations, moduleFromTag entry, and
    getSupportedLangs() entry to: build/ableplayer.js,
    build/ableplayer.dist.js, build/ableplayer.esm.js,
    build/separate-dompurify/ableplayer.js,
    build/separate-dompurify/ableplayer.dist.js.

    (Minified files require a rebuild via npm run build.)

  3. Slovak demo page (demos/local-sk.html)

    Follows the pattern of local-de.html. Default tracks are Slovak, English
    as fallback. Includes sign language (data-sign-src) and described video
    (data-desc-src) using existing wwa_sign and wwa_described assets.

  4. Slovak WebVTT tracks (media/)

    • wwa_captions_sk.vtt — captions translated from English, same timestamps
    • wwa_description_sk.vtt — audio descriptions
    • wwa_chapters_sk.vtt — chapters: Úvod, Terrill Thompson

Test plan

  • Open demos/local-sk.html via HTTP server; verify player UI is in Slovak
  • Verify CC button appears and Slovak captions display correctly
  • Verify transcript panel appears below the player
  • Toggle descriptions on/off; toggle sign language window
  • Verify other language demos (local-de.html etc.) still work

- Add translations/sk.json with full Slovak translation (~170 keys)
- Wire Slovak into all 5 non-minified build files: add sk variable block,
  register in moduleFromTag, add sk: Slovak to getSupportedLangs()
- Fix three bugs in getTranslationText() affecting all languages:
  missing ! negation on Object.hasOwn check, value/key swap in fallback
  loop, and incorrect !== -1 comparison on a boolean return value
- Add Slovak demo page (demos/local-sk.html) with sign language and
  described video support
- Add Slovak WebVTT tracks: captions, audio descriptions, chapters

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@joedolson

Copy link
Copy Markdown
Member

Thanks!

There's no need to make any PRs to commit to built files; as noted in my contribution guide, I prefer for built files to be omitted from all PRs.

@joedolson joedolson merged commit 7677292 into ableplayer:develop Jun 21, 2026
@joedolson joedolson added this to the 5.0 milestone Jun 21, 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.

2 participants