itube-specs 0.0.861 → 0.0.862
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.
- package/README.md +3 -3
- package/components/player/playlist.vue +2 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -178,9 +178,9 @@ ad-конфиг), теперь читается из `runtimeConfig.public` (з
|
|
|
178
178
|
- **Компоненты** — `pathPrefix: true`: имя = папка + файл (`ui/icon.vue` → `<UiIcon>`), BEM-класс = kebab
|
|
179
179
|
тега. Корень папки — `index.vue` (или `main.vue`, если иначе имя было бы односложным).
|
|
180
180
|
- **`as const`** вместо `enum` — доменные наборы в `runtime/constants/`, тип через
|
|
181
|
-
`typeof X[keyof typeof X]
|
|
182
|
-
|
|
183
|
-
оборачивать. Подробнее — в [CLAUDE.md](./CLAUDE.md).
|
|
181
|
+
`typeof X[keyof typeof X]`, значения строковые. Enum остаётся в бандле, в опубликованном пакете
|
|
182
|
+
`import type` на нём ломается в рантайме, а там, где значение приходит из API/URL/куки, сырую строку
|
|
183
|
+
в него не положить. Фреймворковые union'ы не оборачивать. Подробнее — в [CLAUDE.md](./CLAUDE.md).
|
|
184
184
|
- **Стили** — co-location в `<style lang="scss">` без `scoped`, flat-BEM, только дизайн-токены.
|
|
185
185
|
`vars` и `mixins` **авто-инжектятся** через `additionalData` приложения, поэтому в блоке компонента
|
|
186
186
|
`@use` писать не надо. Сам `sass` в слое не установлен — SCSS компилируется внутри приложения, но
|
|
@@ -142,8 +142,7 @@
|
|
|
142
142
|
|
|
143
143
|
<script setup lang="ts">
|
|
144
144
|
import type { IVideoCard, IPlaylistCard, IProfileData } from '../../types';
|
|
145
|
-
import
|
|
146
|
-
import { AuthSteps, PlaylistStep } from '../../runtime';
|
|
145
|
+
import { AuthSteps, PlaylistStep, PlaylistType } from '../../runtime';
|
|
147
146
|
import { AuthorizationApiService } from '../../services/api/authorization.service';
|
|
148
147
|
|
|
149
148
|
const props = defineProps<{
|
|
@@ -167,7 +166,7 @@ const sharePlaylistCard = computed<IPlaylistCard>(() => ({
|
|
|
167
166
|
videosCount: props.items.length,
|
|
168
167
|
thumbUrls: props.items.slice(0, 4).map(item => item.thumbUrls || { webp: {} }),
|
|
169
168
|
created: 0,
|
|
170
|
-
playlistType:
|
|
169
|
+
playlistType: PlaylistType.Public,
|
|
171
170
|
}));
|
|
172
171
|
|
|
173
172
|
const { isAuthorized } = useUser(AuthorizationApiService);
|