itube-specs 0.0.792 → 0.0.794

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.
Files changed (122) hide show
  1. package/components/adv/native-banner.vue +22 -17
  2. package/components/adv/native-bottom.vue +8 -6
  3. package/components/adv/native-player.vue +8 -6
  4. package/components/adv/ntv.vue +4 -3
  5. package/components/auth/icon.vue +4 -3
  6. package/components/auth/login.vue +39 -33
  7. package/components/auth/popup.vue +30 -24
  8. package/components/auth/recovery.vue +29 -24
  9. package/components/auth/register.vue +59 -50
  10. package/components/card/category-mini.vue +6 -4
  11. package/components/card/category.vue +25 -21
  12. package/components/card/channel-mini.vue +17 -13
  13. package/components/card/channel.vue +36 -29
  14. package/components/card/model-mini.vue +24 -19
  15. package/components/card/model.vue +43 -33
  16. package/components/card/playlist-mini.vue +19 -16
  17. package/components/card/playlist.vue +97 -73
  18. package/components/card/round.vue +16 -13
  19. package/components/card/video/dropdown.vue +55 -41
  20. package/components/card/video/index.vue +99 -81
  21. package/components/card/video/mini.vue +19 -15
  22. package/components/card/video/preview.vue +7 -6
  23. package/components/category/by-letter.vue +4 -3
  24. package/components/category/group.vue +18 -13
  25. package/components/category/letter-groups.vue +4 -3
  26. package/components/category/list.vue +19 -16
  27. package/components/category/nav.vue +15 -12
  28. package/components/filter/btn.vue +13 -10
  29. package/components/filter/chips.vue +8 -7
  30. package/components/filter/main.vue +27 -23
  31. package/components/filter/model-field.vue +43 -38
  32. package/components/filter/model.vue +33 -28
  33. package/components/filter/page.vue +53 -43
  34. package/components/filter/popup.vue +75 -60
  35. package/components/filter/selects.vue +63 -49
  36. package/components/filter/slider.vue +23 -20
  37. package/components/filter/videos-chips.vue +3 -2
  38. package/components/grid/categories.vue +5 -4
  39. package/components/grid/channels.vue +9 -7
  40. package/components/grid/models.vue +10 -8
  41. package/components/grid/playlists.vue +6 -5
  42. package/components/grid/videos.vue +35 -31
  43. package/components/info/grid.vue +43 -34
  44. package/components/info/main.vue +94 -71
  45. package/components/info/socials.vue +13 -11
  46. package/components/layout/burger-item.vue +44 -36
  47. package/components/layout/burger.vue +45 -35
  48. package/components/layout/cookie.vue +14 -11
  49. package/components/layout/extra-links.vue +6 -5
  50. package/components/layout/footer-language.vue +35 -28
  51. package/components/layout/header-user.vue +66 -51
  52. package/components/layout/header.vue +55 -42
  53. package/components/layout/language.vue +67 -54
  54. package/components/layout/logo.vue +11 -9
  55. package/components/layout/nav.vue +36 -29
  56. package/components/layout/skip-link.vue +3 -2
  57. package/components/player/aside-videos.vue +10 -8
  58. package/components/player/autoplay.vue +7 -5
  59. package/components/player/channel.vue +25 -19
  60. package/components/player/core.vue +11 -10
  61. package/components/player/follow.vue +17 -13
  62. package/components/player/info.vue +9 -6
  63. package/components/player/interface.vue +50 -38
  64. package/components/player/like.vue +32 -24
  65. package/components/player/main.vue +12 -10
  66. package/components/player/playlist.vue +79 -61
  67. package/components/player/sponsored.vue +20 -16
  68. package/components/playlist/add.vue +89 -71
  69. package/components/playlist/delete-video.vue +23 -18
  70. package/components/playlist/edit.vue +64 -49
  71. package/components/playlist/input.vue +32 -24
  72. package/components/playlist/main.vue +21 -18
  73. package/components/playlist/private-toggle.vue +4 -3
  74. package/components/profile/delete.vue +7 -6
  75. package/components/profile/guest.vue +10 -7
  76. package/components/profile/password.vue +25 -22
  77. package/components/profile/setup.vue +88 -71
  78. package/components/report/main.vue +89 -71
  79. package/components/search/input.vue +37 -31
  80. package/components/search/item.vue +22 -18
  81. package/components/search/main.vue +34 -26
  82. package/components/search/result.vue +72 -57
  83. package/components/section/categories-island.server.vue +7 -5
  84. package/components/section/categories.vue +4 -3
  85. package/components/section/models.vue +4 -3
  86. package/components/section/nav-links.vue +8 -7
  87. package/components/section/seo-text.vue +9 -6
  88. package/components/section/swiper-cards.vue +19 -14
  89. package/components/section/toolbar.vue +26 -20
  90. package/components/share/main.vue +32 -26
  91. package/components/ui/avatar.vue +10 -8
  92. package/components/ui/breadcrumbs.vue +33 -25
  93. package/components/ui/btn.vue +13 -12
  94. package/components/ui/checkbox.vue +21 -17
  95. package/components/ui/chips.vue +33 -29
  96. package/components/ui/count.vue +4 -3
  97. package/components/ui/dropdown.vue +42 -34
  98. package/components/ui/empty-state.vue +11 -9
  99. package/components/ui/expand-row.vue +34 -28
  100. package/components/ui/full-descr.vue +6 -4
  101. package/components/ui/icon.vue +4 -3
  102. package/components/ui/img.vue +11 -10
  103. package/components/ui/input.vue +75 -66
  104. package/components/ui/label.vue +4 -3
  105. package/components/ui/link.vue +20 -18
  106. package/components/ui/notification.vue +22 -17
  107. package/components/ui/pagination.vue +89 -76
  108. package/components/ui/popup.vue +39 -30
  109. package/components/ui/radio.vue +17 -14
  110. package/components/ui/section-title.vue +20 -15
  111. package/components/ui/segmented.vue +19 -15
  112. package/components/ui/select.vue +44 -35
  113. package/components/ui/slider.vue +16 -13
  114. package/components/ui/snackbar.vue +7 -5
  115. package/components/ui/swiper.vue +32 -24
  116. package/components/ui/toggle.vue +17 -14
  117. package/components/ui/tooltip.vue +15 -12
  118. package/components/view/model-videos.vue +71 -57
  119. package/components/view/models.vue +71 -57
  120. package/components/view/video.vue +64 -51
  121. package/components/view/videos.vue +56 -46
  122. package/package.json +1 -1
@@ -1,29 +1,35 @@
1
1
  <template>
2
- <div v-if="data"
3
- ref="userRef"
4
- :class="{'--open': isMenuShow}"
5
- class="layout-header-user"
2
+ <div
3
+ v-if="data"
4
+ ref="userRef"
5
+ :class="{'--open': isMenuShow}"
6
+ class="layout-header-user"
6
7
  >
7
- <button :title="$t('show_menu')"
8
- type="button"
9
- class="layout-header-user__trigger"
10
- @click="showMenu"
8
+ <button
9
+ :title="$t('show_menu')"
10
+ type="button"
11
+ class="layout-header-user__trigger"
12
+ @click="showMenu"
11
13
  >
12
14
  <UiAvatar :size="36" />
13
- <UiIcon class="layout-header-user__trigger-icon"
14
- name="angle-down"
15
- size="16"
15
+ <UiIcon
16
+ class="layout-header-user__trigger-icon"
17
+ name="angle-down"
18
+ size="16"
16
19
  />
17
20
  </button>
18
21
  <transition mode="out-in">
19
- <div v-if="isMenuShow"
20
- class="layout-header-user__dropdown"
22
+ <div
23
+ v-if="isMenuShow"
24
+ class="layout-header-user__dropdown"
21
25
  >
22
- <NuxtLink :to="generateLink('/user/profile')"
23
- class="layout-header-user__profile"
26
+ <NuxtLink
27
+ :to="generateLink('/user/profile')"
28
+ class="layout-header-user__profile"
24
29
  >
25
- <UiAvatar :size="48"
26
- class="layout-header-user__profile-avatar"
30
+ <UiAvatar
31
+ :size="48"
32
+ class="layout-header-user__profile-avatar"
27
33
  />
28
34
  <div class="layout-header-user__profile-wrapper">
29
35
  <span class="layout-header-user__profile-title">{{ data.username }}</span>
@@ -31,56 +37,65 @@
31
37
  </div>
32
38
  </NuxtLink>
33
39
  <div class="layout-header-user__links">
34
- <div v-for="(group, groupIndex) in groupsCount"
35
- :key="`group-profile-${groupIndex}`"
36
- class="layout-header-user__links-wrapper"
40
+ <div
41
+ v-for="(group, groupIndex) in groupsCount"
42
+ :key="`group-profile-${groupIndex}`"
43
+ class="layout-header-user__links-wrapper"
37
44
  >
38
- <template v-for="(item, index) in profileNavigationItems.filter(item => item.group === group)"
39
- :key="`profile-link-${index}`"
45
+ <template
46
+ v-for="(item, index) in profileNavigationItems.filter(item => item.group === group)"
47
+ :key="`profile-link-${index}`"
40
48
  >
41
- <component :is="component(hasChild(item))"
42
- :class="[
43
- {'--has-child' : hasChild(item)},
44
- {'--open' : isChildsShow}
45
- ]"
46
- :to="hasChild(item) ? null : generateLink(item.value)"
47
- class="layout-header-user__item"
48
- @click="hasChild(item) ? openChilds() : null"
49
+ <component
50
+ :is="component(hasChild(item))"
51
+ :class="[
52
+ {'--has-child' : hasChild(item)},
53
+ {'--open' : isChildsShow}
54
+ ]"
55
+ :to="hasChild(item) ? null : generateLink(item.value)"
56
+ class="layout-header-user__item"
57
+ @click="hasChild(item) ? openChilds() : null"
49
58
  >
50
- <UiIcon :name="item.icon"
51
- class="layout-header-user__item-icon"
52
- size="20"
59
+ <UiIcon
60
+ :name="item.icon"
61
+ class="layout-header-user__item-icon"
62
+ size="20"
53
63
  />
54
64
  {{ $t(item.title) }}
55
- <UiIcon v-if="hasChild(item)"
56
- class="layout-header-user__angle"
57
- name="angle-down"
58
- size="16"
65
+ <UiIcon
66
+ v-if="hasChild(item)"
67
+ class="layout-header-user__angle"
68
+ name="angle-down"
69
+ size="16"
59
70
  />
60
71
  </component>
61
72
  <template v-if="hasChild(item) && isChildsShow">
62
- <NuxtLink v-for="(child, childIndex) in item.childs"
63
- :key="`profile-link-${index}-${childIndex}`"
64
- :to="generateLink(child.value)"
65
- class="layout-header-user__item --child"
73
+ <NuxtLink
74
+ v-for="(child, childIndex) in item.childs"
75
+ :key="`profile-link-${index}-${childIndex}`"
76
+ :to="generateLink(child.value)"
77
+ class="layout-header-user__item --child"
66
78
  >
67
- <UiIcon :name="child.icon"
68
- class="layout-header-user__item-icon"
69
- size="16"
79
+ <UiIcon
80
+ :name="child.icon"
81
+ class="layout-header-user__item-icon"
82
+ size="16"
70
83
  />
71
84
  {{ $t(child.title) }}
72
85
  </NuxtLink>
73
86
  </template>
74
87
  </template>
75
88
 
76
- <button v-if="group === groupsCount"
77
- type="button"
78
- class="layout-header-user__item"
79
- @click="logOut"
89
+ <button
90
+ v-if="group === groupsCount"
91
+ type="button"
92
+ class="layout-header-user__item"
93
+ @click="logOut"
80
94
  >
81
- <UiIcon name="logout"
82
- class="layout-header-user__item-icon"
83
- size="20"
95
+ <UiIcon
96
+ name="logout"
97
+ class="layout-header-user__item-icon"
98
+ size="20"
84
99
  />
85
100
  {{ $t('log_out') }}
86
101
  </button>
@@ -1,75 +1,88 @@
1
1
  <template>
2
- <header :class="{'--burger-open': burgerShow}"
3
- class="layout-header"
2
+ <header
3
+ :class="{'--burger-open': burgerShow}"
4
+ class="layout-header"
4
5
  >
5
6
 
6
7
  <SearchMain class="layout-header__search"/>
7
8
 
8
- <LayoutLogo glow
9
- class="layout-header__logo"
9
+ <LayoutLogo
10
+ glow
11
+ class="layout-header__logo"
10
12
  />
11
- <div ref="languageRef"
12
- class="layout-header__language _from-sm"
13
+ <div
14
+ ref="languageRef"
15
+ class="layout-header__language _from-sm"
13
16
  >
14
- <button :class="{'--open': showLanguage}"
15
- :aria-label="$t('language')"
16
- class="layout-header__language-trigger"
17
- type="button"
18
- @click="showLanguageMenu"
17
+ <button
18
+ :class="{'--open': showLanguage}"
19
+ :aria-label="$t('language')"
20
+ class="layout-header__language-trigger"
21
+ type="button"
22
+ @click="showLanguageMenu"
19
23
  >
20
- <img v-if="clientCountryIcon"
21
- :src="`/icons/flags/${clientCountryIcon}.svg`"
22
- :alt="clientCountryIcon"
23
- class="layout-header__language-icon"
24
- width="24"
25
- height="16"
24
+ <img
25
+ v-if="clientCountryIcon"
26
+ :src="`/icons/flags/${clientCountryIcon}.svg`"
27
+ :alt="clientCountryIcon"
28
+ class="layout-header__language-icon"
29
+ width="24"
30
+ height="16"
26
31
  >
27
- <UiIcon v-else
28
- class="layout-header__language-icon"
29
- name="earth"
30
- size="20"
32
+ <UiIcon
33
+ v-else
34
+ class="layout-header__language-icon"
35
+ name="earth"
36
+ size="20"
31
37
  />
32
- <UiIcon class="layout-header__language-angle"
33
- name="angle-down"
34
- size="12"
38
+ <UiIcon
39
+ class="layout-header__language-angle"
40
+ name="angle-down"
41
+ size="12"
35
42
  />
36
43
  </button>
37
44
  <transition mode="out-in">
38
45
  <KeepAlive>
39
- <LazyLayoutLanguage v-if="showLanguage"
40
- class="layout-header__language-menu"
41
- icon-size="20"
42
- @change="closeLanguage"
46
+ <LazyLayoutLanguage
47
+ v-if="showLanguage"
48
+ class="layout-header__language-menu"
49
+ icon-size="20"
50
+ @change="closeLanguage"
43
51
  />
44
52
  </KeepAlive>
45
53
  </transition>
46
54
  </div>
47
55
 
48
- <LazyLayoutHeaderUser v-if="isAuthorized"
49
- class="layout-header__user _from-sm"
56
+ <LazyLayoutHeaderUser
57
+ v-if="isAuthorized"
58
+ class="layout-header__user _from-sm"
50
59
  />
51
60
 
52
61
  <template v-else>
53
- <UiBtn class="layout-header__sign-up _from-sm"
54
- theme="primary"
55
- @click="openAuthPopup(AuthSteps.Registration)"
62
+ <UiBtn
63
+ class="layout-header__sign-up _from-sm"
64
+ theme="primary"
65
+ @click="openAuthPopup(AuthSteps.Registration)"
56
66
  >{{ $t('sign_up_button') }}
57
67
  </UiBtn>
58
68
  </template>
59
69
 
60
- <button :aria-label="$t('show_menu')"
61
- class="layout-header__burger _to-sm"
62
- type="button"
63
- @click="burgerShow = true"
70
+ <button
71
+ :aria-label="$t('show_menu')"
72
+ class="layout-header__burger _to-sm"
73
+ type="button"
74
+ @click="burgerShow = true"
64
75
  >
65
- <UiIcon class="layout-header__burger-bars"
66
- name="bars"
67
- size="24"
76
+ <UiIcon
77
+ class="layout-header__burger-bars"
78
+ name="bars"
79
+ size="24"
68
80
  />
69
81
  </button>
70
82
 
71
- <LayoutBurger v-show="burgerShow"
72
- v-model="burgerShow"
83
+ <LayoutBurger
84
+ v-show="burgerShow"
85
+ v-model="burgerShow"
73
86
  />
74
87
  </header>
75
88
  </template>
@@ -1,92 +1,105 @@
1
1
  <template>
2
2
  <div class="layout-language">
3
3
  <span class="layout-language__title _to-sm">{{ $t('language') }}:</span>
4
- <details class="layout-language__details"
5
- name="layout-language"
4
+ <details
5
+ class="layout-language__details"
6
+ name="layout-language"
6
7
  >
7
8
  <summary class="layout-language__summary">
8
- <UiIcon :size="iconSize"
9
- class="layout-language__icon"
10
- name="earth"
9
+ <UiIcon
10
+ :size="iconSize"
11
+ class="layout-language__icon"
12
+ name="earth"
11
13
  />
12
14
  <span class="layout-language__current">
13
15
  <span class="_from-sm">{{ $t('language') }}:&nbsp;</span>
14
16
  <span class="layout-language__text">{{ localeName }}</span>
15
17
  </span>
16
- <UiIcon class="layout-language__angle"
17
- name="angle-down"
18
- size="16"
18
+ <UiIcon
19
+ class="layout-language__angle"
20
+ name="angle-down"
21
+ size="16"
19
22
  />
20
23
  </summary>
21
24
  <div class="layout-language__details-wrapper">
22
- <button v-for="(item, index) in enabledLocales"
23
- :key="`language-${index}`"
24
- :class="{'--current': item.code === selectedLocale}"
25
- :lang="item.language"
26
- class="layout-language__details-item"
27
- type="button"
28
- @click="changeLocale(item.code)"
25
+ <button
26
+ v-for="(item, index) in enabledLocales"
27
+ :key="`language-${index}`"
28
+ :class="{'--current': item.code === selectedLocale}"
29
+ :lang="item.language"
30
+ class="layout-language__details-item"
31
+ type="button"
32
+ @click="changeLocale(item.code)"
29
33
  >{{ item.name }}
30
34
  </button>
31
35
  </div>
32
36
  </details>
33
37
  <span class="layout-language__title _to-sm">{{ $t('country') }}:</span>
34
- <details class="layout-language__details"
35
- name="layout-language"
36
- @toggle="onCountryToggle($event)"
38
+ <details
39
+ class="layout-language__details"
40
+ name="layout-language"
41
+ @toggle="onCountryToggle($event)"
37
42
  >
38
43
  <summary class="layout-language__summary">
39
- <img v-if="clientCountryIcon"
40
- :alt="clientCountryName"
41
- :src="`/icons/flags/${clientCountryIcon}.svg`"
42
- class="layout-language__icon"
43
- width="20"
44
- height="20"
44
+ <img
45
+ v-if="clientCountryIcon"
46
+ :alt="clientCountryName"
47
+ :src="`/icons/flags/${clientCountryIcon}.svg`"
48
+ class="layout-language__icon"
49
+ width="20"
50
+ height="20"
45
51
  >
46
- <UiIcon v-else
47
- :size="iconSize"
48
- class="layout-language__icon"
49
- name="earth"
52
+ <UiIcon
53
+ v-else
54
+ :size="iconSize"
55
+ class="layout-language__icon"
56
+ name="earth"
50
57
  />
51
58
  <span class="layout-language__current">
52
59
  <span class="_from-sm">{{ $t('country') }}:&nbsp;</span>
53
60
  <span class="layout-language__text">{{ clientCountryName }}</span></span>
54
- <UiIcon class="layout-language__angle"
55
- name="angle-down"
56
- size="16"
61
+ <UiIcon
62
+ class="layout-language__angle"
63
+ name="angle-down"
64
+ size="16"
57
65
  />
58
66
  </summary>
59
67
  <div class="layout-language__details-wrapper">
60
- <UiInput v-model="countryValue"
61
- :icon="countryValue.length > 0 ? 'close' : ''"
62
- :placeholder="$t('search')"
63
- pre-icon="search"
64
- class="layout-language__input"
65
- pre-icon-size="16"
66
- size="s"
67
- @icon-click="countryValue = ''"
68
+ <UiInput
69
+ v-model="countryValue"
70
+ :icon="countryValue.length > 0 ? 'close' : ''"
71
+ :placeholder="$t('search')"
72
+ pre-icon="search"
73
+ class="layout-language__input"
74
+ pre-icon-size="16"
75
+ size="s"
76
+ @icon-click="countryValue = ''"
68
77
  />
69
78
  <p class="layout-language__description">{{ $t('country_description') }}</p>
70
- <div v-if="isCountryOpen"
71
- class="layout-language__buttons"
79
+ <div
80
+ v-if="isCountryOpen"
81
+ class="layout-language__buttons"
72
82
  >
73
- <button v-for="(item, index) in filteredCountries"
74
- :key="`language-${index}`"
75
- :class="{'--current': item.icon === clientCountryIcon}"
76
- class="layout-language__details-item --country"
77
- type="button"
78
- @click="changeCountry(item)"
83
+ <button
84
+ v-for="(item, index) in filteredCountries"
85
+ :key="`language-${index}`"
86
+ :class="{'--current': item.icon === clientCountryIcon}"
87
+ class="layout-language__details-item --country"
88
+ type="button"
89
+ @click="changeCountry(item)"
79
90
  >
80
- <img :alt="item.title"
81
- :src="`/icons/flags/${item.icon}.svg`"
82
- width="20"
83
- height="20"
84
- loading="lazy"
91
+ <img
92
+ :alt="item.title"
93
+ :src="`/icons/flags/${item.icon}.svg`"
94
+ width="20"
95
+ height="20"
96
+ loading="lazy"
85
97
  >
86
98
  {{ item.title }}
87
99
  </button>
88
- <p v-if="countryValue && !filteredCountries.length"
89
- class="layout-language__empty"
100
+ <p
101
+ v-if="countryValue && !filteredCountries.length"
102
+ class="layout-language__empty"
90
103
  >{{ $t('nothing_found') }}</p>
91
104
  </div>
92
105
  </div>
@@ -1,14 +1,16 @@
1
1
  <template>
2
- <NuxtLink :class="{'layout-logo--glow': glow}"
3
- :to="localePath('/')"
4
- class="layout-logo"
5
- @click="onLogoClick"
2
+ <NuxtLink
3
+ :class="{'layout-logo--glow': glow}"
4
+ :to="localePath('/')"
5
+ class="layout-logo"
6
+ @click="onLogoClick"
6
7
  >
7
- <img class="layout-logo__image"
8
- src="/img/logo.svg"
9
- width="144"
10
- height="24"
11
- alt="gay.cool"
8
+ <img
9
+ class="layout-logo__image"
10
+ src="/img/logo.svg"
11
+ width="144"
12
+ height="24"
13
+ alt="gay.cool"
12
14
  >
13
15
  </NuxtLink>
14
16
  </template>
@@ -1,42 +1,49 @@
1
1
  <template>
2
2
  <nav class="layout-nav">
3
- <div v-for="(item, index) in items || navigationItems"
4
- :key="`navigation-item-${index}`"
5
- class="layout-nav__item"
3
+ <div
4
+ v-for="(item, index) in items || navigationItems"
5
+ :key="`navigation-item-${index}`"
6
+ class="layout-nav__item"
6
7
  >
7
- <component :is="item.link ? SLink : SButton"
8
- class="layout-nav__link"
9
- v-bind="item.link ? {
10
- to: generateLink(item.link),
11
- ariaCurrent: isCurrent(item.link) ? 'page' : undefined,
12
- tabindex: isCurrent(item.link) ? -1 : undefined,
13
- } : {}"
8
+ <component
9
+ :is="item.link ? SLink : SButton"
10
+ class="layout-nav__link"
11
+ v-bind="item.link ? {
12
+ to: generateLink(item.link),
13
+ ariaCurrent: isCurrent(item.link) ? 'page' : undefined,
14
+ tabindex: isCurrent(item.link) ? -1 : undefined,
15
+ } : {}"
14
16
  >
15
- <UiIcon v-if="item.icon"
16
- :class="{'--accent': item.accent}"
17
- :name="item.icon"
18
- class="layout-nav__icon"
19
- size="16"
17
+ <UiIcon
18
+ v-if="item.icon"
19
+ :class="{'--accent': item.accent}"
20
+ :name="item.icon"
21
+ class="layout-nav__icon"
22
+ size="16"
20
23
  />
21
24
  {{ $t(`navigation.${item.title}`) }}
22
- <UiIcon v-if="hasChild(item)"
23
- class="layout-nav__down"
24
- size="11"
25
- name="angle-down"
25
+ <UiIcon
26
+ v-if="hasChild(item)"
27
+ class="layout-nav__down"
28
+ size="11"
29
+ name="angle-down"
26
30
  />
27
31
  </component>
28
- <div v-if="hasChild(item)"
29
- class="layout-nav__menu"
32
+ <div
33
+ v-if="hasChild(item)"
34
+ class="layout-nav__menu"
30
35
  >
31
- <NuxtLink v-for="(subItem, subIndex) in item.childs"
32
- :key="`navigation-subitem-${index}-${subIndex}`"
33
- :to="generateLink(subItem.link)"
34
- :aria-current="isCurrent(subItem.link) ? 'page' : undefined"
35
- :tabindex="isCurrent(subItem.link) ? -1 : undefined"
36
- class="layout-nav__menu-item"
36
+ <NuxtLink
37
+ v-for="(subItem, subIndex) in item.childs"
38
+ :key="`navigation-subitem-${index}-${subIndex}`"
39
+ :to="generateLink(subItem.link)"
40
+ :aria-current="isCurrent(subItem.link) ? 'page' : undefined"
41
+ :tabindex="isCurrent(subItem.link) ? -1 : undefined"
42
+ class="layout-nav__menu-item"
37
43
  >
38
- <UiIcon :name="subItem.icon"
39
- size="16"
44
+ <UiIcon
45
+ :name="subItem.icon"
46
+ size="16"
40
47
  />
41
48
  {{ $t(subItem.title) }}
42
49
  </NuxtLink>
@@ -1,6 +1,7 @@
1
1
  <template>
2
- <a class="layout-skip-link"
3
- href="#main"
2
+ <a
3
+ class="layout-skip-link"
4
+ href="#main"
4
5
  >{{ $t('skip_to_content') }}</a>
5
6
  </template>
6
7
 
@@ -1,17 +1,19 @@
1
1
  <!-- Боковая колонка справа: рекомендации или реклама -->
2
2
  <template>
3
- <div :class="[
4
- {'_loading': status === 'pending'},
5
- ]"
6
- class="player-aside-videos _from-md"
3
+ <div
4
+ :class="[
5
+ {'_loading': status === 'pending'},
6
+ ]"
7
+ class="player-aside-videos _from-md"
7
8
  >
8
9
  <AdvNtv v-if="FeatureFlags.AdsNTVEnabled" />
9
10
 
10
11
  <template v-else>
11
- <CardVideo v-for="item in asideVideos?.items?.slice(0, 2)"
12
- :key="`aside-video-${item.guid}`"
13
- :card="item"
14
- mini
12
+ <CardVideo
13
+ v-for="item in asideVideos?.items?.slice(0, 2)"
14
+ :key="`aside-video-${item.guid}`"
15
+ :card="item"
16
+ mini
15
17
  />
16
18
  </template>
17
19
  </div>
@@ -1,14 +1,16 @@
1
1
  <!-- Тоггл автозапуска следующего видео (состояние в localStorage) -->
2
2
  <template>
3
3
  <div class="player-autoplay">
4
- <button type="button"
5
- class="player-autoplay__button"
6
- @click="value = !value"
4
+ <button
5
+ type="button"
6
+ class="player-autoplay__button"
7
+ @click="value = !value"
7
8
  >
8
9
  {{ $t('autoplay_next_video')}}
9
10
  </button>
10
- <UiToggle v-model="value"
11
- class="player-autoplay__toggle"
11
+ <UiToggle
12
+ v-model="value"
13
+ class="player-autoplay__toggle"
12
14
  />
13
15
  </div>
14
16
  </template>