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

IProductFeedbackPreloadResponse

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

IProductFeedbackPreloadResponse

page_data — ваш отзыв. Для чужого отзыва возвращается ошибка «Отзыв не найден.»

src/lib/interfaces/orionplace/products/IProductFeedbackApi.ts
TypeScript
export interface IProductFeedbackPreloadResponse {
  // Ошибки полей и общие ошибки.
  form_errors: Record<string, ApiFormError[]> | null;
  // Сообщение успеха либо null.
  success_message: string | null;
  // `page_data` — ваш отзыв. Для чужого отзыва возвращается ошибка «Отзыв не
  // найден.»
  page_data: {
    // ID отзыва пользователя.
    id: number;
    // Сохранённый текст отзыва.
    text: string;
    // Сохранённая оценка от 1 до 5. 0 — у ответа или у старого отзыва,
    // сохранённого без звёзд: при изменении такому отзыву нужно поставить 1–5
    // звёзд.
    rating: number;
    // Состояние модерации: `int` — `EProductFeedbackStatus.PENDING`,
    // `EProductFeedbackStatus.APROOVED` или `EProductFeedbackStatus.DENIED`;
    // `text` — подпись.
    status: {
      // Код статуса отзыва: `EProductFeedbackStatus.PENDING` (ожидает
      // модерации), `EProductFeedbackStatus.APROOVED` (одобрен) или
      // `EProductFeedbackStatus.DENIED` (отклонён).
      int: EProductFeedbackStatus;
      // Сохранённый текст отзыва.
      text: string;
    };
    // Есть ли непосредственный ответ, включая не одобренный. Этот признак шире
    // ограничения формы редактирования по одобренным ответам.
    got_reply: boolean;
    // True for a reply: replies have no rating (0) and no stars to choose.
    // `true` для ответа: у него нет оценки, и `products_feedbacks_edit`
    // сохраняет его с 0, что бы ни пришло в `rating`. `false` для отзыва,
    // которому нужно 1–5 звёзд.
    is_reply?: boolean;
    // До пяти существующих изображений: `id` и URL в `image`.
    images: IProductFeedbackImage[];
  } | null;
}