Загрузка приложения

IBlogPostPreview

Физическое объявление TypeScript из стартового проекта Nuxt со связанными типами и комментариями к полям.

IBlogPostPreview

Поля анонса публикации, используемые магазином.

app/interfaces/orionplace/blog/IBlogPostPreview.ts
TypeScript
export interface IBlogPostPreview {
  // ID публикации.
  id: number;
  // Заголовок, адрес и анонс по языкам.
  locale: Record<
    string,
    {
      // Необязательное поле post_title; может отсутствовать.
      post_title?: string;
      // Необязательное поле post_slug; может отсутствовать.
      post_slug?: string;
      // Необязательное поле post_preview_text; может отсутствовать.
      post_preview_text?: string;
    }
  >;
  // Изображения анонса с порядком отображения.
  preview_images?: { /* ID публикации. */ id: number; /* Значение поля image_url. */ image_url: string; /* Значение поля display_order. */ display_order: number }[];
  // Запасные URL изображений анонса.
  preview_image_urls?: string[];
  // Примерное время чтения в минутах.
  read_time_min?: number;
  // Тип доступа: именованное значение `EBlogAccessType` в `int` и его
  // локализованное название в `text`. Карточка показывает метку «Подписка»,
  // если `int` отличается от `EBlogAccessType.ACCESS_PUBLIC`.
  access_type?: {
    // Именованное значение `EBlogAccessType`.
    int: EBlogAccessType;
    // Локализованное название типа доступа.
    text: string;
  };
  // Время создания публикации; карточка показывает его `date`.
  date_created?: IApiDateTime;
}