@imessaging/core 0.7.1 → 0.7.2
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/package.json +1 -1
- package/src/index.ts +1 -0
- package/src/types.ts +26 -0
package/package.json
CHANGED
package/src/index.ts
CHANGED
package/src/types.ts
CHANGED
|
@@ -217,6 +217,25 @@ export type IncomingAttachment = {
|
|
|
217
217
|
sizeBytes?: number;
|
|
218
218
|
};
|
|
219
219
|
|
|
220
|
+
/**
|
|
221
|
+
* Адрес, вложенный в сообщение.
|
|
222
|
+
*
|
|
223
|
+
* Отдельным полем, а не поиском по тексту: половина адресов в тексте НЕ ЛЕЖИТ. Слово со скрытой
|
|
224
|
+
* гиперссылкой («откликнуться»), надпись на кнопке и предпросмотр страницы приходят сущностями
|
|
225
|
+
* разметки, и потребитель, разбирающий `text` регулярным выражением, их не увидит вовсе — а
|
|
226
|
+
* промах здесь выглядит не ошибкой, а вакансией без ссылки.
|
|
227
|
+
*
|
|
228
|
+
* Выбор адреса за потребителем: одному нужна площадка, другому форма выгрузки резюме, и решать за
|
|
229
|
+
* них здесь значит отдавать одному чужое.
|
|
230
|
+
*/
|
|
231
|
+
export type IncomingLink = {
|
|
232
|
+
url: string;
|
|
233
|
+
/** Что видит человек на месте адреса: слово гиперссылки или надпись на кнопке. */
|
|
234
|
+
label?: string;
|
|
235
|
+
/** Где адрес лежал. Разные места — разный смысл, и «кнопка» отличается от «упомянут в тексте». */
|
|
236
|
+
origin: "text" | "markup" | "button" | "preview";
|
|
237
|
+
};
|
|
238
|
+
|
|
220
239
|
/**
|
|
221
240
|
* Входящее сообщение — общий вид для всех каналов.
|
|
222
241
|
*
|
|
@@ -234,6 +253,13 @@ export type IncomingMessage = {
|
|
|
234
253
|
messageId: string;
|
|
235
254
|
text: string;
|
|
236
255
|
attachments: IncomingAttachment[];
|
|
256
|
+
/**
|
|
257
|
+
* Адреса из сообщения, в порядке появления.
|
|
258
|
+
*
|
|
259
|
+
* `undefined` — канал разметку не разбирает вовсе; пустой список — разобрал и не нашёл. Это
|
|
260
|
+
* РАЗНЫЕ вещи: первое молчит о своём незнании, второе утверждает, что адресов нет.
|
|
261
|
+
*/
|
|
262
|
+
links?: IncomingLink[];
|
|
237
263
|
replyToMessageId?: string;
|
|
238
264
|
threadId?: number;
|
|
239
265
|
/**
|