Implementaiton of h1, h2, h3 and link button on publication editor.
This commit is contained in:
@@ -59,7 +59,6 @@ export class PublicationEditionComponent implements OnInit, OnDestroy {
|
||||
['title', 'description', 'text'].forEach(fieldName => {
|
||||
const fieldSubscription = this.publicationEditionForm.controls[fieldName].valueChanges
|
||||
.pipe(
|
||||
debounceTime(300),
|
||||
map(value => value?.length ? value as string : '')
|
||||
)
|
||||
.subscribe(fieldValue => {
|
||||
@@ -76,18 +75,17 @@ export class PublicationEditionComponent implements OnInit, OnDestroy {
|
||||
default:
|
||||
break;
|
||||
}
|
||||
this.publicationEditionService
|
||||
});
|
||||
this.subscriptions.push(fieldSubscription);
|
||||
});
|
||||
|
||||
const publicationSubscription = this.publicationEditionService.publication$.subscribe(publication => {
|
||||
this.publication = publication;
|
||||
this.publicationEditionForm.controls['title'].setValue(publication.title, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['description'].setValue(publication.description, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['text'].setValue(publication.text, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['illustrationId'].setValue(publication.illustrationId, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['categoryId'].setValue(publication.categoryId, { emitEvent: false });
|
||||
const publicationSubscription = this.publicationEditionService.state$.subscribe(state => {
|
||||
this.publication = state.publication;
|
||||
this.publicationEditionForm.controls['title'].setValue(this.publication.title, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['description'].setValue(this.publication.description, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['text'].setValue(this.publication.text, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['illustrationId'].setValue(this.publication.illustrationId, { emitEvent: false });
|
||||
this.publicationEditionForm.controls['categoryId'].setValue(this.publication.categoryId, { emitEvent: false });
|
||||
});
|
||||
this.subscriptions.push(publicationSubscription);
|
||||
|
||||
@@ -102,6 +100,14 @@ export class PublicationEditionComponent implements OnInit, OnDestroy {
|
||||
this.location.back();
|
||||
}
|
||||
|
||||
insertTitle(titleNumber: number): void {
|
||||
this.publicationEditionService.insertTitle(titleNumber);
|
||||
}
|
||||
|
||||
insertLink(): void {
|
||||
this.publicationEditionService.insertLink();
|
||||
}
|
||||
|
||||
save(): void {
|
||||
this.publicationEditionService.save();
|
||||
}
|
||||
@@ -109,4 +115,18 @@ export class PublicationEditionComponent implements OnInit, OnDestroy {
|
||||
displayPictureSectionDialog(): void {
|
||||
this.publicationEditionService.displayPictureSectionDialog();
|
||||
}
|
||||
|
||||
updateCursorPosition(event: KeyboardEvent | MouseEvent): void {
|
||||
if (event.target) {
|
||||
const textarea = event.target as HTMLTextAreaElement;
|
||||
|
||||
const positionStart = textarea.selectionStart;
|
||||
const positionEnd = textarea.selectionEnd;
|
||||
|
||||
const selectedCharacterCount = positionEnd - positionStart;
|
||||
console.log(`cursor position updated: [${positionStart}, ${positionEnd}] (${selectedCharacterCount})`);
|
||||
this.publicationEditionService.editCursorPosition(positionStart, positionEnd);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user