|
60 | 60 | />
|
61 | 61 |
|
62 | 62 | <wysiwyg-menu-bar-btn icon="unlink"
|
63 |
| - v-if="toolbar.link" |
| 63 | + v-if="toolbar.link && editor.isActive('link')" |
64 | 64 | :disabled="!editor.isActive('link')"
|
65 | 65 | :isActive="editor.isActive('link')"
|
66 | 66 | @btn:click="removeLink()"/>
|
|
90 | 90 | :isActive="editor.isActive('code')"
|
91 | 91 | @btn:click="editor.chain().focus().setCode().run()"/>
|
92 | 92 |
|
| 93 | + <wysiwyg-menu-bar-btn icon="align_left" |
| 94 | + label="align left" |
| 95 | + v-if="toolbar.align || toolbar['align-left']" |
| 96 | + :isActive="editor.isActive({ textAlign: 'left' })" |
| 97 | + @btn:click="setTextAlign('left')"/> |
| 98 | + <wysiwyg-menu-bar-btn icon="align_center" |
| 99 | + label="align center" |
| 100 | + v-if="toolbar.align || toolbar['align-center']" |
| 101 | + :isActive="editor.isActive({ textAlign: 'center' })" |
| 102 | + @btn:click="setTextAlign('center')"/> |
| 103 | + <wysiwyg-menu-bar-btn icon="align_right" |
| 104 | + label="align right" |
| 105 | + v-if="toolbar.align || toolbar['align-right']" |
| 106 | + :isActive="editor.isActive({ textAlign: 'right' })" |
| 107 | + @btn:click="setTextAlign('right')"/> |
| 108 | + <wysiwyg-menu-bar-btn icon="align_justify" |
| 109 | + label="justify" |
| 110 | + v-if="toolbar.align || toolbar['align-justify']" |
| 111 | + :isActive="editor.isActive({ textAlign: 'justify' })" |
| 112 | + @btn:click="setTextAlign('justify')"/> |
| 113 | + |
93 | 114 | <wysiwyg-menu-bar-btn icon="table"
|
94 | 115 | v-if="toolbar.table"
|
95 | 116 | @btn:click="editor.chain().focus().insertTable({ rows: 3, cols: 3, withHeaderRow: true }).run()"/>
|
|
244 | 265 | import {Placeholder} from "@tiptap/extension-placeholder";
|
245 | 266 | import {HardBreak} from "@tiptap/extension-hard-break";
|
246 | 267 | import {HorizontalRule} from "@tiptap/extension-horizontal-rule";
|
| 268 | + import {TextAlign} from '@tiptap/extension-text-align'; |
247 | 269 |
|
248 | 270 | export default {
|
249 | 271 | name: 'A17Wysiwyg',
|
|
498 | 520 |
|
499 | 521 | this.$refs['link-modal'].close()
|
500 | 522 | this.linkWindow = null
|
501 |
| - } |
| 523 | + }, |
| 524 | + setTextAlign(align) { |
| 525 | + this.editor |
| 526 | + .chain() |
| 527 | + .focus() |
| 528 | + .setTextAlign(align) |
| 529 | + .run(); |
| 530 | + }, |
502 | 531 | },
|
503 | 532 | beforeMount () {
|
504 | 533 | if (this.toolbar.header) {
|
|
509 | 538 |
|
510 | 539 | const content = this.value || ''
|
511 | 540 | const extensions = [
|
512 |
| - HardBreak |
| 541 | + HardBreak, |
| 542 | + TextAlign.configure({ |
| 543 | + types: ['heading','paragraph'], |
| 544 | + }), |
513 | 545 | ]
|
514 | 546 |
|
515 | 547 | if (this.placeholder && this.placeholder.length > 0) {
|
|
633 | 665 | &--link {
|
634 | 666 | z-index: $zindex__modal__lower;
|
635 | 667 | }
|
636 |
| - |
| 668 | +
|
637 | 669 | .input {
|
638 | 670 | margin-top: 35px !important;
|
639 | 671 | }
|
|
0 commit comments