@plait/angular-text 0.64.7 → 0.64.8
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.
|
@@ -66,6 +66,9 @@ export class PlaitTextComponent {
|
|
|
66
66
|
}
|
|
67
67
|
this.editor.onKeydown(event);
|
|
68
68
|
};
|
|
69
|
+
this.scrollSelectionIntoView = () => {
|
|
70
|
+
// prevent auto scroll
|
|
71
|
+
};
|
|
69
72
|
}
|
|
70
73
|
valueChange() {
|
|
71
74
|
this.onChange({ newText: this.editor.children[0], operations: this.editor.operations });
|
|
@@ -83,11 +86,11 @@ export class PlaitTextComponent {
|
|
|
83
86
|
this.afterInit && this.afterInit(this.editor);
|
|
84
87
|
}
|
|
85
88
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitTextComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
86
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: PlaitTextComponent, isStandalone: true, selector: "plait-text", inputs: { textPlugins: "textPlugins", text: "text", readonly: "readonly", onChange: "onChange", afterInit: "afterInit", onComposition: "onComposition", board: "board" }, host: { properties: { "class": "this.hostClass" } }, viewQueries: [{ propertyName: "slateEditable", first: true, predicate: ["slateEditable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n></slate-editable>\n", dependencies: [{ kind: "component", type: SlateEditable, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "scrollSelectionIntoView", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionUpdate", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
89
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: PlaitTextComponent, isStandalone: true, selector: "plait-text", inputs: { textPlugins: "textPlugins", text: "text", readonly: "readonly", onChange: "onChange", afterInit: "afterInit", onComposition: "onComposition", board: "board" }, host: { properties: { "class": "this.hostClass" } }, viewQueries: [{ propertyName: "slateEditable", first: true, predicate: ["slateEditable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n [scrollSelectionIntoView]=\"scrollSelectionIntoView\"\n></slate-editable>\n", dependencies: [{ kind: "component", type: SlateEditable, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "scrollSelectionIntoView", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionUpdate", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
87
90
|
}
|
|
88
91
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitTextComponent, decorators: [{
|
|
89
92
|
type: Component,
|
|
90
|
-
args: [{ selector: 'plait-text', standalone: true, imports: [SlateEditable, FormsModule, CommonModule], template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n></slate-editable>\n" }]
|
|
93
|
+
args: [{ selector: 'plait-text', standalone: true, imports: [SlateEditable, FormsModule, CommonModule], template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n [scrollSelectionIntoView]=\"scrollSelectionIntoView\"\n></slate-editable>\n" }]
|
|
91
94
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { hostClass: [{
|
|
92
95
|
type: HostBinding,
|
|
93
96
|
args: ['class']
|
|
@@ -109,4 +112,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImpor
|
|
|
109
112
|
}], board: [{
|
|
110
113
|
type: Input
|
|
111
114
|
}] } });
|
|
112
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXRleHQvc3JjL3RleHQvdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXRleHQvc3JjL3RleHQvdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsU0FBUyxFQUVULFdBQVcsRUFDWCxLQUFLLEVBS0wsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEMsT0FBTyxFQUF5QixVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVks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QyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZHLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0IsSUFBUyxDQUFDO0lBRTVDLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDOUIsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7UUFDRCxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ25DLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsRCxDQUFDOzhHQXhEUSxrQkFBa0I7a0dBQWxCLGtCQUFrQiwwYUNwQy9CLDBjQWNBLDRDRG9CYyxhQUFhLHFkQUFFLFdBQVcsOFZBQUUsWUFBWTs7MkZBRXpDLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDSSxZQUFZLGNBRVYsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUM7dUlBRzdCLFNBQVM7c0JBQTlCLFdBQVc7dUJBQUMsT0FBTztnQkFJWCxXQUFXO3NCQUFuQixLQUFLO2dCQUVPLElBQUk7c0JBQWhCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFHTixhQUFhO3NCQURaLFNBQVM7dUJBQUMsZUFBZTtnQkFJMUIsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNLZXlIb3RrZXkgfSBmcm9tICdpcy1ob3RrZXknO1xuaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUZXh0LCBUcmFuc2Zvcm1zLCBjcmVhdGVFZGl0b3IgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBTbGF0ZUVkaXRhYmxlLCB3aXRoQW5ndWxhciB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgd2l0aEhpc3RvcnkgfSBmcm9tICdzbGF0ZS1oaXN0b3J5JztcbmltcG9ydCB7IFBsYWl0TGlua05vZGVDb21wb25lbnQgfSBmcm9tICcuLi9wbHVnaW5zL2xpbmsvbGluay5jb21wb25lbnQnO1xuaW1wb3J0IHsgd2l0aE1hcmtIb3RrZXkgfSBmcm9tICcuLi9wbHVnaW5zL21hcmstaG90a2V5L3dpdGgtbWFyay1ob3RrZXknO1xuaW1wb3J0IHsgUGFyYWdyYXBoRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uL3BsdWdpbnMvcGFyYWdyYXBoL3BhcmFncmFwaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgd2l0aFNlbGVjdGlvbiB9IGZyb20gJy4uL3BsdWdpbnMvd2l0aC1zZWxlY3Rpb24nO1xuaW1wb3J0IHsgd2l0aFRleHQgfSBmcm9tICcuLi9wbHVnaW5zL3dpdGgtdGV4dCc7XG5pbXBvcnQgeyBQbGFpdFRleHROb2RlQ29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dC1ub2RlL3RleHQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTGlua0VsZW1lbnQsIFRleHRDaGFuZ2VEYXRhLCBUZXh0UGx1Z2luIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBDTElQQk9BUkRfRk9STUFUX0tFWSwgTWFya1R5cGVzIH0gZnJvbSAnQHBsYWl0L3RleHQtcGx1Z2lucyc7XG5pbXBvcnQgeyB3aXRoUGFzdGVMaW5rIH0gZnJvbSAnLi4vcGx1Z2lucy9saW5rL3dpdGgtbGluay1pbnNlcnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFBsYWl0Qm9hcmQgfSBmcm9tICdAcGxhaXQvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGxhaXQtdGV4dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1NsYXRlRWRpdGFibGUsIEZvcm1zTW9kdWxlLCBDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFBsYWl0VGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgaG9zdENsYXNzID0gJ3BsYWl0LXRleHQtY29udGFpbmVyJztcblxuICAgIGNoaWxkcmVuOiBFbGVtZW50W10gPSBbXTtcblxuICAgIEBJbnB1dCgpIHRleHRQbHVnaW5zPzogVGV4dFBsdWdpbltdO1xuXG4gICAgQElucHV0KCkgc2V0IHRleHQodGV4dDogRWxlbWVudCkge1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gW3RleHRdO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSByZWFkb25seSA9IHRydWU7XG5cbiAgICBAVmlld0NoaWxkKCdzbGF0ZUVkaXRhYmxlJylcbiAgICBzbGF0ZUVkaXRhYmxlITogU2xhdGVFZGl0YWJsZTtcblxuICAgIEBJbnB1dCgpXG4gICAgb25DaGFuZ2UhOiAoZGF0YTogVGV4dENoYW5nZURhdGEpID0+IHZvaWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIGFmdGVySW5pdD86IChlZGl0b3I6IEVkaXRvcikgPT4gdm9pZDtcblxuICAgIEBJbnB1dCgpXG4gICAgb25Db21wb3NpdGlvbiE6IChldmVudDogQ29tcG9zaXRpb25FdmVudCkgPT4gdm9pZDtcblxuICAgIEBJbnB1dCgpXG4gICAgYm9hcmQhOiBQbGFpdEJvYXJkO1xuXG4gICAgZWRpdG9yID0gd2l0aFNlbGVjdGlvbihcbiAgICAgICAgd2l0aFBhc3RlTGluayh3aXRoTWFya0hvdGtleSh3aXRoVGV4dCh3aXRoSGlzdG9yeSh3aXRoQW5ndWxhcihjcmVhdGVFZGl0b3IoKSwgQ0xJUEJPQVJEX0ZPUk1BVF9LRVkpKSwgdGhpcy5ib2FyZCkpKVxuICAgICk7XG5cbiAgICBuYXRpdmVFbGVtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlbmRlcmVyMjogUmVuZGVyZXIyLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuICAgIHZhbHVlQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHsgbmV3VGV4dDogdGhpcy5lZGl0b3IuY2hpbGRyZW5bMF0gYXMgRWxlbWVudCwgb3BlcmF0aW9uczogdGhpcy5lZGl0b3Iub3BlcmF0aW9ucyB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRleHRQbHVnaW5zKSB7XG4gICAgICAgICAgICB0aGlzLnRleHRQbHVnaW5zLmZvckVhY2gocGx1Z2luID0+IHtcbiAgICAgICAgICAgICAgICBwbHVnaW4odGhpcy5lZGl0b3IpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5lZGl0b3IuYm9hcmQgPSB0aGlzLmJvYXJkO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hZnRlckluaXQgJiYgdGhpcy5hZnRlckluaXQodGhpcy5lZGl0b3IpO1xuICAgIH1cblxuICAgIHJlbmRlckVsZW1lbnQgPSAoZWxlbWVudDogRWxlbWVudCkgPT4ge1xuICAgICAgICBjb25zdCByZW5kZXIgPSB0aGlzLmVkaXRvci5yZW5kZXJFbGVtZW50O1xuICAgICAgICBpZiAocmVuZGVyICYmIHJlbmRlcihlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHJlbmRlcihlbGVtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICgoZWxlbWVudCBhcyBMaW5rRWxlbWVudCkudHlwZSA9PT0gJ2xpbmsnKSB7XG4gICAgICAgICAgICByZXR1cm4gUGxhaXRMaW5rTm9kZUNvbXBvbmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQYXJhZ3JhcGhFbGVtZW50Q29tcG9uZW50O1xuICAgIH07XG5cbiAgICByZW5kZXJUZXh0OiBhbnkgPSAodGV4dDogVGV4dCk6IFBsYWl0VGV4dE5vZGVDb21wb25lbnQgfCBudWxsID0+IHtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gTWFya1R5cGVzKSB7XG4gICAgICAgICAgICBpZiAoKHRleHQgYXMgYW55KVsoTWFya1R5cGVzIGFzIGFueSlba2V5XV0pIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUGxhaXRUZXh0Tm9kZUNvbXBvbmVudCBhcyBhbnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcblxuICAgIGNvbXBvc2l0aW9uU3RhcnQgPSAoZXZlbnQ6IENvbXBvc2l0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5vbkNvbXBvc2l0aW9uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgY29tcG9zaXRpb25VcGRhdGUgPSAoZXZlbnQ6IENvbXBvc2l0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5vbkNvbXBvc2l0aW9uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgY29tcG9zaXRpb25FbmQgPSAoZXZlbnQ6IENvbXBvc2l0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5vbkNvbXBvc2l0aW9uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgb25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChpc0tleUhvdGtleSgnbW9kK2EnLCBldmVudCkpIHtcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KHRoaXMuZWRpdG9yLCBbMF0pO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVkaXRvci5vbktleWRvd24oZXZlbnQpO1xuICAgIH07XG59XG4iLCI8c2xhdGUtZWRpdGFibGVcbiAgICAjc2xhdGVFZGl0YWJsZVxuICAgIFtlZGl0b3JdPVwiZWRpdG9yXCJcbiAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgIFsobmdNb2RlbCldPVwiY2hpbGRyZW5cIlxuICAgIChuZ01vZGVsQ2hhbmdlKT1cInZhbHVlQ2hhbmdlKClcIlxuICAgIFtrZXlkb3duXT1cIm9uS2V5ZG93blwiXG4gICAgW3JlbmRlckVsZW1lbnRdPVwicmVuZGVyRWxlbWVudFwiXG4gICAgW2NvbXBvc2l0aW9uU3RhcnRdPVwiY29tcG9zaXRpb25TdGFydFwiXG4gICAgW2NvbXBvc2l0aW9uVXBkYXRlXT1cImNvbXBvc2l0aW9uVXBkYXRlXCJcbiAgICBbY29tcG9zaXRpb25FbmRdPVwiY29tcG9zaXRpb25FbmRcIlxuICAgIFtyZW5kZXJUZXh0XT1cInJlbmRlclRleHRcIlxuICAgIFtuZ0NsYXNzXT1cInsnZWRpdGluZyc6ICFyZWFkb25seX1cIlxuPjwvc2xhdGUtZWRpdGFibGU+XG4iXX0=
|
|
115
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXRleHQvc3JjL3RleHQvdGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXRleHQvc3JjL3RleHQvdGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBR0gsU0FBUyxFQUVULFdBQVcsRUFDWCxLQUFLLEVBS0wsU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDeEMsT0FBTyxFQUF5QixVQUFVLEVBQUUsWUFBWSxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDaEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDckUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7O0FBUy9DLE1BQU0sT0FBTyxrQkFBa0I7SUFPM0IsSUFBYSxJQUFJLENBQUMsSUFBYTtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM1QixDQUFDO0lBdUJELGFBQWE7UUFDVCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO0lBQ3pDLENBQUM7SUFFRCxZQUFtQixTQUFvQixFQUFVLEdBQXNCLEVBQVMsVUFBbUM7UUFBaEcsY0FBUyxHQUFULFNBQVMsQ0FBVztRQUFVLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVMsZUFBVSxHQUFWLFVBQVUsQ0FBeUI7UUFwQzdGLGNBQVMsR0FBRyxzQkFBc0IsQ0FBQztRQUV6RCxhQUFRLEdBQWMsRUFBRSxDQUFDO1FBU2hCLGFBQVEsR0FBRyxJQUFJLENBQUM7UUFpQnpCLFdBQU0sR0FBRyxhQUFhLENBQ2xCLGFBQWEsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxXQUFXLENBQUMsWUFBWSxFQUFFLEVBQUUsb0JBQW9CLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQ3RILENBQUM7UUEyQkYsa0JBQWEsR0FBRyxDQUFDLE9BQWdCLEVBQUUsRUFBRTtZQUNqQyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUN6QyxJQUFJLE1BQU0sSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztnQkFDNUIsT0FBTyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDM0IsQ0FBQztZQUVELElBQUssT0FBdUIsQ0FBQyxJQUFJLEtBQUssTUFBTSxFQUFFLENBQUM7Z0JBQzNDLE9BQU8sc0JBQXNCLENBQUM7WUFDbEMsQ0FBQztZQUVELE9BQU8seUJBQXlCLENBQUM7UUFDckMsQ0FBQyxDQUFDO1FBRUYsZUFBVSxHQUFRLENBQUMsSUFBVSxFQUFpQyxFQUFFO1lBQzVELEtBQUssTUFBTSxHQUFHLElBQUksU0FBUyxFQUFFLENBQUM7Z0JBQzFCLElBQUssSUFBWSxDQUFFLFNBQWlCLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxDQUFDO29CQUN6QyxPQUFPLHNCQUE2QixDQUFDO2dCQUN6QyxDQUFDO1lBQ0wsQ0FBQztZQUNELE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUMsQ0FBQztRQUVGLHFCQUFnQixHQUFHLENBQUMsS0FBdUIsRUFBRSxFQUFFO1lBQzNDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDO1FBRUYsc0JBQWlCLEdBQUcsQ0FBQyxLQUF1QixFQUFFLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixDQUFDLENBQUM7UUFFRixtQkFBYyxHQUFHLENBQUMsS0FBdUIsRUFBRSxFQUFFO1lBQ3pDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsQ0FBQyxDQUFDO1FBRUYsY0FBUyxHQUFHLENBQUMsS0FBb0IsRUFBRSxFQUFFO1lBQ2pDLElBQUksV0FBVyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDO2dCQUM5QixVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDM0IsQ0FBQztZQUNELElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pDLENBQUMsQ0FBQztRQUVGLDRCQUF1QixHQUFHLEdBQUcsRUFBRTtZQUMzQixzQkFBc0I7UUFDMUIsQ0FBQyxDQUFBO0lBakVxSCxDQUFDO0lBRXZILFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBWSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDdkcsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQixJQUFTLENBQUM7SUFFNUMsUUFBUTtRQUNKLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUM5QixNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztRQUNELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDbkMsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2xELENBQUM7OEdBeERRLGtCQUFrQjtrR0FBbEIsa0JBQWtCLDBhQ3BDL0IscWdCQWVBLDRDRG1CYyxhQUFhLHFkQUFFLFdBQVcsOFZBQUUsWUFBWTs7MkZBRXpDLGtCQUFrQjtrQkFOOUIsU0FBUzsrQkFDSSxZQUFZLGNBRVYsSUFBSSxXQUNQLENBQUMsYUFBYSxFQUFFLFdBQVcsRUFBRSxZQUFZLENBQUM7dUlBRzdCLFNBQVM7c0JBQTlCLFdBQVc7dUJBQUMsT0FBTztnQkFJWCxXQUFXO3NCQUFuQixLQUFLO2dCQUVPLElBQUk7c0JBQWhCLEtBQUs7Z0JBS0csUUFBUTtzQkFBaEIsS0FBSztnQkFHTixhQUFhO3NCQURaLFNBQVM7dUJBQUMsZUFBZTtnQkFJMUIsUUFBUTtzQkFEUCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixhQUFhO3NCQURaLEtBQUs7Z0JBSU4sS0FBSztzQkFESixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uQ2hhbmdlcyxcbiAgICBPbkluaXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFNpbXBsZUNoYW5nZXMsXG4gICAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaXNLZXlIb3RrZXkgfSBmcm9tICdpcy1ob3RrZXknO1xuaW1wb3J0IHsgRWRpdG9yLCBFbGVtZW50LCBUZXh0LCBUcmFuc2Zvcm1zLCBjcmVhdGVFZGl0b3IgfSBmcm9tICdzbGF0ZSc7XG5pbXBvcnQgeyBTbGF0ZUVkaXRhYmxlLCB3aXRoQW5ndWxhciB9IGZyb20gJ3NsYXRlLWFuZ3VsYXInO1xuaW1wb3J0IHsgd2l0aEhpc3RvcnkgfSBmcm9tICdzbGF0ZS1oaXN0b3J5JztcbmltcG9ydCB7IFBsYWl0TGlua05vZGVDb21wb25lbnQgfSBmcm9tICcuLi9wbHVnaW5zL2xpbmsvbGluay5jb21wb25lbnQnO1xuaW1wb3J0IHsgd2l0aE1hcmtIb3RrZXkgfSBmcm9tICcuLi9wbHVnaW5zL21hcmstaG90a2V5L3dpdGgtbWFyay1ob3RrZXknO1xuaW1wb3J0IHsgUGFyYWdyYXBoRWxlbWVudENvbXBvbmVudCB9IGZyb20gJy4uL3BsdWdpbnMvcGFyYWdyYXBoL3BhcmFncmFwaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgd2l0aFNlbGVjdGlvbiB9IGZyb20gJy4uL3BsdWdpbnMvd2l0aC1zZWxlY3Rpb24nO1xuaW1wb3J0IHsgd2l0aFRleHQgfSBmcm9tICcuLi9wbHVnaW5zL3dpdGgtdGV4dCc7XG5pbXBvcnQgeyBQbGFpdFRleHROb2RlQ29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dC1ub2RlL3RleHQuY29tcG9uZW50JztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTGlua0VsZW1lbnQsIFRleHRDaGFuZ2VEYXRhLCBUZXh0UGx1Z2luIH0gZnJvbSAnQHBsYWl0L2NvbW1vbic7XG5pbXBvcnQgeyBDTElQQk9BUkRfRk9STUFUX0tFWSwgTWFya1R5cGVzIH0gZnJvbSAnQHBsYWl0L3RleHQtcGx1Z2lucyc7XG5pbXBvcnQgeyB3aXRoUGFzdGVMaW5rIH0gZnJvbSAnLi4vcGx1Z2lucy9saW5rL3dpdGgtbGluay1pbnNlcnQnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFBsYWl0Qm9hcmQgfSBmcm9tICdAcGxhaXQvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGxhaXQtdGV4dCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3RleHQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1NsYXRlRWRpdGFibGUsIEZvcm1zTW9kdWxlLCBDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFBsYWl0VGV4dENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcbiAgICBASG9zdEJpbmRpbmcoJ2NsYXNzJykgaG9zdENsYXNzID0gJ3BsYWl0LXRleHQtY29udGFpbmVyJztcblxuICAgIGNoaWxkcmVuOiBFbGVtZW50W10gPSBbXTtcblxuICAgIEBJbnB1dCgpIHRleHRQbHVnaW5zPzogVGV4dFBsdWdpbltdO1xuXG4gICAgQElucHV0KCkgc2V0IHRleHQodGV4dDogRWxlbWVudCkge1xuICAgICAgICB0aGlzLmNoaWxkcmVuID0gW3RleHRdO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICBASW5wdXQoKSByZWFkb25seSA9IHRydWU7XG5cbiAgICBAVmlld0NoaWxkKCdzbGF0ZUVkaXRhYmxlJylcbiAgICBzbGF0ZUVkaXRhYmxlITogU2xhdGVFZGl0YWJsZTtcblxuICAgIEBJbnB1dCgpXG4gICAgb25DaGFuZ2UhOiAoZGF0YTogVGV4dENoYW5nZURhdGEpID0+IHZvaWQ7XG5cbiAgICBASW5wdXQoKVxuICAgIGFmdGVySW5pdD86IChlZGl0b3I6IEVkaXRvcikgPT4gdm9pZDtcblxuICAgIEBJbnB1dCgpXG4gICAgb25Db21wb3NpdGlvbiE6IChldmVudDogQ29tcG9zaXRpb25FdmVudCkgPT4gdm9pZDtcblxuICAgIEBJbnB1dCgpXG4gICAgYm9hcmQhOiBQbGFpdEJvYXJkO1xuXG4gICAgZWRpdG9yID0gd2l0aFNlbGVjdGlvbihcbiAgICAgICAgd2l0aFBhc3RlTGluayh3aXRoTWFya0hvdGtleSh3aXRoVGV4dCh3aXRoSGlzdG9yeSh3aXRoQW5ndWxhcihjcmVhdGVFZGl0b3IoKSwgQ0xJUEJPQVJEX0ZPUk1BVF9LRVkpKSwgdGhpcy5ib2FyZCkpKVxuICAgICk7XG5cbiAgICBuYXRpdmVFbGVtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlbmRlcmVyMjogUmVuZGVyZXIyLCBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50Pikge31cblxuICAgIHZhbHVlQ2hhbmdlKCkge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKHsgbmV3VGV4dDogdGhpcy5lZGl0b3IuY2hpbGRyZW5bMF0gYXMgRWxlbWVudCwgb3BlcmF0aW9uczogdGhpcy5lZGl0b3Iub3BlcmF0aW9ucyB9KTtcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7fVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnRleHRQbHVnaW5zKSB7XG4gICAgICAgICAgICB0aGlzLnRleHRQbHVnaW5zLmZvckVhY2gocGx1Z2luID0+IHtcbiAgICAgICAgICAgICAgICBwbHVnaW4odGhpcy5lZGl0b3IpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5lZGl0b3IuYm9hcmQgPSB0aGlzLmJvYXJkO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5hZnRlckluaXQgJiYgdGhpcy5hZnRlckluaXQodGhpcy5lZGl0b3IpO1xuICAgIH1cblxuICAgIHJlbmRlckVsZW1lbnQgPSAoZWxlbWVudDogRWxlbWVudCkgPT4ge1xuICAgICAgICBjb25zdCByZW5kZXIgPSB0aGlzLmVkaXRvci5yZW5kZXJFbGVtZW50O1xuICAgICAgICBpZiAocmVuZGVyICYmIHJlbmRlcihlbGVtZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuIHJlbmRlcihlbGVtZW50KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICgoZWxlbWVudCBhcyBMaW5rRWxlbWVudCkudHlwZSA9PT0gJ2xpbmsnKSB7XG4gICAgICAgICAgICByZXR1cm4gUGxhaXRMaW5rTm9kZUNvbXBvbmVudDtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBQYXJhZ3JhcGhFbGVtZW50Q29tcG9uZW50O1xuICAgIH07XG5cbiAgICByZW5kZXJUZXh0OiBhbnkgPSAodGV4dDogVGV4dCk6IFBsYWl0VGV4dE5vZGVDb21wb25lbnQgfCBudWxsID0+IHtcbiAgICAgICAgZm9yIChjb25zdCBrZXkgaW4gTWFya1R5cGVzKSB7XG4gICAgICAgICAgICBpZiAoKHRleHQgYXMgYW55KVsoTWFya1R5cGVzIGFzIGFueSlba2V5XV0pIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gUGxhaXRUZXh0Tm9kZUNvbXBvbmVudCBhcyBhbnk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfTtcblxuICAgIGNvbXBvc2l0aW9uU3RhcnQgPSAoZXZlbnQ6IENvbXBvc2l0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5vbkNvbXBvc2l0aW9uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgY29tcG9zaXRpb25VcGRhdGUgPSAoZXZlbnQ6IENvbXBvc2l0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5vbkNvbXBvc2l0aW9uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgY29tcG9zaXRpb25FbmQgPSAoZXZlbnQ6IENvbXBvc2l0aW9uRXZlbnQpID0+IHtcbiAgICAgICAgdGhpcy5vbkNvbXBvc2l0aW9uKGV2ZW50KTtcbiAgICB9O1xuXG4gICAgb25LZXlkb3duID0gKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChpc0tleUhvdGtleSgnbW9kK2EnLCBldmVudCkpIHtcbiAgICAgICAgICAgIFRyYW5zZm9ybXMuc2VsZWN0KHRoaXMuZWRpdG9yLCBbMF0pO1xuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmVkaXRvci5vbktleWRvd24oZXZlbnQpO1xuICAgIH07XG5cbiAgICBzY3JvbGxTZWxlY3Rpb25JbnRvVmlldyA9ICgpID0+IHtcbiAgICAgICAgLy8gcHJldmVudCBhdXRvIHNjcm9sbFxuICAgIH1cbn1cbiIsIjxzbGF0ZS1lZGl0YWJsZVxuICAgICNzbGF0ZUVkaXRhYmxlXG4gICAgW2VkaXRvcl09XCJlZGl0b3JcIlxuICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgWyhuZ01vZGVsKV09XCJjaGlsZHJlblwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwidmFsdWVDaGFuZ2UoKVwiXG4gICAgW2tleWRvd25dPVwib25LZXlkb3duXCJcbiAgICBbcmVuZGVyRWxlbWVudF09XCJyZW5kZXJFbGVtZW50XCJcbiAgICBbY29tcG9zaXRpb25TdGFydF09XCJjb21wb3NpdGlvblN0YXJ0XCJcbiAgICBbY29tcG9zaXRpb25VcGRhdGVdPVwiY29tcG9zaXRpb25VcGRhdGVcIlxuICAgIFtjb21wb3NpdGlvbkVuZF09XCJjb21wb3NpdGlvbkVuZFwiXG4gICAgW3JlbmRlclRleHRdPVwicmVuZGVyVGV4dFwiXG4gICAgW25nQ2xhc3NdPVwieydlZGl0aW5nJzogIXJlYWRvbmx5fVwiXG4gICAgW3Njcm9sbFNlbGVjdGlvbkludG9WaWV3XT1cInNjcm9sbFNlbGVjdGlvbkludG9WaWV3XCJcbj48L3NsYXRlLWVkaXRhYmxlPlxuIl19
|
|
@@ -298,6 +298,9 @@ class PlaitTextComponent {
|
|
|
298
298
|
}
|
|
299
299
|
this.editor.onKeydown(event);
|
|
300
300
|
};
|
|
301
|
+
this.scrollSelectionIntoView = () => {
|
|
302
|
+
// prevent auto scroll
|
|
303
|
+
};
|
|
301
304
|
}
|
|
302
305
|
valueChange() {
|
|
303
306
|
this.onChange({ newText: this.editor.children[0], operations: this.editor.operations });
|
|
@@ -315,11 +318,11 @@ class PlaitTextComponent {
|
|
|
315
318
|
this.afterInit && this.afterInit(this.editor);
|
|
316
319
|
}
|
|
317
320
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitTextComponent, deps: [{ token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
318
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: PlaitTextComponent, isStandalone: true, selector: "plait-text", inputs: { textPlugins: "textPlugins", text: "text", readonly: "readonly", onChange: "onChange", afterInit: "afterInit", onComposition: "onComposition", board: "board" }, host: { properties: { "class": "this.hostClass" } }, viewQueries: [{ propertyName: "slateEditable", first: true, predicate: ["slateEditable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n></slate-editable>\n", dependencies: [{ kind: "component", type: SlateEditable, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "scrollSelectionIntoView", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionUpdate", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
321
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.4", type: PlaitTextComponent, isStandalone: true, selector: "plait-text", inputs: { textPlugins: "textPlugins", text: "text", readonly: "readonly", onChange: "onChange", afterInit: "afterInit", onComposition: "onComposition", board: "board" }, host: { properties: { "class": "this.hostClass" } }, viewQueries: [{ propertyName: "slateEditable", first: true, predicate: ["slateEditable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n [scrollSelectionIntoView]=\"scrollSelectionIntoView\"\n></slate-editable>\n", dependencies: [{ kind: "component", type: SlateEditable, selector: "slate-editable", inputs: ["editor", "renderElement", "renderLeaf", "renderText", "decorate", "placeholderDecorate", "scrollSelectionIntoView", "isStrictDecorate", "trackBy", "readonly", "placeholder", "beforeInput", "blur", "click", "compositionEnd", "compositionUpdate", "compositionStart", "copy", "cut", "dragOver", "dragStart", "dragEnd", "drop", "focus", "keydown", "paste", "spellCheck", "autoCorrect", "autoCapitalize"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] }); }
|
|
319
322
|
}
|
|
320
323
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.4", ngImport: i0, type: PlaitTextComponent, decorators: [{
|
|
321
324
|
type: Component,
|
|
322
|
-
args: [{ selector: 'plait-text', standalone: true, imports: [SlateEditable, FormsModule, CommonModule], template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n></slate-editable>\n" }]
|
|
325
|
+
args: [{ selector: 'plait-text', standalone: true, imports: [SlateEditable, FormsModule, CommonModule], template: "<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n [scrollSelectionIntoView]=\"scrollSelectionIntoView\"\n></slate-editable>\n" }]
|
|
323
326
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { hostClass: [{
|
|
324
327
|
type: HostBinding,
|
|
325
328
|
args: ['class']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plait-angular-text.mjs","sources":["../../../packages/angular-text/src/plugins/link/link.component.ts","../../../packages/angular-text/src/plugins/mark-hotkey/with-mark-hotkey.ts","../../../packages/angular-text/src/plugins/paragraph/paragraph.component.ts","../../../packages/angular-text/src/plugins/with-selection.ts","../../../packages/angular-text/src/plugins/with-text.ts","../../../packages/angular-text/src/text-node/text.component.ts","../../../packages/angular-text/src/plugins/link/with-link-insert.ts","../../../packages/angular-text/src/text/text.component.ts","../../../packages/angular-text/src/text/text.component.html","../../../packages/angular-text/src/public-api.ts","../../../packages/angular-text/src/plait-angular-text.ts"],"sourcesContent":["import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { LinkElement } from '@plait/common';\nimport { BaseElementComponent } from 'slate-angular';\n\n@Component({\n selector: 'a[plaitLink]',\n template: `\n <span contenteditable=\"false\" class=\"link-break-char\">{{ inlineChromiumBugfix }}</span>\n <span #outletParent></span>\n <span contenteditable=\"false\" class=\"link-break-char\">{{ inlineChromiumBugfix }}</span>\n `,\n host: {\n '[attr.href]': 'element.url',\n target: '_blank',\n class: 'plait-link-node'\n },\n standalone: true\n})\nexport class PlaitLinkNodeComponent extends BaseElementComponent<LinkElement> implements OnInit {\n // Put this at the start and end of an inline component to work around this Chromium bug:\n // https://bugs.chromium.org/p/chromium/issues/detail?id=1249405\n inlineChromiumBugfix = String.fromCodePoint(160);\n\n @ViewChild('outletParent', { read: ElementRef, static: true })\n outletParent!: ElementRef;\n\n getOutletParent = () => {\n return this.outletParent.nativeElement;\n };\n\n ngOnInit() {\n super.ngOnInit();\n }\n}\n","import { AngularEditor } from 'slate-angular';\nimport { MarkEditor, markShortcuts, withMark } from '@plait/text-plugins';\n\nexport const withMarkHotkey = <T extends AngularEditor & MarkEditor>(editor: T): T => {\n const e = editor;\n\n const { onKeydown } = e;\n\n e.onKeydown = (event: KeyboardEvent) => {\n markShortcuts(editor, event);\n onKeydown(event);\n };\n\n return withMark(e);\n};\n","import { Component, ChangeDetectionStrategy, OnInit } from '@angular/core';\nimport { ParagraphElement } from '@plait/common';\nimport { BaseElementComponent } from 'slate-angular';\n\n@Component({\n selector: 'div[plaitTextParagraphElement]',\n template: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n host: {\n class: 'plait-text-paragraph'\n }\n})\nexport class ParagraphElementComponent extends BaseElementComponent<ParagraphElement> implements OnInit {\n ngOnInit(): void {\n super.ngOnInit();\n this.applyAlign();\n }\n\n onContextChange(): void {\n super.onContextChange();\n if (this.initialized) {\n this.applyAlign();\n }\n }\n\n applyAlign() {\n if (this.element.align) {\n if (this.nativeElement.style.textAlign !== this.element.align) {\n this.nativeElement.style.textAlign = this.element.align;\n }\n } else if (this.nativeElement.style.textAlign) {\n this.nativeElement.style.removeProperty('text-align');\n }\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n }\n}\n","import { Editor, Element, Transforms, Range, Path } from 'slate';\nimport { AngularEditor, hotkeys } from 'slate-angular';\n\nexport const withSelection = <T extends AngularEditor>(editor: T): T => {\n const { onKeydown } = editor;\n\n editor.onKeydown = (event: KeyboardEvent) => {\n const { selection } = editor;\n if (!selection || !selection.anchor || !selection.focus) {\n onKeydown(event);\n return;\n }\n const isMoveBackward = hotkeys.isMoveBackward(event);\n const isMoveForward = hotkeys.isMoveForward(event);\n const isCollapsed = selection && Range.isCollapsed(selection);\n const isInlineNode = isInline(editor);\n if (isCollapsed && isMoveForward) {\n let isInlineCodeBefore = false;\n if (!isInlineNode) {\n try {\n const { path } = Editor.after(editor, selection)!;\n if (path) {\n isInlineCodeBefore = isInline(editor, path);\n }\n } catch (error) {}\n }\n if (isInlineNode || isInlineCodeBefore) {\n event.preventDefault();\n Transforms.move(editor, { unit: 'offset' });\n return;\n }\n }\n if (isCollapsed && isMoveBackward) {\n let isInlineCodeAfter = false;\n if (!isInlineNode) {\n try {\n const { path } = Editor.before(editor, selection)!;\n isInlineCodeAfter = isInline(editor, path);\n } catch (error) {}\n }\n if (isInlineNode || isInlineCodeAfter) {\n event.preventDefault();\n Transforms.move(editor, { unit: 'offset', reverse: true });\n return;\n }\n }\n onKeydown(event);\n };\n\n return editor;\n};\n\nexport const isInline = (editor: Editor, path?: Path): boolean => {\n const [inlineNode] = Editor.nodes(editor, {\n at: path ? path : editor.selection?.anchor.path,\n match: n => Element.isElement(n) && Editor.isInline(editor, n) && !Editor.isVoid(editor, n)\n });\n return !!inlineNode;\n};\n","import { PlaitBoard } from '@plait/core';\nimport { CLIPBOARD_FORMAT_KEY } from '@plait/text-plugins';\nimport { AngularEditor } from 'slate-angular';\nimport { PlaitTextEditor } from './text.editor';\n\nexport const withText = <T extends AngularEditor>(editor: T, board: PlaitBoard) => {\n const e = editor as T & PlaitTextEditor;\n const { insertData } = e;\n\n e.insertBreak = () => {\n editor.insertText('\\n');\n };\n\n e.insertData = (data: DataTransfer) => {\n let text = data.getData('text/plain');\n let plaitData = data.getData(`application/${CLIPBOARD_FORMAT_KEY}`);\n if (!plaitData && text) {\n if (text.endsWith('\\n')) {\n text = text.substring(0, text.length - 1);\n }\n text = text.trim().replace(/\\t+/g, ' ');\n e.insertText(text);\n return;\n }\n insertData(data);\n };\n\n e.board = board;\n\n return e;\n};\n","import { ChangeDetectorRef, Component, ElementRef, Renderer2 } from '@angular/core';\nimport { CustomText } from '@plait/common';\nimport { MarkTypes } from '@plait/text-plugins';\nimport { BaseTextComponent } from 'slate-angular';\n\n@Component({\n selector: 'span[plaitText]',\n template: ``,\n host: {\n 'data-slate-node': 'text'\n },\n standalone: true\n})\nexport class PlaitTextNodeComponent extends BaseTextComponent<CustomText> {\n constructor(public elementRef: ElementRef, public renderer2: Renderer2, cdr: ChangeDetectorRef) {\n super(elementRef, cdr);\n }\n\n excludes = ['color', 'font-size', 'text'];\n attributes: string[] = [];\n\n applyTextMark() {\n this.attributes.forEach(attr => {\n this.renderer2.removeAttribute(this.elementRef.nativeElement, attr);\n });\n this.attributes = [];\n for (const key in this.text) {\n if (Object.prototype.hasOwnProperty.call(this.text, key) && !this.excludes.includes(key)) {\n const attr = `the-${key}`;\n this.renderer2.setAttribute(this.elementRef.nativeElement, attr, 'true');\n this.attributes.push(attr);\n }\n }\n\n const fontSize = this.text[MarkTypes.fontSize];\n if (fontSize) {\n this.renderer2.setAttribute(this.elementRef.nativeElement, `plait-${MarkTypes.fontSize}`, fontSize);\n } else {\n this.renderer2.removeAttribute(this.elementRef.nativeElement, `plait-${MarkTypes.fontSize}`);\n }\n\n if (this.text[MarkTypes.color]) {\n this.renderer2.setStyle(this.elementRef.nativeElement, 'color', this.text[MarkTypes.color]);\n } else {\n this.renderer2.removeStyle(this.elementRef.nativeElement, 'color');\n }\n }\n\n onContextChange() {\n super.onContextChange();\n this.applyTextMark();\n }\n}\n","import { Transforms } from 'slate';\nimport { AngularEditor } from 'slate-angular';\nimport { LinkEditor, getTextFromClipboard, isUrl, withLink } from '@plait/text-plugins';\n\nexport const withPasteLink = <T extends AngularEditor>(editor: T): T => {\n const { insertData } = editor;\n editor.insertData = data => {\n const text = getTextFromClipboard(data);\n if (typeof text === 'string' && text && isUrl(text)) {\n LinkEditor.wrapLink(editor, text, text);\n Transforms.move(editor, { distance: 1, unit: 'offset' });\n } else {\n insertData(data);\n }\n };\n\n return withLink(editor);\n};\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n ViewChild\n} from '@angular/core';\nimport { isKeyHotkey } from 'is-hotkey';\nimport { Editor, Element, Text, Transforms, createEditor } from 'slate';\nimport { SlateEditable, withAngular } from 'slate-angular';\nimport { withHistory } from 'slate-history';\nimport { PlaitLinkNodeComponent } from '../plugins/link/link.component';\nimport { withMarkHotkey } from '../plugins/mark-hotkey/with-mark-hotkey';\nimport { ParagraphElementComponent } from '../plugins/paragraph/paragraph.component';\nimport { withSelection } from '../plugins/with-selection';\nimport { withText } from '../plugins/with-text';\nimport { PlaitTextNodeComponent } from '../text-node/text.component';\nimport { FormsModule } from '@angular/forms';\nimport { LinkElement, TextChangeData, TextPlugin } from '@plait/common';\nimport { CLIPBOARD_FORMAT_KEY, MarkTypes } from '@plait/text-plugins';\nimport { withPasteLink } from '../plugins/link/with-link-insert';\nimport { CommonModule } from '@angular/common';\nimport { PlaitBoard } from '@plait/core';\n\n@Component({\n selector: 'plait-text',\n templateUrl: './text.component.html',\n standalone: true,\n imports: [SlateEditable, FormsModule, CommonModule]\n})\nexport class PlaitTextComponent implements OnInit, AfterViewInit, OnChanges {\n @HostBinding('class') hostClass = 'plait-text-container';\n\n children: Element[] = [];\n\n @Input() textPlugins?: TextPlugin[];\n\n @Input() set text(text: Element) {\n this.children = [text];\n this.cdr.markForCheck();\n }\n\n @Input() readonly = true;\n\n @ViewChild('slateEditable')\n slateEditable!: SlateEditable;\n\n @Input()\n onChange!: (data: TextChangeData) => void;\n\n @Input()\n afterInit?: (editor: Editor) => void;\n\n @Input()\n onComposition!: (event: CompositionEvent) => void;\n\n @Input()\n board!: PlaitBoard;\n\n editor = withSelection(\n withPasteLink(withMarkHotkey(withText(withHistory(withAngular(createEditor(), CLIPBOARD_FORMAT_KEY)), this.board)))\n );\n\n nativeElement() {\n return this.elementRef.nativeElement;\n }\n\n constructor(public renderer2: Renderer2, private cdr: ChangeDetectorRef, public elementRef: ElementRef<HTMLElement>) {}\n\n valueChange() {\n this.onChange({ newText: this.editor.children[0] as Element, operations: this.editor.operations });\n }\n\n ngOnChanges(changes: SimpleChanges): void {}\n\n ngOnInit(): void {\n if (this.textPlugins) {\n this.textPlugins.forEach(plugin => {\n plugin(this.editor);\n });\n }\n this.editor.board = this.board;\n }\n\n ngAfterViewInit(): void {\n this.afterInit && this.afterInit(this.editor);\n }\n\n renderElement = (element: Element) => {\n const render = this.editor.renderElement;\n if (render && render(element)) {\n return render(element);\n }\n\n if ((element as LinkElement).type === 'link') {\n return PlaitLinkNodeComponent;\n }\n\n return ParagraphElementComponent;\n };\n\n renderText: any = (text: Text): PlaitTextNodeComponent | null => {\n for (const key in MarkTypes) {\n if ((text as any)[(MarkTypes as any)[key]]) {\n return PlaitTextNodeComponent as any;\n }\n }\n return null;\n };\n\n compositionStart = (event: CompositionEvent) => {\n this.onComposition(event);\n };\n\n compositionUpdate = (event: CompositionEvent) => {\n this.onComposition(event);\n };\n\n compositionEnd = (event: CompositionEvent) => {\n this.onComposition(event);\n };\n\n onKeydown = (event: KeyboardEvent) => {\n if (isKeyHotkey('mod+a', event)) {\n Transforms.select(this.editor, [0]);\n event.preventDefault();\n }\n this.editor.onKeydown(event);\n };\n}\n","<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n></slate-editable>\n","/*\n * Public API Surface of richtext\n */\nexport * from './text/text.component';\nexport * from './plugins/text.editor';\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":"plait-angular-text.mjs","sources":["../../../packages/angular-text/src/plugins/link/link.component.ts","../../../packages/angular-text/src/plugins/mark-hotkey/with-mark-hotkey.ts","../../../packages/angular-text/src/plugins/paragraph/paragraph.component.ts","../../../packages/angular-text/src/plugins/with-selection.ts","../../../packages/angular-text/src/plugins/with-text.ts","../../../packages/angular-text/src/text-node/text.component.ts","../../../packages/angular-text/src/plugins/link/with-link-insert.ts","../../../packages/angular-text/src/text/text.component.ts","../../../packages/angular-text/src/text/text.component.html","../../../packages/angular-text/src/public-api.ts","../../../packages/angular-text/src/plait-angular-text.ts"],"sourcesContent":["import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\nimport { LinkElement } from '@plait/common';\nimport { BaseElementComponent } from 'slate-angular';\n\n@Component({\n selector: 'a[plaitLink]',\n template: `\n <span contenteditable=\"false\" class=\"link-break-char\">{{ inlineChromiumBugfix }}</span>\n <span #outletParent></span>\n <span contenteditable=\"false\" class=\"link-break-char\">{{ inlineChromiumBugfix }}</span>\n `,\n host: {\n '[attr.href]': 'element.url',\n target: '_blank',\n class: 'plait-link-node'\n },\n standalone: true\n})\nexport class PlaitLinkNodeComponent extends BaseElementComponent<LinkElement> implements OnInit {\n // Put this at the start and end of an inline component to work around this Chromium bug:\n // https://bugs.chromium.org/p/chromium/issues/detail?id=1249405\n inlineChromiumBugfix = String.fromCodePoint(160);\n\n @ViewChild('outletParent', { read: ElementRef, static: true })\n outletParent!: ElementRef;\n\n getOutletParent = () => {\n return this.outletParent.nativeElement;\n };\n\n ngOnInit() {\n super.ngOnInit();\n }\n}\n","import { AngularEditor } from 'slate-angular';\nimport { MarkEditor, markShortcuts, withMark } from '@plait/text-plugins';\n\nexport const withMarkHotkey = <T extends AngularEditor & MarkEditor>(editor: T): T => {\n const e = editor;\n\n const { onKeydown } = e;\n\n e.onKeydown = (event: KeyboardEvent) => {\n markShortcuts(editor, event);\n onKeydown(event);\n };\n\n return withMark(e);\n};\n","import { Component, ChangeDetectionStrategy, OnInit } from '@angular/core';\nimport { ParagraphElement } from '@plait/common';\nimport { BaseElementComponent } from 'slate-angular';\n\n@Component({\n selector: 'div[plaitTextParagraphElement]',\n template: ``,\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n host: {\n class: 'plait-text-paragraph'\n }\n})\nexport class ParagraphElementComponent extends BaseElementComponent<ParagraphElement> implements OnInit {\n ngOnInit(): void {\n super.ngOnInit();\n this.applyAlign();\n }\n\n onContextChange(): void {\n super.onContextChange();\n if (this.initialized) {\n this.applyAlign();\n }\n }\n\n applyAlign() {\n if (this.element.align) {\n if (this.nativeElement.style.textAlign !== this.element.align) {\n this.nativeElement.style.textAlign = this.element.align;\n }\n } else if (this.nativeElement.style.textAlign) {\n this.nativeElement.style.removeProperty('text-align');\n }\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n }\n}\n","import { Editor, Element, Transforms, Range, Path } from 'slate';\nimport { AngularEditor, hotkeys } from 'slate-angular';\n\nexport const withSelection = <T extends AngularEditor>(editor: T): T => {\n const { onKeydown } = editor;\n\n editor.onKeydown = (event: KeyboardEvent) => {\n const { selection } = editor;\n if (!selection || !selection.anchor || !selection.focus) {\n onKeydown(event);\n return;\n }\n const isMoveBackward = hotkeys.isMoveBackward(event);\n const isMoveForward = hotkeys.isMoveForward(event);\n const isCollapsed = selection && Range.isCollapsed(selection);\n const isInlineNode = isInline(editor);\n if (isCollapsed && isMoveForward) {\n let isInlineCodeBefore = false;\n if (!isInlineNode) {\n try {\n const { path } = Editor.after(editor, selection)!;\n if (path) {\n isInlineCodeBefore = isInline(editor, path);\n }\n } catch (error) {}\n }\n if (isInlineNode || isInlineCodeBefore) {\n event.preventDefault();\n Transforms.move(editor, { unit: 'offset' });\n return;\n }\n }\n if (isCollapsed && isMoveBackward) {\n let isInlineCodeAfter = false;\n if (!isInlineNode) {\n try {\n const { path } = Editor.before(editor, selection)!;\n isInlineCodeAfter = isInline(editor, path);\n } catch (error) {}\n }\n if (isInlineNode || isInlineCodeAfter) {\n event.preventDefault();\n Transforms.move(editor, { unit: 'offset', reverse: true });\n return;\n }\n }\n onKeydown(event);\n };\n\n return editor;\n};\n\nexport const isInline = (editor: Editor, path?: Path): boolean => {\n const [inlineNode] = Editor.nodes(editor, {\n at: path ? path : editor.selection?.anchor.path,\n match: n => Element.isElement(n) && Editor.isInline(editor, n) && !Editor.isVoid(editor, n)\n });\n return !!inlineNode;\n};\n","import { PlaitBoard } from '@plait/core';\nimport { CLIPBOARD_FORMAT_KEY } from '@plait/text-plugins';\nimport { AngularEditor } from 'slate-angular';\nimport { PlaitTextEditor } from './text.editor';\n\nexport const withText = <T extends AngularEditor>(editor: T, board: PlaitBoard) => {\n const e = editor as T & PlaitTextEditor;\n const { insertData } = e;\n\n e.insertBreak = () => {\n editor.insertText('\\n');\n };\n\n e.insertData = (data: DataTransfer) => {\n let text = data.getData('text/plain');\n let plaitData = data.getData(`application/${CLIPBOARD_FORMAT_KEY}`);\n if (!plaitData && text) {\n if (text.endsWith('\\n')) {\n text = text.substring(0, text.length - 1);\n }\n text = text.trim().replace(/\\t+/g, ' ');\n e.insertText(text);\n return;\n }\n insertData(data);\n };\n\n e.board = board;\n\n return e;\n};\n","import { ChangeDetectorRef, Component, ElementRef, Renderer2 } from '@angular/core';\nimport { CustomText } from '@plait/common';\nimport { MarkTypes } from '@plait/text-plugins';\nimport { BaseTextComponent } from 'slate-angular';\n\n@Component({\n selector: 'span[plaitText]',\n template: ``,\n host: {\n 'data-slate-node': 'text'\n },\n standalone: true\n})\nexport class PlaitTextNodeComponent extends BaseTextComponent<CustomText> {\n constructor(public elementRef: ElementRef, public renderer2: Renderer2, cdr: ChangeDetectorRef) {\n super(elementRef, cdr);\n }\n\n excludes = ['color', 'font-size', 'text'];\n attributes: string[] = [];\n\n applyTextMark() {\n this.attributes.forEach(attr => {\n this.renderer2.removeAttribute(this.elementRef.nativeElement, attr);\n });\n this.attributes = [];\n for (const key in this.text) {\n if (Object.prototype.hasOwnProperty.call(this.text, key) && !this.excludes.includes(key)) {\n const attr = `the-${key}`;\n this.renderer2.setAttribute(this.elementRef.nativeElement, attr, 'true');\n this.attributes.push(attr);\n }\n }\n\n const fontSize = this.text[MarkTypes.fontSize];\n if (fontSize) {\n this.renderer2.setAttribute(this.elementRef.nativeElement, `plait-${MarkTypes.fontSize}`, fontSize);\n } else {\n this.renderer2.removeAttribute(this.elementRef.nativeElement, `plait-${MarkTypes.fontSize}`);\n }\n\n if (this.text[MarkTypes.color]) {\n this.renderer2.setStyle(this.elementRef.nativeElement, 'color', this.text[MarkTypes.color]);\n } else {\n this.renderer2.removeStyle(this.elementRef.nativeElement, 'color');\n }\n }\n\n onContextChange() {\n super.onContextChange();\n this.applyTextMark();\n }\n}\n","import { Transforms } from 'slate';\nimport { AngularEditor } from 'slate-angular';\nimport { LinkEditor, getTextFromClipboard, isUrl, withLink } from '@plait/text-plugins';\n\nexport const withPasteLink = <T extends AngularEditor>(editor: T): T => {\n const { insertData } = editor;\n editor.insertData = data => {\n const text = getTextFromClipboard(data);\n if (typeof text === 'string' && text && isUrl(text)) {\n LinkEditor.wrapLink(editor, text, text);\n Transforms.move(editor, { distance: 1, unit: 'offset' });\n } else {\n insertData(data);\n }\n };\n\n return withLink(editor);\n};\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n ViewChild\n} from '@angular/core';\nimport { isKeyHotkey } from 'is-hotkey';\nimport { Editor, Element, Text, Transforms, createEditor } from 'slate';\nimport { SlateEditable, withAngular } from 'slate-angular';\nimport { withHistory } from 'slate-history';\nimport { PlaitLinkNodeComponent } from '../plugins/link/link.component';\nimport { withMarkHotkey } from '../plugins/mark-hotkey/with-mark-hotkey';\nimport { ParagraphElementComponent } from '../plugins/paragraph/paragraph.component';\nimport { withSelection } from '../plugins/with-selection';\nimport { withText } from '../plugins/with-text';\nimport { PlaitTextNodeComponent } from '../text-node/text.component';\nimport { FormsModule } from '@angular/forms';\nimport { LinkElement, TextChangeData, TextPlugin } from '@plait/common';\nimport { CLIPBOARD_FORMAT_KEY, MarkTypes } from '@plait/text-plugins';\nimport { withPasteLink } from '../plugins/link/with-link-insert';\nimport { CommonModule } from '@angular/common';\nimport { PlaitBoard } from '@plait/core';\n\n@Component({\n selector: 'plait-text',\n templateUrl: './text.component.html',\n standalone: true,\n imports: [SlateEditable, FormsModule, CommonModule]\n})\nexport class PlaitTextComponent implements OnInit, AfterViewInit, OnChanges {\n @HostBinding('class') hostClass = 'plait-text-container';\n\n children: Element[] = [];\n\n @Input() textPlugins?: TextPlugin[];\n\n @Input() set text(text: Element) {\n this.children = [text];\n this.cdr.markForCheck();\n }\n\n @Input() readonly = true;\n\n @ViewChild('slateEditable')\n slateEditable!: SlateEditable;\n\n @Input()\n onChange!: (data: TextChangeData) => void;\n\n @Input()\n afterInit?: (editor: Editor) => void;\n\n @Input()\n onComposition!: (event: CompositionEvent) => void;\n\n @Input()\n board!: PlaitBoard;\n\n editor = withSelection(\n withPasteLink(withMarkHotkey(withText(withHistory(withAngular(createEditor(), CLIPBOARD_FORMAT_KEY)), this.board)))\n );\n\n nativeElement() {\n return this.elementRef.nativeElement;\n }\n\n constructor(public renderer2: Renderer2, private cdr: ChangeDetectorRef, public elementRef: ElementRef<HTMLElement>) {}\n\n valueChange() {\n this.onChange({ newText: this.editor.children[0] as Element, operations: this.editor.operations });\n }\n\n ngOnChanges(changes: SimpleChanges): void {}\n\n ngOnInit(): void {\n if (this.textPlugins) {\n this.textPlugins.forEach(plugin => {\n plugin(this.editor);\n });\n }\n this.editor.board = this.board;\n }\n\n ngAfterViewInit(): void {\n this.afterInit && this.afterInit(this.editor);\n }\n\n renderElement = (element: Element) => {\n const render = this.editor.renderElement;\n if (render && render(element)) {\n return render(element);\n }\n\n if ((element as LinkElement).type === 'link') {\n return PlaitLinkNodeComponent;\n }\n\n return ParagraphElementComponent;\n };\n\n renderText: any = (text: Text): PlaitTextNodeComponent | null => {\n for (const key in MarkTypes) {\n if ((text as any)[(MarkTypes as any)[key]]) {\n return PlaitTextNodeComponent as any;\n }\n }\n return null;\n };\n\n compositionStart = (event: CompositionEvent) => {\n this.onComposition(event);\n };\n\n compositionUpdate = (event: CompositionEvent) => {\n this.onComposition(event);\n };\n\n compositionEnd = (event: CompositionEvent) => {\n this.onComposition(event);\n };\n\n onKeydown = (event: KeyboardEvent) => {\n if (isKeyHotkey('mod+a', event)) {\n Transforms.select(this.editor, [0]);\n event.preventDefault();\n }\n this.editor.onKeydown(event);\n };\n\n scrollSelectionIntoView = () => {\n // prevent auto scroll\n }\n}\n","<slate-editable\n #slateEditable\n [editor]=\"editor\"\n [readonly]=\"readonly\"\n [(ngModel)]=\"children\"\n (ngModelChange)=\"valueChange()\"\n [keydown]=\"onKeydown\"\n [renderElement]=\"renderElement\"\n [compositionStart]=\"compositionStart\"\n [compositionUpdate]=\"compositionUpdate\"\n [compositionEnd]=\"compositionEnd\"\n [renderText]=\"renderText\"\n [ngClass]=\"{'editing': !readonly}\"\n [scrollSelectionIntoView]=\"scrollSelectionIntoView\"\n></slate-editable>\n","/*\n * Public API Surface of richtext\n */\nexport * from './text/text.component';\nexport * from './plugins/text.editor';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/text/text.component.d.ts
CHANGED
|
@@ -31,6 +31,7 @@ export declare class PlaitTextComponent implements OnInit, AfterViewInit, OnChan
|
|
|
31
31
|
compositionUpdate: (event: CompositionEvent) => void;
|
|
32
32
|
compositionEnd: (event: CompositionEvent) => void;
|
|
33
33
|
onKeydown: (event: KeyboardEvent) => void;
|
|
34
|
+
scrollSelectionIntoView: () => void;
|
|
34
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<PlaitTextComponent, never>;
|
|
35
36
|
static ɵcmp: i0.ɵɵComponentDeclaration<PlaitTextComponent, "plait-text", never, { "textPlugins": { "alias": "textPlugins"; "required": false; }; "text": { "alias": "text"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "onChange": { "alias": "onChange"; "required": false; }; "afterInit": { "alias": "afterInit"; "required": false; }; "onComposition": { "alias": "onComposition"; "required": false; }; "board": { "alias": "board"; "required": false; }; }, {}, never, never, true, never>;
|
|
36
37
|
}
|