@zodiac-ui/editor
Version:
A rich text editor for Angular based on `@atlaskit/editor-core`.
40 lines • 4.93 kB
JavaScript
import { ChangeDetectionStrategy, Component } from "@angular/core";
import { toggleSuperscript } from "../../plugins/text-formatting/subsup/subsup.command";
import { isMarkActive } from "../../plugins/text-formatting/utils";
import { toggleMark } from "prosemirror-commands";
export class SuperscriptToolComponent {
constructor() {
this.tool = {
tooltip: "Toggle Superscript",
icon: "fa-superscript",
run: toggleSuperscript(),
active(state) {
const { subsup } = state.schema.marks;
if (subsup) {
return isMarkActive(state, subsup.create({ type: "sup" }));
}
return false;
},
enable(state) {
const { subsup } = state.schema.marks;
if (subsup) {
return toggleMark(subsup, { type: "sup" })(state);
}
return false;
},
};
}
}
SuperscriptToolComponent.decorators = [
{ type: Component, args: [{
selector: "z-superscript-tool",
template: `
<z-editor-toolbar-button [tool]="tool"></z-editor-toolbar-button>
`,
changeDetection: ChangeDetectionStrategy.OnPush,
styles: [""]
}] }
];
/** @nocollapse */
SuperscriptToolComponent.ctorParameters = () => [];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VwZXJzY3JpcHQtdG9vbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Aem9kaWFjLXVpL2VkaXRvci8iLCJzb3VyY2VzIjpbInRvb2xzL3N1cGVyc2NyaXB0LXRvb2wvc3VwZXJzY3JpcHQtdG9vbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQTtBQUN2RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0scUNBQXFDLENBQUE7QUFDbEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBV2pELE1BQU0sT0FBTyx3QkFBd0I7SUFHakM7UUFDSSxJQUFJLENBQUMsSUFBSSxHQUFHO1lBQ1IsT0FBTyxFQUFFLG9CQUFvQjtZQUM3QixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLEdBQUcsRUFBRSxpQkFBaUIsRUFBRTtZQUN4QixNQUFNLENBQUMsS0FBSztnQkFDUixNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUE7Z0JBQ3JDLElBQUksTUFBTSxFQUFFO29CQUNSLE9BQU8sWUFBWSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQTtpQkFDN0Q7Z0JBQ0QsT0FBTyxLQUFLLENBQUE7WUFDaEIsQ0FBQztZQUNELE1BQU0sQ0FBQyxLQUFLO2dCQUNSLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQTtnQkFDckMsSUFBSSxNQUFNLEVBQUU7b0JBQ1IsT0FBTyxVQUFVLENBQUMsTUFBTSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUE7aUJBQ3BEO2dCQUNELE9BQU8sS0FBSyxDQUFBO1lBQ2hCLENBQUM7U0FDSixDQUFBO0lBQ0wsQ0FBQzs7O1lBL0JKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsb0JBQW9CO2dCQUM5QixRQUFRLEVBQUU7O0tBRVQ7Z0JBRUQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCJcclxuaW1wb3J0IHsgdG9nZ2xlU3VwZXJzY3JpcHQgfSBmcm9tIFwiLi4vLi4vcGx1Z2lucy90ZXh0LWZvcm1hdHRpbmcvc3Vic3VwL3N1YnN1cC5jb21tYW5kXCJcclxuaW1wb3J0IHsgaXNNYXJrQWN0aXZlIH0gZnJvbSBcIi4uLy4uL3BsdWdpbnMvdGV4dC1mb3JtYXR0aW5nL3V0aWxzXCJcclxuaW1wb3J0IHsgdG9nZ2xlTWFyayB9IGZyb20gXCJwcm9zZW1pcnJvci1jb21tYW5kc1wiXHJcbmltcG9ydCB7IEVkaXRvclRvb2wgfSBmcm9tIFwiLi4vLi4vbGliL2VkaXRvci10b29sYmFyL2ludGVyZmFjZXNcIlxyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogXCJ6LXN1cGVyc2NyaXB0LXRvb2xcIixcclxuICAgIHRlbXBsYXRlOiBgXHJcbiAgICAgICAgPHotZWRpdG9yLXRvb2xiYXItYnV0dG9uIFt0b29sXT1cInRvb2xcIj48L3otZWRpdG9yLXRvb2xiYXItYnV0dG9uPlxyXG4gICAgYCxcclxuICAgIHN0eWxlVXJsczogW1wiLi9zdXBlcnNjcmlwdC10b29sLmNvbXBvbmVudC5zY3NzXCJdLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdXBlcnNjcmlwdFRvb2xDb21wb25lbnQge1xyXG4gICAgcHVibGljIHRvb2w6IEVkaXRvclRvb2xcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLnRvb2wgPSB7XHJcbiAgICAgICAgICAgIHRvb2x0aXA6IFwiVG9nZ2xlIFN1cGVyc2NyaXB0XCIsXHJcbiAgICAgICAgICAgIGljb246IFwiZmEtc3VwZXJzY3JpcHRcIixcclxuICAgICAgICAgICAgcnVuOiB0b2dnbGVTdXBlcnNjcmlwdCgpLFxyXG4gICAgICAgICAgICBhY3RpdmUoc3RhdGUpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHsgc3Vic3VwIH0gPSBzdGF0ZS5zY2hlbWEubWFya3NcclxuICAgICAgICAgICAgICAgIGlmIChzdWJzdXApIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gaXNNYXJrQWN0aXZlKHN0YXRlLCBzdWJzdXAuY3JlYXRlKHsgdHlwZTogXCJzdXBcIiB9KSlcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBlbmFibGUoc3RhdGUpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHsgc3Vic3VwIH0gPSBzdGF0ZS5zY2hlbWEubWFya3NcclxuICAgICAgICAgICAgICAgIGlmIChzdWJzdXApIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdG9nZ2xlTWFyayhzdWJzdXAsIHsgdHlwZTogXCJzdXBcIiB9KShzdGF0ZSlcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=