fix Hometown hashtag, fix #357
This commit is contained in:
parent
1d9e3c5130
commit
030ce2e568
|
@ -47,6 +47,16 @@ describe('DatabindedTextComponent', () => {
|
|||
expect(component.processedText).toContain('bla2');
|
||||
});
|
||||
|
||||
it('should parse hashtag - Hometown', () => {
|
||||
const hashtag = 'MicroFiction';
|
||||
const url = 'https://mastodon.social/tags/MicroFiction';
|
||||
const sample = `<p>"bla1"<br><a href="${url}" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span class="article-type">${hashtag}</span></a> bla2</p>`;
|
||||
component.text = sample;
|
||||
expect(component.processedText).toContain(`<a href="${url}" class="hashtag-${hashtag}" title="#${hashtag}" target="_blank" rel="noopener noreferrer">#${hashtag}</a>`);
|
||||
expect(component.processedText).toContain('bla1');
|
||||
expect(component.processedText).toContain('bla2');
|
||||
});
|
||||
|
||||
it('should parse hashtag - Pleroma 2.0.2', () => {
|
||||
const sample = `Blabla <a class="hashtag" data-tag="covid19" href="https://url.com/tag/covid19">#covid19</a> Blibli`;
|
||||
component.text = sample;
|
||||
|
|
|
@ -93,7 +93,7 @@ export class DatabindedTextComponent implements OnInit {
|
|||
|
||||
private processHashtag(section: string) {
|
||||
let extractedLinkAndNext = section.split('</a>');
|
||||
let extractedHashtag = extractedLinkAndNext[0].split('#')[1].replace('<span>', '').replace('</span>', '');
|
||||
let extractedHashtag = extractedLinkAndNext[0].split('#')[1].replace('<span class="article-type">', '').replace('<span>', '').replace('</span>', '');
|
||||
let extractedUrl = extractedLinkAndNext[0].split('href="')[1].split('"')[0];
|
||||
|
||||
let classname = this.getClassNameForHastag(extractedHashtag);
|
||||
|
@ -118,7 +118,7 @@ export class DatabindedTextComponent implements OnInit {
|
|||
|
||||
if (extractedAccountName.includes('@'))
|
||||
extractedAccountName = extractedAccountName.split('@')[0];
|
||||
} else if(section.includes(' class="u-url mention">@') && !section.includes(' class="u-url mention">@<')) { //Misskey in pleroma
|
||||
} else if (section.includes(' class="u-url mention">@') && !section.includes(' class="u-url mention">@<')) { //Misskey in pleroma
|
||||
extractedAccountAndNext = section.split('</a>');
|
||||
extractedAccountName = extractedAccountAndNext[0].split(' class="u-url mention">@')[1];
|
||||
|
||||
|
|
Loading…
Reference in New Issue