@tinymce/tinymce-angular 6.0.0 → 6.0.1
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.
|
@@ -59,7 +59,12 @@ export class EditorComponent extends Events {
|
|
|
59
59
|
set disabled(val) {
|
|
60
60
|
this._disabled = val;
|
|
61
61
|
if (this._editor && this._editor.initialized) {
|
|
62
|
-
this._editor.
|
|
62
|
+
if (typeof this._editor.mode?.set === 'function') {
|
|
63
|
+
this._editor.mode.set(val ? 'readonly' : 'design');
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this._editor.setMode(val ? 'readonly' : 'design');
|
|
67
|
+
}
|
|
63
68
|
}
|
|
64
69
|
}
|
|
65
70
|
get disabled() {
|
|
@@ -200,4 +205,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.2", ngImpor
|
|
|
200
205
|
}], disabled: [{
|
|
201
206
|
type: Input
|
|
202
207
|
}] } });
|
|
203
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RpbnltY2UtYW5ndWxhci1jb21wb25lbnQvc3JjL21haW4vdHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0RBQStEO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBaUIsU0FBUyxFQUFjLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixXQUFXLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNILE9BQU8sRUFBWSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUtyRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBUyxvQkFBb0IsQ0FBQyxDQUFDO0FBRW5GLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztJQUM5QyxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFRRixNQUFNLE9B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QixLQUFLO2dCQUNVLE1BQU07c0JBQXJCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxhQUFhO3NCQUE1QixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBRUssUUFBUTtzQkFEbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uby1wYXJhbWV0ZXItcHJvcGVydGllcyAqL1xuaW1wb3J0IHsgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBmb3J3YXJkUmVmLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgUExBVEZPUk1fSUQsIEluamVjdGlvblRva2VuLCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgZ2V0VGlueW1jZSB9IGZyb20gJy4uL1RpbnlNQ0UnO1xuaW1wb3J0IHsgbGlzdGVuVGlueU1DRUV2ZW50LCBiaW5kSGFuZGxlcnMsIGlzVGV4dGFyZWEsIG1lcmdlUGx1Z2lucywgdXVpZCwgbm9vcCwgaXNOdWxsT3JVbmRlZmluZWQgfSBmcm9tICcuLi91dGlscy9VdGlscyc7XG5pbXBvcnQgeyBFdmVudE9iaiwgRXZlbnRzIH0gZnJvbSAnLi9FdmVudHMnO1xuaW1wb3J0IHsgU2NyaXB0TG9hZGVyIH0gZnJvbSAnLi4vdXRpbHMvU2NyaXB0TG9hZGVyJztcbmltcG9ydCB7IEVkaXRvciBhcyBUaW55TUNFRWRpdG9yLCBUaW55TUNFIH0gZnJvbSAndGlueW1jZSc7XG5cbnR5cGUgRWRpdG9yT3B0aW9ucyA9IFBhcmFtZXRlcnM8VGlueU1DRVsnaW5pdCddPlswXTtcblxuZXhwb3J0IGNvbnN0IFRJTllNQ0VfU0NSSVBUX1NSQyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxzdHJpbmc+KCdUSU5ZTUNFX1NDUklQVF9TUkMnKTtcblxuY29uc3QgRURJVE9SX0NPTVBPTkVOVF9WQUxVRV9BQ0NFU1NPUiA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEVkaXRvckNvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlXG59O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlZGl0b3InLFxuICB0ZW1wbGF0ZTogJzxuZy10ZW1wbGF0ZT48L25nLXRlbXBsYXRlPicsXG4gIHN0eWxlczogWyAnOmhvc3QgeyBkaXNwbGF5OiBibG9jazsgfScgXSxcbiAgcHJvdmlkZXJzOiBbIEVESVRPUl9DT01QT05FTlRfVkFMVUVfQUNDRVNTT1IgXVxufSlcbmV4cG9ydCBjbGFzcyBFZGl0b3JDb21wb25lbnQgZXh0ZW5kcyBFdmVudHMgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBDb250cm9sVmFsdWVBY2Nlc3NvciwgT25EZXN0cm95IHtcblxuICBASW5wdXQoKSBwdWJsaWMgY2xvdWRDaGFubmVsID0gJzYnO1xuICBASW5wdXQoKSBwdWJsaWMgYXBpS2V5ID0gJ25vLWFwaS1rZXknO1xuICBASW5wdXQoKSBwdWJsaWMgaW5pdDogRWRpdG9yT3B0aW9ucyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIGlkID0gJyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0aWFsVmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIG91dHB1dEZvcm1hdDogJ2h0bWwnIHwgJ3RleHQnIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaW5saW5lOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgdGFnTmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgcGx1Z2luczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgdG9vbGJhcjogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBtb2RlbEV2ZW50cyA9ICdjaGFuZ2UgaW5wdXQgdW5kbyByZWRvJztcbiAgQElucHV0KCkgcHVibGljIGFsbG93ZWRFdmVudHM6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaWdub3JlRXZlbnRzOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KClcbiAgcHVibGljIHNldCBkaXNhYmxlZCh2YWwpIHtcbiAgICB0aGlzLl9kaXNhYmxlZCA9IHZhbDtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldE1vZGUodmFsID8gJ3JlYWRvbmx5JyA6ICdkZXNpZ24nKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZWRpdG9yKCkge1xuICAgIHJldHVybiB0aGlzLl9lZGl0b3I7XG4gIH1cblxuICBwdWJsaWMgbmdab25lOiBOZ1pvbmU7XG5cbiAgcHJpdmF0ZSBfZWxlbWVudFJlZjogRWxlbWVudFJlZjtcbiAgcHJpdmF0ZSBfZWxlbWVudDogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIF9lZGl0b3I6IFRpbnlNQ0VFZGl0b3IgfCB1bmRlZmluZWQ7XG5cbiAgcHJpdmF0ZSBvblRvdWNoZWRDYWxsYmFjayA9IG5vb3A7XG4gIHByaXZhdGUgb25DaGFuZ2VDYWxsYmFjazogYW55O1xuXG4gIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIG5nWm9uZTogTmdab25lLFxuICAgIEBJbmplY3QoUExBVEZPUk1fSUQpIHByaXZhdGUgcGxhdGZvcm1JZDogT2JqZWN0LFxuICAgIEBPcHRpb25hbCgpIEBJbmplY3QoVElOWU1DRV9TQ1JJUFRfU1JDKSBwcml2YXRlIHRpbnltY2VTY3JpcHRTcmM/OiBzdHJpbmdcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLl9lbGVtZW50UmVmID0gZWxlbWVudFJlZjtcbiAgICB0aGlzLm5nWm9uZSA9IG5nWm9uZTtcbiAgfVxuXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbHVlOiBzdHJpbmcgfCBudWxsKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX2VkaXRvciAmJiB0aGlzLl9lZGl0b3IuaW5pdGlhbGl6ZWQpIHtcbiAgICAgIHRoaXMuX2VkaXRvci5zZXRDb250ZW50KGlzTnVsbE9yVW5kZWZpbmVkKHZhbHVlKSA/ICcnIDogdmFsdWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmluaXRpYWxWYWx1ZSA9IHZhbHVlID09PSBudWxsID8gdW5kZWZpbmVkIDogdmFsdWU7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IChfOiBhbnkpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2sgPSBmbjtcbiAgfVxuXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWRDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xuICAgICAgdGhpcy5pZCA9IHRoaXMuaWQgfHwgdXVpZCgndGlueS1hbmd1bGFyJyk7XG4gICAgICB0aGlzLmlubGluZSA9IHRoaXMuaW5saW5lICE9PSB1bmRlZmluZWQgPyB0aGlzLmlubGluZSAhPT0gZmFsc2UgOiAhISh0aGlzLmluaXQ/LmlubGluZSk7XG4gICAgICB0aGlzLmNyZWF0ZUVsZW1lbnQoKTtcbiAgICAgIGlmIChnZXRUaW55bWNlKCkgIT09IG51bGwpIHtcbiAgICAgICAgdGhpcy5pbml0aWFsaXNlKCk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuX2VsZW1lbnQgJiYgdGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50KSB7XG4gICAgICAgIC8vIENhcmV0YWtlciBub3RlOiB0aGUgY29tcG9uZW50IG1pZ2h0IGJlIGRlc3Ryb3llZCBiZWZvcmUgdGhlIHNjcmlwdCBpcyBsb2FkZWQgYW5kIGl0cyBjb2RlIGlzIGV4ZWN1dGVkLlxuICAgICAgICAvLyBUaGlzIHdpbGwgbGVhZCB0byBydW50aW1lIGV4Y2VwdGlvbnMgaWYgYGluaXRpYWxpc2VgIHdpbGwgYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBoYXMgYmVlbiBkZXN0cm95ZWQuXG4gICAgICAgIFNjcmlwdExvYWRlci5sb2FkKHRoaXMuX2VsZW1lbnQub3duZXJEb2N1bWVudCwgdGhpcy5nZXRTY3JpcHRTcmMoKSlcbiAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgLnN1YnNjcmliZSh0aGlzLmluaXRpYWxpc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcblxuICAgIGlmIChnZXRUaW55bWNlKCkgIT09IG51bGwpIHtcbiAgICAgIGdldFRpbnltY2UoKS5yZW1vdmUodGhpcy5fZWRpdG9yKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgY3JlYXRlRWxlbWVudCgpIHtcbiAgICBjb25zdCB0YWdOYW1lID0gdHlwZW9mIHRoaXMudGFnTmFtZSA9PT0gJ3N0cmluZycgPyB0aGlzLnRhZ05hbWUgOiAnZGl2JztcbiAgICB0aGlzLl9lbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCh0aGlzLmlubGluZSA/IHRhZ05hbWUgOiAndGV4dGFyZWEnKTtcbiAgICBpZiAodGhpcy5fZWxlbWVudCkge1xuICAgICAgaWYgKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKHRoaXMuaWQpKSB7XG4gICAgICAgIC8qIGVzbGludCBuby1jb25zb2xlOiBbXCJlcnJvclwiLCB7IGFsbG93OiBbXCJ3YXJuXCJdIH1dICovXG4gICAgICAgIGNvbnNvbGUud2FybihgVGlueU1DRS1Bbmd1bGFyOiBhbiBlbGVtZW50IHdpdGggaWQgWyR7dGhpcy5pZH1dIGFscmVhZHkgZXhpc3RzLiBFZGl0b3JzIHdpdGggZHVwbGljYXRlIElkIHdpbGwgbm90IGJlIGFibGUgdG8gbW91bnRgKTtcbiAgICAgIH1cbiAgICAgIHRoaXMuX2VsZW1lbnQuaWQgPSB0aGlzLmlkO1xuICAgICAgaWYgKGlzVGV4dGFyZWEodGhpcy5fZWxlbWVudCkpIHtcbiAgICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gICAgICB9XG4gICAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fZWxlbWVudCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGluaXRpYWxpc2UgPSAoKTogdm9pZCA9PiB7XG4gICAgY29uc3QgZmluYWxJbml0OiBFZGl0b3JPcHRpb25zID0ge1xuICAgICAgLi4udGhpcy5pbml0LFxuICAgICAgc2VsZWN0b3I6IHVuZGVmaW5lZCxcbiAgICAgIHRhcmdldDogdGhpcy5fZWxlbWVudCxcbiAgICAgIGlubGluZTogdGhpcy5pbmxpbmUsXG4gICAgICByZWFkb25seTogdGhpcy5kaXNhYmxlZCxcbiAgICAgIHBsdWdpbnM6IG1lcmdlUGx1Z2lucygodGhpcy5pbml0ICYmIHRoaXMuaW5pdC5wbHVnaW5zKSBhcyBzdHJpbmcsIHRoaXMucGx1Z2lucyksXG4gICAgICB0b29sYmFyOiB0aGlzLnRvb2xiYXIgfHwgKHRoaXMuaW5pdCAmJiB0aGlzLmluaXQudG9vbGJhciksXG4gICAgICBzZXR1cDogKGVkaXRvcjogVGlueU1DRUVkaXRvcikgPT4ge1xuICAgICAgICB0aGlzLl9lZGl0b3IgPSBlZGl0b3I7XG5cbiAgICAgICAgbGlzdGVuVGlueU1DRUV2ZW50KGVkaXRvciwgJ2luaXQnLCB0aGlzLmRlc3Ryb3kkKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuaW5pdEVkaXRvcihlZGl0b3IpO1xuICAgICAgICB9KTtcblxuICAgICAgICBiaW5kSGFuZGxlcnModGhpcywgZWRpdG9yLCB0aGlzLmRlc3Ryb3kkKTtcblxuICAgICAgICBpZiAodGhpcy5pbml0ICYmIHR5cGVvZiB0aGlzLmluaXQuc2V0dXAgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICB0aGlzLmluaXQuc2V0dXAoZWRpdG9yKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAoaXNUZXh0YXJlYSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgdGhpcy5fZWxlbWVudC5zdHlsZS52aXNpYmlsaXR5ID0gJyc7XG4gICAgfVxuXG4gICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgZ2V0VGlueW1jZSgpLmluaXQoZmluYWxJbml0KTtcbiAgICB9KTtcbiAgfTtcblxuICBwcml2YXRlIGdldFNjcmlwdFNyYygpIHtcbiAgICByZXR1cm4gaXNOdWxsT3JVbmRlZmluZWQodGhpcy50aW55bWNlU2NyaXB0U3JjKSA/XG4gICAgICBgaHR0cHM6Ly9jZG4udGlueS5jbG91ZC8xLyR7dGhpcy5hcGlLZXl9L3RpbnltY2UvJHt0aGlzLmNsb3VkQ2hhbm5lbH0vdGlueW1jZS5taW4uanNgIDpcbiAgICAgIHRoaXMudGlueW1jZVNjcmlwdFNyYztcbiAgfVxuXG4gIHByaXZhdGUgaW5pdEVkaXRvcihlZGl0b3I6IFRpbnlNQ0VFZGl0b3IpIHtcbiAgICBsaXN0ZW5UaW55TUNFRXZlbnQoZWRpdG9yLCAnYmx1cicsIHRoaXMuZGVzdHJveSQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5vblRvdWNoZWRDYWxsYmFjaygpKTtcbiAgICB9KTtcblxuICAgIGxpc3RlblRpbnlNQ0VFdmVudChlZGl0b3IsIHRoaXMubW9kZWxFdmVudHMsIHRoaXMuZGVzdHJveSQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5lbWl0T25DaGFuZ2UoZWRpdG9yKSk7XG4gICAgfSk7XG5cbiAgICBpZiAodHlwZW9mIHRoaXMuaW5pdGlhbFZhbHVlID09PSAnc3RyaW5nJykge1xuICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IHtcbiAgICAgICAgZWRpdG9yLnNldENvbnRlbnQodGhpcy5pbml0aWFsVmFsdWUgYXMgc3RyaW5nKTtcbiAgICAgICAgaWYgKGVkaXRvci5nZXRDb250ZW50KCkgIT09IHRoaXMuaW5pdGlhbFZhbHVlKSB7XG4gICAgICAgICAgdGhpcy5lbWl0T25DaGFuZ2UoZWRpdG9yKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5vbkluaXROZ01vZGVsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICB0aGlzLm9uSW5pdE5nTW9kZWwuZW1pdChlZGl0b3IgYXMgdW5rbm93biBhcyBFdmVudE9iajxhbnk+KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBlbWl0T25DaGFuZ2UoZWRpdG9yOiBUaW55TUNFRWRpdG9yKSB7XG4gICAgaWYgKHRoaXMub25DaGFuZ2VDYWxsYmFjaykge1xuICAgICAgdGhpcy5vbkNoYW5nZUNhbGxiYWNrKGVkaXRvci5nZXRDb250ZW50KHsgZm9ybWF0OiB0aGlzLm91dHB1dEZvcm1hdCB9KSk7XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWRpdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3RpbnltY2UtYW5ndWxhci1jb21wb25lbnQvc3JjL21haW4vdHMvZWRpdG9yL2VkaXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0RBQStEO0FBQy9ELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBaUIsU0FBUyxFQUFjLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFxQixXQUFXLEVBQUUsY0FBYyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxSixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN4QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNILE9BQU8sRUFBWSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHVCQUF1QixDQUFDOztBQUtyRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBUyxvQkFBb0IsQ0FBQyxDQUFDO0FBRW5GLE1BQU0sK0JBQStCLEdBQUc7SUFDdEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztJQUM5QyxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFRRixNQUFNLE9B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QU07MkJBQUMsV0FBVzs7MEJBQ2xCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsa0JBQWtCOzRDQWpEeEIsWUFBWTtzQkFBM0IsS0FBSztnQkFDVSxNQUFNO3NCQUFyQixLQUFLO2dCQUNVLElBQUk7c0JBQW5CLEtBQUs7Z0JBQ1UsRUFBRTtzQkFBakIsS0FBSztnQkFDVSxZQUFZO3NCQUEzQixLQUFLO2dCQUNVLFlBQVk7c0JBQTNCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFDVSxPQUFPO3NCQUF0QixLQUFLO2dCQUNVLE9BQU87c0JBQXRCLEtBQUs7Z0JBQ1UsT0FBTztzQkFBdEIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUNVLGFBQWE7c0JBQTVCLEtBQUs7Z0JBQ1UsWUFBWTtzQkFBM0IsS0FBSztnQkFFSyxRQUFRO3NCQURsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXBhcmFtZXRlci1wcm9wZXJ0aWVzICovXG5pbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIGZvcndhcmRSZWYsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBQTEFURk9STV9JRCwgSW5qZWN0aW9uVG9rZW4sIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBnZXRUaW55bWNlIH0gZnJvbSAnLi4vVGlueU1DRSc7XG5pbXBvcnQgeyBsaXN0ZW5UaW55TUNFRXZlbnQsIGJpbmRIYW5kbGVycywgaXNUZXh0YXJlYSwgbWVyZ2VQbHVnaW5zLCB1dWlkLCBub29wLCBpc051bGxPclVuZGVmaW5lZCB9IGZyb20gJy4uL3V0aWxzL1V0aWxzJztcbmltcG9ydCB7IEV2ZW50T2JqLCBFdmVudHMgfSBmcm9tICcuL0V2ZW50cyc7XG5pbXBvcnQgeyBTY3JpcHRMb2FkZXIgfSBmcm9tICcuLi91dGlscy9TY3JpcHRMb2FkZXInO1xuaW1wb3J0IHsgRWRpdG9yIGFzIFRpbnlNQ0VFZGl0b3IsIFRpbnlNQ0UgfSBmcm9tICd0aW55bWNlJztcblxudHlwZSBFZGl0b3JPcHRpb25zID0gUGFyYW1ldGVyczxUaW55TUNFWydpbml0J10+WzBdO1xuXG5leHBvcnQgY29uc3QgVElOWU1DRV9TQ1JJUFRfU1JDID0gbmV3IEluamVjdGlvblRva2VuPHN0cmluZz4oJ1RJTllNQ0VfU0NSSVBUX1NSQycpO1xuXG5jb25zdCBFRElUT1JfQ09NUE9ORU5UX1ZBTFVFX0FDQ0VTU09SID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gRWRpdG9yQ29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWVcbn07XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2VkaXRvcicsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlPjwvbmctdGVtcGxhdGU+JyxcbiAgc3R5bGVzOiBbICc6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyB9JyBdLFxuICBwcm92aWRlcnM6IFsgRURJVE9SX0NPTVBPTkVOVF9WQUxVRV9BQ0NFU1NPUiBdXG59KVxuZXhwb3J0IGNsYXNzIEVkaXRvckNvbXBvbmVudCBleHRlbmRzIEV2ZW50cyBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkRlc3Ryb3kge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjbG91ZENoYW5uZWwgPSAnNic7XG4gIEBJbnB1dCgpIHB1YmxpYyBhcGlLZXkgPSAnbm8tYXBpLWtleSc7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbml0OiBFZGl0b3JPcHRpb25zIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgaWQgPSAnJztcbiAgQElucHV0KCkgcHVibGljIGluaXRpYWxWYWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKSBwdWJsaWMgb3V0cHV0Rm9ybWF0OiAnaHRtbCcgfCAndGV4dCcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpbmxpbmU6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0YWdOYW1lOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBwbHVnaW5zOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyB0b29sYmFyOiBzdHJpbmcgfCBzdHJpbmdbXSB8IHVuZGVmaW5lZDtcbiAgQElucHV0KCkgcHVibGljIG1vZGVsRXZlbnRzID0gJ2NoYW5nZSBpbnB1dCB1bmRvIHJlZG8nO1xuICBASW5wdXQoKSBwdWJsaWMgYWxsb3dlZEV2ZW50czogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIEBJbnB1dCgpIHB1YmxpYyBpZ25vcmVFdmVudHM6IHN0cmluZyB8IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICBASW5wdXQoKVxuICBwdWJsaWMgc2V0IGRpc2FibGVkKHZhbCkge1xuICAgIHRoaXMuX2Rpc2FibGVkID0gdmFsO1xuICAgIGlmICh0aGlzLl9lZGl0b3IgJiYgdGhpcy5fZWRpdG9yLmluaXRpYWxpemVkKSB7XG4gICAgICBpZiAodHlwZW9mIHRoaXMuX2VkaXRvci5tb2RlPy5zZXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgdGhpcy5fZWRpdG9yLm1vZGUuc2V0KHZhbCA/ICdyZWFkb25seScgOiAnZGVzaWduJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLl9lZGl0b3Iuc2V0TW9kZSh2YWwgPyAncmVhZG9ubHknIDogJ2Rlc2lnbicpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBnZXQgZGlzYWJsZWQoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG5cbiAgcHVibGljIGdldCBlZGl0b3IoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2VkaXRvcjtcbiAgfVxuXG4gIHB1YmxpYyBuZ1pvbmU6IE5nWm9uZTtcblxuICBwcml2YXRlIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmO1xuICBwcml2YXRlIF9lbGVtZW50OiBIVE1MRWxlbWVudCB8IHVuZGVmaW5lZDtcbiAgcHJpdmF0ZSBfZGlzYWJsZWQ6IGJvb2xlYW4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgX2VkaXRvcjogVGlueU1DRUVkaXRvciB8IHVuZGVmaW5lZDtcblxuICBwcml2YXRlIG9uVG91Y2hlZENhbGxiYWNrID0gbm9vcDtcbiAgcHJpdmF0ZSBvbkNoYW5nZUNhbGxiYWNrOiBhbnk7XG5cbiAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgbmdab25lOiBOZ1pvbmUsXG4gICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3QsXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChUSU5ZTUNFX1NDUklQVF9TUkMpIHByaXZhdGUgdGlueW1jZVNjcmlwdFNyYz86IHN0cmluZ1xuICApIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuX2VsZW1lbnRSZWYgPSBlbGVtZW50UmVmO1xuICAgIHRoaXMubmdab25lID0gbmdab25lO1xuICB9XG5cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fZWRpdG9yICYmIHRoaXMuX2VkaXRvci5pbml0aWFsaXplZCkge1xuICAgICAgdGhpcy5fZWRpdG9yLnNldENvbnRlbnQoaXNOdWxsT3JVbmRlZmluZWQodmFsdWUpID8gJycgOiB2YWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuaW5pdGlhbFZhbHVlID0gdmFsdWUgPT09IG51bGwgPyB1bmRlZmluZWQgOiB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2VDYWxsYmFjayA9IGZuO1xuICB9XG5cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZENhbGxiYWNrID0gZm47XG4gIH1cblxuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gIH1cblxuICBwdWJsaWMgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSWQpKSB7XG4gICAgICB0aGlzLmlkID0gdGhpcy5pZCB8fCB1dWlkKCd0aW55LWFuZ3VsYXInKTtcbiAgICAgIHRoaXMuaW5saW5lID0gdGhpcy5pbmxpbmUgIT09IHVuZGVmaW5lZCA/IHRoaXMuaW5saW5lICE9PSBmYWxzZSA6ICEhKHRoaXMuaW5pdD8uaW5saW5lKTtcbiAgICAgIHRoaXMuY3JlYXRlRWxlbWVudCgpO1xuICAgICAgaWYgKGdldFRpbnltY2UoKSAhPT0gbnVsbCkge1xuICAgICAgICB0aGlzLmluaXRpYWxpc2UoKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5fZWxlbWVudCAmJiB0aGlzLl9lbGVtZW50Lm93bmVyRG9jdW1lbnQpIHtcbiAgICAgICAgLy8gQ2FyZXRha2VyIG5vdGU6IHRoZSBjb21wb25lbnQgbWlnaHQgYmUgZGVzdHJveWVkIGJlZm9yZSB0aGUgc2NyaXB0IGlzIGxvYWRlZCBhbmQgaXRzIGNvZGUgaXMgZXhlY3V0ZWQuXG4gICAgICAgIC8vIFRoaXMgd2lsbCBsZWFkIHRvIHJ1bnRpbWUgZXhjZXB0aW9ucyBpZiBgaW5pdGlhbGlzZWAgd2lsbCBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGhhcyBiZWVuIGRlc3Ryb3llZC5cbiAgICAgICAgU2NyaXB0TG9hZGVyLmxvYWQodGhpcy5fZWxlbWVudC5vd25lckRvY3VtZW50LCB0aGlzLmdldFNjcmlwdFNyYygpKVxuICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSlcbiAgICAgICAgICAuc3Vic2NyaWJlKHRoaXMuaW5pdGlhbGlzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuXG4gICAgaWYgKGdldFRpbnltY2UoKSAhPT0gbnVsbCkge1xuICAgICAgZ2V0VGlueW1jZSgpLnJlbW92ZSh0aGlzLl9lZGl0b3IpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVFbGVtZW50KCkge1xuICAgIGNvbnN0IHRhZ05hbWUgPSB0eXBlb2YgdGhpcy50YWdOYW1lID09PSAnc3RyaW5nJyA/IHRoaXMudGFnTmFtZSA6ICdkaXYnO1xuICAgIHRoaXMuX2VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KHRoaXMuaW5saW5lID8gdGFnTmFtZSA6ICd0ZXh0YXJlYScpO1xuICAgIGlmICh0aGlzLl9lbGVtZW50KSB7XG4gICAgICBpZiAoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQodGhpcy5pZCkpIHtcbiAgICAgICAgLyogZXNsaW50IG5vLWNvbnNvbGU6IFtcImVycm9yXCIsIHsgYWxsb3c6IFtcIndhcm5cIl0gfV0gKi9cbiAgICAgICAgY29uc29sZS53YXJuKGBUaW55TUNFLUFuZ3VsYXI6IGFuIGVsZW1lbnQgd2l0aCBpZCBbJHt0aGlzLmlkfV0gYWxyZWFkeSBleGlzdHMuIEVkaXRvcnMgd2l0aCBkdXBsaWNhdGUgSWQgd2lsbCBub3QgYmUgYWJsZSB0byBtb3VudGApO1xuICAgICAgfVxuICAgICAgdGhpcy5fZWxlbWVudC5pZCA9IHRoaXMuaWQ7XG4gICAgICBpZiAoaXNUZXh0YXJlYSh0aGlzLl9lbGVtZW50KSkge1xuICAgICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnaGlkZGVuJztcbiAgICAgIH1cbiAgICAgIHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZCh0aGlzLl9lbGVtZW50KTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGlzZSA9ICgpOiB2b2lkID0+IHtcbiAgICBjb25zdCBmaW5hbEluaXQ6IEVkaXRvck9wdGlvbnMgPSB7XG4gICAgICAuLi50aGlzLmluaXQsXG4gICAgICBzZWxlY3RvcjogdW5kZWZpbmVkLFxuICAgICAgdGFyZ2V0OiB0aGlzLl9lbGVtZW50LFxuICAgICAgaW5saW5lOiB0aGlzLmlubGluZSxcbiAgICAgIHJlYWRvbmx5OiB0aGlzLmRpc2FibGVkLFxuICAgICAgcGx1Z2luczogbWVyZ2VQbHVnaW5zKCh0aGlzLmluaXQgJiYgdGhpcy5pbml0LnBsdWdpbnMpIGFzIHN0cmluZywgdGhpcy5wbHVnaW5zKSxcbiAgICAgIHRvb2xiYXI6IHRoaXMudG9vbGJhciB8fCAodGhpcy5pbml0ICYmIHRoaXMuaW5pdC50b29sYmFyKSxcbiAgICAgIHNldHVwOiAoZWRpdG9yOiBUaW55TUNFRWRpdG9yKSA9PiB7XG4gICAgICAgIHRoaXMuX2VkaXRvciA9IGVkaXRvcjtcblxuICAgICAgICBsaXN0ZW5UaW55TUNFRXZlbnQoZWRpdG9yLCAnaW5pdCcsIHRoaXMuZGVzdHJveSQpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5pbml0RWRpdG9yKGVkaXRvcik7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGJpbmRIYW5kbGVycyh0aGlzLCBlZGl0b3IsIHRoaXMuZGVzdHJveSQpO1xuXG4gICAgICAgIGlmICh0aGlzLmluaXQgJiYgdHlwZW9mIHRoaXMuaW5pdC5zZXR1cCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgIHRoaXMuaW5pdC5zZXR1cChlZGl0b3IpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmIChpc1RleHRhcmVhKHRoaXMuX2VsZW1lbnQpKSB7XG4gICAgICB0aGlzLl9lbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAnJztcbiAgICB9XG5cbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBnZXRUaW55bWNlKCkuaW5pdChmaW5hbEluaXQpO1xuICAgIH0pO1xuICB9O1xuXG4gIHByaXZhdGUgZ2V0U2NyaXB0U3JjKCkge1xuICAgIHJldHVybiBpc051bGxPclVuZGVmaW5lZCh0aGlzLnRpbnltY2VTY3JpcHRTcmMpID9cbiAgICAgIGBodHRwczovL2Nkbi50aW55LmNsb3VkLzEvJHt0aGlzLmFwaUtleX0vdGlueW1jZS8ke3RoaXMuY2xvdWRDaGFubmVsfS90aW55bWNlLm1pbi5qc2AgOlxuICAgICAgdGhpcy50aW55bWNlU2NyaXB0U3JjO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0RWRpdG9yKGVkaXRvcjogVGlueU1DRUVkaXRvcikge1xuICAgIGxpc3RlblRpbnlNQ0VFdmVudChlZGl0b3IsICdibHVyJywgdGhpcy5kZXN0cm95JCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLm9uVG91Y2hlZENhbGxiYWNrKCkpO1xuICAgIH0pO1xuXG4gICAgbGlzdGVuVGlueU1DRUV2ZW50KGVkaXRvciwgdGhpcy5tb2RlbEV2ZW50cywgdGhpcy5kZXN0cm95JCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB0aGlzLmVtaXRPbkNoYW5nZShlZGl0b3IpKTtcbiAgICB9KTtcblxuICAgIGlmICh0eXBlb2YgdGhpcy5pbml0aWFsVmFsdWUgPT09ICdzdHJpbmcnKSB7XG4gICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgICBlZGl0b3Iuc2V0Q29udGVudCh0aGlzLmluaXRpYWxWYWx1ZSBhcyBzdHJpbmcpO1xuICAgICAgICBpZiAoZWRpdG9yLmdldENvbnRlbnQoKSAhPT0gdGhpcy5pbml0aWFsVmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmVtaXRPbkNoYW5nZShlZGl0b3IpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm9uSW5pdE5nTW9kZWwgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgIHRoaXMub25Jbml0TmdNb2RlbC5lbWl0KGVkaXRvciBhcyB1bmtub3duIGFzIEV2ZW50T2JqPGFueT4pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGVtaXRPbkNoYW5nZShlZGl0b3I6IFRpbnlNQ0VFZGl0b3IpIHtcbiAgICBpZiAodGhpcy5vbkNoYW5nZUNhbGxiYWNrKSB7XG4gICAgICB0aGlzLm9uQ2hhbmdlQ2FsbGJhY2soZWRpdG9yLmdldENvbnRlbnQoeyBmb3JtYXQ6IHRoaXMub3V0cHV0Rm9ybWF0IH0pKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -422,9 +422,15 @@ class EditorComponent extends Events {
|
|
|
422
422
|
this.ngZone = ngZone;
|
|
423
423
|
}
|
|
424
424
|
set disabled(val) {
|
|
425
|
+
var _a;
|
|
425
426
|
this._disabled = val;
|
|
426
427
|
if (this._editor && this._editor.initialized) {
|
|
427
|
-
this._editor.
|
|
428
|
+
if (typeof ((_a = this._editor.mode) === null || _a === void 0 ? void 0 : _a.set) === 'function') {
|
|
429
|
+
this._editor.mode.set(val ? 'readonly' : 'design');
|
|
430
|
+
}
|
|
431
|
+
else {
|
|
432
|
+
this._editor.setMode(val ? 'readonly' : 'design');
|
|
433
|
+
}
|
|
428
434
|
}
|
|
429
435
|
}
|
|
430
436
|
get disabled() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tinymce-tinymce-angular.mjs","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, Directive } from '@angular/core';\nimport { Editor as TinyMCEEditor } from 'tinymce';\n\nexport interface EventObj<T> {\n event: T;\n editor: TinyMCEEditor;\n}\n\n@Directive()\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 onResizeEditor: 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 'onResizeEditor',\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 { fromEvent, Subject } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\n// Caretaker note: `fromEvent` supports passing JQuery-style event targets, the editor has `on` and `off` methods which\n// will be invoked upon subscription and teardown.\nconst listenTinyMCEEvent = (\n editor: any,\n eventName: string,\n destroy$: Subject<void>\n) => fromEvent(editor as HasEventTargetAddRemove<unknown> | ArrayLike<HasEventTargetAddRemove<unknown>>, eventName).pipe(takeUntil(destroy$));\n\nconst bindHandlers = (ctx: EditorComponent, editor: any, destroy$: Subject<void>): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n\n listenTinyMCEEvent(editor, eventName.substring(2), destroy$).subscribe((event) => {\n // Caretaker note: `ngZone.run()` runs change detection since it notifies the forked Angular zone that it's\n // being re-entered. We don't want to run `ApplicationRef.tick()` if anyone listens to the specific event\n // within the template. E.g. if the `onSelectionChange` is not listened within the template like:\n // `<editor (onSelectionChange)=\"...\"></editor>`\n // then its `observers` array will be empty, and we won't run \"dead\" change detection.\n if (eventEmitter.observers.length > 0) {\n ctx.ngZone.run(() => eventEmitter.emit({ event, editor }));\n }\n });\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 listenTinyMCEEvent,\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 { defer, fromEvent, Observable, OperatorFunction } from 'rxjs';\nimport { mapTo, shareReplay, take } from 'rxjs/operators';\n\nexport interface IStateObj {\n script$: Observable<void> | null;\n}\n\nconst createState = (): IStateObj => ({\n script$: null,\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string) => Observable<void>;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state = createState();\n\n const load = (doc: Document, url: string) => (\n state.script$ ||\n // Caretaker note: the `script$` is a multicast observable since it's piped with `shareReplay`,\n // so if there're multiple editor components simultaneously on the page, they'll subscribe to the internal\n // `ReplaySubject`. The script will be loaded only once, and `ReplaySubject` will cache the result.\n (state.script$ = defer(() => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.src = url;\n doc.head.appendChild(scriptTag);\n return fromEvent(scriptTag, 'load').pipe(take(1), mapTo(undefined) as OperatorFunction<Event, undefined>);\n }).pipe(shareReplay({ bufferSize: 1, refCount: true })))\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 { 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 { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { getTinymce } from '../TinyMCE';\nimport { listenTinyMCEEvent, bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { EventObj, Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\nimport { Editor as TinyMCEEditor, TinyMCE } from 'tinymce';\n\ntype EditorOptions = Parameters<TinyMCE['init']>[0];\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 = '6';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: EditorOptions | 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 @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: HTMLElement | undefined;\n private _disabled: boolean | undefined;\n private _editor: TinyMCEEditor | undefined;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n private destroy$ = new Subject<void>();\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 }\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): void {\n this.disabled = isDisabled;\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 // Caretaker note: the component might be destroyed before the script is loaded and its code is executed.\n // This will lead to runtime exceptions if `initialise` will be called when the component has been destroyed.\n ScriptLoader.load(this._element.ownerDocument, this.getScriptSrc())\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.initialise);\n }\n }\n }\n\n public ngOnDestroy() {\n this.destroy$.next();\n\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 if (document.getElementById(this.id)) {\n /* eslint no-console: [\"error\", { allow: [\"warn\"] }] */\n console.warn(`TinyMCE-Angular: an element with id [${this.id}] already exists. Editors with duplicate Id will not be able to mount`);\n }\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 = (): void => {\n const finalInit: EditorOptions = {\n ...this.init,\n selector: undefined,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins((this.init && this.init.plugins) as string, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: TinyMCEEditor) => {\n this._editor = editor;\n\n listenTinyMCEEvent(editor, 'init', this.destroy$).subscribe(() => {\n this.initEditor(editor);\n });\n\n bindHandlers(this, editor, this.destroy$);\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: TinyMCEEditor) {\n listenTinyMCEEvent(editor, 'blur', this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.onTouchedCallback());\n });\n\n listenTinyMCEEvent(editor, this.modelEvents, this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.emitOnChange(editor));\n });\n\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue as string);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor as unknown as EventObj<any>);\n }\n });\n }\n }\n\n private emitOnChange(editor: TinyMCEEditor) {\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"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tinymce-tinymce-angular.mjs","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, Directive } from '@angular/core';\nimport { Editor as TinyMCEEditor } from 'tinymce';\n\nexport interface EventObj<T> {\n event: T;\n editor: TinyMCEEditor;\n}\n\n@Directive()\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 onResizeEditor: 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 'onResizeEditor',\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 { fromEvent, Subject } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\n// Caretaker note: `fromEvent` supports passing JQuery-style event targets, the editor has `on` and `off` methods which\n// will be invoked upon subscription and teardown.\nconst listenTinyMCEEvent = (\n editor: any,\n eventName: string,\n destroy$: Subject<void>\n) => fromEvent(editor as HasEventTargetAddRemove<unknown> | ArrayLike<HasEventTargetAddRemove<unknown>>, eventName).pipe(takeUntil(destroy$));\n\nconst bindHandlers = (ctx: EditorComponent, editor: any, destroy$: Subject<void>): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n\n listenTinyMCEEvent(editor, eventName.substring(2), destroy$).subscribe((event) => {\n // Caretaker note: `ngZone.run()` runs change detection since it notifies the forked Angular zone that it's\n // being re-entered. We don't want to run `ApplicationRef.tick()` if anyone listens to the specific event\n // within the template. E.g. if the `onSelectionChange` is not listened within the template like:\n // `<editor (onSelectionChange)=\"...\"></editor>`\n // then its `observers` array will be empty, and we won't run \"dead\" change detection.\n if (eventEmitter.observers.length > 0) {\n ctx.ngZone.run(() => eventEmitter.emit({ event, editor }));\n }\n });\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 listenTinyMCEEvent,\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 { defer, fromEvent, Observable, OperatorFunction } from 'rxjs';\nimport { mapTo, shareReplay, take } from 'rxjs/operators';\n\nexport interface IStateObj {\n script$: Observable<void> | null;\n}\n\nconst createState = (): IStateObj => ({\n script$: null,\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string) => Observable<void>;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state = createState();\n\n const load = (doc: Document, url: string) => (\n state.script$ ||\n // Caretaker note: the `script$` is a multicast observable since it's piped with `shareReplay`,\n // so if there're multiple editor components simultaneously on the page, they'll subscribe to the internal\n // `ReplaySubject`. The script will be loaded only once, and `ReplaySubject` will cache the result.\n (state.script$ = defer(() => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.src = url;\n doc.head.appendChild(scriptTag);\n return fromEvent(scriptTag, 'load').pipe(take(1), mapTo(undefined) as OperatorFunction<Event, undefined>);\n }).pipe(shareReplay({ bufferSize: 1, refCount: true })))\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 { 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 { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { getTinymce } from '../TinyMCE';\nimport { listenTinyMCEEvent, bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { EventObj, Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\nimport { Editor as TinyMCEEditor, TinyMCE } from 'tinymce';\n\ntype EditorOptions = Parameters<TinyMCE['init']>[0];\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 = '6';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: EditorOptions | 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 @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n if (typeof this._editor.mode?.set === 'function') {\n this._editor.mode.set(val ? 'readonly' : 'design');\n } else {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\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: HTMLElement | undefined;\n private _disabled: boolean | undefined;\n private _editor: TinyMCEEditor | undefined;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n private destroy$ = new Subject<void>();\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 }\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): void {\n this.disabled = isDisabled;\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 // Caretaker note: the component might be destroyed before the script is loaded and its code is executed.\n // This will lead to runtime exceptions if `initialise` will be called when the component has been destroyed.\n ScriptLoader.load(this._element.ownerDocument, this.getScriptSrc())\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.initialise);\n }\n }\n }\n\n public ngOnDestroy() {\n this.destroy$.next();\n\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 if (document.getElementById(this.id)) {\n /* eslint no-console: [\"error\", { allow: [\"warn\"] }] */\n console.warn(`TinyMCE-Angular: an element with id [${this.id}] already exists. Editors with duplicate Id will not be able to mount`);\n }\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 = (): void => {\n const finalInit: EditorOptions = {\n ...this.init,\n selector: undefined,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins((this.init && this.init.plugins) as string, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: TinyMCEEditor) => {\n this._editor = editor;\n\n listenTinyMCEEvent(editor, 'init', this.destroy$).subscribe(() => {\n this.initEditor(editor);\n });\n\n bindHandlers(this, editor, this.destroy$);\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: TinyMCEEditor) {\n listenTinyMCEEvent(editor, 'blur', this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.onTouchedCallback());\n });\n\n listenTinyMCEEvent(editor, this.modelEvents, this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.emitOnChange(editor));\n });\n\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue as string);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor as unknown as EventObj<any>);\n }\n });\n }\n }\n\n private emitOnChange(editor: TinyMCEEditor) {\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"],"names":[],"mappings":"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"}
|
|
@@ -433,7 +433,12 @@ class EditorComponent extends Events {
|
|
|
433
433
|
set disabled(val) {
|
|
434
434
|
this._disabled = val;
|
|
435
435
|
if (this._editor && this._editor.initialized) {
|
|
436
|
-
this._editor.
|
|
436
|
+
if (typeof this._editor.mode?.set === 'function') {
|
|
437
|
+
this._editor.mode.set(val ? 'readonly' : 'design');
|
|
438
|
+
}
|
|
439
|
+
else {
|
|
440
|
+
this._editor.setMode(val ? 'readonly' : 'design');
|
|
441
|
+
}
|
|
437
442
|
}
|
|
438
443
|
}
|
|
439
444
|
get disabled() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tinymce-tinymce-angular.mjs","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, Directive } from '@angular/core';\nimport { Editor as TinyMCEEditor } from 'tinymce';\n\nexport interface EventObj<T> {\n event: T;\n editor: TinyMCEEditor;\n}\n\n@Directive()\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 onResizeEditor: 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 'onResizeEditor',\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 { fromEvent, Subject } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\n// Caretaker note: `fromEvent` supports passing JQuery-style event targets, the editor has `on` and `off` methods which\n// will be invoked upon subscription and teardown.\nconst listenTinyMCEEvent = (\n editor: any,\n eventName: string,\n destroy$: Subject<void>\n) => fromEvent(editor as HasEventTargetAddRemove<unknown> | ArrayLike<HasEventTargetAddRemove<unknown>>, eventName).pipe(takeUntil(destroy$));\n\nconst bindHandlers = (ctx: EditorComponent, editor: any, destroy$: Subject<void>): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n\n listenTinyMCEEvent(editor, eventName.substring(2), destroy$).subscribe((event) => {\n // Caretaker note: `ngZone.run()` runs change detection since it notifies the forked Angular zone that it's\n // being re-entered. We don't want to run `ApplicationRef.tick()` if anyone listens to the specific event\n // within the template. E.g. if the `onSelectionChange` is not listened within the template like:\n // `<editor (onSelectionChange)=\"...\"></editor>`\n // then its `observers` array will be empty, and we won't run \"dead\" change detection.\n if (eventEmitter.observers.length > 0) {\n ctx.ngZone.run(() => eventEmitter.emit({ event, editor }));\n }\n });\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 listenTinyMCEEvent,\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 { defer, fromEvent, Observable, OperatorFunction } from 'rxjs';\nimport { mapTo, shareReplay, take } from 'rxjs/operators';\n\nexport interface IStateObj {\n script$: Observable<void> | null;\n}\n\nconst createState = (): IStateObj => ({\n script$: null,\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string) => Observable<void>;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state = createState();\n\n const load = (doc: Document, url: string) => (\n state.script$ ||\n // Caretaker note: the `script$` is a multicast observable since it's piped with `shareReplay`,\n // so if there're multiple editor components simultaneously on the page, they'll subscribe to the internal\n // `ReplaySubject`. The script will be loaded only once, and `ReplaySubject` will cache the result.\n (state.script$ = defer(() => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.src = url;\n doc.head.appendChild(scriptTag);\n return fromEvent(scriptTag, 'load').pipe(take(1), mapTo(undefined) as OperatorFunction<Event, undefined>);\n }).pipe(shareReplay({ bufferSize: 1, refCount: true })))\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 { 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 { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { getTinymce } from '../TinyMCE';\nimport { listenTinyMCEEvent, bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { EventObj, Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\nimport { Editor as TinyMCEEditor, TinyMCE } from 'tinymce';\n\ntype EditorOptions = Parameters<TinyMCE['init']>[0];\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 = '6';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: EditorOptions | 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 @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: HTMLElement | undefined;\n private _disabled: boolean | undefined;\n private _editor: TinyMCEEditor | undefined;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n private destroy$ = new Subject<void>();\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 }\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): void {\n this.disabled = isDisabled;\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 // Caretaker note: the component might be destroyed before the script is loaded and its code is executed.\n // This will lead to runtime exceptions if `initialise` will be called when the component has been destroyed.\n ScriptLoader.load(this._element.ownerDocument, this.getScriptSrc())\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.initialise);\n }\n }\n }\n\n public ngOnDestroy() {\n this.destroy$.next();\n\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 if (document.getElementById(this.id)) {\n /* eslint no-console: [\"error\", { allow: [\"warn\"] }] */\n console.warn(`TinyMCE-Angular: an element with id [${this.id}] already exists. Editors with duplicate Id will not be able to mount`);\n }\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 = (): void => {\n const finalInit: EditorOptions = {\n ...this.init,\n selector: undefined,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins((this.init && this.init.plugins) as string, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: TinyMCEEditor) => {\n this._editor = editor;\n\n listenTinyMCEEvent(editor, 'init', this.destroy$).subscribe(() => {\n this.initEditor(editor);\n });\n\n bindHandlers(this, editor, this.destroy$);\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: TinyMCEEditor) {\n listenTinyMCEEvent(editor, 'blur', this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.onTouchedCallback());\n });\n\n listenTinyMCEEvent(editor, this.modelEvents, this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.emitOnChange(editor));\n });\n\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue as string);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor as unknown as EventObj<any>);\n }\n });\n }\n }\n\n private emitOnChange(editor: TinyMCEEditor) {\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"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tinymce-tinymce-angular.mjs","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, Directive } from '@angular/core';\nimport { Editor as TinyMCEEditor } from 'tinymce';\n\nexport interface EventObj<T> {\n event: T;\n editor: TinyMCEEditor;\n}\n\n@Directive()\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 onResizeEditor: 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 'onResizeEditor',\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 { fromEvent, Subject } from 'rxjs';\nimport { HasEventTargetAddRemove } from 'rxjs/internal/observable/fromEvent';\nimport { takeUntil } from 'rxjs/operators';\n\nimport { EditorComponent } from '../editor/editor.component';\nimport { validEvents, Events } from '../editor/Events';\n\n// Caretaker note: `fromEvent` supports passing JQuery-style event targets, the editor has `on` and `off` methods which\n// will be invoked upon subscription and teardown.\nconst listenTinyMCEEvent = (\n editor: any,\n eventName: string,\n destroy$: Subject<void>\n) => fromEvent(editor as HasEventTargetAddRemove<unknown> | ArrayLike<HasEventTargetAddRemove<unknown>>, eventName).pipe(takeUntil(destroy$));\n\nconst bindHandlers = (ctx: EditorComponent, editor: any, destroy$: Subject<void>): void => {\n const allowedEvents = getValidEvents(ctx);\n allowedEvents.forEach((eventName) => {\n const eventEmitter: EventEmitter<any> = ctx[eventName];\n\n listenTinyMCEEvent(editor, eventName.substring(2), destroy$).subscribe((event) => {\n // Caretaker note: `ngZone.run()` runs change detection since it notifies the forked Angular zone that it's\n // being re-entered. We don't want to run `ApplicationRef.tick()` if anyone listens to the specific event\n // within the template. E.g. if the `onSelectionChange` is not listened within the template like:\n // `<editor (onSelectionChange)=\"...\"></editor>`\n // then its `observers` array will be empty, and we won't run \"dead\" change detection.\n if (eventEmitter.observers.length > 0) {\n ctx.ngZone.run(() => eventEmitter.emit({ event, editor }));\n }\n });\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 listenTinyMCEEvent,\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 { defer, fromEvent, Observable, OperatorFunction } from 'rxjs';\nimport { mapTo, shareReplay, take } from 'rxjs/operators';\n\nexport interface IStateObj {\n script$: Observable<void> | null;\n}\n\nconst createState = (): IStateObj => ({\n script$: null,\n});\n\ninterface ScriptLoader {\n load: (doc: Document, url: string) => Observable<void>;\n reinitialize: () => void;\n}\n\nconst CreateScriptLoader = (): ScriptLoader => {\n let state = createState();\n\n const load = (doc: Document, url: string) => (\n state.script$ ||\n // Caretaker note: the `script$` is a multicast observable since it's piped with `shareReplay`,\n // so if there're multiple editor components simultaneously on the page, they'll subscribe to the internal\n // `ReplaySubject`. The script will be loaded only once, and `ReplaySubject` will cache the result.\n (state.script$ = defer(() => {\n const scriptTag = doc.createElement('script');\n scriptTag.referrerPolicy = 'origin';\n scriptTag.type = 'application/javascript';\n scriptTag.src = url;\n doc.head.appendChild(scriptTag);\n return fromEvent(scriptTag, 'load').pipe(take(1), mapTo(undefined) as OperatorFunction<Event, undefined>);\n }).pipe(shareReplay({ bufferSize: 1, refCount: true })))\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 { 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 { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { getTinymce } from '../TinyMCE';\nimport { listenTinyMCEEvent, bindHandlers, isTextarea, mergePlugins, uuid, noop, isNullOrUndefined } from '../utils/Utils';\nimport { EventObj, Events } from './Events';\nimport { ScriptLoader } from '../utils/ScriptLoader';\nimport { Editor as TinyMCEEditor, TinyMCE } from 'tinymce';\n\ntype EditorOptions = Parameters<TinyMCE['init']>[0];\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 = '6';\n @Input() public apiKey = 'no-api-key';\n @Input() public init: EditorOptions | 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 @Input()\n public set disabled(val) {\n this._disabled = val;\n if (this._editor && this._editor.initialized) {\n if (typeof this._editor.mode?.set === 'function') {\n this._editor.mode.set(val ? 'readonly' : 'design');\n } else {\n this._editor.setMode(val ? 'readonly' : 'design');\n }\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: HTMLElement | undefined;\n private _disabled: boolean | undefined;\n private _editor: TinyMCEEditor | undefined;\n\n private onTouchedCallback = noop;\n private onChangeCallback: any;\n\n private destroy$ = new Subject<void>();\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 }\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): void {\n this.disabled = isDisabled;\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 // Caretaker note: the component might be destroyed before the script is loaded and its code is executed.\n // This will lead to runtime exceptions if `initialise` will be called when the component has been destroyed.\n ScriptLoader.load(this._element.ownerDocument, this.getScriptSrc())\n .pipe(takeUntil(this.destroy$))\n .subscribe(this.initialise);\n }\n }\n }\n\n public ngOnDestroy() {\n this.destroy$.next();\n\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 if (document.getElementById(this.id)) {\n /* eslint no-console: [\"error\", { allow: [\"warn\"] }] */\n console.warn(`TinyMCE-Angular: an element with id [${this.id}] already exists. Editors with duplicate Id will not be able to mount`);\n }\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 = (): void => {\n const finalInit: EditorOptions = {\n ...this.init,\n selector: undefined,\n target: this._element,\n inline: this.inline,\n readonly: this.disabled,\n plugins: mergePlugins((this.init && this.init.plugins) as string, this.plugins),\n toolbar: this.toolbar || (this.init && this.init.toolbar),\n setup: (editor: TinyMCEEditor) => {\n this._editor = editor;\n\n listenTinyMCEEvent(editor, 'init', this.destroy$).subscribe(() => {\n this.initEditor(editor);\n });\n\n bindHandlers(this, editor, this.destroy$);\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: TinyMCEEditor) {\n listenTinyMCEEvent(editor, 'blur', this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.onTouchedCallback());\n });\n\n listenTinyMCEEvent(editor, this.modelEvents, this.destroy$).subscribe(() => {\n this.ngZone.run(() => this.emitOnChange(editor));\n });\n\n if (typeof this.initialValue === 'string') {\n this.ngZone.run(() => {\n editor.setContent(this.initialValue as string);\n if (editor.getContent() !== this.initialValue) {\n this.emitOnChange(editor);\n }\n if (this.onInitNgModel !== undefined) {\n this.onInitNgModel.emit(editor as unknown as EventObj<any>);\n }\n });\n }\n }\n\n private emitOnChange(editor: TinyMCEEditor) {\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"],"names":[],"mappings":";;;;;;;AAAA;;;;;;;AAQA,MAAM,UAAU,GAAG;IACjB,MAAM,CAAC,GAAG,OAAO,MAAM,KAAK,WAAW,GAAI,MAAc,GAAG,SAAS,CAAC;IACtE,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;AAC3C,CAAC;;MCFY,MAAM;IADnB;QAEmB,kBAAa,GAA2C,IAAI,YAAY,EAAE,CAAC;QAC3E,WAAM,GAAuC,IAAI,YAAY,EAAE,CAAC;QAChE,YAAO,GAAuC,IAAI,YAAY,EAAE,CAAC;QACjE,kBAAa,GAAuC,IAAI,YAAY,EAAE,CAAC;QACvE,WAAM,GAA2C,IAAI,YAAY,EAAE,CAAC;QACpE,UAAK,GAA2C,IAAI,YAAY,EAAE,CAAC;QACnE,eAAU,GAAuC,IAAI,YAAY,EAAE,CAAC;QACpE,WAAM,GAAsC,IAAI,YAAY,EAAE,CAAC;QAC/D,eAAU,GAAsC,IAAI,YAAY,EAAE,CAAC;QACnE,cAAS,GAAsC,IAAI,YAAY,EAAE,CAAC;QAClE,kBAAa,GAAsC,IAAI,YAAY,EAAE,CAAC;QACtE,eAAU,GAAsC,IAAI,YAAY,EAAE,CAAC;QACnE,WAAM,GAAsC,IAAI,YAAY,EAAE,CAAC;QAC/D,YAAO,GAAuC,IAAI,YAAY,EAAE,CAAC;QACjE,cAAS,GAAuC,IAAI,YAAY,EAAE,CAAC;QACnE,eAAU,GAAuC,IAAI,YAAY,EAAE,CAAC;QACpE,cAAS,GAA0C,IAAI,YAAY,EAAE,CAAC;QACtE,eAAU,GAA0C,IAAI,YAAY,EAAE,CAAC;QACvE,YAAO,GAA0C,IAAI,YAAY,EAAE,CAAC;QACpE,gBAAW,GAAuC,IAAI,YAAY,EAAE,CAAC;QACrE,iBAAY,GAAuC,IAAI,YAAY,EAAE,CAAC;QACtE,iBAAY,GAAuC,IAAI,YAAY,EAAE,CAAC;QACtE,gBAAW,GAAuC,IAAI,YAAY,EAAE,CAAC;QACrE,eAAU,GAAuC,IAAI,YAAY,EAAE,CAAC;QACpE,gBAAW,GAAuC,IAAI,YAAY,EAAE,CAAC;QACrE,cAAS,GAAuC,IAAI,YAAY,EAAE,CAAC;QACnE,YAAO,GAA2C,IAAI,YAAY,EAAE,CAAC;QACrE,sBAAiB,GAAkC,IAAI,YAAY,EAAE,CAAC;QACtE,eAAU,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC7D,cAAS,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC5D,oBAAe,GAAgC,IAAI,YAAY,EAAE,CAAC;QAClE,wBAAmB,GAAgC,IAAI,YAAY,EAAE,CAAC;QACtE,uBAAkB,GAAgC,IAAI,YAAY,EAAE,CAAC;QACrE,qBAAgB,GAAgC,IAAI,YAAY,EAAE,CAAC;QACnE,uBAAkB,GAAgC,IAAI,YAAY,EAAE,CAAC;QACrE,aAAQ,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC3D,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,YAAO,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC1D,kBAAa,GAAgC,IAAI,YAAY,EAAE,CAAC;QAChE,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,WAAM,GAAgC,IAAI,YAAY,EAAE,CAAC;QACzD,WAAM,GAAgC,IAAI,YAAY,EAAE,CAAC;QACzD,kBAAa,GAAgC,IAAI,YAAY,EAAE,CAAC;QAChE,kBAAa,GAAgC,IAAI,YAAY,EAAE,CAAC;QAChE,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,kBAAa,GAAgC,IAAI,YAAY,EAAE,CAAC;QAChE,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,cAAS,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC5D,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,oBAAe,GAAgC,IAAI,YAAY,EAAE,CAAC;QAClE,WAAM,GAAgC,IAAI,YAAY,EAAE,CAAC;QACzD,aAAQ,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC3D,YAAO,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC1D,mBAAc,GAAgC,IAAI,YAAY,EAAE,CAAC;QACjE,kBAAa,GAAgC,IAAI,YAAY,EAAE,CAAC;QAChE,gBAAW,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC9D,wBAAmB,GAAgC,IAAI,YAAY,EAAE,CAAC;QACtE,oBAAe,GAAgC,IAAI,YAAY,EAAE,CAAC;QAClE,qBAAgB,GAAgC,IAAI,YAAY,EAAE,CAAC;QACnE,iBAAY,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC/D,WAAM,GAAgC,IAAI,YAAY,EAAE,CAAC;QACzD,aAAQ,GAAgC,IAAI,YAAY,EAAE,CAAC;QAC3D,WAAM,GAAgC,IAAI,YAAY,EAAE,CAAC;QACzD,gBAAW,GAAgC,IAAI,YAAY,EAAE,CAAC;KAChF;;mGAlEY,MAAM;uFAAN,MAAM;2FAAN,MAAM;kBADlB,SAAS;8BAES,aAAa;sBAA7B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,OAAO;sBAAvB,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,KAAK;sBAArB,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,SAAS;sBAAzB,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,OAAO;sBAAvB,MAAM;gBACU,SAAS;sBAAzB,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,SAAS;sBAAzB,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,OAAO;sBAAvB,MAAM;gBACU,WAAW;sBAA3B,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,WAAW;sBAA3B,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,WAAW;sBAA3B,MAAM;gBACU,SAAS;sBAAzB,MAAM;gBACU,OAAO;sBAAvB,MAAM;gBACU,iBAAiB;sBAAjC,MAAM;gBACU,UAAU;sBAA1B,MAAM;gBACU,SAAS;sBAAzB,MAAM;gBACU,eAAe;sBAA/B,MAAM;gBACU,mBAAmB;sBAAnC,MAAM;gBACU,kBAAkB;sBAAlC,MAAM;gBACU,gBAAgB;sBAAhC,MAAM;gBACU,kBAAkB;sBAAlC,MAAM;gBACU,QAAQ;sBAAxB,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,OAAO;sBAAvB,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,SAAS;sBAAzB,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,eAAe;sBAA/B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,QAAQ;sBAAxB,MAAM;gBACU,OAAO;sBAAvB,MAAM;gBACU,cAAc;sBAA9B,MAAM;gBACU,aAAa;sBAA7B,MAAM;gBACU,WAAW;sBAA3B,MAAM;gBACU,mBAAmB;sBAAnC,MAAM;gBACU,eAAe;sBAA/B,MAAM;gBACU,gBAAgB;sBAAhC,MAAM;gBACU,YAAY;sBAA5B,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,QAAQ;sBAAxB,MAAM;gBACU,MAAM;sBAAtB,MAAM;gBACU,WAAW;sBAA3B,MAAM;;AAGF,MAAM,WAAW,GAAqB;IAC3C,YAAY;IACZ,WAAW;IACX,iBAAiB;IACjB,qBAAqB;IACrB,oBAAoB;IACpB,kBAAkB;IAClB,oBAAoB;IACpB,eAAe;IACf,QAAQ;IACR,UAAU;IACV,cAAc;IACd,SAAS;IACT,eAAe;IACf,QAAQ;IACR,OAAO;IACP,YAAY;IACZ,cAAc;IACd,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,WAAW;IACX,eAAe;IACf,YAAY;IACZ,QAAQ;IACR,eAAe;IACf,SAAS;IACT,WAAW;IACX,YAAY;IACZ,cAAc;IACd,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,SAAS;IACT,eAAe;IACf,aAAa;IACb,cAAc;IACd,cAAc;IACd,aAAa;IACb,YAAY;IACZ,aAAa;IACb,WAAW;IACX,cAAc;IACd,qBAAqB;IACrB,iBAAiB;IACjB,kBAAkB;IAClB,SAAS;IACT,eAAe;IACf,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,QAAQ;IACR,UAAU;IACV,SAAS;IACT,gBAAgB;IAChB,eAAe;IACf,mBAAmB;IACnB,aAAa;IACb,cAAc;IACd,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,aAAa;CACd;;AC7ID;;;;;;;AAgBA;AACA;AACA,MAAM,kBAAkB,GAAG,CACzB,MAAW,EACX,SAAiB,EACjB,QAAuB,KACpB,SAAS,CAAC,MAAwF,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAE9I,MAAM,YAAY,GAAG,CAAC,GAAoB,EAAE,MAAW,EAAE,QAAuB;IAC9E,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;IAC1C,aAAa,CAAC,OAAO,CAAC,CAAC,SAAS;QAC9B,MAAM,YAAY,GAAsB,GAAG,CAAC,SAAS,CAAC,CAAC;QAEvD,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK;;;;;;YAM3E,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;aAC5D;SACF,CAAC,CAAC;KACJ,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,GAAoB;IAC1C,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;IAChE,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC,MAAM,CAC9E,CAAC,KAAK,KAAK,WAAW,CAAC,QAAQ,CAAC,KAAuB,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAqB,CAAC;IAClH,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,QAAuC,EAAE,YAA8B;IAClG,IAAK,OAAO,QAAQ,KAAK,QAAQ,EAAE;QACjC,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;KACzD;IACD,IAAK,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;QAC5B,OAAO,QAAQ,CAAC;KACjB;IACD,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAEF,IAAI,MAAM,GAAG,CAAC,CAAC;AAEf,MAAM,IAAI,GAAG,CAAC,MAAc;IAC1B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;IACxB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;IAEtD,MAAM,EAAE,CAAC;IAET,OAAO,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,OAAiB,KAAqC,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC;AAEzJ,MAAM,oBAAoB,GAAG,CAAC,OAA2B;IACvD,IAAI,OAAO,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,EAAE,EAAE;QACpD,OAAO,EAAE,CAAC;KACX;IAED,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC/D,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,CAAC,WAA8B,EAAE,YAAgC,KACpF,oBAAoB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAC;AAE/E;AACA,MAAM,IAAI,GAA6B,SAAS,CAAC;AAEjD,MAAM,iBAAiB,GAAG,CAAC,KAAU,KAAgC,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;;ACvF1G;;;;;;;AAeA,MAAM,WAAW,GAAG,OAAkB;IACpC,OAAO,EAAE,IAAI;CACd,CAAC,CAAC;AAOH,MAAM,kBAAkB,GAAG;IACzB,IAAI,KAAK,GAAG,WAAW,EAAE,CAAC;IAE1B,MAAM,IAAI,GAAG,CAAC,GAAa,EAAE,GAAW,MACtC,KAAK,CAAC,OAAO;;;;SAIZ,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,MAAM,SAAS,GAAG,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC9C,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC;YACpC,SAAS,CAAC,IAAI,GAAG,wBAAwB,CAAC;YAC1C,SAAS,CAAC,GAAG,GAAG,GAAG,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YAChC,OAAO,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAuC,CAAC,CAAC;SAC3G,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CACzD,CAAC;;IAGF,MAAM,YAAY,GAAG;QACnB,KAAK,GAAG,WAAW,EAAE,CAAC;KACvB,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,YAAY;KACb,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,kBAAkB,EAAE;;ACrDzC;MAca,kBAAkB,GAAG,IAAI,cAAc,CAAS,oBAAoB,EAAE;AAEnF,MAAM,+BAA+B,GAAG;IACtC,OAAO,EAAE,iBAAiB;IAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,eAAe,CAAC;IAC9C,KAAK,EAAE,IAAI;CACZ,CAAC;MAQW,eAAgB,SAAQ,MAAM;IA+CzC,YACE,UAAsB,EACtB,MAAc,EACe,UAAkB,EACC,gBAAyB;QAEzE,KAAK,EAAE,CAAC;QAHqB,eAAU,GAAV,UAAU,CAAQ;QACC,qBAAgB,GAAhB,gBAAgB,CAAS;QAjD3D,iBAAY,GAAG,GAAG,CAAC;QACnB,WAAM,GAAG,YAAY,CAAC;QAEtB,OAAE,GAAG,EAAE,CAAC;QAOR,gBAAW,GAAG,wBAAwB,CAAC;QA8B/C,sBAAiB,GAAG,IAAI,CAAC;QAGzB,aAAQ,GAAG,IAAI,OAAO,EAAQ,CAAC;QA0EhC,eAAU,GAAG;YAClB,MAAM,SAAS,GAAkB;gBAC/B,GAAG,IAAI,CAAC,IAAI;gBACZ,QAAQ,EAAE,SAAS;gBACnB,MAAM,EAAE,IAAI,CAAC,QAAQ;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,GAAa,IAAI,CAAC,OAAO,CAAC;gBAC/E,OAAO,EAAE,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC;gBACzD,KAAK,EAAE,CAAC,MAAqB;oBAC3B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;oBAEtB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;wBAC1D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;qBACzB,CAAC,CAAC;oBAEH,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAE1C,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,UAAU,EAAE;wBACtD,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;qBACzB;iBACF;aACF,CAAC;YAEF,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC;aACrC;YAED,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC;gBAC5B,UAAU,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC9B,CAAC,CAAC;SACJ,CAAC;QAhGA,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;KACtB;IAzCD,IACW,QAAQ,CAAC,GAAG;QACrB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;QACrB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YAC5C,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,KAAK,UAAU,EAAE;gBAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;aACpD;iBAAM;gBACL,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;aACnD;SACF;KACF;IAED,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,SAAS,CAAC;KACvB;IAED,IAAW,MAAM;QACf,OAAO,IAAI,CAAC,OAAO,CAAC;KACrB;IAyBM,UAAU,CAAC,KAAoB;QACpC,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE;YAC5C,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC;SAChE;aAAM;YACL,IAAI,CAAC,YAAY,GAAG,KAAK,KAAK,IAAI,GAAG,SAAS,GAAG,KAAK,CAAC;SACxD;KACF;IAEM,gBAAgB,CAAC,EAAoB;QAC1C,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;KAC5B;IAEM,iBAAiB,CAAC,EAAO;QAC9B,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAC;KAC7B;IAEM,gBAAgB,CAAC,UAAmB;QACzC,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC5B;IAEM,eAAe;QACpB,IAAI,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACtC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,cAAc,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS,GAAG,IAAI,CAAC,MAAM,KAAK,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACxF,IAAI,CAAC,aAAa,EAAE,CAAC;YACrB,IAAI,UAAU,EAAE,KAAK,IAAI,EAAE;gBACzB,IAAI,CAAC,UAAU,EAAE,CAAC;aACnB;iBAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;;;gBAGvD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC;qBAChE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;qBAC9B,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC/B;SACF;KACF;IAEM,WAAW;QAChB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAErB,IAAI,UAAU,EAAE,KAAK,IAAI,EAAE;YACzB,UAAU,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SACnC;KACF;IAEM,aAAa;QAClB,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACxE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,GAAG,OAAO,GAAG,UAAU,CAAC,CAAC;QAC3E,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,IAAI,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;;gBAEpC,OAAO,CAAC,IAAI,CAAC,wCAAwC,IAAI,CAAC,EAAE,uEAAuE,CAAC,CAAC;aACtI;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;YAC3B,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;aAC3C;YACD,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC3D;KACF;IAmCO,YAAY;QAClB,OAAO,iBAAiB,CAAC,IAAI,CAAC,gBAAgB,CAAC;YAC7C,4BAA4B,IAAI,CAAC,MAAM,YAAY,IAAI,CAAC,YAAY,iBAAiB;YACrF,IAAI,CAAC,gBAAgB,CAAC;KACzB;IAEO,UAAU,CAAC,MAAqB;QACtC,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;YAC1D,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;SACjD,CAAC,CAAC;QAEH,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC;YACpE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;SAClD,CAAC,CAAC;QAEH,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE;YACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;gBACd,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,YAAsB,CAAC,CAAC;gBAC/C,IAAI,MAAM,CAAC,UAAU,EAAE,KAAK,IAAI,CAAC,YAAY,EAAE;oBAC7C,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;iBAC3B;gBACD,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE;oBACpC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAkC,CAAC,CAAC;iBAC7D;aACF,CAAC,CAAC;SACJ;KACF;IAEO,YAAY,CAAC,MAAqB;QACxC,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;SACzE;KACF;;4GAxLU,eAAe,kEAkDhB,WAAW,aACC,kBAAkB;gGAnD7B,eAAe,+WAFf,CAAE,+BAA+B,CAAE,iDAFpC,6BAA6B;2FAI5B,eAAe;kBAN3B,SAAS;mBAAC;oBACT,QAAQ,EAAE,QAAQ;oBAClB,QAAQ,EAAE,6BAA6B;oBACvC,MAAM,EAAE,CAAE,2BAA2B,CAAE;oBACvC,SAAS,EAAE,CAAE,+BAA+B,CAAE;iBAC/C;wGAmD4C,MAAM;0BAA9C,MAAM;2BAAC,WAAW;;0BAClB,QAAQ;;0BAAI,MAAM;2BAAC,kBAAkB;4CAjDxB,YAAY;sBAA3B,KAAK;gBACU,MAAM;sBAArB,KAAK;gBACU,IAAI;sBAAnB,KAAK;gBACU,EAAE;sBAAjB,KAAK;gBACU,YAAY;sBAA3B,KAAK;gBACU,YAAY;sBAA3B,KAAK;gBACU,MAAM;sBAArB,KAAK;gBACU,OAAO;sBAAtB,KAAK;gBACU,OAAO;sBAAtB,KAAK;gBACU,OAAO;sBAAtB,KAAK;gBACU,WAAW;sBAA1B,KAAK;gBACU,aAAa;sBAA5B,KAAK;gBACU,YAAY;sBAA3B,KAAK;gBAEK,QAAQ;sBADlB,KAAK;;;MChCK,YAAY;;yGAAZ,YAAY;0GAAZ,YAAY,iBAHP,eAAe,aADpB,YAAY,EAAE,WAAW,aAEzB,eAAe;0GAEf,YAAY,YAJd,CAAE,YAAY,EAAE,WAAW,CAAE;2FAI3B,YAAY;kBALxB,QAAQ;mBAAC;oBACR,OAAO,EAAE,CAAE,YAAY,EAAE,WAAW,CAAE;oBACtC,YAAY,EAAE,CAAE,eAAe,CAAE;oBACjC,OAAO,EAAE,CAAE,eAAe,CAAE;iBAC7B;;;ACVD;;;;;;"}
|
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": "6.0.
|
|
4
|
+
"version": "6.0.1",
|
|
5
5
|
"repository": "https://github.com/tinymce/tinymce-angular.git",
|
|
6
6
|
"author": "Ephox Corporation DBA Tiny Technologies, Inc.",
|
|
7
7
|
"license": "MIT",
|