Перейти к содержимому
ФреймворкJavaScript

Комментарий базы данных: обсуждение строк

Внутренний блочный инструмент, который хранит один комментарий к строке базы данных. Пользователь не может вставить его сам, в тулбоксе его нет. Ветка обсуждения является дочерним блоком database-comment строки. Ответы являются дочерними блоками database-comment ветки.

Это аннотация, а не содержимое страницы. Blok скрывает его контейнер. Представления, поиск, копирование, выделение всего и экспорт в HTML, Markdown и простой текст его пропускают. Записи комментариев не добавляют шагов отмены.

Регистрация database подключает этот инструмент автоматически. Если указать database-comment самостоятельно, он заменит встроенный. Хук comments хоста в конфигурации базы данных заменяет встроенные комментарии.

Импорт

TypeScript
import { DatabaseComment } from '@bloklabs/core/tools';

Формат данных

TypeScript
interface DatabaseCommentData {
  text: string;          // Plain text, not HTML
  createdAt: number;     // Epoch ms when it was written
  authorId?: string;     // The writer, as the host's people directory knows them
  authorName?: string;   // The writer's display name when it was written
  propertyId?: string;   // Set on a thread about one cell: that property's id
  editedAt?: number;     // Epoch ms of the last edit
  resolved?: boolean;    // Set on a resolved thread
}
// A thread is a child of the row; its replies are children of the thread.
JSON
{
  "id": "cmt001",
  "type": "database-comment",
  "parent": "row001",
  "data": {
    "text": "Can we ship this on Friday?",
    "createdAt": 1760745600000,
    "authorId": "u1",
    "authorName": "Ada",
    "propertyId": "prop2"
  }
}

Пример использования

TypeScript
// DatabaseComment is not inserted directly. Registering Database
// registers it too, as `database-comment`.
import { Database } from '@bloklabs/core/tools';

const editor = new Blok({
  holder: 'editor',
  tools: {
    database: { class: Database },
  },
});