{"version":3,"file":"covalent-text-editor.mjs","sources":["../../../../libs/angular-text-editor/src/lib/text-editor.component.ts","../../../../libs/angular-text-editor/src/lib/text-editor.component.html","../../../../libs/angular-text-editor/src/lib/text-editor.module.ts","../../../../libs/angular-text-editor/src/covalent-text-editor.ts"],"sourcesContent":["import {\n  Component,\n  Input,\n  AfterViewInit,\n  ViewChild,\n  ElementRef,\n  forwardRef,\n  NgZone,\n  OnDestroy,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR, ControlValueAccessor } from '@angular/forms';\nimport { marked } from 'marked';\n\nconst noop: any = () => {\n  // empty method\n};\n\nconst EasyMDE = (window as any).EasyMDE;\n\n@Component({\n  selector: 'td-text-editor',\n  templateUrl: './text-editor.component.html',\n  styleUrls: ['./text-editor.component.scss'],\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => TdTextEditorComponent),\n      multi: true,\n    },\n  ],\n})\nexport class TdTextEditorComponent\n  implements AfterViewInit, OnDestroy, ControlValueAccessor\n{\n  private _value = '';\n  private _easyMDE!: typeof EasyMDE;\n  private _fromEditor = false;\n\n  @ViewChild('easymde', { static: true }) textarea!: ElementRef;\n  @Input() options: any = {};\n\n  constructor(private _zone: NgZone) {}\n\n  /* tslint:disable-next-line */\n  propagateChange = (_: any) => noop;\n  onTouched = () => noop;\n\n  /**\n   * value?: string\n   * Value in the Editor after async getEditorContent was called\n   */\n  @Input()\n  set value(value: string) {\n    this._value = value;\n    if (this._easyMDE) {\n      if (!this._fromEditor) {\n        this._easyMDE.value(value);\n      }\n      this.propagateChange(this._value);\n      this._fromEditor = false;\n      this._zone.run(() => (this._value = value));\n    }\n  }\n\n  get value(): string {\n    return this._value;\n  }\n\n  get easyMDE(): typeof EasyMDE {\n    return this._easyMDE;\n  }\n\n  /**\n   * Implemented as part of ControlValueAccessor.\n   */\n  writeValue(value: any): void {\n    this.value = !value ? '' : value;\n  }\n  registerOnChange(fn: any): void {\n    this.propagateChange = fn;\n  }\n  registerOnTouched(fn: any): void {\n    this.onTouched = fn;\n  }\n\n  ngAfterViewInit(): void {\n    this.options.element = this.textarea.nativeElement;\n\n    // If content entered is html then don't evaluate it, prevent xss vulnerabilities\n    marked.setOptions({ sanitize: true });\n    this._easyMDE = new EasyMDE(this.options);\n    this._easyMDE.value(this.value);\n    this._easyMDE.codemirror.on('change', this._onChange);\n  }\n\n  ngOnDestroy(): void {\n    this._easyMDE?.codemirror.off('change', this._onChange);\n  }\n\n  /* Wrapped function provided by EasyMDE */\n\n  isPreviewActive(): boolean {\n    return this._easyMDE.isPreviewActive();\n  }\n\n  isSideBySideActive(): boolean {\n    return this._easyMDE.isSideBySideActive();\n  }\n\n  isFullscreenActive(): boolean {\n    return this._easyMDE.isFullscreenActive();\n  }\n\n  clearAutosavedValue(): void {\n    this._easyMDE.clearAutosavedValue();\n  }\n\n  toTextArea(): void {\n    this._easyMDE.toTextArea();\n  }\n\n  toggleBold(): void {\n    EasyMDE.toggleBold(this._easyMDE);\n  }\n\n  toggleItalic(): void {\n    EasyMDE.toggleItalic(this._easyMDE);\n  }\n\n  toggleStrikethrough(): void {\n    EasyMDE.toggleStrikethrough(this._easyMDE);\n  }\n\n  toggleHeadingSmaller(): void {\n    EasyMDE.toggleHeadingSmaller(this._easyMDE);\n  }\n\n  toggleHeadingBigger(): void {\n    EasyMDE.toggleHeadingBigger(this._easyMDE);\n  }\n\n  toggleHeading1(): void {\n    EasyMDE.toggleHeading1(this._easyMDE);\n  }\n\n  toggleHeading2(): void {\n    EasyMDE.toggleHeading2(this._easyMDE);\n  }\n\n  toggleHeading3(): void {\n    EasyMDE.toggleHeading3(this._easyMDE);\n  }\n\n  toggleCodeBlock(): void {\n    EasyMDE.toggleCodeBlock(this._easyMDE);\n  }\n\n  toggleBlockquote(): void {\n    EasyMDE.toggleBlockquote(this._easyMDE);\n  }\n\n  toggleUnorderedList(): void {\n    EasyMDE.toggleUnorderedList(this._easyMDE);\n  }\n\n  toggleOrderedList(): void {\n    EasyMDE.toggleOrderedList(this._easyMDE);\n  }\n\n  cleanBlock(): void {\n    EasyMDE.cleanBlock(this._easyMDE);\n  }\n\n  drawLink(): void {\n    EasyMDE.drawLink(this._easyMDE);\n  }\n\n  drawImage(): void {\n    EasyMDE.drawImage(this._easyMDE);\n  }\n\n  drawTable(): void {\n    EasyMDE.drawTable(this._easyMDE);\n  }\n\n  drawHorizontalRule(): void {\n    EasyMDE.drawHorizontalRule(this._easyMDE);\n  }\n\n  togglePreview(): void {\n    EasyMDE.togglePreview(this._easyMDE);\n  }\n\n  toggleSideBySide(): void {\n    EasyMDE.toggleSideBySide(this._easyMDE);\n  }\n\n  toggleFullScreen(): void {\n    EasyMDE.toggleFullScreen(this._easyMDE);\n  }\n\n  private _onChange = (): void => {\n    this._fromEditor = true;\n    this.writeValue(this._easyMDE?.value());\n  };\n}\n","<div>\n  <textarea #easymde></textarea>\n</div>\n","import { NgModule } from '@angular/core';\nimport { TdTextEditorComponent } from './text-editor.component';\n\n/**\n * @deprecated This module is deprecated and will be removed in future versions.\n * Please migrate to using standalone components as soon as possible.\n */\n@NgModule({\n  imports: [TdTextEditorComponent],\n  exports: [TdTextEditorComponent],\n})\nexport class CovalentTextEditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}