itube-specs 0.0.833 → 0.0.834

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -52,8 +52,8 @@
52
52
  >
53
53
  <span class="player-menu__label">{{ entry.label }}</span>
54
54
  <UiToggle
55
- :model-value="entry.toggle.value"
56
- @update:model-value="entry.toggle.set(!!$event)"
55
+ :model-value="toggleOverrides[entry.key] ?? entry.toggle.value"
56
+ @update:model-value="setToggle(entry, !!$event)"
57
57
  />
58
58
  </div>
59
59
  <button
@@ -188,10 +188,23 @@ const open = defineModel<boolean>('open', { required: true });
188
188
  // Стек дрилла «Настройки → опция». Сбрасываем на каждый новый запрос (плеер эмитит
189
189
  // menurequest на каждое нажатие кнопки — открываем корень меню заново).
190
190
  const drill = shallowRef<Drill | null>(null);
191
+
192
+ // Плеер отдаёт toggle.value разовым снимком и НЕ переэмитит menurequest на
193
+ // переключение — держим локальный оверрайд, чтобы тумблер сразу двигался.
194
+ // Сбрасываем на каждый новый запрос (свежие значения из плеера).
195
+ const toggleOverrides = reactive<Record<string, boolean>>({});
196
+
191
197
  watch(() => props.request, () => {
192
198
  drill.value = null;
199
+ for (const key in toggleOverrides) delete toggleOverrides[key];
193
200
  });
194
201
 
202
+ function setToggle(entry: SettingsEntry, on: boolean): void {
203
+ if (!entry.toggle) return;
204
+ entry.toggle.set(on);
205
+ toggleOverrides[entry.key] = on;
206
+ }
207
+
195
208
  // select у плеера сам делает setRate/seek/play и шлёт свои события — руками ничего не
196
209
  // дёргаем, просто закрываем шторку.
197
210
  function pick(select: (value: string) => void, value: string): void {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "itube-specs",
3
3
  "type": "module",
4
- "version": "0.0.833",
4
+ "version": "0.0.834",
5
5
  "main": "./nuxt.config.ts",
6
6
  "types": "./types/index.d.ts",
7
7
  "scripts": {