Skip to content

Commit 3c1f6ec

Browse files
committed
Merge branch 'fix-pageheader-subs' into custom-builds/current
* fix-pageheader-subs: Fix extracting the subscriber count from channel PageHeader nodes ! Fix handling of video data without `published` (FreeTubeApp#4788) Keep the video options button visible when the dropdown is open (FreeTubeApp#4771) Bump the babel group with 3 updates (FreeTubeApp#4797) Bump the stylelint group with 2 updates (FreeTubeApp#4799) Bump the eslint group with 2 updates (FreeTubeApp#4798) Bump webpack-dev-server from 5.0.3 to 5.0.4 (FreeTubeApp#4800) Bump webpack from 5.90.3 to 5.91.0 (FreeTubeApp#4801) Bump electron from 29.1.4 to 29.1.5 (FreeTubeApp#4802) Translated using Weblate (Portuguese (Brazil)) Translated using Weblate (Finnish) Bump webpack-dev-middleware from 7.0.0 to 7.1.1 (FreeTubeApp#4789)
2 parents 1cb0376 + d65e5a2 commit 3c1f6ec

File tree

6 files changed

+711
-660
lines changed

6 files changed

+711
-660
lines changed

package.json

+10-10
Original file line numberDiff line numberDiff line change
@@ -80,42 +80,42 @@
8080
"youtubei.js": "^9.1.0"
8181
},
8282
"devDependencies": {
83-
"@babel/core": "^7.24.0",
84-
"@babel/eslint-parser": "^7.23.10",
83+
"@babel/core": "^7.24.3",
84+
"@babel/eslint-parser": "^7.24.1",
8585
"@babel/plugin-proposal-class-properties": "^7.18.6",
86-
"@babel/preset-env": "^7.24.0",
86+
"@babel/preset-env": "^7.24.3",
8787
"@double-great/stylelint-a11y": "^3.0.2",
8888
"babel-loader": "^9.1.3",
8989
"copy-webpack-plugin": "^12.0.2",
9090
"css-loader": "^6.10.0",
9191
"css-minimizer-webpack-plugin": "^6.0.0",
92-
"electron": "^29.1.4",
92+
"electron": "^29.1.5",
9393
"electron-builder": "^24.13.3",
9494
"eslint": "^8.57.0",
9595
"eslint-config-prettier": "^9.1.0",
9696
"eslint-config-standard": "^17.1.0",
9797
"eslint-plugin-import": "^2.29.1",
98-
"eslint-plugin-jsonc": "^2.13.0",
98+
"eslint-plugin-jsonc": "^2.14.1",
9999
"eslint-plugin-n": "^16.6.2",
100100
"eslint-plugin-prettier": "^5.1.3",
101101
"eslint-plugin-promise": "^6.1.1",
102102
"eslint-plugin-unicorn": "^51.0.1",
103103
"eslint-plugin-vue": "^9.23.0",
104104
"eslint-plugin-vuejs-accessibility": "^2.2.1",
105-
"eslint-plugin-yml": "^1.12.2",
105+
"eslint-plugin-yml": "^1.13.2",
106106
"html-webpack-plugin": "^5.6.0",
107107
"js-yaml": "^4.1.0",
108108
"json-minimizer-webpack-plugin": "^5.0.0",
109109
"lefthook": "^1.6.7",
110110
"mini-css-extract-plugin": "^2.8.1",
111111
"npm-run-all": "^4.1.5",
112-
"postcss": "^8.4.36",
112+
"postcss": "^8.4.38",
113113
"postcss-scss": "^4.0.9",
114114
"prettier": "^2.8.8",
115115
"rimraf": "^5.0.5",
116116
"sass": "^1.72.0",
117117
"sass-loader": "^14.1.1",
118-
"stylelint": "^16.2.1",
118+
"stylelint": "^16.3.0",
119119
"stylelint-config-sass-guidelines": "^11.1.0",
120120
"stylelint-config-standard": "^36.0.0",
121121
"stylelint-high-performance-animation": "^1.10.0",
@@ -124,9 +124,9 @@
124124
"vue-devtools": "^5.1.4",
125125
"vue-eslint-parser": "^9.4.2",
126126
"vue-loader": "^15.10.0",
127-
"webpack": "^5.90.3",
127+
"webpack": "^5.91.0",
128128
"webpack-cli": "^5.1.4",
129-
"webpack-dev-server": "^5.0.3",
129+
"webpack-dev-server": "^5.0.4",
130130
"webpack-watch-external-files-plugin": "^3.0.0",
131131
"yaml-eslint-parser": "^1.2.2"
132132
}

src/renderer/helpers/api/local.js

+7-1
Original file line numberDiff line numberDiff line change
@@ -513,7 +513,13 @@ export function parseLocalChannelHeader(channel) {
513513
}
514514

515515
if (header.content.metadata) {
516-
subscriberText = header.content.metadata.metadata_rows[0].metadata_parts[1].text.text
516+
// YouTube has already changed the indexes for where the information is stored once,
517+
// so we should search for it instead of using hardcoded indexes, just to be safe for the future
518+
519+
subscriberText = header.content.metadata.metadata_rows
520+
.flatMap(row => row.metadata_parts ? row.metadata_parts : [])
521+
.find(part => part.text.text?.includes('subscriber'))
522+
?.text.text
517523
}
518524

519525
break

src/renderer/scss-partials/_ft-list-item.scss

+3-1
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,9 @@ $watched-transition-duration: 0.5s;
370370
}
371371

372372
&:hover .optionsButton,
373-
&:has(:focus-visible) .optionsButton {
373+
&:has(:focus-visible) .optionsButton,
374+
// Keep visible when the drop down is open
375+
:deep(.optionsButton:has(> .iconDropdown:focus-within)) {
374376
opacity: 1;
375377
}
376378

static/locales/fi.yaml

+3
Original file line numberDiff line numberDiff line change
@@ -1098,3 +1098,6 @@ Playlist will not pause when current video is finished: Soittolistaa ei keskeyte
10981098
Channel Hidden: '{channel} lisätty kanavasuodattimeen'
10991099
Go to page: Siirry sivulle {page}
11001100
Channel Unhidden: '{channel} poistettu kanavasuodattimesta'
1101+
Age Restricted:
1102+
This video is age restricted: Tämä video on ikärajoitettu
1103+
This channel is age restricted: Tämä kanava on ikärajoitettu

static/locales/pt-BR.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -622,7 +622,7 @@ Settings:
622622
Download in app: Baixar no aplicativo
623623
Download Behavior: Comportamento de download
624624
Parental Control Settings:
625-
Show Family Friendly Only: Mostrar apenas conteúdo recomendado para todas as idades
625+
Show Family Friendly Only: Mostrar apenas conteúdo adequado para toda a família
626626
Hide Search Bar: Ocultar barra de pesquisa
627627
Parental Control Settings: Configurações de Controle Parental
628628
Hide Unsubscribe Button: Ocultar botão de cancelamento de inscrição

0 commit comments

Comments
 (0)