mirror of
https://github.com/LuanRT/YouTube.js.git
synced 2026-06-18 12:02:11 +00:00
* dev: start LiveChat refactor * dev: implement simple module system to separate classes + add a few Live Chat actions * dev: add fundamental Live Chat classes * chore: update type declarations * feat: finalize Live Chat Now supporting almost all kinds of messages! Next up: add a ability to send messages. * chore: update type declarations * chore: update contributors list * feat(livechat): add `sendMessage()` method * chore: remove unneeded files * style: format code * chore: remove outdated examples * chore: update tests * chore: remove trailing spaces * chore: remove trailing spaces x2
27 lines
502 B
JavaScript
27 lines
502 B
JavaScript
'use strict';
|
|
|
|
const TextRun = require('./TextRun');
|
|
const EmojiRun = require('./EmojiRun');
|
|
|
|
class Text {
|
|
text;
|
|
|
|
constructor(data) {
|
|
if (data?.hasOwnProperty('runs')) {
|
|
this.runs = data.runs.map((run) => run.emoji &&
|
|
new EmojiRun(run) ||
|
|
new TextRun(run)
|
|
);
|
|
|
|
this.text = this.runs.map((run) => run.text).join('');
|
|
} else {
|
|
this.text = data?.simpleText || 'N/A';
|
|
}
|
|
}
|
|
|
|
toString() {
|
|
return this.text;
|
|
}
|
|
}
|
|
|
|
module.exports = Text; |