</div>
<div class="form-group">
- <label i18n for="description">Description</label>
- <textarea
+ <label i18n for="description">Description</label><my-help helpType="markdownText"></my-help>
+ <my-markdown-textarea
id="description" formControlName="description"
- class="form-control" [ngClass]="{ 'input-error': formErrors['description'] }"
- ></textarea>
+ [ngClass]="{ 'input-error': formErrors['description'] }"
+ ></my-markdown-textarea>
<div *ngIf="formErrors.description" class="form-error">
{{ formErrors.description }}
</div>
display: block;
}
-textarea {
- @include peertube-textarea(500px, 150px);
-
- display: block;
-}
-
.peertube-select-container {
@include peertube-select-container(340px);
}
<span i18n class="updated-at">Updated {{ playlist.updatedAt | myFromNow }}</span>
</div>
- <div *ngIf="displayDescription" class="video-info-description">{{ playlist.description }}</div>
+ <div *ngIf="displayDescription" class="video-info-description" [innerHTML]="playlistDescription"></div>
</div>
</div>
import { LinkType } from 'src/types/link.type'
import { Component, Input, OnInit } from '@angular/core'
import { VideoPlaylist } from './video-playlist.model'
+import { MarkdownService } from '@app/core'
@Component({
selector: 'my-video-playlist-miniature',
routerLink: any
playlistHref: string
playlistTarget: string
+ playlistDescription: string
- ngOnInit () {
+ constructor (
+ private markdownService: MarkdownService
+ ) {}
+
+ async ngOnInit () {
this.buildPlaylistUrl()
+ if (this.displayDescription) {
+ this.playlistDescription = await this.markdownService.textMarkdownToHTML(this.playlist.description)
+ }
}
buildPlaylistUrl () {