itd-api / PostBuilder
Interface: PostBuilder
Defined in: builders/post.ts:79
Билдер поста.
Неизменяемый: каждый вызов возвращает новый экземпляр, поэтому заготовку можно переиспользовать. Создаётся функцией post.
Example
Заготовка для нескольких постов
const onWall = post().onWall(userId);
await itd.posts.create(onWall.content('первый'));
await itd.posts.create(onWall.content('второй')); // заготовка не испорченаImplements
Methods
append()
append(text): PostBuilder;Defined in: builders/post.ts:103
Дописывает текст к уже заданному.
Parameters
text
string
Returns
PostBuilder
attach()
attach(file): PostBuilder;Defined in: builders/post.ts:189
Прикладывает файл — он будет загружен перед публикацией.
Порядок вызовов сохраняется в порядке вложений.
Parameters
file
Returns
PostBuilder
attachId()
attachId(attachmentId): PostBuilder;Defined in: builders/post.ts:194
Прикладывает уже загруженное вложение по его идентификатору.
Parameters
attachmentId
string
Returns
PostBuilder
autoSpans()
autoSpans(options?): PostBuilder;Defined in: builders/post.ts:155
Находит HTTP(S)-ссылки, хэштеги и упоминания в уже заданном тексте.
Ручные стили сохраняются. Повторный вызов не дублирует уже найденные сущности.
Parameters
options?
AutoSpansOptions = {}
Returns
PostBuilder
build()
build(): CreatePostInput;Defined in: builders/post.ts:225
Собирает и проверяет результат.
Returns
Throws
если нарушены требования к данным
Implementation of
ItdBuilder.buildcontent()
content(text): PostBuilder;Defined in: builders/post.ts:96
Задаёт текст поста, заменяя прежний вместе с его разметкой.
Spans привязаны к конкретному тексту, поэтому после замены их нужно задать заново через spans, markup или autoSpans.
Parameters
text
string
Returns
PostBuilder
html()
html(source, options?): PostBuilder;Defined in: builders/post.ts:146
Заменяет текст и spans результатом безопасного разбора ограниченного HTML.
Parameters
source
string
options?
ParseMarkupOptions = {}
Returns
PostBuilder
markdown()
markdown(source, options?): PostBuilder;Defined in: builders/post.ts:141
Заменяет текст и spans результатом безопасного разбора Markdown.
Parameters
source
string
options?
ParseMarkupOptions = {}
Returns
PostBuilder
markup()
markup(input): PostBuilder;Defined in: builders/post.ts:130
Заменяет текст и разметку результатом MarkupBuilder.
Parameters
input
Returns
PostBuilder
Example
post().markup((m) => m.text('смотрите ').hashtag('котики').text(' от ').mention('nowkie'));onWall()
onWall(userId): PostBuilder;Defined in: builders/post.ts:180
Публикует пост на стене другого пользователя.
Parameters
userId
string
UUID пользователя; имя пользователя не подойдёт
Returns
PostBuilder
poll()
poll(input): PostBuilder;Defined in: builders/post.ts:211
Добавляет опрос.
Принимает объект, PollBuilder или функцию-настройщик.
Parameters
input
Returns
PostBuilder
Example
post('голосуем').poll((q) => q.question('ну как?').options('да', 'нет'));spans()
spans(spans): PostBuilder;Defined in: builders/post.ts:118
Задаёт готовую разметку текста. Смещения проверяются при build.
Для автоматического поиска сущностей есть autoSpans, а для вычисления смещений при сборке текста — markup.
Parameters
spans
Span[]
Returns
PostBuilder
toJSON()
toJSON(): CreatePostInput;Defined in: builders/post.ts:234
Чтобы билдер корректно вёл себя внутри JSON.stringify.
Returns
Implementation of
ItdBuilder.toJSON