59b905649e
Add pluralization support to Translation component ( #4441 )
...
* Initial plan
* Add pluralization support to Translation component with comprehensive tests
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Javascript formatting autofixes
* Update web/tests/translation.test.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update web/components/ui/Translation/Translation.tsx
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix: linter warning
* Simplify pluralization logic: use original key for plural, only _one for singular
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* feat(i18n): fix support for nested namespace string and key extraction
* chore: update extracted translations
* fix(i18n): fix linter warnings in extraction script
* Update web/scripts/i18n-extract.js
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* feat(i18n): sort translation keys
* fix(i18n): fix linter warnings
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
Co-authored-by: Owncast <owncast@owncast.online >
Co-authored-by: Gabe Kangas <gabek@real-ity.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-13 17:34:06 -07:00
29b5100114
Create custom Translation component for better i18n handling ( #4431 )
...
* Initial plan
* Implement Translation component with Storybook stories
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Add Jest test for Translation component and demonstrate ?lang=de functionality
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Javascript formatting autofixes
* Create centralized type-safe localization system
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Add @testing-library/react to Translation component tests
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Fix code formatting errors with prettier and eslint
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Revert "Fix code formatting errors with prettier and eslint"
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* fix(js): eslinter errors
* fix(js): unused code warnings
* fix(js): fix additional warnings
* Update Emoji admin page to use new Translation component
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Organize localization keys by logical sections (Frontend, Admin, Common, Testing)
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Organize localization keys by TypeScript namespaces
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* Javascript formatting autofixes
* feat(js): add support for default translated text
* chore: add default lang translations on commit
* fix(js): unused code warnings
* Update OfflineBanner component to use new Translation component
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* fix(js): fix localization extraction job
* chore(js): remove ts-node cli
* fix(css): fix css warning
* feat(js): add some additional translation strings via component
* chore: update extracted translations
* test: add tests for Translation component defaultText and fallback behavior
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
* chore: update extracted translations
* Javascript formatting autofixes
* chore: call out new Translation component
* fix: linter warning
* chore: updated instructions
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: gabek <414923+gabek@users.noreply.github.com >
Co-authored-by: Owncast <owncast@owncast.online >
Co-authored-by: Gabe Kangas <gabek@real-ity.com >
2025-07-13 02:21:46 -07:00
renovate[bot] and GitHub
b50b4959d8
chore(deps): update peter-evans/create-or-update-comment digest to 4feedfc
2025-07-09 06:54:01 +00:00
Gabe Kangas
8234974ad0
Additional instructions
2025-07-03 17:31:26 -07:00
Gabe Kangas
c8aa572ecc
Add some configs to improve copilot functionailty
2025-07-03 15:31:05 -07:00
renovate[bot] and GitHub
1d1abc51f0
chore(deps): update peter-evans/create-or-update-comment digest to bb25fe0
2025-07-02 07:55:40 +00:00
renovate[bot] and GitHub
f3989d5d71
chore(deps): update peter-evans/create-or-update-comment digest to f2fea6b
2025-06-25 09:31:07 +00:00
renovate[bot] and GitHub
7fb0f2724f
chore(deps): update peter-evans/create-or-update-comment digest to 09354dd
2025-06-18 07:12:09 +00:00
renovate[bot] and GitHub
2a7f45d011
chore(deps): update peter-evans/create-or-update-comment digest to e5c3b7c
2025-06-11 05:34:03 +00:00
renovate[bot] and GitHub
99298662ff
chore(deps): update peter-evans/create-or-update-comment digest to 729ad10
2025-06-04 05:47:44 +00:00
renovate[bot] and GitHub
a6b41d798d
chore(deps): update peter-evans/create-or-update-comment digest to 998d73b
2025-05-28 09:24:43 +00:00
renovate[bot] and GitHub
e8d90f8a1e
chore(deps): update peter-evans/create-or-update-comment digest to 70cab58
2025-05-21 06:51:25 +00:00
renovate[bot] and GitHub
d2446d9fc2
chore(deps): update peter-evans/create-or-update-comment digest to ba1ae22
2025-05-15 20:33:41 +00:00
renovate[bot] and GitHub
7f9ac33dc1
chore(deps): update peter-evans/create-or-update-comment digest to 72dabb4
2025-05-14 07:23:31 +00:00
62986a21f3
chore(deps): update peter-evans/create-or-update-comment digest to b8f7611 ( #4328 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-08 08:01:33 +00:00
renovate[bot] and GitHub
fe089888f2
chore(deps): update peter-evans/create-or-update-comment digest to cef12e0
2025-04-30 08:29:14 +00:00
renovate[bot] and GitHub
e594bce53c
chore(deps): update peter-evans/create-or-update-comment digest to 17c9563
2025-04-09 05:56:51 +00:00
renovate[bot] and GitHub
84aa0cf93e
chore(deps): update peter-evans/create-or-update-comment digest to 9561a83
2025-04-02 05:28:55 +00:00
e0a63bcb43
chore(deps): update peter-evans/create-or-update-comment digest to 227bde7 ( #4217 )
...
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-03-28 05:28:31 +00:00
Gabe Kangas and GitHub
6e4a237a72
Bump Golang version to 1.24 ( #4226 )
...
* chore(go): bump golang version to 1.24
* chore(tests): bump golang versions for running tests under ci
* chore(ci): bump golangci-lint version
* chore(go): add golangci-lint to tools list
* chore(go): add gofumpt to tools list
* fix(ci): fix golang-ci version definition
2025-02-25 20:42:14 -08:00
Gabe Kangas and GitHub
1577ebe475
chore(ci): run go tests under arm runners. closes #4120
2025-02-24 17:05:28 -08:00
renovate[bot] and GitHub
6d6edda5e3
chore(deps): update peter-evans/create-or-update-comment digest to 54ad810
2025-02-12 05:51:16 +00:00
Gabe Kangas and GitHub
92d75ddefc
Update CI jobs to support PR branches ( #4189 )
...
* fix(ci): check out correct repo+ref for PRs. Addresses #3999
* fix(ci): update a bunch of other CI jobs to specify refs. For #3999
2025-02-06 19:48:56 -08:00
renovate[bot] and GitHub
071bb660dc
chore(deps): update peter-evans/create-or-update-comment digest to 362dbaf
2025-02-05 08:35:49 +00:00
renovate[bot] and GitHub
213352414d
chore(deps): update peter-evans/create-or-update-comment digest to 1a53cbe
2025-01-29 09:28:03 +00:00
renovate[bot] and GitHub
7ecc7d33d4
chore(deps): update peter-evans/create-or-update-comment digest to 2ef7be1
2025-01-22 06:37:22 +00:00
Gabe Kangas
ce976a5f0b
chore(ci): tweak i18n workflows
2025-01-19 13:20:32 -08:00
Gabe Kangas
0f48bc4904
chore(i18n): run workflow every hour + download translations for PR
2025-01-15 14:18:37 -08:00
Gabe Kangas
648856dcd1
chore: update i18n workflow/config
2025-01-15 13:41:44 -08:00
renovate[bot] and GitHub
a4ed2c14be
chore(deps): update peter-evans/create-or-update-comment digest to fdb73c4
2025-01-15 05:33:32 +00:00
cb387d88be
Initial localization work ( #3980 )
...
* First pass at configuring localization
* Add CI job for translations
* Update CI job
* Update default value
* Update parser config
* Update defaults again
* try to fix the multiple parsing of a file
* Update crowdlin config
* Update configs
* New Crowdin translations by GitHub Action (#3448 )
Co-authored-by: Crowdin Bot <support+bot@crowdin.com >
* Point to updated translated files
* Tooltip i18n
* Run translation job when web components are updated
* Commit updated translations
* Translations update (#3453 )
* Update source file strings.json
Updated translations
* New translations strings.json (French)
Updated translations
* New translations strings.json (Spanish)
Updated translations
* New translations strings.json (German)
Updated translations
* New translations strings.json (English, United States)
Updated translations
* Commit updated translations
* New Crowdin translations by GitHub Action (#3452 )
Co-authored-by: Owncast <owncast@owncast.online >
* chore(deps): update to next config to address build errors
* New Crowdin translations by GitHub Action (#3455 )
Co-authored-by: Crowdin Bot <support+bot@crowdin.com >
* Translations update (#3456 )
* New translations strings.json (Arabic)
Updated translations
* New translations strings.json (German)
Updated translations
* New translations strings.json (Greek)
Updated translations
* New translations strings.json (Irish)
Updated translations
* New translations strings.json (Italian)
Updated translations
* New translations strings.json (Japanese)
Updated translations
* New translations strings.json (Korean)
Updated translations
* New translations strings.json (Dutch)
Updated translations
* New translations strings.json (Norwegian)
Updated translations
* New translations strings.json (Punjabi)
Updated translations
* New translations strings.json (Russian)
Updated translations
* New translations strings.json (Swedish)
Updated translations
* New translations strings.json (Chinese Traditional)
Updated translations
* New translations strings.json (Vietnamese)
Updated translations
* New translations strings.json (Bengali)
Updated translations
* New translations strings.json (Thai)
Updated translations
* New translations strings.json (Croatian)
Updated translations
* New translations strings.json (Hindi)
Updated translations
* New translations strings.json (Malay)
Updated translations
* New Crowdin translations by GitHub Action (#3457 )
* New translations strings.json (Arabic)
Updated translations
* New translations strings.json (German)
Updated translations
* New translations strings.json (Greek)
Updated translations
* New translations strings.json (Irish)
Updated translations
* New translations strings.json (Italian)
Updated translations
* New translations strings.json (Japanese)
Updated translations
* New translations strings.json (Korean)
Updated translations
* New translations strings.json (Dutch)
Updated translations
* New translations strings.json (Norwegian)
Updated translations
* New translations strings.json (Punjabi)
Updated translations
* New translations strings.json (Russian)
Updated translations
* New translations strings.json (Swedish)
Updated translations
* New translations strings.json (Chinese Traditional)
Updated translations
* New translations strings.json (Vietnamese)
Updated translations
* New translations strings.json (Bengali)
Updated translations
* New translations strings.json (Thai)
Updated translations
* New translations strings.json (Croatian)
Updated translations
* New translations strings.json (Hindi)
Updated translations
* New translations strings.json (Malay)
Updated translations
* New Crowdin translations by GitHub Action
---------
Co-authored-by: Gabe Kangas <gabek@real-ity.com >
Co-authored-by: Crowdin Bot <support+bot@crowdin.com >
* Commit updated API documentation
* Update translations job
* New Crowdin translations by GitHub Action (#3698 )
Co-authored-by: Crowdin Bot <support+bot@crowdin.com >
* Update Crowdin configuration file
* Translations update (#3700 )
* New translations strings.json (French)
Updated translations
* New translations strings.json (Italian)
Updated translations
* Translations update (#3699 )
* New translations strings.json (French)
Updated translations
* New translations strings.json (Spanish)
Updated translations
* New translations strings.json (Italian)
Updated translations
* New translations strings.json (Japanese)
Updated translations
* New translations strings.json (Polish)
Updated translations
* New translations strings.json (Russian)
Updated translations
* New translations strings.json (Portuguese, Brazilian)
Updated translations
* Commit updated API documentation
---------
Co-authored-by: Owncast <owncast@owncast.online >
* New Crowdin translations by GitHub Action (#3701 )
* New translations strings.json (French)
Updated translations
* New translations strings.json (Spanish)
Updated translations
* New translations strings.json (Italian)
Updated translations
* New translations strings.json (Japanese)
Updated translations
* New translations strings.json (Polish)
Updated translations
* New translations strings.json (Russian)
Updated translations
* New translations strings.json (Portuguese, Brazilian)
Updated translations
* New Crowdin translations by GitHub Action
---------
Co-authored-by: Gabe Kangas <gabek@real-ity.com >
Co-authored-by: Crowdin Bot <support+bot@crowdin.com >
* Draft: Mark strings for translation. (#3458 )
* Mark strings for translation.
* Mark up strings for translation
* fix(web): fix linter warnings
---------
Co-authored-by: Le fractal <17422-fractal@users.noreply.framagit.org >
Co-authored-by: Gabe Kangas <gabek@real-ity.com >
* do not pull from cowdin via workflow
* Commit updated translations
* feat: add translations support to admin pages and components (#3977 )
* feat: add translations support to admin pages and components
Added translations support admin main page and its components, help
page, handware-info page. Added translations support for LogTable,
NewsFeed and StreamHealthOverview components.
* update package.json
* fix rendering issue
* Commit updated API documentation
---------
Co-authored-by: Owncast <owncast@owncast.online >
Co-authored-by: Gabe Kangas <gabek@real-ity.com >
* Offline banner i18n formatting (#3997 )
* Fix "Last live ago" string formatting with i18n interpolation
* Change some base translation jsons to use i18n interpolation
* Linting fix
* chore(js): ignore i18n pkgs in knip
* fix(test): fix browser ui test
* fix(js): remove unused var
---------
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Crowdin Bot <support+bot@crowdin.com >
Co-authored-by: Owncast <owncast@owncast.online >
Co-authored-by: taintedcypher <119351153+taintedcypher@users.noreply.github.com >
Co-authored-by: Le fractal <17422-fractal@users.noreply.framagit.org >
Co-authored-by: Sufyaan Khateeb <81009832+SufyaanKhateeb@users.noreply.github.com >
Co-authored-by: mahmed2000 <mahmad2000@protonmail.com >
2025-01-14 20:54:21 -08:00
renovate[bot] and GitHub
0140601335
chore(deps): update peter-evans/create-or-update-comment digest to 853a4fc
2025-01-08 08:22:01 +00:00
Gabe Kangas and GitHub
2d4b5eb105
Do not mark as stale if it is assigned to a milestone
2025-01-06 13:48:06 -08:00
renovate[bot] and GitHub
092b76b449
chore(deps): update peter-evans/create-or-update-comment digest to 4ed2ee4
2025-01-01 06:17:18 +00:00
renovate[bot] and GitHub
852dd61810
chore(deps): update peter-evans/create-or-update-comment digest to 861c151
2024-12-18 07:22:30 +00:00
Gabe Kangas and GitHub
3bbbca9465
Remove nightly screenshot job. Re: #3999
2024-12-12 12:14:49 -08:00
renovate[bot] and GitHub
a5f25299b5
chore(deps): update peter-evans/create-or-update-comment digest to d7d9eb5
2024-12-11 08:01:06 +00:00
renovate[bot] and GitHub
26ceac7069
chore(deps): update peter-evans/create-or-update-comment digest to 1abf947
2024-12-04 08:31:53 +00:00
renovate[bot] and GitHub
ff1f201798
chore(deps): update peter-evans/create-or-update-comment digest to 267c060
2024-11-27 06:05:32 +00:00
renovate[bot] and GitHub
8985947d7f
chore(deps): update peter-evans/create-or-update-comment digest to 7157823
2024-11-20 07:57:56 +00:00
Gabe Kangas and GitHub
83ef466ee1
fix(ci): check out repo if event_name is schedule
2024-11-08 13:16:13 -08:00
renovate[bot] and GitHub
962d03710d
chore(deps): update peter-evans/create-or-update-comment digest to 213b1f9
2024-11-06 06:21:32 +00:00
renovate[bot] and GitHub
ed21911288
chore(deps): update peter-evans/create-or-update-comment digest to 6f2ce0e
2024-10-30 08:31:18 +00:00
renovate[bot] and GitHub
01dc997fb4
chore(deps): update peter-evans/create-or-update-comment digest to d5aa8cd
2024-10-23 06:20:24 +00:00
Gabe Kangas
742df5322f
fix(web): specify node version to be 22.9.0 for builds
2024-10-19 11:51:23 -07:00
renovate[bot] and GitHub
c00440d918
chore(deps): update peter-evans/create-or-update-comment digest to 1b44297
2024-10-09 10:48:53 +00:00
Gabe Kangas
8d08ae5147
chore: tweaking workflow text
2024-10-06 21:44:19 -07:00
Gabe Kangas
e5aa3c3cfb
fix: remove invalid setting
2024-10-06 19:54:42 -07:00
Gabe Kangas
b55e4045c1
chore: replace old stale github app with workflow action
2024-10-06 18:12:13 -07:00
renovate[bot] and GitHub
b00c48e369
chore(deps): update peter-evans/create-or-update-comment digest to 48de637
2024-10-02 06:34:21 +00:00