UNPKG

ngx-tiptap-editor

Version:

[![Build and Publish](https://github.com/HuiiBuh/ngx-tiptap-editor/actions/workflows/publish.yml/badge.svg)](https://github.com/HuiiBuh/ngx-tiptap-editor/actions/workflows/publish.yml) [![Deploy to Github Pages](https://github.com/HuiiBuh/ngx-tiptap-edito

41 lines 6.74 kB
import { ChangeDetectionStrategy, Component, forwardRef } from '@angular/core'; import { BaseControl, ButtonBaseControl } from './base-control'; import * as i0 from "@angular/core"; import * as i1 from "../../services/tiptap-event.service"; import * as i2 from "@angular/common"; export class ControlUnderlineComponent extends ButtonBaseControl { constructor(eventService) { super(); this.eventService = eventService; } toggleUnderline() { this.editor && this.editor.chain().focus().toggleUnderline().run(); } can() { return !!this.editor?.can().toggleUnderline(); } isActive() { return !!this.editor?.isActive('underline'); } } ControlUnderlineComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ControlUnderlineComponent, deps: [{ token: i1.TiptapEventService }], target: i0.ɵɵFactoryTarget.Component }); ControlUnderlineComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.1", type: ControlUnderlineComponent, selector: "tip-control-underline", providers: [{ provide: BaseControl, useExisting: forwardRef(() => ControlUnderlineComponent) }], usesInheritance: true, ngImport: i0, template: ` <button class="tip-control-button" type="button" (click)="toggleUnderline()" #button> <div class="content-wrapper" #ref> <ng-content></ng-content> </div> <i *ngIf="ref.childNodes.length === 0" class="material-icons">format_underline</i> </button> `, isInline: true, styles: [":host-context{display:contents}.tip-control-button{display:inline-flex;align-items:center;justify-content:center;padding:1px calc(var(--tip-header-padding) / 2);cursor:pointer;color:var(--tip-text-color);border:none;background-color:transparent;-webkit-tap-highlight-color:transparent}@media (pointer: fine){.tip-control-button:hover,.tip-control-button:focus{color:var(--tip-active-color)}}.tip-control-button[disabled]{cursor:default;color:var(--tip-disabled-color)}.content-wrapper{display:contents}.tip-active{color:var(--tip-active-color)}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.1", ngImport: i0, type: ControlUnderlineComponent, decorators: [{ type: Component, args: [{ selector: 'tip-control-underline', template: ` <button class="tip-control-button" type="button" (click)="toggleUnderline()" #button> <div class="content-wrapper" #ref> <ng-content></ng-content> </div> <i *ngIf="ref.childNodes.length === 0" class="material-icons">format_underline</i> </button> `, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: BaseControl, useExisting: forwardRef(() => ControlUnderlineComponent) }], styles: [":host-context{display:contents}.tip-control-button{display:inline-flex;align-items:center;justify-content:center;padding:1px calc(var(--tip-header-padding) / 2);cursor:pointer;color:var(--tip-text-color);border:none;background-color:transparent;-webkit-tap-highlight-color:transparent}@media (pointer: fine){.tip-control-button:hover,.tip-control-button:focus{color:var(--tip-active-color)}}.tip-control-button[disabled]{cursor:default;color:var(--tip-disabled-color)}.content-wrapper{display:contents}.tip-active{color:var(--tip-active-color)}\n"] }] }], ctorParameters: function () { return [{ type: i1.TiptapEventService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJvbC11bmRlcmxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXRpcHRhcC1lZGl0b3Ivc3JjL2xpYi9jb21wb25lbnRzL2NvbnRyb2xzL2NvbnRyb2wtdW5kZXJsaW5lLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUvRSxPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7QUFnQmhFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxpQkFBaUI7SUFFOUQsWUFDWSxZQUFnQztRQUUxQyxLQUFLLEVBQUUsQ0FBQztRQUZFLGlCQUFZLEdBQVosWUFBWSxDQUFvQjtJQUc1QyxDQUFDO0lBRU0sZUFBZTtRQUNwQixJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsZUFBZSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUM7SUFDckUsQ0FBQztJQUVTLEdBQUc7UUFDWCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ2hELENBQUM7SUFFUyxRQUFRO1FBQ2hCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlDLENBQUM7O3NIQWxCVSx5QkFBeUI7MEdBQXpCLHlCQUF5QixnREFGekIsQ0FBQyxFQUFDLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFDLENBQUMsaURBVG5GOzs7Ozs7O0dBT1Q7MkZBSVUseUJBQXlCO2tCQWRyQyxTQUFTOytCQUNFLHVCQUF1QixZQUV2Qjs7Ozs7OztHQU9ULG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNLGFBQ3BDLENBQUMsRUFBQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsR0FBRyxFQUFFLDBCQUEwQixDQUFDLEVBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIGZvcndhcmRSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRpcHRhcEV2ZW50U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RpcHRhcC1ldmVudC5zZXJ2aWNlJztcbmltcG9ydCB7IEJhc2VDb250cm9sLCBCdXR0b25CYXNlQ29udHJvbCB9IGZyb20gJy4vYmFzZS1jb250cm9sJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGlwLWNvbnRyb2wtdW5kZXJsaW5lJyxcbiAgc3R5bGVVcmxzOiBbJy4uLy4uLy4uLy4uL19jb250cm9scy5zY3NzJ10sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGJ1dHRvbiBjbGFzcz1cInRpcC1jb250cm9sLWJ1dHRvblwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwidG9nZ2xlVW5kZXJsaW5lKClcIiAjYnV0dG9uPlxuICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnQtd3JhcHBlclwiICNyZWY+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgICAgPGkgKm5nSWY9XCJyZWYuY2hpbGROb2Rlcy5sZW5ndGggPT09IDBcIiBjbGFzcz1cIm1hdGVyaWFsLWljb25zXCI+Zm9ybWF0X3VuZGVybGluZTwvaT5cbiAgICA8L2J1dHRvbj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHByb3ZpZGVyczogW3twcm92aWRlOiBCYXNlQ29udHJvbCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ29udHJvbFVuZGVybGluZUNvbXBvbmVudCl9XSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udHJvbFVuZGVybGluZUNvbXBvbmVudCBleHRlbmRzIEJ1dHRvbkJhc2VDb250cm9sIHtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgZXZlbnRTZXJ2aWNlOiBUaXB0YXBFdmVudFNlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyB0b2dnbGVVbmRlcmxpbmUoKTogdm9pZCB7XG4gICAgdGhpcy5lZGl0b3IgJiYgdGhpcy5lZGl0b3IuY2hhaW4oKS5mb2N1cygpLnRvZ2dsZVVuZGVybGluZSgpLnJ1bigpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNhbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLmVkaXRvcj8uY2FuKCkudG9nZ2xlVW5kZXJsaW5lKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5lZGl0b3I/LmlzQWN0aXZlKCd1bmRlcmxpbmUnKTtcbiAgfVxufVxuIl19