@tinymce/tinymce-angular 4.2.1 → 4.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -634,7 +634,6 @@
634
634
  _this.id = '';
635
635
  _this.modelEvents = 'change input undo redo';
636
636
  _this.onTouchedCallback = noop;
637
- _this.onChangeCallback = noop;
638
637
  _this._elementRef = elementRef;
639
638
  _this.ngZone = ngZone;
640
639
  _this.initialise = _this.initialise.bind(_this);
@@ -739,14 +738,12 @@
739
738
  EditorComponent.prototype.initEditor = function (editor) {
740
739
  var _this = this;
741
740
  editor.on('blur', function () { return _this.ngZone.run(function () { return _this.onTouchedCallback(); }); });
742
- editor.on(this.modelEvents, function () {
743
- _this.ngZone.run(function () { return _this.onChangeCallback(editor.getContent({ format: _this.outputFormat })); });
744
- });
741
+ editor.on(this.modelEvents, function () { return _this.ngZone.run(function () { return _this.emitOnChange(editor); }); });
745
742
  if (typeof this.initialValue === 'string') {
746
743
  this.ngZone.run(function () {
747
744
  editor.setContent(_this.initialValue);
748
745
  if (editor.getContent() !== _this.initialValue) {
749
- _this.onChangeCallback(editor.getContent({ format: _this.outputFormat }));
746
+ _this.emitOnChange(editor);
750
747
  }
751
748
  if (_this.onInitNgModel !== undefined) {
752
749
  _this.onInitNgModel.emit(editor);
@@ -754,6 +751,11 @@
754
751
  });
755
752
  }
756
753
  };
754
+ EditorComponent.prototype.emitOnChange = function (editor) {
755
+ if (this.onChangeCallback) {
756
+ this.onChangeCallback(editor.getContent({ format: this.outputFormat }));
757
+ }
758
+ };
757
759
  return EditorComponent;
758
760
  }(Events));
759
761
  EditorComponent.decorators = [
@@ -1 +1 @@
1
- {"version":3,"file":"tinymce-tinymce-angular.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../tinymce-angular-component/src/main/ts/TinyMCE.ts","../../../tinymce-angular-component/src/main/ts/editor/Events.ts","../../../tinymce-angular-component/src/main/ts/utils/Utils.ts","../../../tinymce-angular-component/src/main/ts/utils/ScriptLoader.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.component.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.module.ts","../../../tinymce-angular-component/src/main/ts/tinymce-tinymce-angular.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nconst getTinymce = () => {\n const w = typeof window !== 'undefined' ? (window as any) : undefined;\n return w && w.tinymce ? w.tinymce : null;\n};\n\nexport { getTinymce };\n","import { Output, EventEmitter } from '@angular/core';\n\nexport interface EventObj<T> {\n event: T;\n editor: any;\n}\n\nexport class Events {\n @Output() public onBeforePaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onBlur: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onClick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onContextMenu: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onCopy: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onCut: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onDblclick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onDrag: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragEnd: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragGesture: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragOver: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onFocus: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusIn: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusOut: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onKeyDown: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyPress: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyUp: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onMouseDown: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseEnter: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseLeave: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseMove: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOut: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOver: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseUp: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onPaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onSelectionChange: EventEmitter<EventObj<Event>> = new EventEmitter();\n @Output() public onActivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeRenderUI: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onClearUndos: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDeactivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDirty: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onHide: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInitNgModel: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onLoadContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onNodeChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostRender: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onProgressState: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRedo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRemove: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onReset: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSaveContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetAttrib: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResizeStart: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResized: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectSelected: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onShow: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSubmit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onVisualAid: EventEmitter<EventObj<any>> = new EventEmitter();\n}\n\nexport const validEvents: (keyof Events)[] = [\n 'onActivate',\n 'onAddUndo',\n 'onBeforeAddUndo',\n 'onBeforeExecCommand',\n 'onBeforeGetContent',\n 'onBeforeRenderUI',\n 'onBeforeSetContent',\n 'onBeforePaste',\n 'onBlur',\n 'onChange',\n 'onClearUndos',\n 'onClick',\n 'onContextMenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onDeactivate',\n 'onDirty',\n 'onDrag',\n 'onDragDrop',\n 'onDragEnd',\n 'onDragGesture',\n 'onDragOver',\n 'onDrop',\n 'onExecCommand',\n 'onFocus',\n 'onFocusIn',\n 'onFocusOut',\n 'onGetContent',\n 'onHide',\n 'onInit',\n 'onKeyDown',\n 'onKeyPress',\n 'onKeyUp',\n 'onLoadContent',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onNodeChange',\n 'onObjectResizeStart',\n 'onObjectResized',\n 'onObjectSelected',\n 'onPaste',\n 'onPostProcess',\n 'onPostRender',\n 'onPreProcess',\n 'onProgressState',\n 'onRedo',\n 'onRemove',\n 'onReset',\n 'onSaveContent',\n 'onSelectionChange',\n 'onSetAttrib',\n 'onSetContent',\n 'onShow',\n 'onSubmit',\n 'onUndo',\n 'onVisualAid'\n];\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { EventEmitter } from '@angular/core';\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\nconst bindHandlers = (ctx: EditorComponent, editor: any): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n editor.on(eventName.substring(2), (event: any) => ctx.ngZone.run(() => eventEmitter.emit({ event, editor })));\n });\n};\n\nconst getValidEvents = (ctx: EditorComponent): (keyof Events)[] => {\n const ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);\n const allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(\n (event) => validEvents.includes(event as (keyof Events)) && !ignoredEvents.includes(event)) as (keyof Events)[];\n return allowedEvents;\n};\n\nconst parseStringProperty = (property: string | string[] | undefined, defaultValue: (keyof Events)[]): string[] => {\n if ( typeof property === 'string') {\n return property.split(',').map((value) => value.trim());\n }\n if ( Array.isArray(property)) {\n return property;\n }\n return defaultValue;\n};\n\nlet unique = 0;\n\nconst uuid = (prefix: string): string => {\n const date = new Date();\n const time = date.getTime();\n const random = Math.floor(Math.random() * 1000000000);\n\n unique++;\n\n return prefix + '_' + random + unique + String(time);\n};\n\nconst isTextarea = (element?: Element): element is HTMLTextAreaElement => typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';\n\nconst normalizePluginArray = (plugins?: string | string[]): string[] => {\n if (typeof plugins === 'undefined' || plugins === '') {\n return [];\n }\n\n return Array.isArray(plugins) ? plugins : plugins.split(' ');\n};\n\nconst mergePlugins = (initPlugins: string | string[], inputPlugins?: string | string[]) =>\n normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop: (...args: any[]) => void = () => { };\n\nconst isNullOrUndefined = (value: any): value is null | undefined => value === null || value === undefined;\n\nexport {\n bindHandlers,\n uuid,\n isTextarea,\n normalizePluginArray,\n mergePlugins,\n noop,\n isNullOrUndefined\n};\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { uuid } from './Utils';\n\nexport type callbackFn = () => void;\nexport interface IStateObj {\n listeners: callbackFn[];\n scriptId: string;\n scriptLoaded: boolean;\n}\n\nconst createState = (): IStateObj => ({\n listeners: [],\n scriptId: uuid('tiny-script'),\n scriptLoaded: false\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string, callback: callbackFn) => void;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state: IStateObj = createState();\n\n const injectScriptTag = (scriptId: string, doc: Document, url: string, callback: callbackFn) => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.id = scriptId;\n scriptTag.src = url;\n\n const handler = () => {\n scriptTag.removeEventListener('load', handler);\n callback();\n };\n scriptTag.addEventListener('load', handler);\n if (doc.head) {\n doc.head.appendChild(scriptTag);\n }\n };\n\n const load = (doc: Document, url: string, callback: callbackFn) => {\n if (state.scriptLoaded) {\n callback();\n } else {\n state.listeners.push(callback);\n if (!doc.getElementById(state.scriptId)) {\n injectScriptTag(state.scriptId, doc, url, () => {\n state.listeners.forEach((fn) => fn());\n state.scriptLoaded = true;\n });\n }\n }\n };\n\n // Only to be used by tests.\n const reinitialize = () => {\n state = createState();\n };\n\n return {\n load,\n reinitialize\n };\n};\n\nconst ScriptLoader = CreateScriptLoader();\n\nexport {\n ScriptLoader\n};","/* eslint-disable @typescript-eslint/no-parameter-properties */\nimport { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getTinymce } from '../TinyMCE';\nimport { bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\n\nexport const TINYMCE_SCRIPT_SRC = new InjectionToken<string>('TINYMCE_SCRIPT_SRC');\n\nconst EDITOR_COMPONENT_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n};\n\n@Component({\n selector: 'editor',\n template: '<ng-template></ng-template>',\n styles: [ ':host { display: block; }' ],\n providers: [ EDITOR_COMPONENT_VALUE_ACCESSOR ]\n})\nexport class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {\n\n @Input() public cloudChannel = '5';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: Record<string, any> | undefined;\n @Input() public id = '';\n @Input() public initialValue: string | undefined;\n @Input() public outputFormat: 'html' | 'text' | undefined;\n @Input() public inline: boolean | undefined;\n @Input() public tagName: string | undefined;\n @Input() public plugins: string | undefined;\n @Input() public toolbar: string | string[] | undefined;\n @Input() public modelEvents = 'change input undo redo';\n @Input() public allowedEvents: string | string[] | undefined;\n @Input() public ignoreEvents: string | string[] | undefined;\n\n @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n public get editor() {\n return this._editor;\n }\n\n public ngZone: NgZone;\n\n private _elementRef: ElementRef;\n private _element: Element | undefined;\n private _disabled: boolean | undefined;\n private _editor: any;\n\n private onTouchedCallback = noop;\n private onChangeCallback = noop;\n\n public constructor(\n elementRef: ElementRef,\n ngZone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object,\n @Optional() @Inject(TINYMCE_SCRIPT_SRC) private tinymceScriptSrc?: string\n ) {\n super();\n this._elementRef = elementRef;\n this.ngZone = ngZone;\n this.initialise = this.initialise.bind(this);\n }\n\n public writeValue(value: string | null): void {\n if (this._editor && this._editor.initialized) {\n this._editor.setContent(isNullOrUndefined(value) ? '' : value);\n } else {\n this.initialValue = value === null ? undefined : value;\n }\n }\n\n public registerOnChange(fn: (_: any) => void): void {\n this.onChangeCallback = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n if (this._editor) {\n this._editor.setMode(isDisabled ? 'readonly' : 'design');\n } else if (isDisabled) {\n this.init = { ...this.init, readonly: true };\n }\n }\n\n public ngAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.id = this.id || uuid('tiny-angular');\n this.inline = this.inline !== undefined ? this.inline !== false : !!(this.init?.inline);\n this.createElement();\n if (getTinymce() !== null) {\n this.initialise();\n } else if (this._element && this._element.ownerDocument) {\n ScriptLoader.load(\n this._element.ownerDocument,\n this.getScriptSrc(),\n this.initialise.bind(this)\n );\n }\n }\n }\n\n public ngOnDestroy() {\n if (getTinymce() !== null) {\n getTinymce().remove(this._editor);\n }\n }\n\n public createElement() {\n const tagName = typeof this.tagName === 'string' ? this.tagName : 'div';\n this._element = document.createElement(this.inline ? tagName : 'textarea');\n if (this._element) {\n this._element.id = this.id;\n if (isTextarea(this._element)) {\n this._element.style.visibility = 'hidden';\n }\n this._elementRef.nativeElement.appendChild(this._element);\n }\n }\n\n public initialise() {\n const finalInit = {\n ...this.init,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins(this.init && this.init.plugins, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: any) => {\n this._editor = editor;\n editor.on('init', (_e: unknown) => {\n this.initEditor(editor);\n });\n bindHandlers(this, editor);\n\n if (this.init && typeof this.init.setup === 'function') {\n this.init.setup(editor);\n }\n }\n };\n\n if (isTextarea(this._element)) {\n this._element.style.visibility = '';\n }\n\n this.ngZone.runOutsideAngular(() => {\n getTinymce().init(finalInit);\n });\n }\n\n private getScriptSrc() {\n return isNullOrUndefined(this.tinymceScriptSrc) ?\n `https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js` :\n this.tinymceScriptSrc;\n }\n\n private initEditor(editor: any) {\n editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));\n editor.on(this.modelEvents, () => {\n this.ngZone.run(() => this.onChangeCallback(editor.getContent({ format: this.outputFormat })));\n });\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue);\n if (editor.getContent() !== this.initialValue) {\n this.onChangeCallback(editor.getContent({ format: this.outputFormat }));\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor);\n }\n });\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [ CommonModule, FormsModule ],\n declarations: [ EditorComponent ],\n exports: [ EditorComponent ]\n})\nexport class EditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {Events as ɵa} from './editor/Events';"],"names":["EventEmitter","Output","InjectionToken","NG_VALUE_ACCESSOR","forwardRef","isPlatformBrowser","Component","ElementRef","NgZone","Inject","PLATFORM_ID","Optional","Input","NgModule","CommonModule","FormsModule"],"mappings":"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"}
1
+ {"version":3,"file":"tinymce-tinymce-angular.umd.js","sources":["../../../node_modules/tslib/tslib.es6.js","../../../tinymce-angular-component/src/main/ts/TinyMCE.ts","../../../tinymce-angular-component/src/main/ts/editor/Events.ts","../../../tinymce-angular-component/src/main/ts/utils/Utils.ts","../../../tinymce-angular-component/src/main/ts/utils/ScriptLoader.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.component.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.module.ts","../../../tinymce-angular-component/src/main/ts/tinymce-tinymce-angular.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nconst getTinymce = () => {\n const w = typeof window !== 'undefined' ? (window as any) : undefined;\n return w && w.tinymce ? w.tinymce : null;\n};\n\nexport { getTinymce };\n","import { Output, EventEmitter } from '@angular/core';\n\nexport interface EventObj<T> {\n event: T;\n editor: any;\n}\n\nexport class Events {\n @Output() public onBeforePaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onBlur: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onClick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onContextMenu: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onCopy: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onCut: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onDblclick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onDrag: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragEnd: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragGesture: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragOver: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onFocus: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusIn: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusOut: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onKeyDown: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyPress: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyUp: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onMouseDown: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseEnter: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseLeave: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseMove: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOut: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOver: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseUp: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onPaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onSelectionChange: EventEmitter<EventObj<Event>> = new EventEmitter();\n @Output() public onActivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeRenderUI: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onClearUndos: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDeactivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDirty: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onHide: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInitNgModel: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onLoadContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onNodeChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostRender: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onProgressState: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRedo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRemove: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onReset: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSaveContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetAttrib: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResizeStart: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResized: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectSelected: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onShow: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSubmit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onVisualAid: EventEmitter<EventObj<any>> = new EventEmitter();\n}\n\nexport const validEvents: (keyof Events)[] = [\n 'onActivate',\n 'onAddUndo',\n 'onBeforeAddUndo',\n 'onBeforeExecCommand',\n 'onBeforeGetContent',\n 'onBeforeRenderUI',\n 'onBeforeSetContent',\n 'onBeforePaste',\n 'onBlur',\n 'onChange',\n 'onClearUndos',\n 'onClick',\n 'onContextMenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onDeactivate',\n 'onDirty',\n 'onDrag',\n 'onDragDrop',\n 'onDragEnd',\n 'onDragGesture',\n 'onDragOver',\n 'onDrop',\n 'onExecCommand',\n 'onFocus',\n 'onFocusIn',\n 'onFocusOut',\n 'onGetContent',\n 'onHide',\n 'onInit',\n 'onKeyDown',\n 'onKeyPress',\n 'onKeyUp',\n 'onLoadContent',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onNodeChange',\n 'onObjectResizeStart',\n 'onObjectResized',\n 'onObjectSelected',\n 'onPaste',\n 'onPostProcess',\n 'onPostRender',\n 'onPreProcess',\n 'onProgressState',\n 'onRedo',\n 'onRemove',\n 'onReset',\n 'onSaveContent',\n 'onSelectionChange',\n 'onSetAttrib',\n 'onSetContent',\n 'onShow',\n 'onSubmit',\n 'onUndo',\n 'onVisualAid'\n];\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { EventEmitter } from '@angular/core';\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\nconst bindHandlers = (ctx: EditorComponent, editor: any): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n editor.on(eventName.substring(2), (event: any) => ctx.ngZone.run(() => eventEmitter.emit({ event, editor })));\n });\n};\n\nconst getValidEvents = (ctx: EditorComponent): (keyof Events)[] => {\n const ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);\n const allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(\n (event) => validEvents.includes(event as (keyof Events)) && !ignoredEvents.includes(event)) as (keyof Events)[];\n return allowedEvents;\n};\n\nconst parseStringProperty = (property: string | string[] | undefined, defaultValue: (keyof Events)[]): string[] => {\n if ( typeof property === 'string') {\n return property.split(',').map((value) => value.trim());\n }\n if ( Array.isArray(property)) {\n return property;\n }\n return defaultValue;\n};\n\nlet unique = 0;\n\nconst uuid = (prefix: string): string => {\n const date = new Date();\n const time = date.getTime();\n const random = Math.floor(Math.random() * 1000000000);\n\n unique++;\n\n return prefix + '_' + random + unique + String(time);\n};\n\nconst isTextarea = (element?: Element): element is HTMLTextAreaElement => typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';\n\nconst normalizePluginArray = (plugins?: string | string[]): string[] => {\n if (typeof plugins === 'undefined' || plugins === '') {\n return [];\n }\n\n return Array.isArray(plugins) ? plugins : plugins.split(' ');\n};\n\nconst mergePlugins = (initPlugins: string | string[], inputPlugins?: string | string[]) =>\n normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop: (...args: any[]) => void = () => { };\n\nconst isNullOrUndefined = (value: any): value is null | undefined => value === null || value === undefined;\n\nexport {\n bindHandlers,\n uuid,\n isTextarea,\n normalizePluginArray,\n mergePlugins,\n noop,\n isNullOrUndefined\n};\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { uuid } from './Utils';\n\nexport type callbackFn = () => void;\nexport interface IStateObj {\n listeners: callbackFn[];\n scriptId: string;\n scriptLoaded: boolean;\n}\n\nconst createState = (): IStateObj => ({\n listeners: [],\n scriptId: uuid('tiny-script'),\n scriptLoaded: false\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string, callback: callbackFn) => void;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state: IStateObj = createState();\n\n const injectScriptTag = (scriptId: string, doc: Document, url: string, callback: callbackFn) => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.id = scriptId;\n scriptTag.src = url;\n\n const handler = () => {\n scriptTag.removeEventListener('load', handler);\n callback();\n };\n scriptTag.addEventListener('load', handler);\n if (doc.head) {\n doc.head.appendChild(scriptTag);\n }\n };\n\n const load = (doc: Document, url: string, callback: callbackFn) => {\n if (state.scriptLoaded) {\n callback();\n } else {\n state.listeners.push(callback);\n if (!doc.getElementById(state.scriptId)) {\n injectScriptTag(state.scriptId, doc, url, () => {\n state.listeners.forEach((fn) => fn());\n state.scriptLoaded = true;\n });\n }\n }\n };\n\n // Only to be used by tests.\n const reinitialize = () => {\n state = createState();\n };\n\n return {\n load,\n reinitialize\n };\n};\n\nconst ScriptLoader = CreateScriptLoader();\n\nexport {\n ScriptLoader\n};","/* eslint-disable @typescript-eslint/no-parameter-properties */\nimport { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getTinymce } from '../TinyMCE';\nimport { bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\n\nexport const TINYMCE_SCRIPT_SRC = new InjectionToken<string>('TINYMCE_SCRIPT_SRC');\n\nconst EDITOR_COMPONENT_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n};\n\n@Component({\n selector: 'editor',\n template: '<ng-template></ng-template>',\n styles: [ ':host { display: block; }' ],\n providers: [ EDITOR_COMPONENT_VALUE_ACCESSOR ]\n})\nexport class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {\n\n @Input() public cloudChannel = '5';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: Record<string, any> | undefined;\n @Input() public id = '';\n @Input() public initialValue: string | undefined;\n @Input() public outputFormat: 'html' | 'text' | undefined;\n @Input() public inline: boolean | undefined;\n @Input() public tagName: string | undefined;\n @Input() public plugins: string | undefined;\n @Input() public toolbar: string | string[] | undefined;\n @Input() public modelEvents = 'change input undo redo';\n @Input() public allowedEvents: string | string[] | undefined;\n @Input() public ignoreEvents: string | string[] | undefined;\n\n @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n public get editor() {\n return this._editor;\n }\n\n public ngZone: NgZone;\n\n private _elementRef: ElementRef;\n private _element: Element | undefined;\n private _disabled: boolean | undefined;\n private _editor: any;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n public constructor(\n elementRef: ElementRef,\n ngZone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object,\n @Optional() @Inject(TINYMCE_SCRIPT_SRC) private tinymceScriptSrc?: string\n ) {\n super();\n this._elementRef = elementRef;\n this.ngZone = ngZone;\n this.initialise = this.initialise.bind(this);\n }\n\n public writeValue(value: string | null): void {\n if (this._editor && this._editor.initialized) {\n this._editor.setContent(isNullOrUndefined(value) ? '' : value);\n } else {\n this.initialValue = value === null ? undefined : value;\n }\n }\n\n public registerOnChange(fn: (_: any) => void): void {\n this.onChangeCallback = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n if (this._editor) {\n this._editor.setMode(isDisabled ? 'readonly' : 'design');\n } else if (isDisabled) {\n this.init = { ...this.init, readonly: true };\n }\n }\n\n public ngAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.id = this.id || uuid('tiny-angular');\n this.inline = this.inline !== undefined ? this.inline !== false : !!(this.init?.inline);\n this.createElement();\n if (getTinymce() !== null) {\n this.initialise();\n } else if (this._element && this._element.ownerDocument) {\n ScriptLoader.load(\n this._element.ownerDocument,\n this.getScriptSrc(),\n this.initialise.bind(this)\n );\n }\n }\n }\n\n public ngOnDestroy() {\n if (getTinymce() !== null) {\n getTinymce().remove(this._editor);\n }\n }\n\n public createElement() {\n const tagName = typeof this.tagName === 'string' ? this.tagName : 'div';\n this._element = document.createElement(this.inline ? tagName : 'textarea');\n if (this._element) {\n this._element.id = this.id;\n if (isTextarea(this._element)) {\n this._element.style.visibility = 'hidden';\n }\n this._elementRef.nativeElement.appendChild(this._element);\n }\n }\n\n public initialise() {\n const finalInit = {\n ...this.init,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins(this.init && this.init.plugins, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: any) => {\n this._editor = editor;\n editor.on('init', (_e: unknown) => {\n this.initEditor(editor);\n });\n bindHandlers(this, editor);\n\n if (this.init && typeof this.init.setup === 'function') {\n this.init.setup(editor);\n }\n }\n };\n\n if (isTextarea(this._element)) {\n this._element.style.visibility = '';\n }\n\n this.ngZone.runOutsideAngular(() => {\n getTinymce().init(finalInit);\n });\n }\n\n private getScriptSrc() {\n return isNullOrUndefined(this.tinymceScriptSrc) ?\n `https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js` :\n this.tinymceScriptSrc;\n }\n\n private initEditor(editor: any) {\n editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));\n editor.on(this.modelEvents, () => this.ngZone.run(() => this.emitOnChange(editor)));\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor);\n }\n });\n }\n }\n\n private emitOnChange(editor: any) {\n if (this.onChangeCallback) {\n this.onChangeCallback(editor.getContent({ format: this.outputFormat }));\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [ CommonModule, FormsModule ],\n declarations: [ EditorComponent ],\n exports: [ EditorComponent ]\n})\nexport class EditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {Events as ɵa} from './editor/Events';"],"names":["EventEmitter","Output","InjectionToken","NG_VALUE_ACCESSOR","forwardRef","isPlatformBrowser","Component","ElementRef","NgZone","Inject","PLATFORM_ID","Optional","Input","NgModule","CommonModule","FormsModule"],"mappings":"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"}
@@ -12,5 +12,5 @@
12
12
 
13
13
  See the Apache Version 2.0 License for specific language governing permissions
14
14
  and limitations under the License.
15
- ***************************************************************************** */var i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};var r=function(){var t="undefined"!=typeof window?window:void 0;return t&&t.tinymce?t.tinymce:null},u=function(){this.onBeforePaste=new e.EventEmitter,this.onBlur=new e.EventEmitter,this.onClick=new e.EventEmitter,this.onContextMenu=new e.EventEmitter,this.onCopy=new e.EventEmitter,this.onCut=new e.EventEmitter,this.onDblclick=new e.EventEmitter,this.onDrag=new e.EventEmitter,this.onDragDrop=new e.EventEmitter,this.onDragEnd=new e.EventEmitter,this.onDragGesture=new e.EventEmitter,this.onDragOver=new e.EventEmitter,this.onDrop=new e.EventEmitter,this.onFocus=new e.EventEmitter,this.onFocusIn=new e.EventEmitter,this.onFocusOut=new e.EventEmitter,this.onKeyDown=new e.EventEmitter,this.onKeyPress=new e.EventEmitter,this.onKeyUp=new e.EventEmitter,this.onMouseDown=new e.EventEmitter,this.onMouseEnter=new e.EventEmitter,this.onMouseLeave=new e.EventEmitter,this.onMouseMove=new e.EventEmitter,this.onMouseOut=new e.EventEmitter,this.onMouseOver=new e.EventEmitter,this.onMouseUp=new e.EventEmitter,this.onPaste=new e.EventEmitter,this.onSelectionChange=new e.EventEmitter,this.onActivate=new e.EventEmitter,this.onAddUndo=new e.EventEmitter,this.onBeforeAddUndo=new e.EventEmitter,this.onBeforeExecCommand=new e.EventEmitter,this.onBeforeGetContent=new e.EventEmitter,this.onBeforeRenderUI=new e.EventEmitter,this.onBeforeSetContent=new e.EventEmitter,this.onChange=new e.EventEmitter,this.onClearUndos=new e.EventEmitter,this.onDeactivate=new e.EventEmitter,this.onDirty=new e.EventEmitter,this.onExecCommand=new e.EventEmitter,this.onGetContent=new e.EventEmitter,this.onHide=new e.EventEmitter,this.onInit=new e.EventEmitter,this.onInitNgModel=new e.EventEmitter,this.onLoadContent=new e.EventEmitter,this.onNodeChange=new e.EventEmitter,this.onPostProcess=new e.EventEmitter,this.onPostRender=new e.EventEmitter,this.onPreInit=new e.EventEmitter,this.onPreProcess=new e.EventEmitter,this.onProgressState=new e.EventEmitter,this.onRedo=new e.EventEmitter,this.onRemove=new e.EventEmitter,this.onReset=new e.EventEmitter,this.onSaveContent=new e.EventEmitter,this.onSetAttrib=new e.EventEmitter,this.onObjectResizeStart=new e.EventEmitter,this.onObjectResized=new e.EventEmitter,this.onObjectSelected=new e.EventEmitter,this.onSetContent=new e.EventEmitter,this.onShow=new e.EventEmitter,this.onSubmit=new e.EventEmitter,this.onUndo=new e.EventEmitter,this.onVisualAid=new e.EventEmitter};u.propDecorators={onBeforePaste:[{type:e.Output}],onBlur:[{type:e.Output}],onClick:[{type:e.Output}],onContextMenu:[{type:e.Output}],onCopy:[{type:e.Output}],onCut:[{type:e.Output}],onDblclick:[{type:e.Output}],onDrag:[{type:e.Output}],onDragDrop:[{type:e.Output}],onDragEnd:[{type:e.Output}],onDragGesture:[{type:e.Output}],onDragOver:[{type:e.Output}],onDrop:[{type:e.Output}],onFocus:[{type:e.Output}],onFocusIn:[{type:e.Output}],onFocusOut:[{type:e.Output}],onKeyDown:[{type:e.Output}],onKeyPress:[{type:e.Output}],onKeyUp:[{type:e.Output}],onMouseDown:[{type:e.Output}],onMouseEnter:[{type:e.Output}],onMouseLeave:[{type:e.Output}],onMouseMove:[{type:e.Output}],onMouseOut:[{type:e.Output}],onMouseOver:[{type:e.Output}],onMouseUp:[{type:e.Output}],onPaste:[{type:e.Output}],onSelectionChange:[{type:e.Output}],onActivate:[{type:e.Output}],onAddUndo:[{type:e.Output}],onBeforeAddUndo:[{type:e.Output}],onBeforeExecCommand:[{type:e.Output}],onBeforeGetContent:[{type:e.Output}],onBeforeRenderUI:[{type:e.Output}],onBeforeSetContent:[{type:e.Output}],onChange:[{type:e.Output}],onClearUndos:[{type:e.Output}],onDeactivate:[{type:e.Output}],onDirty:[{type:e.Output}],onExecCommand:[{type:e.Output}],onGetContent:[{type:e.Output}],onHide:[{type:e.Output}],onInit:[{type:e.Output}],onInitNgModel:[{type:e.Output}],onLoadContent:[{type:e.Output}],onNodeChange:[{type:e.Output}],onPostProcess:[{type:e.Output}],onPostRender:[{type:e.Output}],onPreInit:[{type:e.Output}],onPreProcess:[{type:e.Output}],onProgressState:[{type:e.Output}],onRedo:[{type:e.Output}],onRemove:[{type:e.Output}],onReset:[{type:e.Output}],onSaveContent:[{type:e.Output}],onSetAttrib:[{type:e.Output}],onObjectResizeStart:[{type:e.Output}],onObjectResized:[{type:e.Output}],onObjectSelected:[{type:e.Output}],onSetContent:[{type:e.Output}],onShow:[{type:e.Output}],onSubmit:[{type:e.Output}],onUndo:[{type:e.Output}],onVisualAid:[{type:e.Output}]};var s=["onActivate","onAddUndo","onBeforeAddUndo","onBeforeExecCommand","onBeforeGetContent","onBeforeRenderUI","onBeforeSetContent","onBeforePaste","onBlur","onChange","onClearUndos","onClick","onContextMenu","onCopy","onCut","onDblclick","onDeactivate","onDirty","onDrag","onDragDrop","onDragEnd","onDragGesture","onDragOver","onDrop","onExecCommand","onFocus","onFocusIn","onFocusOut","onGetContent","onHide","onInit","onKeyDown","onKeyPress","onKeyUp","onLoadContent","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onNodeChange","onObjectResizeStart","onObjectResized","onObjectSelected","onPaste","onPostProcess","onPostRender","onPreProcess","onProgressState","onRedo","onRemove","onReset","onSaveContent","onSelectionChange","onSetAttrib","onSetContent","onShow","onSubmit","onUndo","onVisualAid"],p=function(t,e){a(t).forEach((function(n){var o=t[n];e.on(n.substring(2),(function(n){return t.ngZone.run((function(){return o.emit({event:n,editor:e})}))}))}))},a=function(t){var e=c(t.ignoreEvents,[]);return c(t.allowedEvents,s).filter((function(t){return s.includes(t)&&!e.includes(t)}))},c=function(t,e){return"string"==typeof t?t.split(",").map((function(t){return t.trim()})):Array.isArray(t)?t:e},l=0,d=function(t){var e=(new Date).getTime();return t+"_"+Math.floor(1e9*Math.random())+ ++l+String(e)},h=function(t){return void 0!==t&&"textarea"===t.tagName.toLowerCase()},y=function(t){return void 0===t||""===t?[]:Array.isArray(t)?t:t.split(" ")},m=function(t,e){return y(t).concat(y(e))},E=function(){},v=function(t){return null==t},f=function(){return{listeners:[],scriptId:d("tiny-script"),scriptLoaded:!1}},g=function(){var t=f();return{load:function(e,n,o){t.scriptLoaded?o():(t.listeners.push(o),e.getElementById(t.scriptId)||function(t,e,n,o){var i=e.createElement("script");i.referrerPolicy="origin",i.type="application/javascript",i.id=t,i.src=n;var r=function(){i.removeEventListener("load",r),o()};i.addEventListener("load",r),e.head&&e.head.appendChild(i)}(t.scriptId,e,n,(function(){t.listeners.forEach((function(t){return t()})),t.scriptLoaded=!0})))},reinitialize:function(){t=f()}}},O=g(),w=new e.InjectionToken("TINYMCE_SCRIPT_SRC"),C={provide:o.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return b})),multi:!0},b=function(t){function e(e,n,o,i){var r=t.call(this)||this;return r.platformId=o,r.tinymceScriptSrc=i,r.cloudChannel="5",r.apiKey="no-api-key",r.id="",r.modelEvents="change input undo redo",r.onTouchedCallback=E,r.onChangeCallback=E,r._elementRef=e,r.ngZone=n,r.initialise=r.initialise.bind(r),r}return function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,t),Object.defineProperty(e.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=t,this._editor&&this._editor.initialized&&this._editor.setMode(t?"readonly":"design")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"editor",{get:function(){return this._editor},enumerable:!1,configurable:!0}),e.prototype.writeValue=function(t){this._editor&&this._editor.initialized?this._editor.setContent(v(t)?"":t):this.initialValue=null===t?void 0:t},e.prototype.registerOnChange=function(t){this.onChangeCallback=t},e.prototype.registerOnTouched=function(t){this.onTouchedCallback=t},e.prototype.setDisabledState=function(t){this._editor?this._editor.setMode(t?"readonly":"design"):t&&(this.init=Object.assign(Object.assign({},this.init),{readonly:!0}))},e.prototype.ngAfterViewInit=function(){var t;n.isPlatformBrowser(this.platformId)&&(this.id=this.id||d("tiny-angular"),this.inline=void 0!==this.inline?!1!==this.inline:!!(null===(t=this.init)||void 0===t?void 0:t.inline),this.createElement(),null!==r()?this.initialise():this._element&&this._element.ownerDocument&&O.load(this._element.ownerDocument,this.getScriptSrc(),this.initialise.bind(this)))},e.prototype.ngOnDestroy=function(){null!==r()&&r().remove(this._editor)},e.prototype.createElement=function(){var t="string"==typeof this.tagName?this.tagName:"div";this._element=document.createElement(this.inline?t:"textarea"),this._element&&(this._element.id=this.id,h(this._element)&&(this._element.style.visibility="hidden"),this._elementRef.nativeElement.appendChild(this._element))},e.prototype.initialise=function(){var t=this,e=Object.assign(Object.assign({},this.init),{target:this._element,inline:this.inline,readonly:this.disabled,plugins:m(this.init&&this.init.plugins,this.plugins),toolbar:this.toolbar||this.init&&this.init.toolbar,setup:function(e){t._editor=e,e.on("init",(function(n){t.initEditor(e)})),p(t,e),t.init&&"function"==typeof t.init.setup&&t.init.setup(e)}});h(this._element)&&(this._element.style.visibility=""),this.ngZone.runOutsideAngular((function(){r().init(e)}))},e.prototype.getScriptSrc=function(){return v(this.tinymceScriptSrc)?"https://cdn.tiny.cloud/1/"+this.apiKey+"/tinymce/"+this.cloudChannel+"/tinymce.min.js":this.tinymceScriptSrc},e.prototype.initEditor=function(t){var e=this;t.on("blur",(function(){return e.ngZone.run((function(){return e.onTouchedCallback()}))})),t.on(this.modelEvents,(function(){e.ngZone.run((function(){return e.onChangeCallback(t.getContent({format:e.outputFormat}))}))})),"string"==typeof this.initialValue&&this.ngZone.run((function(){t.setContent(e.initialValue),t.getContent()!==e.initialValue&&e.onChangeCallback(t.getContent({format:e.outputFormat})),void 0!==e.onInitNgModel&&e.onInitNgModel.emit(t)}))},e}(u);b.decorators=[{type:e.Component,args:[{selector:"editor",template:"<ng-template></ng-template>",providers:[C],styles:[":host { display: block; }"]}]}],b.ctorParameters=function(){return[{type:e.ElementRef},{type:e.NgZone},{type:Object,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]},{type:String,decorators:[{type:e.Optional},{type:e.Inject,args:[w]}]}]},b.propDecorators={cloudChannel:[{type:e.Input}],apiKey:[{type:e.Input}],init:[{type:e.Input}],id:[{type:e.Input}],initialValue:[{type:e.Input}],outputFormat:[{type:e.Input}],inline:[{type:e.Input}],tagName:[{type:e.Input}],plugins:[{type:e.Input}],toolbar:[{type:e.Input}],modelEvents:[{type:e.Input}],allowedEvents:[{type:e.Input}],ignoreEvents:[{type:e.Input}],disabled:[{type:e.Input}]};var S=function(){};S.decorators=[{type:e.NgModule,args:[{imports:[n.CommonModule,o.FormsModule],declarations:[b],exports:[b]}]}],t.EditorComponent=b,t.EditorModule=S,t.TINYMCE_SCRIPT_SRC=w,t.ɵa=u,Object.defineProperty(t,"__esModule",{value:!0})}));
15
+ ***************************************************************************** */var i=function(t,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n])})(t,e)};var r=function(){var t="undefined"!=typeof window?window:void 0;return t&&t.tinymce?t.tinymce:null},u=function(){this.onBeforePaste=new e.EventEmitter,this.onBlur=new e.EventEmitter,this.onClick=new e.EventEmitter,this.onContextMenu=new e.EventEmitter,this.onCopy=new e.EventEmitter,this.onCut=new e.EventEmitter,this.onDblclick=new e.EventEmitter,this.onDrag=new e.EventEmitter,this.onDragDrop=new e.EventEmitter,this.onDragEnd=new e.EventEmitter,this.onDragGesture=new e.EventEmitter,this.onDragOver=new e.EventEmitter,this.onDrop=new e.EventEmitter,this.onFocus=new e.EventEmitter,this.onFocusIn=new e.EventEmitter,this.onFocusOut=new e.EventEmitter,this.onKeyDown=new e.EventEmitter,this.onKeyPress=new e.EventEmitter,this.onKeyUp=new e.EventEmitter,this.onMouseDown=new e.EventEmitter,this.onMouseEnter=new e.EventEmitter,this.onMouseLeave=new e.EventEmitter,this.onMouseMove=new e.EventEmitter,this.onMouseOut=new e.EventEmitter,this.onMouseOver=new e.EventEmitter,this.onMouseUp=new e.EventEmitter,this.onPaste=new e.EventEmitter,this.onSelectionChange=new e.EventEmitter,this.onActivate=new e.EventEmitter,this.onAddUndo=new e.EventEmitter,this.onBeforeAddUndo=new e.EventEmitter,this.onBeforeExecCommand=new e.EventEmitter,this.onBeforeGetContent=new e.EventEmitter,this.onBeforeRenderUI=new e.EventEmitter,this.onBeforeSetContent=new e.EventEmitter,this.onChange=new e.EventEmitter,this.onClearUndos=new e.EventEmitter,this.onDeactivate=new e.EventEmitter,this.onDirty=new e.EventEmitter,this.onExecCommand=new e.EventEmitter,this.onGetContent=new e.EventEmitter,this.onHide=new e.EventEmitter,this.onInit=new e.EventEmitter,this.onInitNgModel=new e.EventEmitter,this.onLoadContent=new e.EventEmitter,this.onNodeChange=new e.EventEmitter,this.onPostProcess=new e.EventEmitter,this.onPostRender=new e.EventEmitter,this.onPreInit=new e.EventEmitter,this.onPreProcess=new e.EventEmitter,this.onProgressState=new e.EventEmitter,this.onRedo=new e.EventEmitter,this.onRemove=new e.EventEmitter,this.onReset=new e.EventEmitter,this.onSaveContent=new e.EventEmitter,this.onSetAttrib=new e.EventEmitter,this.onObjectResizeStart=new e.EventEmitter,this.onObjectResized=new e.EventEmitter,this.onObjectSelected=new e.EventEmitter,this.onSetContent=new e.EventEmitter,this.onShow=new e.EventEmitter,this.onSubmit=new e.EventEmitter,this.onUndo=new e.EventEmitter,this.onVisualAid=new e.EventEmitter};u.propDecorators={onBeforePaste:[{type:e.Output}],onBlur:[{type:e.Output}],onClick:[{type:e.Output}],onContextMenu:[{type:e.Output}],onCopy:[{type:e.Output}],onCut:[{type:e.Output}],onDblclick:[{type:e.Output}],onDrag:[{type:e.Output}],onDragDrop:[{type:e.Output}],onDragEnd:[{type:e.Output}],onDragGesture:[{type:e.Output}],onDragOver:[{type:e.Output}],onDrop:[{type:e.Output}],onFocus:[{type:e.Output}],onFocusIn:[{type:e.Output}],onFocusOut:[{type:e.Output}],onKeyDown:[{type:e.Output}],onKeyPress:[{type:e.Output}],onKeyUp:[{type:e.Output}],onMouseDown:[{type:e.Output}],onMouseEnter:[{type:e.Output}],onMouseLeave:[{type:e.Output}],onMouseMove:[{type:e.Output}],onMouseOut:[{type:e.Output}],onMouseOver:[{type:e.Output}],onMouseUp:[{type:e.Output}],onPaste:[{type:e.Output}],onSelectionChange:[{type:e.Output}],onActivate:[{type:e.Output}],onAddUndo:[{type:e.Output}],onBeforeAddUndo:[{type:e.Output}],onBeforeExecCommand:[{type:e.Output}],onBeforeGetContent:[{type:e.Output}],onBeforeRenderUI:[{type:e.Output}],onBeforeSetContent:[{type:e.Output}],onChange:[{type:e.Output}],onClearUndos:[{type:e.Output}],onDeactivate:[{type:e.Output}],onDirty:[{type:e.Output}],onExecCommand:[{type:e.Output}],onGetContent:[{type:e.Output}],onHide:[{type:e.Output}],onInit:[{type:e.Output}],onInitNgModel:[{type:e.Output}],onLoadContent:[{type:e.Output}],onNodeChange:[{type:e.Output}],onPostProcess:[{type:e.Output}],onPostRender:[{type:e.Output}],onPreInit:[{type:e.Output}],onPreProcess:[{type:e.Output}],onProgressState:[{type:e.Output}],onRedo:[{type:e.Output}],onRemove:[{type:e.Output}],onReset:[{type:e.Output}],onSaveContent:[{type:e.Output}],onSetAttrib:[{type:e.Output}],onObjectResizeStart:[{type:e.Output}],onObjectResized:[{type:e.Output}],onObjectSelected:[{type:e.Output}],onSetContent:[{type:e.Output}],onShow:[{type:e.Output}],onSubmit:[{type:e.Output}],onUndo:[{type:e.Output}],onVisualAid:[{type:e.Output}]};var s=["onActivate","onAddUndo","onBeforeAddUndo","onBeforeExecCommand","onBeforeGetContent","onBeforeRenderUI","onBeforeSetContent","onBeforePaste","onBlur","onChange","onClearUndos","onClick","onContextMenu","onCopy","onCut","onDblclick","onDeactivate","onDirty","onDrag","onDragDrop","onDragEnd","onDragGesture","onDragOver","onDrop","onExecCommand","onFocus","onFocusIn","onFocusOut","onGetContent","onHide","onInit","onKeyDown","onKeyPress","onKeyUp","onLoadContent","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onNodeChange","onObjectResizeStart","onObjectResized","onObjectSelected","onPaste","onPostProcess","onPostRender","onPreProcess","onProgressState","onRedo","onRemove","onReset","onSaveContent","onSelectionChange","onSetAttrib","onSetContent","onShow","onSubmit","onUndo","onVisualAid"],p=function(t,e){a(t).forEach((function(n){var o=t[n];e.on(n.substring(2),(function(n){return t.ngZone.run((function(){return o.emit({event:n,editor:e})}))}))}))},a=function(t){var e=c(t.ignoreEvents,[]);return c(t.allowedEvents,s).filter((function(t){return s.includes(t)&&!e.includes(t)}))},c=function(t,e){return"string"==typeof t?t.split(",").map((function(t){return t.trim()})):Array.isArray(t)?t:e},d=0,l=function(t){var e=(new Date).getTime();return t+"_"+Math.floor(1e9*Math.random())+ ++d+String(e)},h=function(t){return void 0!==t&&"textarea"===t.tagName.toLowerCase()},y=function(t){return void 0===t||""===t?[]:Array.isArray(t)?t:t.split(" ")},m=function(t,e){return y(t).concat(y(e))},E=function(){},v=function(t){return null==t},f=function(){return{listeners:[],scriptId:l("tiny-script"),scriptLoaded:!1}},g=function(){var t=f();return{load:function(e,n,o){t.scriptLoaded?o():(t.listeners.push(o),e.getElementById(t.scriptId)||function(t,e,n,o){var i=e.createElement("script");i.referrerPolicy="origin",i.type="application/javascript",i.id=t,i.src=n;var r=function(){i.removeEventListener("load",r),o()};i.addEventListener("load",r),e.head&&e.head.appendChild(i)}(t.scriptId,e,n,(function(){t.listeners.forEach((function(t){return t()})),t.scriptLoaded=!0})))},reinitialize:function(){t=f()}}},O=g(),w=new e.InjectionToken("TINYMCE_SCRIPT_SRC"),C={provide:o.NG_VALUE_ACCESSOR,useExisting:e.forwardRef((function(){return b})),multi:!0},b=function(t){function e(e,n,o,i){var r=t.call(this)||this;return r.platformId=o,r.tinymceScriptSrc=i,r.cloudChannel="5",r.apiKey="no-api-key",r.id="",r.modelEvents="change input undo redo",r.onTouchedCallback=E,r._elementRef=e,r.ngZone=n,r.initialise=r.initialise.bind(r),r}return function(t,e){function n(){this.constructor=t}i(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,t),Object.defineProperty(e.prototype,"disabled",{get:function(){return this._disabled},set:function(t){this._disabled=t,this._editor&&this._editor.initialized&&this._editor.setMode(t?"readonly":"design")},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"editor",{get:function(){return this._editor},enumerable:!1,configurable:!0}),e.prototype.writeValue=function(t){this._editor&&this._editor.initialized?this._editor.setContent(v(t)?"":t):this.initialValue=null===t?void 0:t},e.prototype.registerOnChange=function(t){this.onChangeCallback=t},e.prototype.registerOnTouched=function(t){this.onTouchedCallback=t},e.prototype.setDisabledState=function(t){this._editor?this._editor.setMode(t?"readonly":"design"):t&&(this.init=Object.assign(Object.assign({},this.init),{readonly:!0}))},e.prototype.ngAfterViewInit=function(){var t;n.isPlatformBrowser(this.platformId)&&(this.id=this.id||l("tiny-angular"),this.inline=void 0!==this.inline?!1!==this.inline:!!(null===(t=this.init)||void 0===t?void 0:t.inline),this.createElement(),null!==r()?this.initialise():this._element&&this._element.ownerDocument&&O.load(this._element.ownerDocument,this.getScriptSrc(),this.initialise.bind(this)))},e.prototype.ngOnDestroy=function(){null!==r()&&r().remove(this._editor)},e.prototype.createElement=function(){var t="string"==typeof this.tagName?this.tagName:"div";this._element=document.createElement(this.inline?t:"textarea"),this._element&&(this._element.id=this.id,h(this._element)&&(this._element.style.visibility="hidden"),this._elementRef.nativeElement.appendChild(this._element))},e.prototype.initialise=function(){var t=this,e=Object.assign(Object.assign({},this.init),{target:this._element,inline:this.inline,readonly:this.disabled,plugins:m(this.init&&this.init.plugins,this.plugins),toolbar:this.toolbar||this.init&&this.init.toolbar,setup:function(e){t._editor=e,e.on("init",(function(n){t.initEditor(e)})),p(t,e),t.init&&"function"==typeof t.init.setup&&t.init.setup(e)}});h(this._element)&&(this._element.style.visibility=""),this.ngZone.runOutsideAngular((function(){r().init(e)}))},e.prototype.getScriptSrc=function(){return v(this.tinymceScriptSrc)?"https://cdn.tiny.cloud/1/"+this.apiKey+"/tinymce/"+this.cloudChannel+"/tinymce.min.js":this.tinymceScriptSrc},e.prototype.initEditor=function(t){var e=this;t.on("blur",(function(){return e.ngZone.run((function(){return e.onTouchedCallback()}))})),t.on(this.modelEvents,(function(){return e.ngZone.run((function(){return e.emitOnChange(t)}))})),"string"==typeof this.initialValue&&this.ngZone.run((function(){t.setContent(e.initialValue),t.getContent()!==e.initialValue&&e.emitOnChange(t),void 0!==e.onInitNgModel&&e.onInitNgModel.emit(t)}))},e.prototype.emitOnChange=function(t){this.onChangeCallback&&this.onChangeCallback(t.getContent({format:this.outputFormat}))},e}(u);b.decorators=[{type:e.Component,args:[{selector:"editor",template:"<ng-template></ng-template>",providers:[C],styles:[":host { display: block; }"]}]}],b.ctorParameters=function(){return[{type:e.ElementRef},{type:e.NgZone},{type:Object,decorators:[{type:e.Inject,args:[e.PLATFORM_ID]}]},{type:String,decorators:[{type:e.Optional},{type:e.Inject,args:[w]}]}]},b.propDecorators={cloudChannel:[{type:e.Input}],apiKey:[{type:e.Input}],init:[{type:e.Input}],id:[{type:e.Input}],initialValue:[{type:e.Input}],outputFormat:[{type:e.Input}],inline:[{type:e.Input}],tagName:[{type:e.Input}],plugins:[{type:e.Input}],toolbar:[{type:e.Input}],modelEvents:[{type:e.Input}],allowedEvents:[{type:e.Input}],ignoreEvents:[{type:e.Input}],disabled:[{type:e.Input}]};var S=function(){};S.decorators=[{type:e.NgModule,args:[{imports:[n.CommonModule,o.FormsModule],declarations:[b],exports:[b]}]}],t.EditorComponent=b,t.EditorModule=S,t.TINYMCE_SCRIPT_SRC=w,t.ɵa=u,Object.defineProperty(t,"__esModule",{value:!0})}));
16
16
  //# sourceMappingURL=tinymce-tinymce-angular.umd.min.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../tinymce-angular-component/src/main/ts/TinyMCE.ts","../../../tinymce-angular-component/src/main/ts/editor/Events.ts","../../../tinymce-angular-component/src/main/ts/utils/Utils.ts","../../../tinymce-angular-component/src/main/ts/utils/ScriptLoader.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.component.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","getTinymce","w","window","undefined","tinymce","this","onBeforePaste","EventEmitter","onBlur","onClick","onContextMenu","onCopy","onCut","onDblclick","onDrag","onDragDrop","onDragEnd","onDragGesture","onDragOver","onDrop","onFocus","onFocusIn","onFocusOut","onKeyDown","onKeyPress","onKeyUp","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onPaste","onSelectionChange","onActivate","onAddUndo","onBeforeAddUndo","onBeforeExecCommand","onBeforeGetContent","onBeforeRenderUI","onBeforeSetContent","onChange","onClearUndos","onDeactivate","onDirty","onExecCommand","onGetContent","onHide","onInit","onInitNgModel","onLoadContent","onNodeChange","onPostProcess","onPostRender","onPreInit","onPreProcess","onProgressState","onRedo","onRemove","onReset","onSaveContent","onSetAttrib","onObjectResizeStart","onObjectResized","onObjectSelected","onSetContent","onShow","onSubmit","onUndo","onVisualAid","Output","validEvents","bindHandlers","ctx","editor","getValidEvents","forEach","eventName","eventEmitter","on","substring","event","ngZone","run","emit","ignoredEvents","parseStringProperty","ignoreEvents","allowedEvents","filter","includes","property","defaultValue","split","map","value","trim","isArray","unique","uuid","prefix","time","Date","getTime","Math","floor","random","String","isTextarea","element","tagName","toLowerCase","normalizePluginArray","plugins","mergePlugins","initPlugins","inputPlugins","concat","noop","isNullOrUndefined","createState","listeners","scriptId","scriptLoaded","CreateScriptLoader","state","load","doc","url","callback","push","getElementById","scriptTag","createElement","referrerPolicy","type","id","src","handler","removeEventListener","addEventListener","head","appendChild","injectScriptTag","fn","reinitialize","ScriptLoader","TINYMCE_SCRIPT_SRC","InjectionToken","EDITOR_COMPONENT_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","EditorComponent","multi","elementRef","platformId","tinymceScriptSrc","_this","_super","call","cloudChannel","apiKey","modelEvents","onTouchedCallback","onChangeCallback","_elementRef","initialise","bind","__","constructor","prototype","create","__extends","defineProperty","_disabled","val","_editor","initialized","setMode","writeValue","setContent","initialValue","registerOnChange","registerOnTouched","setDisabledState","isDisabled","init","assign","readonly","ngAfterViewInit","isPlatformBrowser","inline","_a","_element","ownerDocument","getScriptSrc","ngOnDestroy","remove","document","style","visibility","nativeElement","finalInit","target","disabled","toolbar","setup","_e","initEditor","runOutsideAngular","getContent","format","outputFormat","Events","Component","args","selector","template","providers","ElementRef","NgZone","decorators","Inject","PLATFORM_ID","Optional","Input","NgModule","imports","CommonModule","FormsModule","declarations","exports"],"mappings":"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,YAA2C,IAAI/D,EAAAA,qDA/D/DgE,EAAAA,uBACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,uBACAA,EAAAA,sBACAA,EAAAA,2BACAA,EAAAA,uBACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,8BACAA,EAAAA,2BACAA,EAAAA,uBACAA,EAAAA,wBACAA,EAAAA,0BACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,2BACAA,EAAAA,wBACAA,EAAAA,4BACAA,EAAAA,6BACAA,EAAAA,6BACAA,EAAAA,4BACAA,EAAAA,2BACAA,EAAAA,4BACAA,EAAAA,0BACAA,EAAAA,wBACAA,EAAAA,kCACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,gCACAA,EAAAA,oCACAA,EAAAA,mCACAA,EAAAA,iCACAA,EAAAA,mCACAA,EAAAA,yBACAA,EAAAA,6BACAA,EAAAA,6BACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,uBACAA,EAAAA,uBACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,0BACAA,EAAAA,6BACAA,EAAAA,gCACAA,EAAAA,uBACAA,EAAAA,yBACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,4BACAA,EAAAA,oCACAA,EAAAA,gCACAA,EAAAA,iCACAA,EAAAA,6BACAA,EAAAA,uBACAA,EAAAA,yBACAA,EAAAA,uBACAA,EAAAA,4BACAA,EAAAA,UAGI,IAAMC,EAAgC,CAC3C,aACA,YACA,kBACA,sBACA,qBACA,mBACA,qBACA,gBACA,SACA,WACA,eACA,UACA,gBACA,SACA,QACA,aACA,eACA,UACA,SACA,aACA,YACA,gBACA,aACA,SACA,gBACA,UACA,YACA,aACA,eACA,SACA,SACA,YACA,aACA,UACA,gBACA,cACA,eACA,eACA,cACA,aACA,cACA,YACA,eACA,sBACA,kBACA,mBACA,UACA,gBACA,eACA,eACA,kBACA,SACA,WACA,UACA,gBACA,oBACA,cACA,eACA,SACA,WACA,SACA,eC5HIC,EAAe,SAACC,EAAsBC,GACpBC,EAAeF,GACvBG,SAAQ,SAACC,GACrB,IAAMC,EAAkCL,EAAII,GAC5CH,EAAOK,GAAGF,EAAUG,UAAU,IAAI,SAACC,GAAe,OAAAR,EAAIS,OAAOC,KAAI,WAAM,OAAAL,EAAaM,KAAK,CAAEH,MAAKA,EAAEP,OAAMA,cAItGC,EAAiB,SAACF,GACtB,IAAMY,EAAgBC,EAAoBb,EAAIc,aAAc,IAG5D,OAFsBD,EAAoBb,EAAIe,cAAejB,GAAakB,QACxE,SAACR,GAAU,OAAAV,EAAYmB,SAAST,KAA6BI,EAAcK,SAAST,OAIlFK,EAAsB,SAACK,EAAyCC,GACpE,MAAyB,iBAAbD,EACHA,EAASE,MAAM,KAAKC,KAAI,SAACC,GAAU,OAAAA,EAAMC,UAE7CpG,MAAMqG,QAAQN,GACVA,EAEFC,GAGLM,EAAS,EAEPC,EAAO,SAACC,GACZ,IACMC,GADO,IAAIC,MACCC,UAKlB,OAAOH,EAAS,IAJDI,KAAKC,MAAsB,IAAhBD,KAAKE,aAE/BR,EAEwCS,OAAON,IAG3CO,EAAa,SAACC,GAAsD,YAAmB,IAAZA,GAA6D,aAAlCA,EAAQC,QAAQC,eAEtHC,EAAuB,SAACC,GAC5B,YAAuB,IAAZA,GAAuC,KAAZA,EAC7B,GAGFrH,MAAMqG,QAAQgB,GAAWA,EAAUA,EAAQpB,MAAM,MAGpDqB,EAAe,SAACC,EAAgCC,GACpD,OAAAJ,EAAqBG,GAAaE,OAAOL,EAAqBI,KAG1DE,EAAiC,aAEjCC,EAAoB,SAACxB,GAA0C,OAAAA,MAAAA,GChD/DyB,EAAc,WAAiB,MAAA,CACnCC,UAAW,GACXC,SAAUvB,EAAK,eACfwB,cAAc,IAQVC,EAAqB,WACzB,IAAIC,EAAmBL,IAsCvB,MAAO,CACLM,KApBW,SAACC,EAAeC,EAAaC,GACpCJ,EAAMF,aACRM,KAEAJ,EAAMJ,UAAUS,KAAKD,GAChBF,EAAII,eAAeN,EAAMH,WAtBV,SAACA,EAAkBK,EAAeC,EAAaC,GACrE,IAAMG,EAAYL,EAAIM,cAAc,UACpCD,EAAUE,eAAiB,SAC3BF,EAAUG,KAAO,yBACjBH,EAAUI,GAAKd,EACfU,EAAUK,IAAMT,EAEhB,IAAMU,EAAU,WACdN,EAAUO,oBAAoB,OAAQD,GACtCT,KAEFG,EAAUQ,iBAAiB,OAAQF,GAC/BX,EAAIc,MACNd,EAAIc,KAAKC,YAAYV,GAUnBW,CAAgBlB,EAAMH,SAAUK,EAAKC,GAAK,WACxCH,EAAMJ,UAAU7C,SAAQ,SAACoE,GAAO,OAAAA,OAChCnB,EAAMF,cAAe,OAa3BsB,aANmB,WACnBpB,EAAQL,OASN0B,EAAetB,IChERuB,EAAqB,IAAIC,EAAAA,eAAuB,sBAEvDC,EAAkC,CACtCC,QAASC,EAAAA,kBACTC,YAAaC,EAAAA,YAAW,WAAM,OAAAC,KAC9BC,OAAO,iBAmDP,SAAAD,EACEE,EACA1E,EAC6B2E,EACmBC,GAJlD,IAAAC,EAMEC,EAAAC,KAAA7J,OAAOA,YAHsB2J,EAAAF,WAAAA,EACmBE,EAAAD,iBAAAA,EA5ClCC,EAAAG,aAAe,IACfH,EAAAI,OAAS,aAETJ,EAAAvB,GAAK,GAOLuB,EAAAK,YAAc,yBA2BtBL,EAAAM,kBAAoB/C,EACpByC,EAAAO,iBAAmBhD,EASzByC,EAAKQ,YAAcX,EACnBG,EAAK7E,OAASA,EACd6E,EAAKS,WAAaT,EAAKS,WAAWC,KAAKV,qBLnDjBxK,EAAGC,GAEzB,SAASkL,IAAOtK,KAAKuK,YAAcpL,EADnCD,EAAcC,EAAGC,GAEjBD,EAAEqL,UAAkB,OAANpL,EAAaC,OAAOoL,OAAOrL,IAAMkL,EAAGE,UAAYpL,EAAEoL,UAAW,IAAIF,GKH9CI,CAAApB,EAAAM,GAgBnCvK,OAAAsL,eACWrB,EAAAkB,UAAA,WAAQ,KAOnB,WACE,OAAOxK,KAAK4K,eATd,SACoBC,GAClB7K,KAAK4K,UAAYC,EACb7K,KAAK8K,SAAW9K,KAAK8K,QAAQC,aAC/B/K,KAAK8K,QAAQE,QAAQH,EAAM,WAAa,2CAQ5CxL,OAAAsL,eAAWrB,EAAAkB,UAAA,SAAM,KAAjB,WACE,OAAOxK,KAAK8K,yCAyBPxB,EAAAkB,UAAAS,WAAA,SAAWtF,GACZ3F,KAAK8K,SAAW9K,KAAK8K,QAAQC,YAC/B/K,KAAK8K,QAAQI,WAAW/D,EAAkBxB,GAAS,GAAKA,GAExD3F,KAAKmL,aAAyB,OAAVxF,OAAiB7F,EAAY6F,GAI9C2D,EAAAkB,UAAAY,iBAAA,SAAiBxC,GACtB5I,KAAKkK,iBAAmBtB,GAGnBU,EAAAkB,UAAAa,kBAAA,SAAkBzC,GACvB5I,KAAKiK,kBAAoBrB,GAGpBU,EAAAkB,UAAAc,iBAAA,SAAiBC,GAClBvL,KAAK8K,QACP9K,KAAK8K,QAAQE,QAAQO,EAAa,WAAa,UACtCA,IACTvL,KAAKwL,KAAInM,OAAAoM,OAAApM,OAAAoM,OAAA,GAAQzL,KAAKwL,MAAI,CAAEE,UAAU,MAInCpC,EAAAkB,UAAAmB,gBAAA,iBACDC,EAAAA,kBAAkB5L,KAAKyJ,cACzBzJ,KAAKoI,GAAKpI,KAAKoI,IAAMrC,EAAK,gBAC1B/F,KAAK6L,YAAyB/L,IAAhBE,KAAK6L,QAAuC,IAAhB7L,KAAK6L,UAA+B,QAAXC,EAAE9L,KAAKwL,YAAI,IAAAM,OAAA,EAAAA,EAAED,QAChF7L,KAAKiI,gBACgB,OAAjBtI,IACFK,KAAKoK,aACIpK,KAAK+L,UAAY/L,KAAK+L,SAASC,eACxClD,EAAapB,KACX1H,KAAK+L,SAASC,cACdhM,KAAKiM,eACLjM,KAAKoK,WAAWC,KAAKrK,SAMtBsJ,EAAAkB,UAAA0B,YAAA,WACgB,OAAjBvM,KACFA,IAAawM,OAAOnM,KAAK8K,UAItBxB,EAAAkB,UAAAvC,cAAA,WACL,IAAMvB,EAAkC,iBAAjB1G,KAAK0G,QAAuB1G,KAAK0G,QAAU,MAClE1G,KAAK+L,SAAWK,SAASnE,cAAcjI,KAAK6L,OAASnF,EAAU,YAC3D1G,KAAK+L,WACP/L,KAAK+L,SAAS3D,GAAKpI,KAAKoI,GACpB5B,EAAWxG,KAAK+L,YAClB/L,KAAK+L,SAASM,MAAMC,WAAa,UAEnCtM,KAAKmK,YAAYoC,cAAc7D,YAAY1I,KAAK+L,YAI7CzC,EAAAkB,UAAAJ,WAAA,WAAA,IAAAT,EAAA3J,KACCwM,EAASnN,OAAAoM,OAAApM,OAAAoM,OAAA,GACVzL,KAAKwL,MAAI,CACZiB,OAAQzM,KAAK+L,SACbF,OAAQ7L,KAAK6L,OACbH,SAAU1L,KAAK0M,SACf7F,QAASC,EAAa9G,KAAKwL,MAAQxL,KAAKwL,KAAK3E,QAAS7G,KAAK6G,SAC3D8F,QAAS3M,KAAK2M,SAAY3M,KAAKwL,MAAQxL,KAAKwL,KAAKmB,QACjDC,MAAO,SAACtI,GACNqF,EAAKmB,QAAUxG,EACfA,EAAOK,GAAG,QAAQ,SAACkI,GACjBlD,EAAKmD,WAAWxI,MAElBF,EAAauF,EAAMrF,GAEfqF,EAAK6B,MAAmC,mBAApB7B,EAAK6B,KAAKoB,OAChCjD,EAAK6B,KAAKoB,MAAMtI,MAKlBkC,EAAWxG,KAAK+L,YAClB/L,KAAK+L,SAASM,MAAMC,WAAa,IAGnCtM,KAAK8E,OAAOiI,mBAAkB,WAC5BpN,IAAa6L,KAAKgB,OAIdlD,EAAAkB,UAAAyB,aAAA,WACN,OAAO9E,EAAkBnH,KAAK0J,kBAC5B,4BAA4B1J,KAAK+J,OAAM,YAAY/J,KAAK8J,aAAY,kBACpE9J,KAAK0J,kBAGDJ,EAAAkB,UAAAsC,WAAA,SAAWxI,GAAX,IAAAqF,EAAA3J,KACNsE,EAAOK,GAAG,QAAQ,WAAM,OAAAgF,EAAK7E,OAAOC,KAAI,WAAM,OAAA4E,EAAKM,0BACnD3F,EAAOK,GAAG3E,KAAKgK,aAAa,WAC1BL,EAAK7E,OAAOC,KAAI,WAAM,OAAA4E,EAAKO,iBAAiB5F,EAAO0I,WAAW,CAAEC,OAAQtD,EAAKuD,sBAE9C,iBAAtBlN,KAAKmL,cACdnL,KAAK8E,OAAOC,KAAI,WACdT,EAAO4G,WAAWvB,EAAKwB,cACnB7G,EAAO0I,eAAiBrD,EAAKwB,cAC/BxB,EAAKO,iBAAiB5F,EAAO0I,WAAW,CAAEC,OAAQtD,EAAKuD,qBAE9BpN,IAAvB6J,EAAK9G,eACP8G,EAAK9G,cAAcmC,KAAKV,UAjKG6I,uBANpCC,EAAAA,UAASC,KAAA,CAAC,CACTC,SAAU,SACVC,SAAU,8BAEVC,UAAW,CAAEvE,WADH,0EAlBuBwE,EAAAA,kBAAuCC,EAAAA,cAkE7BrO,OAAMsO,WAAA,CAAA,CAAAxF,KAA9CyF,EAAAA,OAAMP,KAAA,CAACQ,EAAAA,+CACPC,EAAAA,UAAQ,CAAA3F,KAAIyF,EAAAA,OAAMP,KAAA,CAACtE,8CA5CrBgF,EAAAA,sBACAA,EAAAA,oBACAA,EAAAA,kBACAA,EAAAA,4BACAA,EAAAA,4BACAA,EAAAA,sBACAA,EAAAA,uBACAA,EAAAA,uBACAA,EAAAA,uBACAA,EAAAA,2BACAA,EAAAA,6BACAA,EAAAA,4BACAA,EAAAA,wBAEAA,EAAAA,eC5BH,iCALCC,EAAAA,SAAQX,KAAA,CAAC,CACRY,QAAS,CAAEC,EAAAA,aAAcC,EAAAA,aACzBC,aAAc,CAAE9E,GAChB+E,QAAS,CAAE/E","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nconst getTinymce = () => {\n const w = typeof window !== 'undefined' ? (window as any) : undefined;\n return w && w.tinymce ? w.tinymce : null;\n};\n\nexport { getTinymce };\n","import { Output, EventEmitter } from '@angular/core';\n\nexport interface EventObj<T> {\n event: T;\n editor: any;\n}\n\nexport class Events {\n @Output() public onBeforePaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onBlur: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onClick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onContextMenu: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onCopy: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onCut: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onDblclick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onDrag: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragEnd: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragGesture: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragOver: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onFocus: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusIn: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusOut: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onKeyDown: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyPress: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyUp: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onMouseDown: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseEnter: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseLeave: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseMove: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOut: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOver: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseUp: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onPaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onSelectionChange: EventEmitter<EventObj<Event>> = new EventEmitter();\n @Output() public onActivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeRenderUI: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onClearUndos: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDeactivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDirty: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onHide: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInitNgModel: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onLoadContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onNodeChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostRender: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onProgressState: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRedo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRemove: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onReset: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSaveContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetAttrib: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResizeStart: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResized: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectSelected: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onShow: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSubmit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onVisualAid: EventEmitter<EventObj<any>> = new EventEmitter();\n}\n\nexport const validEvents: (keyof Events)[] = [\n 'onActivate',\n 'onAddUndo',\n 'onBeforeAddUndo',\n 'onBeforeExecCommand',\n 'onBeforeGetContent',\n 'onBeforeRenderUI',\n 'onBeforeSetContent',\n 'onBeforePaste',\n 'onBlur',\n 'onChange',\n 'onClearUndos',\n 'onClick',\n 'onContextMenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onDeactivate',\n 'onDirty',\n 'onDrag',\n 'onDragDrop',\n 'onDragEnd',\n 'onDragGesture',\n 'onDragOver',\n 'onDrop',\n 'onExecCommand',\n 'onFocus',\n 'onFocusIn',\n 'onFocusOut',\n 'onGetContent',\n 'onHide',\n 'onInit',\n 'onKeyDown',\n 'onKeyPress',\n 'onKeyUp',\n 'onLoadContent',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onNodeChange',\n 'onObjectResizeStart',\n 'onObjectResized',\n 'onObjectSelected',\n 'onPaste',\n 'onPostProcess',\n 'onPostRender',\n 'onPreProcess',\n 'onProgressState',\n 'onRedo',\n 'onRemove',\n 'onReset',\n 'onSaveContent',\n 'onSelectionChange',\n 'onSetAttrib',\n 'onSetContent',\n 'onShow',\n 'onSubmit',\n 'onUndo',\n 'onVisualAid'\n];\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { EventEmitter } from '@angular/core';\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\nconst bindHandlers = (ctx: EditorComponent, editor: any): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n editor.on(eventName.substring(2), (event: any) => ctx.ngZone.run(() => eventEmitter.emit({ event, editor })));\n });\n};\n\nconst getValidEvents = (ctx: EditorComponent): (keyof Events)[] => {\n const ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);\n const allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(\n (event) => validEvents.includes(event as (keyof Events)) && !ignoredEvents.includes(event)) as (keyof Events)[];\n return allowedEvents;\n};\n\nconst parseStringProperty = (property: string | string[] | undefined, defaultValue: (keyof Events)[]): string[] => {\n if ( typeof property === 'string') {\n return property.split(',').map((value) => value.trim());\n }\n if ( Array.isArray(property)) {\n return property;\n }\n return defaultValue;\n};\n\nlet unique = 0;\n\nconst uuid = (prefix: string): string => {\n const date = new Date();\n const time = date.getTime();\n const random = Math.floor(Math.random() * 1000000000);\n\n unique++;\n\n return prefix + '_' + random + unique + String(time);\n};\n\nconst isTextarea = (element?: Element): element is HTMLTextAreaElement => typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';\n\nconst normalizePluginArray = (plugins?: string | string[]): string[] => {\n if (typeof plugins === 'undefined' || plugins === '') {\n return [];\n }\n\n return Array.isArray(plugins) ? plugins : plugins.split(' ');\n};\n\nconst mergePlugins = (initPlugins: string | string[], inputPlugins?: string | string[]) =>\n normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop: (...args: any[]) => void = () => { };\n\nconst isNullOrUndefined = (value: any): value is null | undefined => value === null || value === undefined;\n\nexport {\n bindHandlers,\n uuid,\n isTextarea,\n normalizePluginArray,\n mergePlugins,\n noop,\n isNullOrUndefined\n};\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { uuid } from './Utils';\n\nexport type callbackFn = () => void;\nexport interface IStateObj {\n listeners: callbackFn[];\n scriptId: string;\n scriptLoaded: boolean;\n}\n\nconst createState = (): IStateObj => ({\n listeners: [],\n scriptId: uuid('tiny-script'),\n scriptLoaded: false\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string, callback: callbackFn) => void;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state: IStateObj = createState();\n\n const injectScriptTag = (scriptId: string, doc: Document, url: string, callback: callbackFn) => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.id = scriptId;\n scriptTag.src = url;\n\n const handler = () => {\n scriptTag.removeEventListener('load', handler);\n callback();\n };\n scriptTag.addEventListener('load', handler);\n if (doc.head) {\n doc.head.appendChild(scriptTag);\n }\n };\n\n const load = (doc: Document, url: string, callback: callbackFn) => {\n if (state.scriptLoaded) {\n callback();\n } else {\n state.listeners.push(callback);\n if (!doc.getElementById(state.scriptId)) {\n injectScriptTag(state.scriptId, doc, url, () => {\n state.listeners.forEach((fn) => fn());\n state.scriptLoaded = true;\n });\n }\n }\n };\n\n // Only to be used by tests.\n const reinitialize = () => {\n state = createState();\n };\n\n return {\n load,\n reinitialize\n };\n};\n\nconst ScriptLoader = CreateScriptLoader();\n\nexport {\n ScriptLoader\n};","/* eslint-disable @typescript-eslint/no-parameter-properties */\nimport { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getTinymce } from '../TinyMCE';\nimport { bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\n\nexport const TINYMCE_SCRIPT_SRC = new InjectionToken<string>('TINYMCE_SCRIPT_SRC');\n\nconst EDITOR_COMPONENT_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n};\n\n@Component({\n selector: 'editor',\n template: '<ng-template></ng-template>',\n styles: [ ':host { display: block; }' ],\n providers: [ EDITOR_COMPONENT_VALUE_ACCESSOR ]\n})\nexport class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {\n\n @Input() public cloudChannel = '5';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: Record<string, any> | undefined;\n @Input() public id = '';\n @Input() public initialValue: string | undefined;\n @Input() public outputFormat: 'html' | 'text' | undefined;\n @Input() public inline: boolean | undefined;\n @Input() public tagName: string | undefined;\n @Input() public plugins: string | undefined;\n @Input() public toolbar: string | string[] | undefined;\n @Input() public modelEvents = 'change input undo redo';\n @Input() public allowedEvents: string | string[] | undefined;\n @Input() public ignoreEvents: string | string[] | undefined;\n\n @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n public get editor() {\n return this._editor;\n }\n\n public ngZone: NgZone;\n\n private _elementRef: ElementRef;\n private _element: Element | undefined;\n private _disabled: boolean | undefined;\n private _editor: any;\n\n private onTouchedCallback = noop;\n private onChangeCallback = noop;\n\n public constructor(\n elementRef: ElementRef,\n ngZone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object,\n @Optional() @Inject(TINYMCE_SCRIPT_SRC) private tinymceScriptSrc?: string\n ) {\n super();\n this._elementRef = elementRef;\n this.ngZone = ngZone;\n this.initialise = this.initialise.bind(this);\n }\n\n public writeValue(value: string | null): void {\n if (this._editor && this._editor.initialized) {\n this._editor.setContent(isNullOrUndefined(value) ? '' : value);\n } else {\n this.initialValue = value === null ? undefined : value;\n }\n }\n\n public registerOnChange(fn: (_: any) => void): void {\n this.onChangeCallback = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n if (this._editor) {\n this._editor.setMode(isDisabled ? 'readonly' : 'design');\n } else if (isDisabled) {\n this.init = { ...this.init, readonly: true };\n }\n }\n\n public ngAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.id = this.id || uuid('tiny-angular');\n this.inline = this.inline !== undefined ? this.inline !== false : !!(this.init?.inline);\n this.createElement();\n if (getTinymce() !== null) {\n this.initialise();\n } else if (this._element && this._element.ownerDocument) {\n ScriptLoader.load(\n this._element.ownerDocument,\n this.getScriptSrc(),\n this.initialise.bind(this)\n );\n }\n }\n }\n\n public ngOnDestroy() {\n if (getTinymce() !== null) {\n getTinymce().remove(this._editor);\n }\n }\n\n public createElement() {\n const tagName = typeof this.tagName === 'string' ? this.tagName : 'div';\n this._element = document.createElement(this.inline ? tagName : 'textarea');\n if (this._element) {\n this._element.id = this.id;\n if (isTextarea(this._element)) {\n this._element.style.visibility = 'hidden';\n }\n this._elementRef.nativeElement.appendChild(this._element);\n }\n }\n\n public initialise() {\n const finalInit = {\n ...this.init,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins(this.init && this.init.plugins, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: any) => {\n this._editor = editor;\n editor.on('init', (_e: unknown) => {\n this.initEditor(editor);\n });\n bindHandlers(this, editor);\n\n if (this.init && typeof this.init.setup === 'function') {\n this.init.setup(editor);\n }\n }\n };\n\n if (isTextarea(this._element)) {\n this._element.style.visibility = '';\n }\n\n this.ngZone.runOutsideAngular(() => {\n getTinymce().init(finalInit);\n });\n }\n\n private getScriptSrc() {\n return isNullOrUndefined(this.tinymceScriptSrc) ?\n `https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js` :\n this.tinymceScriptSrc;\n }\n\n private initEditor(editor: any) {\n editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));\n editor.on(this.modelEvents, () => {\n this.ngZone.run(() => this.onChangeCallback(editor.getContent({ format: this.outputFormat })));\n });\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue);\n if (editor.getContent() !== this.initialValue) {\n this.onChangeCallback(editor.getContent({ format: this.outputFormat }));\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor);\n }\n });\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [ CommonModule, FormsModule ],\n declarations: [ EditorComponent ],\n exports: [ EditorComponent ]\n})\nexport class EditorModule {}\n"]}
1
+ {"version":3,"sources":["../../../node_modules/tslib/tslib.es6.js","../../../tinymce-angular-component/src/main/ts/TinyMCE.ts","../../../tinymce-angular-component/src/main/ts/editor/Events.ts","../../../tinymce-angular-component/src/main/ts/utils/Utils.ts","../../../tinymce-angular-component/src/main/ts/utils/ScriptLoader.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.component.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.module.ts"],"names":["extendStatics","d","b","Object","setPrototypeOf","__proto__","Array","p","hasOwnProperty","getTinymce","w","window","undefined","tinymce","this","onBeforePaste","EventEmitter","onBlur","onClick","onContextMenu","onCopy","onCut","onDblclick","onDrag","onDragDrop","onDragEnd","onDragGesture","onDragOver","onDrop","onFocus","onFocusIn","onFocusOut","onKeyDown","onKeyPress","onKeyUp","onMouseDown","onMouseEnter","onMouseLeave","onMouseMove","onMouseOut","onMouseOver","onMouseUp","onPaste","onSelectionChange","onActivate","onAddUndo","onBeforeAddUndo","onBeforeExecCommand","onBeforeGetContent","onBeforeRenderUI","onBeforeSetContent","onChange","onClearUndos","onDeactivate","onDirty","onExecCommand","onGetContent","onHide","onInit","onInitNgModel","onLoadContent","onNodeChange","onPostProcess","onPostRender","onPreInit","onPreProcess","onProgressState","onRedo","onRemove","onReset","onSaveContent","onSetAttrib","onObjectResizeStart","onObjectResized","onObjectSelected","onSetContent","onShow","onSubmit","onUndo","onVisualAid","Output","validEvents","bindHandlers","ctx","editor","getValidEvents","forEach","eventName","eventEmitter","on","substring","event","ngZone","run","emit","ignoredEvents","parseStringProperty","ignoreEvents","allowedEvents","filter","includes","property","defaultValue","split","map","value","trim","isArray","unique","uuid","prefix","time","Date","getTime","Math","floor","random","String","isTextarea","element","tagName","toLowerCase","normalizePluginArray","plugins","mergePlugins","initPlugins","inputPlugins","concat","noop","isNullOrUndefined","createState","listeners","scriptId","scriptLoaded","CreateScriptLoader","state","load","doc","url","callback","push","getElementById","scriptTag","createElement","referrerPolicy","type","id","src","handler","removeEventListener","addEventListener","head","appendChild","injectScriptTag","fn","reinitialize","ScriptLoader","TINYMCE_SCRIPT_SRC","InjectionToken","EDITOR_COMPONENT_VALUE_ACCESSOR","provide","NG_VALUE_ACCESSOR","useExisting","forwardRef","EditorComponent","multi","elementRef","platformId","tinymceScriptSrc","_this","_super","call","cloudChannel","apiKey","modelEvents","onTouchedCallback","_elementRef","initialise","bind","__","constructor","prototype","create","__extends","defineProperty","_disabled","val","_editor","initialized","setMode","writeValue","setContent","initialValue","registerOnChange","onChangeCallback","registerOnTouched","setDisabledState","isDisabled","init","assign","readonly","ngAfterViewInit","isPlatformBrowser","inline","_a","_element","ownerDocument","getScriptSrc","ngOnDestroy","remove","document","style","visibility","nativeElement","finalInit","target","disabled","toolbar","setup","_e","initEditor","runOutsideAngular","emitOnChange","getContent","format","outputFormat","Events","Component","args","selector","template","providers","ElementRef","NgZone","decorators","Inject","PLATFORM_ID","Optional","Input","NgModule","imports","CommonModule","FormsModule","declarations","exports"],"mappings":"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,YAA2C,IAAI/D,EAAAA,qDA/D/DgE,EAAAA,uBACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,uBACAA,EAAAA,sBACAA,EAAAA,2BACAA,EAAAA,uBACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,8BACAA,EAAAA,2BACAA,EAAAA,uBACAA,EAAAA,wBACAA,EAAAA,0BACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,2BACAA,EAAAA,wBACAA,EAAAA,4BACAA,EAAAA,6BACAA,EAAAA,6BACAA,EAAAA,4BACAA,EAAAA,2BACAA,EAAAA,4BACAA,EAAAA,0BACAA,EAAAA,wBACAA,EAAAA,kCACAA,EAAAA,2BACAA,EAAAA,0BACAA,EAAAA,gCACAA,EAAAA,oCACAA,EAAAA,mCACAA,EAAAA,iCACAA,EAAAA,mCACAA,EAAAA,yBACAA,EAAAA,6BACAA,EAAAA,6BACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,uBACAA,EAAAA,uBACAA,EAAAA,8BACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,8BACAA,EAAAA,6BACAA,EAAAA,0BACAA,EAAAA,6BACAA,EAAAA,gCACAA,EAAAA,uBACAA,EAAAA,yBACAA,EAAAA,wBACAA,EAAAA,8BACAA,EAAAA,4BACAA,EAAAA,oCACAA,EAAAA,gCACAA,EAAAA,iCACAA,EAAAA,6BACAA,EAAAA,uBACAA,EAAAA,yBACAA,EAAAA,uBACAA,EAAAA,4BACAA,EAAAA,UAGI,IAAMC,EAAgC,CAC3C,aACA,YACA,kBACA,sBACA,qBACA,mBACA,qBACA,gBACA,SACA,WACA,eACA,UACA,gBACA,SACA,QACA,aACA,eACA,UACA,SACA,aACA,YACA,gBACA,aACA,SACA,gBACA,UACA,YACA,aACA,eACA,SACA,SACA,YACA,aACA,UACA,gBACA,cACA,eACA,eACA,cACA,aACA,cACA,YACA,eACA,sBACA,kBACA,mBACA,UACA,gBACA,eACA,eACA,kBACA,SACA,WACA,UACA,gBACA,oBACA,cACA,eACA,SACA,WACA,SACA,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","sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation. All rights reserved.\r\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use\r\nthis file except in compliance with the License. You may obtain a copy of the\r\nLicense at http://www.apache.org/licenses/LICENSE-2.0\r\n\r\nTHIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\r\nKIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\r\nWARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\r\nMERCHANTABLITY OR NON-INFRINGEMENT.\r\n\r\nSee the Apache Version 2.0 License for specific language governing permissions\r\nand limitations under the License.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nconst getTinymce = () => {\n const w = typeof window !== 'undefined' ? (window as any) : undefined;\n return w && w.tinymce ? w.tinymce : null;\n};\n\nexport { getTinymce };\n","import { Output, EventEmitter } from '@angular/core';\n\nexport interface EventObj<T> {\n event: T;\n editor: any;\n}\n\nexport class Events {\n @Output() public onBeforePaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onBlur: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onClick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onContextMenu: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onCopy: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onCut: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onDblclick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onDrag: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragEnd: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragGesture: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragOver: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onFocus: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusIn: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusOut: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onKeyDown: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyPress: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyUp: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onMouseDown: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseEnter: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseLeave: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseMove: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOut: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOver: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseUp: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onPaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onSelectionChange: EventEmitter<EventObj<Event>> = new EventEmitter();\n @Output() public onActivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeRenderUI: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onClearUndos: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDeactivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDirty: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onHide: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInitNgModel: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onLoadContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onNodeChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostRender: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onProgressState: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRedo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRemove: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onReset: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSaveContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetAttrib: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResizeStart: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResized: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectSelected: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onShow: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSubmit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onVisualAid: EventEmitter<EventObj<any>> = new EventEmitter();\n}\n\nexport const validEvents: (keyof Events)[] = [\n 'onActivate',\n 'onAddUndo',\n 'onBeforeAddUndo',\n 'onBeforeExecCommand',\n 'onBeforeGetContent',\n 'onBeforeRenderUI',\n 'onBeforeSetContent',\n 'onBeforePaste',\n 'onBlur',\n 'onChange',\n 'onClearUndos',\n 'onClick',\n 'onContextMenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onDeactivate',\n 'onDirty',\n 'onDrag',\n 'onDragDrop',\n 'onDragEnd',\n 'onDragGesture',\n 'onDragOver',\n 'onDrop',\n 'onExecCommand',\n 'onFocus',\n 'onFocusIn',\n 'onFocusOut',\n 'onGetContent',\n 'onHide',\n 'onInit',\n 'onKeyDown',\n 'onKeyPress',\n 'onKeyUp',\n 'onLoadContent',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onNodeChange',\n 'onObjectResizeStart',\n 'onObjectResized',\n 'onObjectSelected',\n 'onPaste',\n 'onPostProcess',\n 'onPostRender',\n 'onPreProcess',\n 'onProgressState',\n 'onRedo',\n 'onRemove',\n 'onReset',\n 'onSaveContent',\n 'onSelectionChange',\n 'onSetAttrib',\n 'onSetContent',\n 'onShow',\n 'onSubmit',\n 'onUndo',\n 'onVisualAid'\n];\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { EventEmitter } from '@angular/core';\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\nconst bindHandlers = (ctx: EditorComponent, editor: any): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n editor.on(eventName.substring(2), (event: any) => ctx.ngZone.run(() => eventEmitter.emit({ event, editor })));\n });\n};\n\nconst getValidEvents = (ctx: EditorComponent): (keyof Events)[] => {\n const ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);\n const allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(\n (event) => validEvents.includes(event as (keyof Events)) && !ignoredEvents.includes(event)) as (keyof Events)[];\n return allowedEvents;\n};\n\nconst parseStringProperty = (property: string | string[] | undefined, defaultValue: (keyof Events)[]): string[] => {\n if ( typeof property === 'string') {\n return property.split(',').map((value) => value.trim());\n }\n if ( Array.isArray(property)) {\n return property;\n }\n return defaultValue;\n};\n\nlet unique = 0;\n\nconst uuid = (prefix: string): string => {\n const date = new Date();\n const time = date.getTime();\n const random = Math.floor(Math.random() * 1000000000);\n\n unique++;\n\n return prefix + '_' + random + unique + String(time);\n};\n\nconst isTextarea = (element?: Element): element is HTMLTextAreaElement => typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';\n\nconst normalizePluginArray = (plugins?: string | string[]): string[] => {\n if (typeof plugins === 'undefined' || plugins === '') {\n return [];\n }\n\n return Array.isArray(plugins) ? plugins : plugins.split(' ');\n};\n\nconst mergePlugins = (initPlugins: string | string[], inputPlugins?: string | string[]) =>\n normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop: (...args: any[]) => void = () => { };\n\nconst isNullOrUndefined = (value: any): value is null | undefined => value === null || value === undefined;\n\nexport {\n bindHandlers,\n uuid,\n isTextarea,\n normalizePluginArray,\n mergePlugins,\n noop,\n isNullOrUndefined\n};\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { uuid } from './Utils';\n\nexport type callbackFn = () => void;\nexport interface IStateObj {\n listeners: callbackFn[];\n scriptId: string;\n scriptLoaded: boolean;\n}\n\nconst createState = (): IStateObj => ({\n listeners: [],\n scriptId: uuid('tiny-script'),\n scriptLoaded: false\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string, callback: callbackFn) => void;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state: IStateObj = createState();\n\n const injectScriptTag = (scriptId: string, doc: Document, url: string, callback: callbackFn) => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.id = scriptId;\n scriptTag.src = url;\n\n const handler = () => {\n scriptTag.removeEventListener('load', handler);\n callback();\n };\n scriptTag.addEventListener('load', handler);\n if (doc.head) {\n doc.head.appendChild(scriptTag);\n }\n };\n\n const load = (doc: Document, url: string, callback: callbackFn) => {\n if (state.scriptLoaded) {\n callback();\n } else {\n state.listeners.push(callback);\n if (!doc.getElementById(state.scriptId)) {\n injectScriptTag(state.scriptId, doc, url, () => {\n state.listeners.forEach((fn) => fn());\n state.scriptLoaded = true;\n });\n }\n }\n };\n\n // Only to be used by tests.\n const reinitialize = () => {\n state = createState();\n };\n\n return {\n load,\n reinitialize\n };\n};\n\nconst ScriptLoader = CreateScriptLoader();\n\nexport {\n ScriptLoader\n};","/* eslint-disable @typescript-eslint/no-parameter-properties */\nimport { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getTinymce } from '../TinyMCE';\nimport { bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\n\nexport const TINYMCE_SCRIPT_SRC = new InjectionToken<string>('TINYMCE_SCRIPT_SRC');\n\nconst EDITOR_COMPONENT_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n};\n\n@Component({\n selector: 'editor',\n template: '<ng-template></ng-template>',\n styles: [ ':host { display: block; }' ],\n providers: [ EDITOR_COMPONENT_VALUE_ACCESSOR ]\n})\nexport class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {\n\n @Input() public cloudChannel = '5';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: Record<string, any> | undefined;\n @Input() public id = '';\n @Input() public initialValue: string | undefined;\n @Input() public outputFormat: 'html' | 'text' | undefined;\n @Input() public inline: boolean | undefined;\n @Input() public tagName: string | undefined;\n @Input() public plugins: string | undefined;\n @Input() public toolbar: string | string[] | undefined;\n @Input() public modelEvents = 'change input undo redo';\n @Input() public allowedEvents: string | string[] | undefined;\n @Input() public ignoreEvents: string | string[] | undefined;\n\n @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n public get editor() {\n return this._editor;\n }\n\n public ngZone: NgZone;\n\n private _elementRef: ElementRef;\n private _element: Element | undefined;\n private _disabled: boolean | undefined;\n private _editor: any;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n public constructor(\n elementRef: ElementRef,\n ngZone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object,\n @Optional() @Inject(TINYMCE_SCRIPT_SRC) private tinymceScriptSrc?: string\n ) {\n super();\n this._elementRef = elementRef;\n this.ngZone = ngZone;\n this.initialise = this.initialise.bind(this);\n }\n\n public writeValue(value: string | null): void {\n if (this._editor && this._editor.initialized) {\n this._editor.setContent(isNullOrUndefined(value) ? '' : value);\n } else {\n this.initialValue = value === null ? undefined : value;\n }\n }\n\n public registerOnChange(fn: (_: any) => void): void {\n this.onChangeCallback = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n if (this._editor) {\n this._editor.setMode(isDisabled ? 'readonly' : 'design');\n } else if (isDisabled) {\n this.init = { ...this.init, readonly: true };\n }\n }\n\n public ngAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.id = this.id || uuid('tiny-angular');\n this.inline = this.inline !== undefined ? this.inline !== false : !!(this.init?.inline);\n this.createElement();\n if (getTinymce() !== null) {\n this.initialise();\n } else if (this._element && this._element.ownerDocument) {\n ScriptLoader.load(\n this._element.ownerDocument,\n this.getScriptSrc(),\n this.initialise.bind(this)\n );\n }\n }\n }\n\n public ngOnDestroy() {\n if (getTinymce() !== null) {\n getTinymce().remove(this._editor);\n }\n }\n\n public createElement() {\n const tagName = typeof this.tagName === 'string' ? this.tagName : 'div';\n this._element = document.createElement(this.inline ? tagName : 'textarea');\n if (this._element) {\n this._element.id = this.id;\n if (isTextarea(this._element)) {\n this._element.style.visibility = 'hidden';\n }\n this._elementRef.nativeElement.appendChild(this._element);\n }\n }\n\n public initialise() {\n const finalInit = {\n ...this.init,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins(this.init && this.init.plugins, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: any) => {\n this._editor = editor;\n editor.on('init', (_e: unknown) => {\n this.initEditor(editor);\n });\n bindHandlers(this, editor);\n\n if (this.init && typeof this.init.setup === 'function') {\n this.init.setup(editor);\n }\n }\n };\n\n if (isTextarea(this._element)) {\n this._element.style.visibility = '';\n }\n\n this.ngZone.runOutsideAngular(() => {\n getTinymce().init(finalInit);\n });\n }\n\n private getScriptSrc() {\n return isNullOrUndefined(this.tinymceScriptSrc) ?\n `https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js` :\n this.tinymceScriptSrc;\n }\n\n private initEditor(editor: any) {\n editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));\n editor.on(this.modelEvents, () => this.ngZone.run(() => this.emitOnChange(editor)));\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor);\n }\n });\n }\n }\n\n private emitOnChange(editor: any) {\n if (this.onChangeCallback) {\n this.onChangeCallback(editor.getContent({ format: this.outputFormat }));\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [ CommonModule, FormsModule ],\n declarations: [ EditorComponent ],\n exports: [ EditorComponent ]\n})\nexport class EditorModule {}\n"]}
@@ -39,4 +39,5 @@ export declare class EditorComponent extends Events implements AfterViewInit, Co
39
39
  initialise(): void;
40
40
  private getScriptSrc;
41
41
  private initEditor;
42
+ private emitOnChange;
42
43
  }
@@ -22,7 +22,6 @@ export class EditorComponent extends Events {
22
22
  this.id = '';
23
23
  this.modelEvents = 'change input undo redo';
24
24
  this.onTouchedCallback = noop;
25
- this.onChangeCallback = noop;
26
25
  this._elementRef = elementRef;
27
26
  this.ngZone = ngZone;
28
27
  this.initialise = this.initialise.bind(this);
@@ -116,14 +115,12 @@ export class EditorComponent extends Events {
116
115
  }
117
116
  initEditor(editor) {
118
117
  editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));
119
- editor.on(this.modelEvents, () => {
120
- this.ngZone.run(() => this.onChangeCallback(editor.getContent({ format: this.outputFormat })));
121
- });
118
+ editor.on(this.modelEvents, () => this.ngZone.run(() => this.emitOnChange(editor)));
122
119
  if (typeof this.initialValue === 'string') {
123
120
  this.ngZone.run(() => {
124
121
  editor.setContent(this.initialValue);
125
122
  if (editor.getContent() !== this.initialValue) {
126
- this.onChangeCallback(editor.getContent({ format: this.outputFormat }));
123
+ this.emitOnChange(editor);
127
124
  }
128
125
  if (this.onInitNgModel !== undefined) {
129
126
  this.onInitNgModel.emit(editor);
@@ -131,6 +128,11 @@ export class EditorComponent extends Events {
131
128
  });
132
129
  }
133
130
  }
131
+ emitOnChange(editor) {
132
+ if (this.onChangeCallback) {
133
+ this.onChangeCallback(editor.getContent({ format: this.outputFormat }));
134
+ }
135
+ }
134
136
  }
135
137
  EditorComponent.decorators = [
136
138
  { type: Component, args: [{
@@ -162,4 +164,4 @@ EditorComponent.propDecorators = {
162
164
  ignoreEvents: [{ type: Input }],
163
165
  disabled: [{ type: Input }]
164
166
  };
165
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RpbnltY2UtYW5ndWxhci1jb21wb25lbnQvc3JjL21haW4vdHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0RBQStEO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBaUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsV0FBVyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBUyxvQkFBb0IsQ0FBQyxDQUFDO0FBRW5GLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztJQUM5QyxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFRRixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxNQUFNO0lBMEN6QyxZQUNFLFVBQXNCLEVBQ3RCLE1BQWMsRUFDZSxVQUFrQixFQUNDLGdCQUF5QjtRQUV6RSxL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QUssU0FBUyxFQUFFO29CQUNwQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztpQkFDakM7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7O1lBM0tGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsUUFBUSxFQUFFLDZCQUE2QjtnQkFFdkMsU0FBUyxFQUFFLENBQUUsK0JBQStCLENBQUU7eUJBRHBDLDJCQUEyQjthQUV0Qzs7O1lBcEJrQyxVQUFVO1lBQTZCLE1BQU07WUFrRW5DLE1BQU0sdUJBQTlDLE1BQU0sU0FBQyxXQUFXO3lDQUNsQixRQUFRLFlBQUksTUFBTSxTQUFDLGtCQUFrQjs7OzJCQTVDdkMsS0FBSztxQkFDTCxLQUFLO21CQUNMLEtBQUs7aUJBQ0wsS0FBSzsyQkFDTCxLQUFLOzJCQUNMLEtBQUs7cUJBQ0wsS0FBSztzQkFDTCxLQUFLO3NCQUNMLEtBQUs7c0JBQ0wsS0FBSzswQkFDTCxLQUFLOzRCQUNMLEtBQUs7MkJBQ0wsS0FBSzt1QkFFTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXBhcmFtZXRlci1wcm9wZXJ0aWVzICovXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBQTEFURk9STV9JRCwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXRUaW55bWNlIH0gZnJvbSAnLi4vVGlueU1DRSc7XG5pbXBvcnQgeyBiaW5kSGFuZGxlcnMsIGlzVGV4dGFyZWEsIG1lcmdlUGx1Z2lucywgdXVpZCwgbm9vcCwgaXNOdWxsT3JVbmRlZmluZWQgfSBmcm9tICcuLi91dGlscy9VdGlscyc7XG5pbXBvcnQgeyBFdmVudHMgfSBmcm9tICcuL0V2ZW50cyc7XG5pbXBvcnQgeyBTY3JpcHRMb2FkZXIgfSBmcm9tICcuLi91dGlscy9TY3JpcHRMb2FkZXInO1xuXG5leHBvcnQgY29uc3QgVElOWU1DRV9TQ1JJUFRfU1JDID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ1RJTllNQ0VfU0NSSVBUX1NSQycpO1xuXG5jb25zdCBFRElUT1JfQ09NUE9ORU5UX1ZBTFVFX0FDQ0VTU09SID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRWRpdG9yQ29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWVcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VkaXRvcicsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlPjwvbmctdGVtcGxhdGU+JyxcbiAgc3R5bGVzOiBbICc6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyB9JyBdLFxuICBwcm92aWRlcnM6IFsgRURJVE9SX0NPTVBPTkVOVF9WQUxVRV9BQ0NFU1NPUiBdXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEV2ZW50cyBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjbG91ZENoYW5uZWwgPSAnNSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBhcGlLZXkgPSAnbm8tYXBpLWtleSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaWQgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGluaXRpYWxWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgb3V0cHV0Rm9ybWF0OiAnaHRtbCcgfCAndGV4dCcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0YWdOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbHVnaW5zOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIG1vZGVsRXZlbnRzID0gJ2NoYW5nZSBpbnB1dCB1bmRvIHJlZG8nO1xuICBASW5wdXQoKSBwdWJsaWMgYWxsb3dlZEV2ZW50czogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZ25vcmVFdmVudHM6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWw7XG4gICAgaWYgKHRoaXMuX2VkaXRvciAmJiB0aGlzLl9lZGl0b3IuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5zZXRNb2RlKHZhbCA/ICdyZWFkb25seScgOiAnZGVzaWduJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVkaXRvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yO1xuICB9XG5cbiAgcHVibGljIG5nWm9uZTogTmdab25lO1xuXG4gIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9lZGl0b3I6IGFueTtcblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrID0gbm9vcDtcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrID0gbm9vcDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBuZ1pvbmU6IE5nWm9uZSxcbiAgICBASW5qZWN0KFBMQVRGT1JNX0lEKSBwcml2YXRlIHBsYXRmb3JtSWQ6IE9iamVjdCxcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFRJTllNQ0VfU0NSSVBUX1NSQykgcHJpdmF0ZSB0aW55bWNlU2NyaXB0U3JjPzogc3RyaW5nXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5fZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy5uZ1pvbmUgPSBuZ1pvbmU7XG4gICAgdGhpcy5pbml0aWFsaXNlID0gdGhpcy5pbml0aWFsaXNlLmJpbmQodGhpcyk7XG4gIH1cblxuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nIHwgbnVsbCk6IHZvaWQge1xuICAgIGlmICh0aGlzLl9lZGl0b3IgJiYgdGhpcy5fZWRpdG9yLmluaXRpYWxpemVkKSB7XG4gICAgICB0aGlzLl9lZGl0b3Iuc2V0Q29udGVudChpc051bGxPclVuZGVmaW5lZCh2YWx1ZSkgPyAnJyA6IHZhbHVlKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5pbml0aWFsVmFsdWUgPSB2YWx1ZSA9PT0gbnVsbCA/IHVuZGVmaW5lZCA6IHZhbHVlO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrID0gZm47XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgIHRoaXMub25Ub3VjaGVkQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICBpZiAodGhpcy5fZWRpdG9yKSB7XG4gICAgICB0aGlzLl9lZGl0b3Iuc2V0TW9kZShpc0Rpc2FibGVkID8gJ3JlYWRvbmx5JyA6ICdkZXNpZ24nKTtcbiAgICB9IGVsc2UgaWYgKGlzRGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuaW5pdCA9IHsgLi4udGhpcy5pbml0LCByZWFkb25seTogdHJ1ZSB9O1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgaWYgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkpIHtcbiAgICAgIHRoaXMuaWQgPSB0aGlzLmlkIHx8IHV1aWQoJ3RpbnktYW5ndWxhcicpO1xuICAgICAgdGhpcy5pbmxpbmUgPSB0aGlzLmlubGluZSAhPT0gdW5kZWZpbmVkID8gdGhpcy5pbmxpbmUgIT09IGZhbHNlIDogISEodGhpcy5pbml0Py5pbmxpbmUpO1xuICAgICAgdGhpcy5jcmVhdGVFbGVtZW50KCk7XG4gICAgICBpZiAoZ2V0VGlueW1jZSgpICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMuaW5pdGlhbGlzZSgpO1xuICAgICAgfSBlbHNlIGlmICh0aGlzLl9lbGVtZW50ICYmIHRoaXMuX2VsZW1lbnQub3duZXJEb2N1bWVudCkge1xuICAgICAgICBTY3JpcHRMb2FkZXIubG9hZChcbiAgICAgICAgICB0aGlzLl9lbGVtZW50Lm93bmVyRG9jdW1lbnQsXG4gICAgICAgICAgdGhpcy5nZXRTY3JpcHRTcmMoKSxcbiAgICAgICAgICB0aGlzLmluaXRpYWxpc2UuYmluZCh0aGlzKVxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoZ2V0VGlueW1jZSgpICE9PSBudWxsKSB7XG4gICAgICBnZXRUaW55bWNlKCkucmVtb3ZlKHRoaXMuX2VkaXRvcik7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGNyZWF0ZUVsZW1lbnQoKSB7XG4gICAgY29uc3QgdGFnTmFtZSA9IHR5cGVvZiB0aGlzLnRhZ05hbWUgPT09ICdzdHJpbmcnID8gdGhpcy50YWdOYW1lIDogJ2Rpdic7XG4gICAgdGhpcy5fZWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGhpcy5pbmxpbmUgPyB0YWdOYW1lIDogJ3RleHRhcmVhJyk7XG4gICAgaWYgKHRoaXMuX2VsZW1lbnQpIHtcbiAgICAgIHRoaXMuX2VsZW1lbnQuaWQgPSB0aGlzLmlkO1xuICAgICAgaWYgKGlzVGV4dGFyZWEodGhpcy5fZWxlbWVudCkpIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gICAgICB9XG4gICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGluaXRpYWxpc2UoKSB7XG4gICAgY29uc3QgZmluYWxJbml0ID0ge1xuICAgICAgLi4udGhpcy5pbml0LFxuICAgICAgdGFyZ2V0OiB0aGlzLl9lbGVtZW50LFxuICAgICAgaW5saW5lOiB0aGlzLmlubGluZSxcbiAgICAgIHJlYWRvbmx5OiB0aGlzLmRpc2FibGVkLFxuICAgICAgcGx1Z2luczogbWVyZ2VQbHVnaW5zKHRoaXMuaW5pdCAmJiB0aGlzLmluaXQucGx1Z2lucywgdGhpcy5wbHVnaW5zKSxcbiAgICAgIHRvb2xiYXI6IHRoaXMudG9vbGJhciB8fCAodGhpcy5pbml0ICYmIHRoaXMuaW5pdC50b29sYmFyKSxcbiAgICAgIHNldHVwOiAoZWRpdG9yOiBhbnkpID0+IHtcbiAgICAgICAgdGhpcy5fZWRpdG9yID0gZWRpdG9yO1xuICAgICAgICBlZGl0b3Iub24oJ2luaXQnLCAoX2U6IHVua25vd24pID0+IHtcbiAgICAgICAgICB0aGlzLmluaXRFZGl0b3IoZWRpdG9yKTtcbiAgICAgICAgfSk7XG4gICAgICAgIGJpbmRIYW5kbGVycyh0aGlzLCBlZGl0b3IpO1xuXG4gICAgICAgIGlmICh0aGlzLmluaXQgJiYgdHlwZW9mIHRoaXMuaW5pdC5zZXR1cCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRoaXMuaW5pdC5zZXR1cChlZGl0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmIChpc1RleHRhcmVhKHRoaXMuX2VsZW1lbnQpKSB7XG4gICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnJztcbiAgICB9XG5cbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBnZXRUaW55bWNlKCkuaW5pdChmaW5hbEluaXQpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRTY3JpcHRTcmMoKSB7XG4gICAgcmV0dXJuIGlzTnVsbE9yVW5kZWZpbmVkKHRoaXMudGlueW1jZVNjcmlwdFNyYykgP1xuICAgICAgYGh0dHBzOi8vY2RuLnRpbnkuY2xvdWQvMS8ke3RoaXMuYXBpS2V5fS90aW55bWNlLyR7dGhpcy5jbG91ZENoYW5uZWx9L3RpbnltY2UubWluLmpzYCA6XG4gICAgICB0aGlzLnRpbnltY2VTY3JpcHRTcmM7XG4gIH1cblxuICBwcml2YXRlIGluaXRFZGl0b3IoZWRpdG9yOiBhbnkpIHtcbiAgICBlZGl0b3Iub24oJ2JsdXInLCAoKSA9PiB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5vblRvdWNoZWRDYWxsYmFjaygpKSk7XG4gICAgZWRpdG9yLm9uKHRoaXMubW9kZWxFdmVudHMsICgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2soZWRpdG9yLmdldENvbnRlbnQoeyBmb3JtYXQ6IHRoaXMub3V0cHV0Rm9ybWF0IH0pKSk7XG4gICAgfSk7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmluaXRpYWxWYWx1ZSA9PT0gJ3N0cmluZycpIHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAgIGVkaXRvci5zZXRDb250ZW50KHRoaXMuaW5pdGlhbFZhbHVlKTtcbiAgICAgICAgaWYgKGVkaXRvci5nZXRDb250ZW50KCkgIT09IHRoaXMuaW5pdGlhbFZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKGVkaXRvci5nZXRDb250ZW50KHsgZm9ybWF0OiB0aGlzLm91dHB1dEZvcm1hdCB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMub25Jbml0TmdNb2RlbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdGhpcy5vbkluaXROZ01vZGVsLmVtaXQoZWRpdG9yKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0=
167
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RpbnltY2UtYW5ndWxhci1jb21wb25lbnQvc3JjL21haW4vdHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0RBQStEO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBaUIsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsV0FBVyxFQUFFLGNBQWMsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUosT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDeEMsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN2RyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVyRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBUyxvQkFBb0IsQ0FBQyxDQUFDO0FBRW5GLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztJQUM5QyxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFRRixNQUFNLE9BQU8sZUFBZ0IsU0FBUSxNQUFNO0lBMEN6QyxZQUNFLFVBQXNCLEVBQ3RCLE1BQWMsRUFDZSxVQUFrQixFQUNDLGdCQUF5QjtRQUV6RSxL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RTtZQUN6QixJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ3pFO0lBQ0gsQ0FBQzs7O1lBL0tGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsUUFBUTtnQkFDbEIsUUFBUSxFQUFFLDZCQUE2QjtnQkFFdkMsU0FBUyxFQUFFLENBQUUsK0JBQStCLENBQUU7eUJBRHBDLDJCQUEyQjthQUV0Qzs7O1lBcEJrQyxVQUFVO1lBQTZCLE1BQU07WUFrRW5DLE1BQU0sdUJBQTlDLE1BQU0sU0FBQyxXQUFXO3lDQUNsQixRQUFRLFlBQUksTUFBTSxTQUFDLGtCQUFrQjs7OzJCQTVDdkMsS0FBSztxQkFDTCxLQUFLO21CQUNMLEtBQUs7aUJBQ0wsS0FBSzsyQkFDTCxLQUFLOzJCQUNMLEtBQUs7cUJBQ0wsS0FBSztzQkFDTCxLQUFLO3NCQUNMLEtBQUs7c0JBQ0wsS0FBSzswQkFDTCxLQUFLOzRCQUNMLEtBQUs7MkJBQ0wsS0FBSzt1QkFFTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXBhcmFtZXRlci1wcm9wZXJ0aWVzICovXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBQTEFURk9STV9JRCwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXRUaW55bWNlIH0gZnJvbSAnLi4vVGlueU1DRSc7XG5pbXBvcnQgeyBiaW5kSGFuZGxlcnMsIGlzVGV4dGFyZWEsIG1lcmdlUGx1Z2lucywgdXVpZCwgbm9vcCwgaXNOdWxsT3JVbmRlZmluZWQgfSBmcm9tICcuLi91dGlscy9VdGlscyc7XG5pbXBvcnQgeyBFdmVudHMgfSBmcm9tICcuL0V2ZW50cyc7XG5pbXBvcnQgeyBTY3JpcHRMb2FkZXIgfSBmcm9tICcuLi91dGlscy9TY3JpcHRMb2FkZXInO1xuXG5leHBvcnQgY29uc3QgVElOWU1DRV9TQ1JJUFRfU1JDID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ1RJTllNQ0VfU0NSSVBUX1NSQycpO1xuXG5jb25zdCBFRElUT1JfQ09NUE9ORU5UX1ZBTFVFX0FDQ0VTU09SID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRWRpdG9yQ29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWVcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VkaXRvcicsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlPjwvbmctdGVtcGxhdGU+JyxcbiAgc3R5bGVzOiBbICc6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyB9JyBdLFxuICBwcm92aWRlcnM6IFsgRURJVE9SX0NPTVBPTkVOVF9WQUxVRV9BQ0NFU1NPUiBdXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEV2ZW50cyBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjbG91ZENoYW5uZWwgPSAnNSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBhcGlLZXkgPSAnbm8tYXBpLWtleSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+IHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaWQgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGluaXRpYWxWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgb3V0cHV0Rm9ybWF0OiAnaHRtbCcgfCAndGV4dCcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0YWdOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbHVnaW5zOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIG1vZGVsRXZlbnRzID0gJ2NoYW5nZSBpbnB1dCB1bmRvIHJlZG8nO1xuICBASW5wdXQoKSBwdWJsaWMgYWxsb3dlZEV2ZW50czogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZ25vcmVFdmVudHM6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXQgZGlzYWJsZWQodmFsKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSB2YWw7XG4gICAgaWYgKHRoaXMuX2VkaXRvciAmJiB0aGlzLl9lZGl0b3IuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5zZXRNb2RlKHZhbCA/ICdyZWFkb25seScgOiAnZGVzaWduJyk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGdldCBkaXNhYmxlZCgpIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGVkaXRvcigpIHtcbiAgICByZXR1cm4gdGhpcy5fZWRpdG9yO1xuICB9XG5cbiAgcHVibGljIG5nWm9uZTogTmdab25lO1xuXG4gIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9lZGl0b3I6IGFueTtcblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrID0gbm9vcDtcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrOiBhbnk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3QsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUSU5ZTUNFX1NDUklQVF9TUkMpIHByaXZhdGUgdGlueW1jZVNjcmlwdFNyYz86IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMubmdab25lID0gbmdab25lO1xuICAgIHRoaXMuaW5pdGlhbGlzZSA9IHRoaXMuaW5pdGlhbGlzZS5iaW5kKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldENvbnRlbnQoaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpID8gJycgOiB2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gdmFsdWUgPT09IG51bGwgPyB1bmRlZmluZWQgOiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuX2VkaXRvcikge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGUoaXNEaXNhYmxlZCA/ICdyZWFkb25seScgOiAnZGVzaWduJyk7XG4gICAgfSBlbHNlIGlmIChpc0Rpc2FibGVkKSB7XG4gICAgICB0aGlzLmluaXQgPSB7IC4uLnRoaXMuaW5pdCwgcmVhZG9ubHk6IHRydWUgfTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICB0aGlzLmlkID0gdGhpcy5pZCB8fCB1dWlkKCd0aW55LWFuZ3VsYXInKTtcbiAgICAgIHRoaXMuaW5saW5lID0gdGhpcy5pbmxpbmUgIT09IHVuZGVmaW5lZCA/IHRoaXMuaW5saW5lICE9PSBmYWxzZSA6ICEhKHRoaXMuaW5pdD8uaW5saW5lKTtcbiAgICAgIHRoaXMuY3JlYXRlRWxlbWVudCgpO1xuICAgICAgaWYgKGdldFRpbnltY2UoKSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpc2UoKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5fZWxlbWVudCAmJiB0aGlzLl9lbGVtZW50Lm93bmVyRG9jdW1lbnQpIHtcbiAgICAgICAgU2NyaXB0TG9hZGVyLmxvYWQoXG4gICAgICAgICAgdGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50LFxuICAgICAgICAgIHRoaXMuZ2V0U2NyaXB0U3JjKCksXG4gICAgICAgICAgdGhpcy5pbml0aWFsaXNlLmJpbmQodGhpcylcbiAgICAgICAgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKGdldFRpbnltY2UoKSAhPT0gbnVsbCkge1xuICAgICAgZ2V0VGlueW1jZSgpLnJlbW92ZSh0aGlzLl9lZGl0b3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVFbGVtZW50KCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0eXBlb2YgdGhpcy50YWdOYW1lID09PSAnc3RyaW5nJyA/IHRoaXMudGFnTmFtZSA6ICdkaXYnO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRoaXMuaW5saW5lID8gdGFnTmFtZSA6ICd0ZXh0YXJlYScpO1xuICAgIGlmICh0aGlzLl9lbGVtZW50KSB7XG4gICAgICB0aGlzLl9lbGVtZW50LmlkID0gdGhpcy5pZDtcbiAgICAgIGlmIChpc1RleHRhcmVhKHRoaXMuX2VsZW1lbnQpKSB7XG4gICAgICAgIHRoaXMuX2VsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xuICAgICAgfVxuICAgICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKHRoaXMuX2VsZW1lbnQpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXNlKCkge1xuICAgIGNvbnN0IGZpbmFsSW5pdCA9IHtcbiAgICAgIC4uLnRoaXMuaW5pdCxcbiAgICAgIHRhcmdldDogdGhpcy5fZWxlbWVudCxcbiAgICAgIGlubGluZTogdGhpcy5pbmxpbmUsXG4gICAgICByZWFkb25seTogdGhpcy5kaXNhYmxlZCxcbiAgICAgIHBsdWdpbnM6IG1lcmdlUGx1Z2lucyh0aGlzLmluaXQgJiYgdGhpcy5pbml0LnBsdWdpbnMsIHRoaXMucGx1Z2lucyksXG4gICAgICB0b29sYmFyOiB0aGlzLnRvb2xiYXIgfHwgKHRoaXMuaW5pdCAmJiB0aGlzLmluaXQudG9vbGJhciksXG4gICAgICBzZXR1cDogKGVkaXRvcjogYW55KSA9PiB7XG4gICAgICAgIHRoaXMuX2VkaXRvciA9IGVkaXRvcjtcbiAgICAgICAgZWRpdG9yLm9uKCdpbml0JywgKF9lOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgdGhpcy5pbml0RWRpdG9yKGVkaXRvcik7XG4gICAgICAgIH0pO1xuICAgICAgICBiaW5kSGFuZGxlcnModGhpcywgZWRpdG9yKTtcblxuICAgICAgICBpZiAodGhpcy5pbml0ICYmIHR5cGVvZiB0aGlzLmluaXQuc2V0dXAgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICB0aGlzLmluaXQuc2V0dXAoZWRpdG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAoaXNUZXh0YXJlYSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS52aXNpYmlsaXR5ID0gJyc7XG4gICAgfVxuXG4gICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgZ2V0VGlueW1jZSgpLmluaXQoZmluYWxJbml0KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2NyaXB0U3JjKCkge1xuICAgIHJldHVybiBpc051bGxPclVuZGVmaW5lZCh0aGlzLnRpbnltY2VTY3JpcHRTcmMpID9cbiAgICAgIGBodHRwczovL2Nkbi50aW55LmNsb3VkLzEvJHt0aGlzLmFwaUtleX0vdGlueW1jZS8ke3RoaXMuY2xvdWRDaGFubmVsfS90aW55bWNlLm1pbi5qc2AgOlxuICAgICAgdGhpcy50aW55bWNlU2NyaXB0U3JjO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0RWRpdG9yKGVkaXRvcjogYW55KSB7XG4gICAgZWRpdG9yLm9uKCdibHVyJywgKCkgPT4gdGhpcy5uZ1pvbmUucnVuKCgpID0+IHRoaXMub25Ub3VjaGVkQ2FsbGJhY2soKSkpO1xuICAgIGVkaXRvci5vbih0aGlzLm1vZGVsRXZlbnRzLCAoKSA9PiB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5lbWl0T25DaGFuZ2UoZWRpdG9yKSkpO1xuICAgIGlmICh0eXBlb2YgdGhpcy5pbml0aWFsVmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICBlZGl0b3Iuc2V0Q29udGVudCh0aGlzLmluaXRpYWxWYWx1ZSk7XG4gICAgICAgIGlmIChlZGl0b3IuZ2V0Q29udGVudCgpICE9PSB0aGlzLmluaXRpYWxWYWx1ZSkge1xuICAgICAgICAgIHRoaXMuZW1pdE9uQ2hhbmdlKGVkaXRvcik7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMub25Jbml0TmdNb2RlbCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgdGhpcy5vbkluaXROZ01vZGVsLmVtaXQoZWRpdG9yKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBlbWl0T25DaGFuZ2UoZWRpdG9yOiBhbnkpIHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZUNhbGxiYWNrKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2soZWRpdG9yLmdldENvbnRlbnQoeyBmb3JtYXQ6IHRoaXMub3V0cHV0Rm9ybWF0IH0pKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -344,7 +344,6 @@ class EditorComponent extends Events {
344
344
  this.id = '';
345
345
  this.modelEvents = 'change input undo redo';
346
346
  this.onTouchedCallback = noop;
347
- this.onChangeCallback = noop;
348
347
  this._elementRef = elementRef;
349
348
  this.ngZone = ngZone;
350
349
  this.initialise = this.initialise.bind(this);
@@ -438,14 +437,12 @@ class EditorComponent extends Events {
438
437
  }
439
438
  initEditor(editor) {
440
439
  editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));
441
- editor.on(this.modelEvents, () => {
442
- this.ngZone.run(() => this.onChangeCallback(editor.getContent({ format: this.outputFormat })));
443
- });
440
+ editor.on(this.modelEvents, () => this.ngZone.run(() => this.emitOnChange(editor)));
444
441
  if (typeof this.initialValue === 'string') {
445
442
  this.ngZone.run(() => {
446
443
  editor.setContent(this.initialValue);
447
444
  if (editor.getContent() !== this.initialValue) {
448
- this.onChangeCallback(editor.getContent({ format: this.outputFormat }));
445
+ this.emitOnChange(editor);
449
446
  }
450
447
  if (this.onInitNgModel !== undefined) {
451
448
  this.onInitNgModel.emit(editor);
@@ -453,6 +450,11 @@ class EditorComponent extends Events {
453
450
  });
454
451
  }
455
452
  }
453
+ emitOnChange(editor) {
454
+ if (this.onChangeCallback) {
455
+ this.onChangeCallback(editor.getContent({ format: this.outputFormat }));
456
+ }
457
+ }
456
458
  }
457
459
  EditorComponent.decorators = [
458
460
  { type: Component, args: [{
@@ -1 +1 @@
1
- {"version":3,"file":"tinymce-tinymce-angular.js","sources":["../../../tinymce-angular-component/src/main/ts/TinyMCE.ts","../../../tinymce-angular-component/src/main/ts/editor/Events.ts","../../../tinymce-angular-component/src/main/ts/utils/Utils.ts","../../../tinymce-angular-component/src/main/ts/utils/ScriptLoader.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.component.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.module.ts","../../../tinymce-angular-component/src/main/ts/tinymce-tinymce-angular.ts"],"sourcesContent":["/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nconst getTinymce = () => {\n const w = typeof window !== 'undefined' ? (window as any) : undefined;\n return w && w.tinymce ? w.tinymce : null;\n};\n\nexport { getTinymce };\n","import { Output, EventEmitter } from '@angular/core';\n\nexport interface EventObj<T> {\n event: T;\n editor: any;\n}\n\nexport class Events {\n @Output() public onBeforePaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onBlur: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onClick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onContextMenu: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onCopy: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onCut: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onDblclick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onDrag: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragEnd: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragGesture: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragOver: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onFocus: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusIn: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusOut: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onKeyDown: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyPress: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyUp: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onMouseDown: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseEnter: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseLeave: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseMove: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOut: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOver: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseUp: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onPaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onSelectionChange: EventEmitter<EventObj<Event>> = new EventEmitter();\n @Output() public onActivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeRenderUI: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onClearUndos: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDeactivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDirty: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onHide: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInitNgModel: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onLoadContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onNodeChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostRender: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onProgressState: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRedo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRemove: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onReset: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSaveContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetAttrib: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResizeStart: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResized: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectSelected: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onShow: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSubmit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onVisualAid: EventEmitter<EventObj<any>> = new EventEmitter();\n}\n\nexport const validEvents: (keyof Events)[] = [\n 'onActivate',\n 'onAddUndo',\n 'onBeforeAddUndo',\n 'onBeforeExecCommand',\n 'onBeforeGetContent',\n 'onBeforeRenderUI',\n 'onBeforeSetContent',\n 'onBeforePaste',\n 'onBlur',\n 'onChange',\n 'onClearUndos',\n 'onClick',\n 'onContextMenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onDeactivate',\n 'onDirty',\n 'onDrag',\n 'onDragDrop',\n 'onDragEnd',\n 'onDragGesture',\n 'onDragOver',\n 'onDrop',\n 'onExecCommand',\n 'onFocus',\n 'onFocusIn',\n 'onFocusOut',\n 'onGetContent',\n 'onHide',\n 'onInit',\n 'onKeyDown',\n 'onKeyPress',\n 'onKeyUp',\n 'onLoadContent',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onNodeChange',\n 'onObjectResizeStart',\n 'onObjectResized',\n 'onObjectSelected',\n 'onPaste',\n 'onPostProcess',\n 'onPostRender',\n 'onPreProcess',\n 'onProgressState',\n 'onRedo',\n 'onRemove',\n 'onReset',\n 'onSaveContent',\n 'onSelectionChange',\n 'onSetAttrib',\n 'onSetContent',\n 'onShow',\n 'onSubmit',\n 'onUndo',\n 'onVisualAid'\n];\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { EventEmitter } from '@angular/core';\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\nconst bindHandlers = (ctx: EditorComponent, editor: any): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n editor.on(eventName.substring(2), (event: any) => ctx.ngZone.run(() => eventEmitter.emit({ event, editor })));\n });\n};\n\nconst getValidEvents = (ctx: EditorComponent): (keyof Events)[] => {\n const ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);\n const allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(\n (event) => validEvents.includes(event as (keyof Events)) && !ignoredEvents.includes(event)) as (keyof Events)[];\n return allowedEvents;\n};\n\nconst parseStringProperty = (property: string | string[] | undefined, defaultValue: (keyof Events)[]): string[] => {\n if ( typeof property === 'string') {\n return property.split(',').map((value) => value.trim());\n }\n if ( Array.isArray(property)) {\n return property;\n }\n return defaultValue;\n};\n\nlet unique = 0;\n\nconst uuid = (prefix: string): string => {\n const date = new Date();\n const time = date.getTime();\n const random = Math.floor(Math.random() * 1000000000);\n\n unique++;\n\n return prefix + '_' + random + unique + String(time);\n};\n\nconst isTextarea = (element?: Element): element is HTMLTextAreaElement => typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';\n\nconst normalizePluginArray = (plugins?: string | string[]): string[] => {\n if (typeof plugins === 'undefined' || plugins === '') {\n return [];\n }\n\n return Array.isArray(plugins) ? plugins : plugins.split(' ');\n};\n\nconst mergePlugins = (initPlugins: string | string[], inputPlugins?: string | string[]) =>\n normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop: (...args: any[]) => void = () => { };\n\nconst isNullOrUndefined = (value: any): value is null | undefined => value === null || value === undefined;\n\nexport {\n bindHandlers,\n uuid,\n isTextarea,\n normalizePluginArray,\n mergePlugins,\n noop,\n isNullOrUndefined\n};\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { uuid } from './Utils';\n\nexport type callbackFn = () => void;\nexport interface IStateObj {\n listeners: callbackFn[];\n scriptId: string;\n scriptLoaded: boolean;\n}\n\nconst createState = (): IStateObj => ({\n listeners: [],\n scriptId: uuid('tiny-script'),\n scriptLoaded: false\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string, callback: callbackFn) => void;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state: IStateObj = createState();\n\n const injectScriptTag = (scriptId: string, doc: Document, url: string, callback: callbackFn) => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.id = scriptId;\n scriptTag.src = url;\n\n const handler = () => {\n scriptTag.removeEventListener('load', handler);\n callback();\n };\n scriptTag.addEventListener('load', handler);\n if (doc.head) {\n doc.head.appendChild(scriptTag);\n }\n };\n\n const load = (doc: Document, url: string, callback: callbackFn) => {\n if (state.scriptLoaded) {\n callback();\n } else {\n state.listeners.push(callback);\n if (!doc.getElementById(state.scriptId)) {\n injectScriptTag(state.scriptId, doc, url, () => {\n state.listeners.forEach((fn) => fn());\n state.scriptLoaded = true;\n });\n }\n }\n };\n\n // Only to be used by tests.\n const reinitialize = () => {\n state = createState();\n };\n\n return {\n load,\n reinitialize\n };\n};\n\nconst ScriptLoader = CreateScriptLoader();\n\nexport {\n ScriptLoader\n};","/* eslint-disable @typescript-eslint/no-parameter-properties */\nimport { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getTinymce } from '../TinyMCE';\nimport { bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\n\nexport const TINYMCE_SCRIPT_SRC = new InjectionToken<string>('TINYMCE_SCRIPT_SRC');\n\nconst EDITOR_COMPONENT_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n};\n\n@Component({\n selector: 'editor',\n template: '<ng-template></ng-template>',\n styles: [ ':host { display: block; }' ],\n providers: [ EDITOR_COMPONENT_VALUE_ACCESSOR ]\n})\nexport class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {\n\n @Input() public cloudChannel = '5';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: Record<string, any> | undefined;\n @Input() public id = '';\n @Input() public initialValue: string | undefined;\n @Input() public outputFormat: 'html' | 'text' | undefined;\n @Input() public inline: boolean | undefined;\n @Input() public tagName: string | undefined;\n @Input() public plugins: string | undefined;\n @Input() public toolbar: string | string[] | undefined;\n @Input() public modelEvents = 'change input undo redo';\n @Input() public allowedEvents: string | string[] | undefined;\n @Input() public ignoreEvents: string | string[] | undefined;\n\n @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n public get editor() {\n return this._editor;\n }\n\n public ngZone: NgZone;\n\n private _elementRef: ElementRef;\n private _element: Element | undefined;\n private _disabled: boolean | undefined;\n private _editor: any;\n\n private onTouchedCallback = noop;\n private onChangeCallback = noop;\n\n public constructor(\n elementRef: ElementRef,\n ngZone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object,\n @Optional() @Inject(TINYMCE_SCRIPT_SRC) private tinymceScriptSrc?: string\n ) {\n super();\n this._elementRef = elementRef;\n this.ngZone = ngZone;\n this.initialise = this.initialise.bind(this);\n }\n\n public writeValue(value: string | null): void {\n if (this._editor && this._editor.initialized) {\n this._editor.setContent(isNullOrUndefined(value) ? '' : value);\n } else {\n this.initialValue = value === null ? undefined : value;\n }\n }\n\n public registerOnChange(fn: (_: any) => void): void {\n this.onChangeCallback = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n if (this._editor) {\n this._editor.setMode(isDisabled ? 'readonly' : 'design');\n } else if (isDisabled) {\n this.init = { ...this.init, readonly: true };\n }\n }\n\n public ngAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.id = this.id || uuid('tiny-angular');\n this.inline = this.inline !== undefined ? this.inline !== false : !!(this.init?.inline);\n this.createElement();\n if (getTinymce() !== null) {\n this.initialise();\n } else if (this._element && this._element.ownerDocument) {\n ScriptLoader.load(\n this._element.ownerDocument,\n this.getScriptSrc(),\n this.initialise.bind(this)\n );\n }\n }\n }\n\n public ngOnDestroy() {\n if (getTinymce() !== null) {\n getTinymce().remove(this._editor);\n }\n }\n\n public createElement() {\n const tagName = typeof this.tagName === 'string' ? this.tagName : 'div';\n this._element = document.createElement(this.inline ? tagName : 'textarea');\n if (this._element) {\n this._element.id = this.id;\n if (isTextarea(this._element)) {\n this._element.style.visibility = 'hidden';\n }\n this._elementRef.nativeElement.appendChild(this._element);\n }\n }\n\n public initialise() {\n const finalInit = {\n ...this.init,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins(this.init && this.init.plugins, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: any) => {\n this._editor = editor;\n editor.on('init', (_e: unknown) => {\n this.initEditor(editor);\n });\n bindHandlers(this, editor);\n\n if (this.init && typeof this.init.setup === 'function') {\n this.init.setup(editor);\n }\n }\n };\n\n if (isTextarea(this._element)) {\n this._element.style.visibility = '';\n }\n\n this.ngZone.runOutsideAngular(() => {\n getTinymce().init(finalInit);\n });\n }\n\n private getScriptSrc() {\n return isNullOrUndefined(this.tinymceScriptSrc) ?\n `https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js` :\n this.tinymceScriptSrc;\n }\n\n private initEditor(editor: any) {\n editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));\n editor.on(this.modelEvents, () => {\n this.ngZone.run(() => this.onChangeCallback(editor.getContent({ format: this.outputFormat })));\n });\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue);\n if (editor.getContent() !== this.initialValue) {\n this.onChangeCallback(editor.getContent({ format: this.outputFormat }));\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor);\n }\n });\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [ CommonModule, FormsModule ],\n declarations: [ EditorComponent ],\n exports: [ EditorComponent ]\n})\nexport class EditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {Events as ɵa} from './editor/Events';"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tinymce-tinymce-angular.js","sources":["../../../tinymce-angular-component/src/main/ts/TinyMCE.ts","../../../tinymce-angular-component/src/main/ts/editor/Events.ts","../../../tinymce-angular-component/src/main/ts/utils/Utils.ts","../../../tinymce-angular-component/src/main/ts/utils/ScriptLoader.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.component.ts","../../../tinymce-angular-component/src/main/ts/editor/editor.module.ts","../../../tinymce-angular-component/src/main/ts/tinymce-tinymce-angular.ts"],"sourcesContent":["/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nconst getTinymce = () => {\n const w = typeof window !== 'undefined' ? (window as any) : undefined;\n return w && w.tinymce ? w.tinymce : null;\n};\n\nexport { getTinymce };\n","import { Output, EventEmitter } from '@angular/core';\n\nexport interface EventObj<T> {\n event: T;\n editor: any;\n}\n\nexport class Events {\n @Output() public onBeforePaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onBlur: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onClick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onContextMenu: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onCopy: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onCut: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onDblclick: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onDrag: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragEnd: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragGesture: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDragOver: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onDrop: EventEmitter<EventObj<DragEvent>> = new EventEmitter();\n @Output() public onFocus: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusIn: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onFocusOut: EventEmitter<EventObj<FocusEvent>> = new EventEmitter();\n @Output() public onKeyDown: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyPress: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onKeyUp: EventEmitter<EventObj<KeyboardEvent>> = new EventEmitter();\n @Output() public onMouseDown: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseEnter: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseLeave: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseMove: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOut: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseOver: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onMouseUp: EventEmitter<EventObj<MouseEvent>> = new EventEmitter();\n @Output() public onPaste: EventEmitter<EventObj<ClipboardEvent>> = new EventEmitter();\n @Output() public onSelectionChange: EventEmitter<EventObj<Event>> = new EventEmitter();\n @Output() public onActivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeAddUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeRenderUI: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onBeforeSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onClearUndos: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDeactivate: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onDirty: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onExecCommand: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onGetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onHide: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onInitNgModel: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onLoadContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onNodeChange: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPostRender: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreInit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onPreProcess: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onProgressState: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRedo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onRemove: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onReset: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSaveContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetAttrib: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResizeStart: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectResized: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onObjectSelected: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSetContent: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onShow: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onSubmit: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onUndo: EventEmitter<EventObj<any>> = new EventEmitter();\n @Output() public onVisualAid: EventEmitter<EventObj<any>> = new EventEmitter();\n}\n\nexport const validEvents: (keyof Events)[] = [\n 'onActivate',\n 'onAddUndo',\n 'onBeforeAddUndo',\n 'onBeforeExecCommand',\n 'onBeforeGetContent',\n 'onBeforeRenderUI',\n 'onBeforeSetContent',\n 'onBeforePaste',\n 'onBlur',\n 'onChange',\n 'onClearUndos',\n 'onClick',\n 'onContextMenu',\n 'onCopy',\n 'onCut',\n 'onDblclick',\n 'onDeactivate',\n 'onDirty',\n 'onDrag',\n 'onDragDrop',\n 'onDragEnd',\n 'onDragGesture',\n 'onDragOver',\n 'onDrop',\n 'onExecCommand',\n 'onFocus',\n 'onFocusIn',\n 'onFocusOut',\n 'onGetContent',\n 'onHide',\n 'onInit',\n 'onKeyDown',\n 'onKeyPress',\n 'onKeyUp',\n 'onLoadContent',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseMove',\n 'onMouseOut',\n 'onMouseOver',\n 'onMouseUp',\n 'onNodeChange',\n 'onObjectResizeStart',\n 'onObjectResized',\n 'onObjectSelected',\n 'onPaste',\n 'onPostProcess',\n 'onPostRender',\n 'onPreProcess',\n 'onProgressState',\n 'onRedo',\n 'onRemove',\n 'onReset',\n 'onSaveContent',\n 'onSelectionChange',\n 'onSetAttrib',\n 'onSetContent',\n 'onShow',\n 'onSubmit',\n 'onUndo',\n 'onVisualAid'\n];\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { EventEmitter } from '@angular/core';\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\nconst bindHandlers = (ctx: EditorComponent, editor: any): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n editor.on(eventName.substring(2), (event: any) => ctx.ngZone.run(() => eventEmitter.emit({ event, editor })));\n });\n};\n\nconst getValidEvents = (ctx: EditorComponent): (keyof Events)[] => {\n const ignoredEvents = parseStringProperty(ctx.ignoreEvents, []);\n const allowedEvents = parseStringProperty(ctx.allowedEvents, validEvents).filter(\n (event) => validEvents.includes(event as (keyof Events)) && !ignoredEvents.includes(event)) as (keyof Events)[];\n return allowedEvents;\n};\n\nconst parseStringProperty = (property: string | string[] | undefined, defaultValue: (keyof Events)[]): string[] => {\n if ( typeof property === 'string') {\n return property.split(',').map((value) => value.trim());\n }\n if ( Array.isArray(property)) {\n return property;\n }\n return defaultValue;\n};\n\nlet unique = 0;\n\nconst uuid = (prefix: string): string => {\n const date = new Date();\n const time = date.getTime();\n const random = Math.floor(Math.random() * 1000000000);\n\n unique++;\n\n return prefix + '_' + random + unique + String(time);\n};\n\nconst isTextarea = (element?: Element): element is HTMLTextAreaElement => typeof element !== 'undefined' && element.tagName.toLowerCase() === 'textarea';\n\nconst normalizePluginArray = (plugins?: string | string[]): string[] => {\n if (typeof plugins === 'undefined' || plugins === '') {\n return [];\n }\n\n return Array.isArray(plugins) ? plugins : plugins.split(' ');\n};\n\nconst mergePlugins = (initPlugins: string | string[], inputPlugins?: string | string[]) =>\n normalizePluginArray(initPlugins).concat(normalizePluginArray(inputPlugins));\n\n// eslint-disable-next-line @typescript-eslint/no-empty-function\nconst noop: (...args: any[]) => void = () => { };\n\nconst isNullOrUndefined = (value: any): value is null | undefined => value === null || value === undefined;\n\nexport {\n bindHandlers,\n uuid,\n isTextarea,\n normalizePluginArray,\n mergePlugins,\n noop,\n isNullOrUndefined\n};\n","/**\n * Copyright (c) 2017-present, Ephox, Inc.\n *\n * This source code is licensed under the Apache 2 license found in the\n * LICENSE file in the root directory of this source tree.\n *\n */\n\nimport { uuid } from './Utils';\n\nexport type callbackFn = () => void;\nexport interface IStateObj {\n listeners: callbackFn[];\n scriptId: string;\n scriptLoaded: boolean;\n}\n\nconst createState = (): IStateObj => ({\n listeners: [],\n scriptId: uuid('tiny-script'),\n scriptLoaded: false\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string, callback: callbackFn) => void;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state: IStateObj = createState();\n\n const injectScriptTag = (scriptId: string, doc: Document, url: string, callback: callbackFn) => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.id = scriptId;\n scriptTag.src = url;\n\n const handler = () => {\n scriptTag.removeEventListener('load', handler);\n callback();\n };\n scriptTag.addEventListener('load', handler);\n if (doc.head) {\n doc.head.appendChild(scriptTag);\n }\n };\n\n const load = (doc: Document, url: string, callback: callbackFn) => {\n if (state.scriptLoaded) {\n callback();\n } else {\n state.listeners.push(callback);\n if (!doc.getElementById(state.scriptId)) {\n injectScriptTag(state.scriptId, doc, url, () => {\n state.listeners.forEach((fn) => fn());\n state.scriptLoaded = true;\n });\n }\n }\n };\n\n // Only to be used by tests.\n const reinitialize = () => {\n state = createState();\n };\n\n return {\n load,\n reinitialize\n };\n};\n\nconst ScriptLoader = CreateScriptLoader();\n\nexport {\n ScriptLoader\n};","/* eslint-disable @typescript-eslint/no-parameter-properties */\nimport { isPlatformBrowser } from '@angular/common';\nimport { AfterViewInit, Component, ElementRef, forwardRef, Inject, Input, NgZone, OnDestroy, PLATFORM_ID, InjectionToken, Optional } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { getTinymce } from '../TinyMCE';\nimport { bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\n\nexport const TINYMCE_SCRIPT_SRC = new InjectionToken<string>('TINYMCE_SCRIPT_SRC');\n\nconst EDITOR_COMPONENT_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditorComponent),\n multi: true\n};\n\n@Component({\n selector: 'editor',\n template: '<ng-template></ng-template>',\n styles: [ ':host { display: block; }' ],\n providers: [ EDITOR_COMPONENT_VALUE_ACCESSOR ]\n})\nexport class EditorComponent extends Events implements AfterViewInit, ControlValueAccessor, OnDestroy {\n\n @Input() public cloudChannel = '5';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: Record<string, any> | undefined;\n @Input() public id = '';\n @Input() public initialValue: string | undefined;\n @Input() public outputFormat: 'html' | 'text' | undefined;\n @Input() public inline: boolean | undefined;\n @Input() public tagName: string | undefined;\n @Input() public plugins: string | undefined;\n @Input() public toolbar: string | string[] | undefined;\n @Input() public modelEvents = 'change input undo redo';\n @Input() public allowedEvents: string | string[] | undefined;\n @Input() public ignoreEvents: string | string[] | undefined;\n\n @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\n }\n\n public get disabled() {\n return this._disabled;\n }\n\n public get editor() {\n return this._editor;\n }\n\n public ngZone: NgZone;\n\n private _elementRef: ElementRef;\n private _element: Element | undefined;\n private _disabled: boolean | undefined;\n private _editor: any;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n public constructor(\n elementRef: ElementRef,\n ngZone: NgZone,\n @Inject(PLATFORM_ID) private platformId: Object,\n @Optional() @Inject(TINYMCE_SCRIPT_SRC) private tinymceScriptSrc?: string\n ) {\n super();\n this._elementRef = elementRef;\n this.ngZone = ngZone;\n this.initialise = this.initialise.bind(this);\n }\n\n public writeValue(value: string | null): void {\n if (this._editor && this._editor.initialized) {\n this._editor.setContent(isNullOrUndefined(value) ? '' : value);\n } else {\n this.initialValue = value === null ? undefined : value;\n }\n }\n\n public registerOnChange(fn: (_: any) => void): void {\n this.onChangeCallback = fn;\n }\n\n public registerOnTouched(fn: any): void {\n this.onTouchedCallback = fn;\n }\n\n public setDisabledState(isDisabled: boolean) {\n if (this._editor) {\n this._editor.setMode(isDisabled ? 'readonly' : 'design');\n } else if (isDisabled) {\n this.init = { ...this.init, readonly: true };\n }\n }\n\n public ngAfterViewInit() {\n if (isPlatformBrowser(this.platformId)) {\n this.id = this.id || uuid('tiny-angular');\n this.inline = this.inline !== undefined ? this.inline !== false : !!(this.init?.inline);\n this.createElement();\n if (getTinymce() !== null) {\n this.initialise();\n } else if (this._element && this._element.ownerDocument) {\n ScriptLoader.load(\n this._element.ownerDocument,\n this.getScriptSrc(),\n this.initialise.bind(this)\n );\n }\n }\n }\n\n public ngOnDestroy() {\n if (getTinymce() !== null) {\n getTinymce().remove(this._editor);\n }\n }\n\n public createElement() {\n const tagName = typeof this.tagName === 'string' ? this.tagName : 'div';\n this._element = document.createElement(this.inline ? tagName : 'textarea');\n if (this._element) {\n this._element.id = this.id;\n if (isTextarea(this._element)) {\n this._element.style.visibility = 'hidden';\n }\n this._elementRef.nativeElement.appendChild(this._element);\n }\n }\n\n public initialise() {\n const finalInit = {\n ...this.init,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins(this.init && this.init.plugins, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: any) => {\n this._editor = editor;\n editor.on('init', (_e: unknown) => {\n this.initEditor(editor);\n });\n bindHandlers(this, editor);\n\n if (this.init && typeof this.init.setup === 'function') {\n this.init.setup(editor);\n }\n }\n };\n\n if (isTextarea(this._element)) {\n this._element.style.visibility = '';\n }\n\n this.ngZone.runOutsideAngular(() => {\n getTinymce().init(finalInit);\n });\n }\n\n private getScriptSrc() {\n return isNullOrUndefined(this.tinymceScriptSrc) ?\n `https://cdn.tiny.cloud/1/${this.apiKey}/tinymce/${this.cloudChannel}/tinymce.min.js` :\n this.tinymceScriptSrc;\n }\n\n private initEditor(editor: any) {\n editor.on('blur', () => this.ngZone.run(() => this.onTouchedCallback()));\n editor.on(this.modelEvents, () => this.ngZone.run(() => this.emitOnChange(editor)));\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor);\n }\n });\n }\n }\n\n private emitOnChange(editor: any) {\n if (this.onChangeCallback) {\n this.onChangeCallback(editor.getContent({ format: this.outputFormat }));\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { EditorComponent } from './editor.component';\n\n@NgModule({\n imports: [ CommonModule, FormsModule ],\n declarations: [ EditorComponent ],\n exports: [ EditorComponent ]\n})\nexport class EditorModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {Events as ɵa} from './editor/Events';"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tinymce/tinymce-angular",
3
3
  "description": "Official TinyMCE Angular Component",
4
- "version": "4.2.1",
4
+ "version": "4.2.2",
5
5
  "repository": "https://github.com/tinymce/tinymce-angular.git",
6
6
  "author": "Tiny Technologies",
7
7
  "license": "Apache-2.0",
@@ -1 +1 @@
1
- {"__symbolic":"module","version":4,"metadata":{"EditorModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":6,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":7,"character":13},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":7,"character":27}],"declarations":[{"__symbolic":"reference","name":"EditorComponent"}],"exports":[{"__symbolic":"reference","name":"EditorComponent"}]}]}],"members":{}},"EditorComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":17,"character":1},"arguments":[{"selector":"editor","template":"<ng-template></ng-template>","styles":[":host { display: block; }"],"providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":12,"character":11},"useExisting":{"__symbolic":"reference","name":"EditorComponent"},"multi":true}]}]}],"members":{"cloudChannel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"apiKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"initialValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"outputFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"inline":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"tagName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"plugins":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"toolbar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":3}}]}],"modelEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"allowedEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"ignoreEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":68,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":68,"character":12}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":69,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":69,"character":17},"arguments":[{"__symbolic":"reference","name":"TINYMCE_SCRIPT_SRC"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":66,"character":16},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":67,"character":12},{"__symbolic":"reference","name":"Object"},{"__symbolic":"reference","name":"string"}]}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"createElement":[{"__symbolic":"method"}],"initialise":[{"__symbolic":"method"}],"getScriptSrc":[{"__symbolic":"method"}],"initEditor":[{"__symbolic":"method"}]}},"TINYMCE_SCRIPT_SRC":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":9,"character":38},"arguments":["TINYMCE_SCRIPT_SRC"]},"ɵa":{"__symbolic":"class","members":{"onBeforePaste":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":3}}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":9,"character":3}}]}],"onClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"onContextMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3}}]}],"onCopy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3}}]}],"onCut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"onDblclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"onDrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"onDragDrop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":16,"character":3}}]}],"onDragEnd":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":17,"character":3}}]}],"onDragGesture":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":18,"character":3}}]}],"onDragOver":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":3}}]}],"onDrop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":20,"character":3}}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"onFocusIn":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"onFocusOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"onKeyDown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"onKeyPress":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"onKeyUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"onMouseDown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"onMouseEnter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"onMouseLeave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"onMouseMove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":30,"character":3}}]}],"onMouseOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"onMouseOver":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":32,"character":3}}]}],"onMouseUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":33,"character":3}}]}],"onPaste":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"onSelectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"onActivate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"onAddUndo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":37,"character":3}}]}],"onBeforeAddUndo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"onBeforeExecCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":39,"character":3}}]}],"onBeforeGetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":3}}]}],"onBeforeRenderUI":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":41,"character":3}}]}],"onBeforeSetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":42,"character":3}}]}],"onChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":43,"character":3}}]}],"onClearUndos":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":3}}]}],"onDeactivate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3}}]}],"onDirty":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":46,"character":3}}]}],"onExecCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":47,"character":3}}]}],"onGetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":48,"character":3}}]}],"onHide":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":49,"character":3}}]}],"onInit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":50,"character":3}}]}],"onInitNgModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":51,"character":3}}]}],"onLoadContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"onNodeChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":53,"character":3}}]}],"onPostProcess":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3}}]}],"onPostRender":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3}}]}],"onPreInit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":56,"character":3}}]}],"onPreProcess":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"onProgressState":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":58,"character":3}}]}],"onRedo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":3}}]}],"onRemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":60,"character":3}}]}],"onReset":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":61,"character":3}}]}],"onSaveContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"onSetAttrib":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":63,"character":3}}]}],"onObjectResizeStart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":64,"character":3}}]}],"onObjectResized":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"onObjectSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":66,"character":3}}]}],"onSetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"onShow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":68,"character":3}}]}],"onSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":69,"character":3}}]}],"onUndo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":3}}]}],"onVisualAid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":3}}]}]}}},"origins":{"EditorModule":"./editor/editor.module","EditorComponent":"./editor/editor.component","TINYMCE_SCRIPT_SRC":"./editor/editor.component","ɵa":"./editor/Events"},"importAs":"@tinymce/tinymce-angular"}
1
+ {"__symbolic":"module","version":4,"metadata":{"EditorModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":6,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":7,"character":13},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":7,"character":27}],"declarations":[{"__symbolic":"reference","name":"EditorComponent"}],"exports":[{"__symbolic":"reference","name":"EditorComponent"}]}]}],"members":{}},"EditorComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"ɵa"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":17,"character":1},"arguments":[{"selector":"editor","template":"<ng-template></ng-template>","styles":[":host { display: block; }"],"providers":[{"provide":{"__symbolic":"reference","module":"@angular/forms","name":"NG_VALUE_ACCESSOR","line":12,"character":11},"useExisting":{"__symbolic":"reference","name":"EditorComponent"},"multi":true}]}]}],"members":{"cloudChannel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"apiKey":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"init":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":28,"character":3}}]}],"initialValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":29,"character":3}}]}],"outputFormat":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":30,"character":3}}]}],"inline":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"tagName":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":32,"character":3}}]}],"plugins":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":33,"character":3}}]}],"toolbar":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":3}}]}],"modelEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":35,"character":3}}]}],"allowedEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":36,"character":3}}]}],"ignoreEvents":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":37,"character":3}}]}],"disabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":68,"character":5},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":68,"character":12}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":69,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":69,"character":17},"arguments":[{"__symbolic":"reference","name":"TINYMCE_SCRIPT_SRC"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":66,"character":16},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":67,"character":12},{"__symbolic":"reference","name":"Object"},{"__symbolic":"reference","name":"string"}]}],"writeValue":[{"__symbolic":"method"}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"createElement":[{"__symbolic":"method"}],"initialise":[{"__symbolic":"method"}],"getScriptSrc":[{"__symbolic":"method"}],"initEditor":[{"__symbolic":"method"}],"emitOnChange":[{"__symbolic":"method"}]}},"TINYMCE_SCRIPT_SRC":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":9,"character":38},"arguments":["TINYMCE_SCRIPT_SRC"]},"ɵa":{"__symbolic":"class","members":{"onBeforePaste":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":8,"character":3}}]}],"onBlur":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":9,"character":3}}]}],"onClick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":10,"character":3}}]}],"onContextMenu":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":11,"character":3}}]}],"onCopy":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":3}}]}],"onCut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":3}}]}],"onDblclick":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"onDrag":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":15,"character":3}}]}],"onDragDrop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":16,"character":3}}]}],"onDragEnd":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":17,"character":3}}]}],"onDragGesture":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":18,"character":3}}]}],"onDragOver":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":19,"character":3}}]}],"onDrop":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":20,"character":3}}]}],"onFocus":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"onFocusIn":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"onFocusOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":23,"character":3}}]}],"onKeyDown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":24,"character":3}}]}],"onKeyPress":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":25,"character":3}}]}],"onKeyUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":26,"character":3}}]}],"onMouseDown":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":27,"character":3}}]}],"onMouseEnter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":28,"character":3}}]}],"onMouseLeave":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":29,"character":3}}]}],"onMouseMove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":30,"character":3}}]}],"onMouseOut":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":31,"character":3}}]}],"onMouseOver":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":32,"character":3}}]}],"onMouseUp":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":33,"character":3}}]}],"onPaste":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"onSelectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":35,"character":3}}]}],"onActivate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"onAddUndo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":37,"character":3}}]}],"onBeforeAddUndo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"onBeforeExecCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":39,"character":3}}]}],"onBeforeGetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":40,"character":3}}]}],"onBeforeRenderUI":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":41,"character":3}}]}],"onBeforeSetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":42,"character":3}}]}],"onChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":43,"character":3}}]}],"onClearUndos":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":44,"character":3}}]}],"onDeactivate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":45,"character":3}}]}],"onDirty":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":46,"character":3}}]}],"onExecCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":47,"character":3}}]}],"onGetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":48,"character":3}}]}],"onHide":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":49,"character":3}}]}],"onInit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":50,"character":3}}]}],"onInitNgModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":51,"character":3}}]}],"onLoadContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":52,"character":3}}]}],"onNodeChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":53,"character":3}}]}],"onPostProcess":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":54,"character":3}}]}],"onPostRender":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":55,"character":3}}]}],"onPreInit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":56,"character":3}}]}],"onPreProcess":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":57,"character":3}}]}],"onProgressState":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":58,"character":3}}]}],"onRedo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":59,"character":3}}]}],"onRemove":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":60,"character":3}}]}],"onReset":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":61,"character":3}}]}],"onSaveContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":62,"character":3}}]}],"onSetAttrib":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":63,"character":3}}]}],"onObjectResizeStart":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":64,"character":3}}]}],"onObjectResized":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":65,"character":3}}]}],"onObjectSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":66,"character":3}}]}],"onSetContent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":67,"character":3}}]}],"onShow":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":68,"character":3}}]}],"onSubmit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":69,"character":3}}]}],"onUndo":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":70,"character":3}}]}],"onVisualAid":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":71,"character":3}}]}]}}},"origins":{"EditorModule":"./editor/editor.module","EditorComponent":"./editor/editor.component","TINYMCE_SCRIPT_SRC":"./editor/editor.component","ɵa":"./editor/Events"},"importAs":"@tinymce/tinymce-angular"}