@ecodev/natural-editor 42.0.0 → 42.3.0
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.
- package/esm2020/lib/class-dialog/class-dialog.component.mjs +37 -0
- package/esm2020/lib/color-dialog/color-dialog.component.mjs +184 -0
- package/esm2020/lib/custom-css/custom-css.directive.mjs +78 -0
- package/esm2020/lib/editor/editor.component.mjs +8 -8
- package/esm2020/lib/editor.module.mjs +24 -16
- package/esm2020/lib/link-dialog/link-dialog.component.mjs +3 -3
- package/esm2020/lib/utils/image.mjs +3 -3
- package/esm2020/lib/utils/items/cell-background-color-item.mjs +55 -0
- package/esm2020/lib/utils/items/class-item.mjs +86 -0
- package/esm2020/lib/utils/items/horizontal-rule-item.mjs +24 -0
- package/esm2020/lib/utils/items/item.mjs +39 -0
- package/esm2020/lib/utils/items/link-item.mjs +40 -0
- package/esm2020/lib/utils/items/table-item.mjs +43 -0
- package/esm2020/lib/utils/items/text-align-item.mjs +78 -0
- package/esm2020/lib/utils/items/utils.mjs +41 -0
- package/esm2020/lib/utils/items/wrap-list-item.mjs +6 -0
- package/esm2020/lib/utils/menu.mjs +45 -128
- package/esm2020/lib/utils/schema/paragraph-with-alignment.mjs +50 -0
- package/esm2020/lib/utils/schema/schema.mjs +51 -0
- package/esm2020/lib/utils/schema/table.mjs +113 -0
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/ecodev-natural-editor.mjs +754 -194
- package/fesm2015/ecodev-natural-editor.mjs.map +1 -1
- package/fesm2020/ecodev-natural-editor.mjs +748 -196
- package/fesm2020/ecodev-natural-editor.mjs.map +1 -1
- package/lib/class-dialog/class-dialog.component.d.ts +24 -0
- package/lib/color-dialog/color-dialog.component.d.ts +26 -0
- package/lib/custom-css/custom-css.directive.d.ts +29 -0
- package/lib/editor.module.d.ts +19 -16
- package/lib/utils/items/cell-background-color-item.d.ts +5 -0
- package/lib/utils/items/class-item.d.ts +6 -0
- package/lib/utils/items/horizontal-rule-item.d.ts +5 -0
- package/lib/utils/{item.d.ts → items/item.d.ts} +0 -0
- package/lib/utils/items/link-item.d.ts +6 -0
- package/lib/utils/items/table-item.d.ts +4 -0
- package/lib/utils/{text-align-item.d.ts → items/text-align-item.d.ts} +0 -0
- package/lib/utils/items/utils.d.ts +18 -0
- package/lib/utils/items/wrap-list-item.d.ts +3 -0
- package/lib/utils/menu.d.ts +2 -2
- package/lib/utils/schema/paragraph-with-alignment.d.ts +8 -0
- package/lib/utils/{schema.d.ts → schema/schema.d.ts} +0 -0
- package/lib/utils/schema/table.d.ts +9 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/esm2020/lib/utils/item.mjs +0 -39
- package/esm2020/lib/utils/paragraph-with-alignment.mjs +0 -43
- package/esm2020/lib/utils/schema.mjs +0 -51
- package/esm2020/lib/utils/table.mjs +0 -37
- package/esm2020/lib/utils/text-align-item.mjs +0 -81
- package/lib/utils/paragraph-with-alignment.d.ts +0 -2
- package/lib/utils/table.d.ts +0 -8
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { OnDestroy } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
/**
|
|
4
|
+
* Prefix all CSS selectors with the given selector
|
|
5
|
+
*
|
|
6
|
+
* This is meant to be relatively simple and might not cover advanced CSS syntax
|
|
7
|
+
*/
|
|
8
|
+
export declare function prefixCss(prefix: string, css: string): string;
|
|
9
|
+
/**
|
|
10
|
+
* Inject custom CSS into component and scope the CSS only to this component
|
|
11
|
+
*
|
|
12
|
+
* Usage :
|
|
13
|
+
*
|
|
14
|
+
* ```html
|
|
15
|
+
* <div [naturalCustomCss]=".my-class {background: red}">
|
|
16
|
+
* <p class="my-class">foo bar</p>
|
|
17
|
+
* </div>
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export declare class NaturalCustomCssDirective implements OnDestroy {
|
|
21
|
+
private readonly document;
|
|
22
|
+
private style;
|
|
23
|
+
private readonly id;
|
|
24
|
+
set naturalCustomCss(value: string | undefined);
|
|
25
|
+
constructor(document: Document);
|
|
26
|
+
ngOnDestroy(): void;
|
|
27
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NaturalCustomCssDirective, never>;
|
|
28
|
+
static ɵdir: i0.ɵɵDirectiveDeclaration<NaturalCustomCssDirective, "[naturalCustomCss]", never, { "naturalCustomCss": "naturalCustomCss"; }, {}, never>;
|
|
29
|
+
}
|
package/lib/editor.module.d.ts
CHANGED
|
@@ -1,21 +1,24 @@
|
|
|
1
1
|
import * as i0 from "@angular/core";
|
|
2
|
-
import * as i1 from "./
|
|
3
|
-
import * as i2 from "./
|
|
4
|
-
import * as i3 from "
|
|
5
|
-
import * as i4 from "
|
|
6
|
-
import * as i5 from "
|
|
7
|
-
import * as i6 from "@angular/
|
|
8
|
-
import * as i7 from "@angular/material/
|
|
9
|
-
import * as i8 from "@angular/material/
|
|
10
|
-
import * as i9 from "@angular/material/
|
|
11
|
-
import * as i10 from "@angular/material/
|
|
12
|
-
import * as i11 from "@angular/material/
|
|
13
|
-
import * as i12 from "@angular/material/
|
|
14
|
-
import * as i13 from "@angular/
|
|
15
|
-
import * as i14 from "@
|
|
16
|
-
import * as i15 from "@angular/material/
|
|
2
|
+
import * as i1 from "./class-dialog/class-dialog.component";
|
|
3
|
+
import * as i2 from "./color-dialog/color-dialog.component";
|
|
4
|
+
import * as i3 from "./link-dialog/link-dialog.component";
|
|
5
|
+
import * as i4 from "./editor/editor.component";
|
|
6
|
+
import * as i5 from "./custom-css/custom-css.directive";
|
|
7
|
+
import * as i6 from "@angular/common";
|
|
8
|
+
import * as i7 from "@angular/material/button";
|
|
9
|
+
import * as i8 from "@angular/material/button-toggle";
|
|
10
|
+
import * as i9 from "@angular/material/dialog";
|
|
11
|
+
import * as i10 from "@angular/material/divider";
|
|
12
|
+
import * as i11 from "@angular/material/form-field";
|
|
13
|
+
import * as i12 from "@angular/material/icon";
|
|
14
|
+
import * as i13 from "@angular/material/input";
|
|
15
|
+
import * as i14 from "@angular/material/menu";
|
|
16
|
+
import * as i15 from "@angular/material/toolbar";
|
|
17
|
+
import * as i16 from "@angular/material/tooltip";
|
|
18
|
+
import * as i17 from "@ecodev/natural";
|
|
19
|
+
import * as i18 from "@angular/forms";
|
|
17
20
|
export declare class NaturalEditorModule {
|
|
18
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<NaturalEditorModule, never>;
|
|
19
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<NaturalEditorModule, [typeof i1.
|
|
22
|
+
static ɵmod: i0.ɵɵNgModuleDeclaration<NaturalEditorModule, [typeof i1.ClassDialogComponent, typeof i2.ColorDialogComponent, typeof i3.LinkDialogComponent, typeof i4.NaturalEditorComponent, typeof i5.NaturalCustomCssDirective], [typeof i6.CommonModule, typeof i7.MatButtonModule, typeof i8.MatButtonToggleModule, typeof i9.MatDialogModule, typeof i10.MatDividerModule, typeof i11.MatFormFieldModule, typeof i12.MatIconModule, typeof i13.MatInputModule, typeof i14.MatMenuModule, typeof i15.MatToolbarModule, typeof i16.MatTooltipModule, typeof i17.NaturalFileModule, typeof i17.NaturalIconModule, typeof i18.ReactiveFormsModule], [typeof i6.CommonModule, typeof i7.MatButtonModule, typeof i8.MatButtonToggleModule, typeof i9.MatDialogModule, typeof i10.MatDividerModule, typeof i11.MatFormFieldModule, typeof i12.MatIconModule, typeof i13.MatInputModule, typeof i14.MatMenuModule, typeof i15.MatToolbarModule, typeof i16.MatTooltipModule, typeof i17.NaturalFileModule, typeof i17.NaturalIconModule, typeof i18.ReactiveFormsModule, typeof i4.NaturalEditorComponent, typeof i5.NaturalCustomCssDirective]>;
|
|
20
23
|
static ɵinj: i0.ɵɵInjectorDeclaration<NaturalEditorModule>;
|
|
21
24
|
}
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { EditorState } from 'prosemirror-state';
|
|
2
|
+
import { MarkType } from 'prosemirror-model';
|
|
3
|
+
import { MenuItem, MenuItemSpec } from 'prosemirror-menu';
|
|
4
|
+
import { Item } from './item';
|
|
5
|
+
import { Command } from 'prosemirror-commands';
|
|
6
|
+
export declare function markActive(state: EditorState, type: MarkType): boolean;
|
|
7
|
+
/**
|
|
8
|
+
* Convert built-in `MenuItem` into our Angular specific `Item`
|
|
9
|
+
*/
|
|
10
|
+
export declare function menuItemToItem(item: MenuItem): Item;
|
|
11
|
+
/**
|
|
12
|
+
* From a `Command`, creates a new `Item` that will have an automatic `enable` spec
|
|
13
|
+
*/
|
|
14
|
+
export declare function cmdToItem(cmd: Command, options?: Partial<MenuItemSpec>): Item;
|
|
15
|
+
/**
|
|
16
|
+
* From a `MarkType`, creates a new `Item` that will have an automatic `active` and `enable` spec
|
|
17
|
+
*/
|
|
18
|
+
export declare function markTypeToItem(markType: MarkType): Item;
|
package/lib/utils/menu.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Schema } from 'prosemirror-model';
|
|
2
2
|
import { MatDialog } from '@angular/material/dialog';
|
|
3
|
-
import { Item } from './item';
|
|
4
|
-
export declare type Key = 'toggleStrong' | 'toggleEm' | 'toggleCode' | 'toggleLink' | 'wrapBulletList' | 'wrapOrderedList' | 'wrapBlockQuote' | 'makeParagraph' | 'makeCodeBlock' | 'makeHead1' | 'makeHead2' | 'makeHead3' | 'makeHead4' | 'makeHead5' | 'makeHead6' | 'alignLeft' | 'alignRight' | 'alignCenter' | 'alignJustify' | 'insertHorizontalRule' | 'joinUp' | 'lift' | 'selectParentNode' | 'undo' | 'redo' | 'insertTable' | 'addColumnBefore' | 'addColumnAfter' | 'deleteColumn' | 'addRowBefore' | 'addRowAfter' | 'deleteRow' | 'deleteTable' | 'mergeCells' | 'splitCell' | 'toggleHeaderColumn' | 'toggleHeaderRow' | 'toggleHeaderCell';
|
|
3
|
+
import { Item } from './items/item';
|
|
4
|
+
export declare type Key = 'toggleStrong' | 'toggleEm' | 'toggleCode' | 'toggleLink' | 'wrapBulletList' | 'wrapOrderedList' | 'wrapBlockQuote' | 'makeParagraph' | 'makeCodeBlock' | 'makeHead1' | 'makeHead2' | 'makeHead3' | 'makeHead4' | 'makeHead5' | 'makeHead6' | 'alignLeft' | 'alignRight' | 'alignCenter' | 'alignJustify' | 'insertHorizontalRule' | 'joinUp' | 'lift' | 'selectParentNode' | 'undo' | 'redo' | 'insertTable' | 'addColumnBefore' | 'addColumnAfter' | 'deleteColumn' | 'addRowBefore' | 'addRowAfter' | 'deleteRow' | 'deleteTable' | 'mergeCells' | 'splitCell' | 'toggleHeaderColumn' | 'toggleHeaderRow' | 'toggleHeaderCell' | 'cellBackgroundColor' | 'tableClass' | 'paragraphClass';
|
|
5
5
|
export declare type MenuItems = Partial<Record<Key, Item>>;
|
|
6
6
|
/**
|
|
7
7
|
* Given a schema, look for default mark and node types in it and
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { NodeSpec } from 'prosemirror-model';
|
|
2
|
+
/**
|
|
3
|
+
* A plain paragraph textblock. Represented in the DOM
|
|
4
|
+
* as a `<p>` element.
|
|
5
|
+
*
|
|
6
|
+
* https://github.com/ProseMirror/prosemirror-schema-basic/blob/master/src/schema-basic.js
|
|
7
|
+
*/
|
|
8
|
+
export declare const paragraphWithAlignment: NodeSpec;
|
|
File without changes
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TableNodes, TableNodesOptions } from 'prosemirror-tables';
|
|
2
|
+
/**
|
|
3
|
+
* This function creates a set of [node
|
|
4
|
+
* specs](http://prosemirror.net/docs/ref/#model.SchemaSpec.nodes) for
|
|
5
|
+
* `table`, `table_row`, and `table_cell` nodes types.
|
|
6
|
+
*
|
|
7
|
+
* It is very directly inspired by prosemirror-table
|
|
8
|
+
*/
|
|
9
|
+
export declare function tableNodes(options: TableNodesOptions): TableNodes;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* One item of the menu.
|
|
3
|
-
*
|
|
4
|
-
* This is the equivalent of `MenuItem` but without all the rendering logic since we use Angular
|
|
5
|
-
* templates for rendering. Also it caches the state of the item everytime the editor state changes,
|
|
6
|
-
* so Angular can query the state as often as needed without performance hit.
|
|
7
|
-
*/
|
|
8
|
-
export class Item {
|
|
9
|
-
constructor(spec) {
|
|
10
|
-
this.spec = spec;
|
|
11
|
-
/**
|
|
12
|
-
* Whether the item is 'active' (for example, the item for toggling the strong mark might be active when the cursor is in strong text).
|
|
13
|
-
*/
|
|
14
|
-
this.active = false;
|
|
15
|
-
/**
|
|
16
|
-
* Button is shown but disabled, because the item cannot be (un-)applied
|
|
17
|
-
*/
|
|
18
|
-
this.disabled = false;
|
|
19
|
-
/**
|
|
20
|
-
* Whether the item is shown at the moment
|
|
21
|
-
*/
|
|
22
|
-
this.show = true;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Update the item state according to the editor state
|
|
26
|
-
*/
|
|
27
|
-
update(view, state) {
|
|
28
|
-
if (this.spec.active) {
|
|
29
|
-
this.active = this.spec.active(state);
|
|
30
|
-
}
|
|
31
|
-
if (this.spec.enable) {
|
|
32
|
-
this.disabled = !this.spec.enable(state);
|
|
33
|
-
}
|
|
34
|
-
if (this.spec.select) {
|
|
35
|
-
this.show = this.spec.select(state);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25hdHVyYWwtZWRpdG9yL3NyYy9saWIvdXRpbHMvaXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTs7Ozs7O0dBTUc7QUFDSCxNQUFNLE9BQU8sSUFBSTtJQWdCYixZQUFtQyxJQUFrQjtRQUFsQixTQUFJLEdBQUosSUFBSSxDQUFjO1FBZnJEOztXQUVHO1FBQ0ksV0FBTSxHQUFHLEtBQUssQ0FBQztRQUV0Qjs7V0FFRztRQUNJLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFeEI7O1dBRUc7UUFDSSxTQUFJLEdBQUcsSUFBSSxDQUFDO0lBRXFDLENBQUM7SUFFekQ7O09BRUc7SUFDSSxNQUFNLENBQUMsSUFBZ0IsRUFBRSxLQUFrQjtRQUM5QyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDekM7UUFFRCxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2xCLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUM1QztRQUVELElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFDbEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN2QztJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7TWVudUl0ZW1TcGVjfSBmcm9tICdwcm9zZW1pcnJvci1tZW51JztcbmltcG9ydCB7RWRpdG9yU3RhdGV9IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7RWRpdG9yVmlld30gZnJvbSAncHJvc2VtaXJyb3Itdmlldyc7XG5cbi8qKlxuICogT25lIGl0ZW0gb2YgdGhlIG1lbnUuXG4gKlxuICogVGhpcyBpcyB0aGUgZXF1aXZhbGVudCBvZiBgTWVudUl0ZW1gIGJ1dCB3aXRob3V0IGFsbCB0aGUgcmVuZGVyaW5nIGxvZ2ljIHNpbmNlIHdlIHVzZSBBbmd1bGFyXG4gKiB0ZW1wbGF0ZXMgZm9yIHJlbmRlcmluZy4gQWxzbyBpdCBjYWNoZXMgdGhlIHN0YXRlIG9mIHRoZSBpdGVtIGV2ZXJ5dGltZSB0aGUgZWRpdG9yIHN0YXRlIGNoYW5nZXMsXG4gKiBzbyBBbmd1bGFyIGNhbiBxdWVyeSB0aGUgc3RhdGUgYXMgb2Z0ZW4gYXMgbmVlZGVkIHdpdGhvdXQgcGVyZm9ybWFuY2UgaGl0LlxuICovXG5leHBvcnQgY2xhc3MgSXRlbSB7XG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgaXRlbSBpcyAnYWN0aXZlJyAoZm9yIGV4YW1wbGUsIHRoZSBpdGVtIGZvciB0b2dnbGluZyB0aGUgc3Ryb25nIG1hcmsgbWlnaHQgYmUgYWN0aXZlIHdoZW4gdGhlIGN1cnNvciBpcyBpbiBzdHJvbmcgdGV4dCkuXG4gICAgICovXG4gICAgcHVibGljIGFjdGl2ZSA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogQnV0dG9uIGlzIHNob3duIGJ1dCBkaXNhYmxlZCwgYmVjYXVzZSB0aGUgaXRlbSBjYW5ub3QgYmUgKHVuLSlhcHBsaWVkXG4gICAgICovXG4gICAgcHVibGljIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBpdGVtIGlzIHNob3duIGF0IHRoZSBtb21lbnRcbiAgICAgKi9cbiAgICBwdWJsaWMgc2hvdyA9IHRydWU7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHNwZWM6IE1lbnVJdGVtU3BlYykge31cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZSB0aGUgaXRlbSBzdGF0ZSBhY2NvcmRpbmcgdG8gdGhlIGVkaXRvciBzdGF0ZVxuICAgICAqL1xuICAgIHB1YmxpYyB1cGRhdGUodmlldzogRWRpdG9yVmlldywgc3RhdGU6IEVkaXRvclN0YXRlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLnNwZWMuYWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmFjdGl2ZSA9IHRoaXMuc3BlYy5hY3RpdmUoc3RhdGUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuc3BlYy5lbmFibGUpIHtcbiAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPSAhdGhpcy5zcGVjLmVuYWJsZShzdGF0ZSk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5zcGVjLnNlbGVjdCkge1xuICAgICAgICAgICAgdGhpcy5zaG93ID0gdGhpcy5zcGVjLnNlbGVjdChzdGF0ZSk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
const ALIGN_PATTERN = /(left|right|center|justify)/;
|
|
2
|
-
// https://github.com/ProseMirror/prosemirror-schema-basic/blob/master/src/schema-basic.js
|
|
3
|
-
// :: NodeSpec A plain paragraph textblock. Represented in the DOM
|
|
4
|
-
// as a `<p>` element.
|
|
5
|
-
export const paragraphWithAlignment = {
|
|
6
|
-
attrs: {
|
|
7
|
-
align: { default: null },
|
|
8
|
-
id: { default: null },
|
|
9
|
-
},
|
|
10
|
-
content: 'inline*',
|
|
11
|
-
group: 'block',
|
|
12
|
-
parseDOM: [
|
|
13
|
-
{
|
|
14
|
-
tag: 'p',
|
|
15
|
-
getAttrs: (dom) => {
|
|
16
|
-
if (!(dom instanceof HTMLElement)) {
|
|
17
|
-
return;
|
|
18
|
-
}
|
|
19
|
-
const { textAlign } = dom.style;
|
|
20
|
-
let align = dom.getAttribute('align') || textAlign || '';
|
|
21
|
-
align = ALIGN_PATTERN.test(align) ? align : null;
|
|
22
|
-
const id = dom.getAttribute('id') || '';
|
|
23
|
-
return { align, id };
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
|
-
],
|
|
27
|
-
toDOM: node => {
|
|
28
|
-
const { align, id } = node.attrs;
|
|
29
|
-
const attrs = {};
|
|
30
|
-
let style = '';
|
|
31
|
-
if (align && align !== 'left') {
|
|
32
|
-
style += `text-align: ${align};`;
|
|
33
|
-
}
|
|
34
|
-
if (style) {
|
|
35
|
-
attrs.style = style;
|
|
36
|
-
}
|
|
37
|
-
if (id) {
|
|
38
|
-
attrs.id = id;
|
|
39
|
-
}
|
|
40
|
-
return ['p', attrs, 0];
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyYWdyYXBoLXdpdGgtYWxpZ25tZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC1lZGl0b3Ivc3JjL2xpYi91dGlscy9wYXJhZ3JhcGgtd2l0aC1hbGlnbm1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxhQUFhLEdBQUcsNkJBQTZCLENBQUM7QUFFcEQsMEZBQTBGO0FBQzFGLGtFQUFrRTtBQUNsRSxzQkFBc0I7QUFDdEIsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQWE7SUFDNUMsS0FBSyxFQUFFO1FBQ0gsS0FBSyxFQUFFLEVBQUMsT0FBTyxFQUFFLElBQUksRUFBQztRQUN0QixFQUFFLEVBQUUsRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDO0tBQ3RCO0lBQ0QsT0FBTyxFQUFFLFNBQVM7SUFDbEIsS0FBSyxFQUFFLE9BQU87SUFDZCxRQUFRLEVBQUU7UUFDTjtZQUNJLEdBQUcsRUFBRSxHQUFHO1lBQ1IsUUFBUSxFQUFFLENBQUMsR0FBa0IsRUFBa0QsRUFBRTtnQkFDN0UsSUFBSSxDQUFDLENBQUMsR0FBRyxZQUFZLFdBQVcsQ0FBQyxFQUFFO29CQUMvQixPQUFPO2lCQUNWO2dCQUVELE1BQU0sRUFBQyxTQUFTLEVBQUMsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDO2dCQUU5QixJQUFJLEtBQUssR0FBa0IsR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxTQUFTLElBQUksRUFBRSxDQUFDO2dCQUN4RSxLQUFLLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7Z0JBRWpELE1BQU0sRUFBRSxHQUFHLEdBQUcsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUV4QyxPQUFPLEVBQUMsS0FBSyxFQUFFLEVBQUUsRUFBQyxDQUFDO1lBQ3ZCLENBQUM7U0FDSjtLQUNKO0lBQ0QsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFO1FBQ1YsTUFBTSxFQUFDLEtBQUssRUFBRSxFQUFFLEVBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQy9CLE1BQU0sS0FBSyxHQUF5QixFQUFFLENBQUM7UUFFdkMsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2YsSUFBSSxLQUFLLElBQUksS0FBSyxLQUFLLE1BQU0sRUFBRTtZQUMzQixLQUFLLElBQUksZUFBZSxLQUFLLEdBQUcsQ0FBQztTQUNwQztRQUVELElBQUksS0FBSyxFQUFFO1lBQ1AsS0FBSyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7U0FDdkI7UUFFRCxJQUFJLEVBQUUsRUFBRTtZQUNKLEtBQUssQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDO1NBQ2pCO1FBRUQsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDM0IsQ0FBQztDQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05vZGVTcGVjfSBmcm9tICdwcm9zZW1pcnJvci1tb2RlbCc7XG5cbmNvbnN0IEFMSUdOX1BBVFRFUk4gPSAvKGxlZnR8cmlnaHR8Y2VudGVyfGp1c3RpZnkpLztcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL1Byb3NlTWlycm9yL3Byb3NlbWlycm9yLXNjaGVtYS1iYXNpYy9ibG9iL21hc3Rlci9zcmMvc2NoZW1hLWJhc2ljLmpzXG4vLyA6OiBOb2RlU3BlYyBBIHBsYWluIHBhcmFncmFwaCB0ZXh0YmxvY2suIFJlcHJlc2VudGVkIGluIHRoZSBET01cbi8vIGFzIGEgYDxwPmAgZWxlbWVudC5cbmV4cG9ydCBjb25zdCBwYXJhZ3JhcGhXaXRoQWxpZ25tZW50OiBOb2RlU3BlYyA9IHtcbiAgICBhdHRyczoge1xuICAgICAgICBhbGlnbjoge2RlZmF1bHQ6IG51bGx9LFxuICAgICAgICBpZDoge2RlZmF1bHQ6IG51bGx9LFxuICAgIH0sXG4gICAgY29udGVudDogJ2lubGluZSonLFxuICAgIGdyb3VwOiAnYmxvY2snLFxuICAgIHBhcnNlRE9NOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHRhZzogJ3AnLFxuICAgICAgICAgICAgZ2V0QXR0cnM6IChkb206IE5vZGUgfCBzdHJpbmcpOiB1bmRlZmluZWQgfCB7YWxpZ246IG51bGwgfCBzdHJpbmc7IGlkOiBzdHJpbmd9ID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoIShkb20gaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGNvbnN0IHt0ZXh0QWxpZ259ID0gZG9tLnN0eWxlO1xuXG4gICAgICAgICAgICAgICAgbGV0IGFsaWduOiBzdHJpbmcgfCBudWxsID0gZG9tLmdldEF0dHJpYnV0ZSgnYWxpZ24nKSB8fCB0ZXh0QWxpZ24gfHwgJyc7XG4gICAgICAgICAgICAgICAgYWxpZ24gPSBBTElHTl9QQVRURVJOLnRlc3QoYWxpZ24pID8gYWxpZ24gOiBudWxsO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgaWQgPSBkb20uZ2V0QXR0cmlidXRlKCdpZCcpIHx8ICcnO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHthbGlnbiwgaWR9O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICBdLFxuICAgIHRvRE9NOiBub2RlID0+IHtcbiAgICAgICAgY29uc3Qge2FsaWduLCBpZH0gPSBub2RlLmF0dHJzO1xuICAgICAgICBjb25zdCBhdHRyczoge1trZXk6IHN0cmluZ106IGFueX0gPSB7fTtcblxuICAgICAgICBsZXQgc3R5bGUgPSAnJztcbiAgICAgICAgaWYgKGFsaWduICYmIGFsaWduICE9PSAnbGVmdCcpIHtcbiAgICAgICAgICAgIHN0eWxlICs9IGB0ZXh0LWFsaWduOiAke2FsaWdufTtgO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHN0eWxlKSB7XG4gICAgICAgICAgICBhdHRycy5zdHlsZSA9IHN0eWxlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGlkKSB7XG4gICAgICAgICAgICBhdHRycy5pZCA9IGlkO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFsncCcsIGF0dHJzLCAwXTtcbiAgICB9LFxufTtcbiJdfQ==
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { marks, nodes } from 'prosemirror-schema-basic';
|
|
2
|
-
import { addListNodes } from 'prosemirror-schema-list';
|
|
3
|
-
import { Schema } from 'prosemirror-model';
|
|
4
|
-
import { tableNodes } from 'prosemirror-tables';
|
|
5
|
-
import { paragraphWithAlignment } from './paragraph-with-alignment';
|
|
6
|
-
const basicNodes = {
|
|
7
|
-
heading: nodes.heading,
|
|
8
|
-
doc: nodes.doc,
|
|
9
|
-
paragraph: nodes.paragraph,
|
|
10
|
-
text: nodes.text,
|
|
11
|
-
hard_break: nodes.hard_break,
|
|
12
|
-
};
|
|
13
|
-
const basicMarks = {
|
|
14
|
-
link: marks.link,
|
|
15
|
-
em: marks.em,
|
|
16
|
-
strong: marks.strong,
|
|
17
|
-
};
|
|
18
|
-
const tmpSchema = new Schema({ nodes: basicNodes, marks: basicMarks });
|
|
19
|
-
export const basicSchema = new Schema({
|
|
20
|
-
nodes: addListNodes(tmpSchema.spec.nodes, 'paragraph block*', 'block'),
|
|
21
|
-
marks: tmpSchema.spec.marks,
|
|
22
|
-
});
|
|
23
|
-
const tmpSchema2 = new Schema({
|
|
24
|
-
nodes: {
|
|
25
|
-
...nodes,
|
|
26
|
-
...tableNodes({
|
|
27
|
-
tableGroup: 'block',
|
|
28
|
-
cellContent: 'block+',
|
|
29
|
-
cellAttributes: {
|
|
30
|
-
background: {
|
|
31
|
-
default: null,
|
|
32
|
-
getFromDOM(dom) {
|
|
33
|
-
return dom.style.backgroundColor || null;
|
|
34
|
-
},
|
|
35
|
-
setDOMAttr(value, attrs) {
|
|
36
|
-
if (value) {
|
|
37
|
-
attrs.style = (attrs.style || '') + `background-color: ${value};`;
|
|
38
|
-
}
|
|
39
|
-
},
|
|
40
|
-
},
|
|
41
|
-
},
|
|
42
|
-
}),
|
|
43
|
-
paragraph: paragraphWithAlignment,
|
|
44
|
-
},
|
|
45
|
-
marks: basicMarks,
|
|
46
|
-
});
|
|
47
|
-
export const advancedSchema = new Schema({
|
|
48
|
-
nodes: addListNodes(tmpSchema2.spec.nodes, 'paragraph block*', 'block'),
|
|
49
|
-
marks: basicMarks,
|
|
50
|
-
});
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC1lZGl0b3Ivc3JjL2xpYi91dGlscy9zY2hlbWEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUMsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ3pDLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUMsc0JBQXNCLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUlsRSxNQUFNLFVBQVUsR0FBZTtJQUMzQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87SUFDdEIsR0FBRyxFQUFFLEtBQUssQ0FBQyxHQUFHO0lBQ2QsU0FBUyxFQUFFLEtBQUssQ0FBQyxTQUFTO0lBQzFCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtJQUNoQixVQUFVLEVBQUUsS0FBSyxDQUFDLFVBQVU7Q0FDL0IsQ0FBQztBQUdGLE1BQU0sVUFBVSxHQUFlO0lBQzNCLElBQUksRUFBRSxLQUFLLENBQUMsSUFBSTtJQUNoQixFQUFFLEVBQUUsS0FBSyxDQUFDLEVBQUU7SUFDWixNQUFNLEVBQUUsS0FBSyxDQUFDLE1BQU07Q0FDdkIsQ0FBQztBQUVGLE1BQU0sU0FBUyxHQUFHLElBQUksTUFBTSxDQUFDLEVBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztBQUVyRSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsSUFBSSxNQUFNLENBQUM7SUFDbEMsS0FBSyxFQUFFLFlBQVksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxPQUFPLENBQUM7SUFDdEUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSztDQUM5QixDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsR0FBRyxJQUFJLE1BQU0sQ0FBQztJQUMxQixLQUFLLEVBQUU7UUFDSCxHQUFHLEtBQUs7UUFDUixHQUFHLFVBQVUsQ0FBQztZQUNWLFVBQVUsRUFBRSxPQUFPO1lBQ25CLFdBQVcsRUFBRSxRQUFRO1lBQ3JCLGNBQWMsRUFBRTtnQkFDWixVQUFVLEVBQUU7b0JBQ1IsT0FBTyxFQUFFLElBQUk7b0JBQ2IsVUFBVSxDQUFDLEdBQVk7d0JBQ25CLE9BQVEsR0FBbUIsQ0FBQyxLQUFLLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQztvQkFDOUQsQ0FBQztvQkFDRCxVQUFVLENBQUMsS0FBVSxFQUFFLEtBQVU7d0JBQzdCLElBQUksS0FBSyxFQUFFOzRCQUNQLEtBQUssQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQyxHQUFHLHFCQUFxQixLQUFLLEdBQUcsQ0FBQzt5QkFDckU7b0JBQ0wsQ0FBQztpQkFDSjthQUNKO1NBQ0osQ0FBQztRQUNGLFNBQVMsRUFBRSxzQkFBc0I7S0FDcEM7SUFDRCxLQUFLLEVBQUUsVUFBVTtDQUNwQixDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsSUFBSSxNQUFNLENBQUM7SUFDckMsS0FBSyxFQUFFLFlBQVksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxPQUFPLENBQUM7SUFDdkUsS0FBSyxFQUFFLFVBQVU7Q0FDcEIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHttYXJrcywgbm9kZXN9IGZyb20gJ3Byb3NlbWlycm9yLXNjaGVtYS1iYXNpYyc7XG5pbXBvcnQge2FkZExpc3ROb2Rlc30gZnJvbSAncHJvc2VtaXJyb3Itc2NoZW1hLWxpc3QnO1xuaW1wb3J0IHtTY2hlbWF9IGZyb20gJ3Byb3NlbWlycm9yLW1vZGVsJztcbmltcG9ydCB7dGFibGVOb2Rlc30gZnJvbSAncHJvc2VtaXJyb3ItdGFibGVzJztcbmltcG9ydCB7cGFyYWdyYXBoV2l0aEFsaWdubWVudH0gZnJvbSAnLi9wYXJhZ3JhcGgtd2l0aC1hbGlnbm1lbnQnO1xuXG4vLyBLZWVwIG9ubHkgYmFzaWMgZWxlbWVudHNcbnR5cGUgQmFzaWNOb2RlcyA9IE9taXQ8dHlwZW9mIG5vZGVzLCAnaW1hZ2UnIHwgJ2NvZGVfYmxvY2snIHwgJ2Jsb2NrcXVvdGUnIHwgJ2hvcml6b250YWxfcnVsZSc+O1xuY29uc3QgYmFzaWNOb2RlczogQmFzaWNOb2RlcyA9IHtcbiAgICBoZWFkaW5nOiBub2Rlcy5oZWFkaW5nLFxuICAgIGRvYzogbm9kZXMuZG9jLFxuICAgIHBhcmFncmFwaDogbm9kZXMucGFyYWdyYXBoLFxuICAgIHRleHQ6IG5vZGVzLnRleHQsXG4gICAgaGFyZF9icmVhazogbm9kZXMuaGFyZF9icmVhayxcbn07XG5cbnR5cGUgQmFzaWNNYXJrcyA9IE9taXQ8dHlwZW9mIG1hcmtzLCAnY29kZSc+O1xuY29uc3QgYmFzaWNNYXJrczogQmFzaWNNYXJrcyA9IHtcbiAgICBsaW5rOiBtYXJrcy5saW5rLFxuICAgIGVtOiBtYXJrcy5lbSxcbiAgICBzdHJvbmc6IG1hcmtzLnN0cm9uZyxcbn07XG5cbmNvbnN0IHRtcFNjaGVtYSA9IG5ldyBTY2hlbWEoe25vZGVzOiBiYXNpY05vZGVzLCBtYXJrczogYmFzaWNNYXJrc30pO1xuXG5leHBvcnQgY29uc3QgYmFzaWNTY2hlbWEgPSBuZXcgU2NoZW1hKHtcbiAgICBub2RlczogYWRkTGlzdE5vZGVzKHRtcFNjaGVtYS5zcGVjLm5vZGVzLCAncGFyYWdyYXBoIGJsb2NrKicsICdibG9jaycpLFxuICAgIG1hcmtzOiB0bXBTY2hlbWEuc3BlYy5tYXJrcyxcbn0pO1xuXG5jb25zdCB0bXBTY2hlbWEyID0gbmV3IFNjaGVtYSh7XG4gICAgbm9kZXM6IHtcbiAgICAgICAgLi4ubm9kZXMsXG4gICAgICAgIC4uLnRhYmxlTm9kZXMoe1xuICAgICAgICAgICAgdGFibGVHcm91cDogJ2Jsb2NrJyxcbiAgICAgICAgICAgIGNlbGxDb250ZW50OiAnYmxvY2srJyxcbiAgICAgICAgICAgIGNlbGxBdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDoge1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiBudWxsLFxuICAgICAgICAgICAgICAgICAgICBnZXRGcm9tRE9NKGRvbTogRWxlbWVudCk6IHN0cmluZyB8IG51bGwge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIChkb20gYXMgSFRNTEVsZW1lbnQpLnN0eWxlLmJhY2tncm91bmRDb2xvciB8fCBudWxsO1xuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBzZXRET01BdHRyKHZhbHVlOiBhbnksIGF0dHJzOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF0dHJzLnN0eWxlID0gKGF0dHJzLnN0eWxlIHx8ICcnKSArIGBiYWNrZ3JvdW5kLWNvbG9yOiAke3ZhbHVlfTtgO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgICAgcGFyYWdyYXBoOiBwYXJhZ3JhcGhXaXRoQWxpZ25tZW50LFxuICAgIH0sXG4gICAgbWFya3M6IGJhc2ljTWFya3MsXG59KTtcblxuZXhwb3J0IGNvbnN0IGFkdmFuY2VkU2NoZW1hID0gbmV3IFNjaGVtYSh7XG4gICAgbm9kZXM6IGFkZExpc3ROb2Rlcyh0bXBTY2hlbWEyLnNwZWMubm9kZXMsICdwYXJhZ3JhcGggYmxvY2sqJywgJ2Jsb2NrJyksXG4gICAgbWFya3M6IGJhc2ljTWFya3MsXG59KTtcbiJdfQ==
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { TextSelection } from 'prosemirror-state';
|
|
2
|
-
import { tableNodeTypes } from 'prosemirror-tables';
|
|
3
|
-
function createCell(cellType, cellContent) {
|
|
4
|
-
return cellContent ? cellType.createChecked(null, cellContent) : cellType.createAndFill();
|
|
5
|
-
}
|
|
6
|
-
function createTable(state, rowsCount, colsCount, withHeaderRow, cellContent) {
|
|
7
|
-
const types = tableNodeTypes(state.schema);
|
|
8
|
-
const headerCells = [];
|
|
9
|
-
const cells = [];
|
|
10
|
-
for (let index = 0; index < colsCount; index += 1) {
|
|
11
|
-
const cell = createCell(types.cell, cellContent);
|
|
12
|
-
if (cell) {
|
|
13
|
-
cells.push(cell);
|
|
14
|
-
}
|
|
15
|
-
if (withHeaderRow) {
|
|
16
|
-
const headerCell = createCell(types.header_cell, cellContent);
|
|
17
|
-
if (headerCell) {
|
|
18
|
-
headerCells.push(headerCell);
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
const rows = [];
|
|
23
|
-
for (let index = 0; index < rowsCount; index += 1) {
|
|
24
|
-
rows.push(types.row.createChecked(null, withHeaderRow && index === 0 ? headerCells : cells));
|
|
25
|
-
}
|
|
26
|
-
return types.table.createChecked(null, rows);
|
|
27
|
-
}
|
|
28
|
-
export function addTable(state, dispatch, { rowsCount = 3, colsCount = 3, withHeaderRow = true, cellContent, } = {}) {
|
|
29
|
-
const offset = state.tr.selection.anchor + 1;
|
|
30
|
-
const nodes = createTable(state, rowsCount, colsCount, withHeaderRow, cellContent);
|
|
31
|
-
const tr = state.tr.replaceSelectionWith(nodes).scrollIntoView();
|
|
32
|
-
const resolvedPos = tr.doc.resolve(offset);
|
|
33
|
-
// move cursor into table
|
|
34
|
-
tr.setSelection(TextSelection.near(resolvedPos));
|
|
35
|
-
dispatch?.(tr);
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uYXR1cmFsLWVkaXRvci9zcmMvbGliL3V0aWxzL3RhYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxhQUFhLEVBQWMsTUFBTSxtQkFBbUIsQ0FBQztBQUUxRSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFFbEQsU0FBUyxVQUFVLENBQ2YsUUFBa0IsRUFDbEIsV0FBaUU7SUFFakUsT0FBTyxXQUFXLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLENBQUM7QUFDOUYsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUNoQixLQUFrQixFQUNsQixTQUFpQixFQUNqQixTQUFpQixFQUNqQixhQUFzQixFQUN0QixXQUFpRTtJQUVqRSxNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUN2QixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUM7SUFFakIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLFNBQVMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFO1FBQy9DLE1BQU0sSUFBSSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBRWpELElBQUksSUFBSSxFQUFFO1lBQ04sS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNwQjtRQUVELElBQUksYUFBYSxFQUFFO1lBQ2YsTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLEVBQUUsV0FBVyxDQUFDLENBQUM7WUFFOUQsSUFBSSxVQUFVLEVBQUU7Z0JBQ1osV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUNoQztTQUNKO0tBQ0o7SUFFRCxNQUFNLElBQUksR0FBRyxFQUFFLENBQUM7SUFFaEIsS0FBSyxJQUFJLEtBQUssR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLFNBQVMsRUFBRSxLQUFLLElBQUksQ0FBQyxFQUFFO1FBQy9DLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLGFBQWEsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7S0FDaEc7SUFFRCxPQUFPLEtBQUssQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNqRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFFBQVEsQ0FDcEIsS0FBa0IsRUFDbEIsUUFBb0MsRUFDcEMsRUFDSSxTQUFTLEdBQUcsQ0FBQyxFQUNiLFNBQVMsR0FBRyxDQUFDLEVBQ2IsYUFBYSxHQUFHLElBQUksRUFDcEIsV0FBVyxNQU1YLEVBQUU7SUFFTixNQUFNLE1BQU0sR0FBRyxLQUFLLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBRTdDLE1BQU0sS0FBSyxHQUFHLFdBQVcsQ0FBQyxLQUFLLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDbkYsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztJQUNqRSxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUUzQyx5QkFBeUI7SUFDekIsRUFBRSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFFakQsUUFBUSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RWRpdG9yU3RhdGUsIFRleHRTZWxlY3Rpb24sIFRyYW5zYWN0aW9ufSBmcm9tICdwcm9zZW1pcnJvci1zdGF0ZSc7XG5pbXBvcnQge0ZyYWdtZW50LCBOb2RlIGFzIFByb3NlbWlycm9yTm9kZSwgTm9kZVR5cGV9IGZyb20gJ3Byb3NlbWlycm9yLW1vZGVsJztcbmltcG9ydCB7dGFibGVOb2RlVHlwZXN9IGZyb20gJ3Byb3NlbWlycm9yLXRhYmxlcyc7XG5cbmZ1bmN0aW9uIGNyZWF0ZUNlbGwoXG4gICAgY2VsbFR5cGU6IE5vZGVUeXBlLFxuICAgIGNlbGxDb250ZW50PzogRnJhZ21lbnQgfCBQcm9zZW1pcnJvck5vZGUgfCBBcnJheTxQcm9zZW1pcnJvck5vZGU+LFxuKTogUHJvc2VtaXJyb3JOb2RlPGFueT4gfCBudWxsIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gY2VsbENvbnRlbnQgPyBjZWxsVHlwZS5jcmVhdGVDaGVja2VkKG51bGwsIGNlbGxDb250ZW50KSA6IGNlbGxUeXBlLmNyZWF0ZUFuZEZpbGwoKTtcbn1cblxuZnVuY3Rpb24gY3JlYXRlVGFibGUoXG4gICAgc3RhdGU6IEVkaXRvclN0YXRlLFxuICAgIHJvd3NDb3VudDogbnVtYmVyLFxuICAgIGNvbHNDb3VudDogbnVtYmVyLFxuICAgIHdpdGhIZWFkZXJSb3c6IGJvb2xlYW4sXG4gICAgY2VsbENvbnRlbnQ/OiBGcmFnbWVudCB8IFByb3NlbWlycm9yTm9kZSB8IEFycmF5PFByb3NlbWlycm9yTm9kZT4sXG4pOiBQcm9zZW1pcnJvck5vZGUge1xuICAgIGNvbnN0IHR5cGVzID0gdGFibGVOb2RlVHlwZXMoc3RhdGUuc2NoZW1hKTtcbiAgICBjb25zdCBoZWFkZXJDZWxscyA9IFtdO1xuICAgIGNvbnN0IGNlbGxzID0gW107XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgY29sc0NvdW50OyBpbmRleCArPSAxKSB7XG4gICAgICAgIGNvbnN0IGNlbGwgPSBjcmVhdGVDZWxsKHR5cGVzLmNlbGwsIGNlbGxDb250ZW50KTtcblxuICAgICAgICBpZiAoY2VsbCkge1xuICAgICAgICAgICAgY2VsbHMucHVzaChjZWxsKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh3aXRoSGVhZGVyUm93KSB7XG4gICAgICAgICAgICBjb25zdCBoZWFkZXJDZWxsID0gY3JlYXRlQ2VsbCh0eXBlcy5oZWFkZXJfY2VsbCwgY2VsbENvbnRlbnQpO1xuXG4gICAgICAgICAgICBpZiAoaGVhZGVyQ2VsbCkge1xuICAgICAgICAgICAgICAgIGhlYWRlckNlbGxzLnB1c2goaGVhZGVyQ2VsbCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCByb3dzID0gW107XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgcm93c0NvdW50OyBpbmRleCArPSAxKSB7XG4gICAgICAgIHJvd3MucHVzaCh0eXBlcy5yb3cuY3JlYXRlQ2hlY2tlZChudWxsLCB3aXRoSGVhZGVyUm93ICYmIGluZGV4ID09PSAwID8gaGVhZGVyQ2VsbHMgOiBjZWxscykpO1xuICAgIH1cblxuICAgIHJldHVybiB0eXBlcy50YWJsZS5jcmVhdGVDaGVja2VkKG51bGwsIHJvd3MpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYWRkVGFibGUoXG4gICAgc3RhdGU6IEVkaXRvclN0YXRlLFxuICAgIGRpc3BhdGNoPzogKHRyOiBUcmFuc2FjdGlvbikgPT4gdm9pZCxcbiAgICB7XG4gICAgICAgIHJvd3NDb3VudCA9IDMsXG4gICAgICAgIGNvbHNDb3VudCA9IDMsXG4gICAgICAgIHdpdGhIZWFkZXJSb3cgPSB0cnVlLFxuICAgICAgICBjZWxsQ29udGVudCxcbiAgICB9OiB7XG4gICAgICAgIHJvd3NDb3VudD86IG51bWJlcjtcbiAgICAgICAgY29sc0NvdW50PzogbnVtYmVyO1xuICAgICAgICB3aXRoSGVhZGVyUm93PzogYm9vbGVhbjtcbiAgICAgICAgY2VsbENvbnRlbnQ/OiBGcmFnbWVudCB8IFByb3NlbWlycm9yTm9kZSB8IEFycmF5PFByb3NlbWlycm9yTm9kZT47XG4gICAgfSA9IHt9LFxuKTogdm9pZCB7XG4gICAgY29uc3Qgb2Zmc2V0ID0gc3RhdGUudHIuc2VsZWN0aW9uLmFuY2hvciArIDE7XG5cbiAgICBjb25zdCBub2RlcyA9IGNyZWF0ZVRhYmxlKHN0YXRlLCByb3dzQ291bnQsIGNvbHNDb3VudCwgd2l0aEhlYWRlclJvdywgY2VsbENvbnRlbnQpO1xuICAgIGNvbnN0IHRyID0gc3RhdGUudHIucmVwbGFjZVNlbGVjdGlvbldpdGgobm9kZXMpLnNjcm9sbEludG9WaWV3KCk7XG4gICAgY29uc3QgcmVzb2x2ZWRQb3MgPSB0ci5kb2MucmVzb2x2ZShvZmZzZXQpO1xuXG4gICAgLy8gbW92ZSBjdXJzb3IgaW50byB0YWJsZVxuICAgIHRyLnNldFNlbGVjdGlvbihUZXh0U2VsZWN0aW9uLm5lYXIocmVzb2x2ZWRQb3MpKTtcblxuICAgIGRpc3BhdGNoPy4odHIpO1xufVxuIl19
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { AllSelection, TextSelection } from 'prosemirror-state';
|
|
2
|
-
import { Item } from './item';
|
|
3
|
-
function setTextAlign(tr, schema, alignment) {
|
|
4
|
-
console.log('setTextAlign', alignment);
|
|
5
|
-
const { selection, doc } = tr;
|
|
6
|
-
if (!selection || !doc) {
|
|
7
|
-
return tr;
|
|
8
|
-
}
|
|
9
|
-
const { from, to } = selection;
|
|
10
|
-
const { nodes } = schema;
|
|
11
|
-
const tasks = [];
|
|
12
|
-
alignment = alignment || null;
|
|
13
|
-
const allowedNodeTypes = new Set([
|
|
14
|
-
nodes.paragraph,
|
|
15
|
-
// nodes['blockquote'],
|
|
16
|
-
// nodes['listItem'],
|
|
17
|
-
// nodes['heading'],
|
|
18
|
-
]);
|
|
19
|
-
doc.nodesBetween(from, to, (node, pos) => {
|
|
20
|
-
const nodeType = node.type;
|
|
21
|
-
const align = node.attrs.align || null;
|
|
22
|
-
if (align !== alignment && allowedNodeTypes.has(nodeType)) {
|
|
23
|
-
tasks.push({
|
|
24
|
-
node,
|
|
25
|
-
pos,
|
|
26
|
-
nodeType,
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
return true;
|
|
30
|
-
});
|
|
31
|
-
if (!tasks.length) {
|
|
32
|
-
return tr;
|
|
33
|
-
}
|
|
34
|
-
tasks.forEach(job => {
|
|
35
|
-
const { node, pos, nodeType } = job;
|
|
36
|
-
const newAttrs = {
|
|
37
|
-
...node.attrs,
|
|
38
|
-
align: alignment ? alignment : null,
|
|
39
|
-
};
|
|
40
|
-
console.log('newAttrs', newAttrs);
|
|
41
|
-
tr = tr.setNodeMarkup(pos, nodeType, newAttrs, node.marks);
|
|
42
|
-
});
|
|
43
|
-
return tr;
|
|
44
|
-
}
|
|
45
|
-
export class TextAlignItem extends Item {
|
|
46
|
-
constructor(alignment) {
|
|
47
|
-
super({
|
|
48
|
-
active: state => {
|
|
49
|
-
const { selection, doc } = state;
|
|
50
|
-
const { from, to } = selection;
|
|
51
|
-
let keepLooking = true;
|
|
52
|
-
let active = false;
|
|
53
|
-
doc.nodesBetween(from, to, node => {
|
|
54
|
-
if (keepLooking && node.attrs.align === alignment) {
|
|
55
|
-
keepLooking = false;
|
|
56
|
-
active = true;
|
|
57
|
-
}
|
|
58
|
-
return keepLooking;
|
|
59
|
-
});
|
|
60
|
-
return active;
|
|
61
|
-
},
|
|
62
|
-
enable: state => {
|
|
63
|
-
const { selection } = state;
|
|
64
|
-
return selection instanceof TextSelection || selection instanceof AllSelection;
|
|
65
|
-
},
|
|
66
|
-
run: (state, dispatch) => {
|
|
67
|
-
const { schema, selection } = state;
|
|
68
|
-
console.log(this);
|
|
69
|
-
const tr = setTextAlign(state.tr.setSelection(selection), schema, this.active ? null : alignment);
|
|
70
|
-
if (tr.docChanged) {
|
|
71
|
-
dispatch?.(tr);
|
|
72
|
-
return true;
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
return false;
|
|
76
|
-
}
|
|
77
|
-
},
|
|
78
|
-
});
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC1hbGlnbi1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmF0dXJhbC1lZGl0b3Ivc3JjL2xpYi91dGlscy90ZXh0LWFsaWduLWl0ZW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLFlBQVksRUFBRSxhQUFhLEVBQWMsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRSxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0sUUFBUSxDQUFDO0FBSTVCLFNBQVMsWUFBWSxDQUFDLEVBQWUsRUFBRSxNQUFjLEVBQUUsU0FBMkI7SUFDOUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDdkMsTUFBTSxFQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUMsR0FBRyxFQUFFLENBQUM7SUFDNUIsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLEdBQUcsRUFBRTtRQUNwQixPQUFPLEVBQUUsQ0FBQztLQUNiO0lBQ0QsTUFBTSxFQUFDLElBQUksRUFBRSxFQUFFLEVBQUMsR0FBRyxTQUFTLENBQUM7SUFDN0IsTUFBTSxFQUFDLEtBQUssRUFBQyxHQUFHLE1BQU0sQ0FBQztJQUV2QixNQUFNLEtBQUssR0FJTCxFQUFFLENBQUM7SUFFVCxTQUFTLEdBQUcsU0FBUyxJQUFJLElBQUksQ0FBQztJQUU5QixNQUFNLGdCQUFnQixHQUFHLElBQUksR0FBRyxDQUFDO1FBQzdCLEtBQUssQ0FBQyxTQUFTO1FBQ2YsdUJBQXVCO1FBQ3ZCLHFCQUFxQjtRQUNyQixvQkFBb0I7S0FDdkIsQ0FBQyxDQUFDO0lBRUgsR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUFFO1FBQ3JDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDM0IsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FB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cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtOb2RlLCBOb2RlVHlwZSwgU2NoZW1hfSBmcm9tICdwcm9zZW1pcnJvci1tb2RlbCc7XG5pbXBvcnQge0FsbFNlbGVjdGlvbiwgVGV4dFNlbGVjdGlvbiwgVHJhbnNhY3Rpb259IGZyb20gJ3Byb3NlbWlycm9yLXN0YXRlJztcbmltcG9ydCB7SXRlbX0gZnJvbSAnLi9pdGVtJztcblxudHlwZSBBbGlnbm1lbnQgPSAnbGVmdCcgfCAncmlnaHQnIHwgJ2NlbnRlcicgfCAnanVzdGlmeSc7XG5cbmZ1bmN0aW9uIHNldFRleHRBbGlnbih0cjogVHJhbnNhY3Rpb24sIHNjaGVtYTogU2NoZW1hLCBhbGlnbm1lbnQ6IG51bGwgfCBBbGlnbm1lbnQpOiBUcmFuc2FjdGlvbiB7XG4gICAgY29uc29sZS5sb2coJ3NldFRleHRBbGlnbicsIGFsaWdubWVudCk7XG4gICAgY29uc3Qge3NlbGVjdGlvbiwgZG9jfSA9IHRyO1xuICAgIGlmICghc2VsZWN0aW9uIHx8ICFkb2MpIHtcbiAgICAgICAgcmV0dXJuIHRyO1xuICAgIH1cbiAgICBjb25zdCB7ZnJvbSwgdG99ID0gc2VsZWN0aW9uO1xuICAgIGNvbnN0IHtub2Rlc30gPSBzY2hlbWE7XG5cbiAgICBjb25zdCB0YXNrczoge1xuICAgICAgICBub2RlOiBOb2RlO1xuICAgICAgICBwb3M6IG51bWJlcjtcbiAgICAgICAgbm9kZVR5cGU6IE5vZGVUeXBlO1xuICAgIH1bXSA9IFtdO1xuXG4gICAgYWxpZ25tZW50ID0gYWxpZ25tZW50IHx8IG51bGw7XG5cbiAgICBjb25zdCBhbGxvd2VkTm9kZVR5cGVzID0gbmV3IFNldChbXG4gICAgICAgIG5vZGVzLnBhcmFncmFwaCxcbiAgICAgICAgLy8gbm9kZXNbJ2Jsb2NrcXVvdGUnXSxcbiAgICAgICAgLy8gbm9kZXNbJ2xpc3RJdGVtJ10sXG4gICAgICAgIC8vIG5vZGVzWydoZWFkaW5nJ10sXG4gICAgXSk7XG5cbiAgICBkb2Mubm9kZXNCZXR3ZWVuKGZyb20sIHRvLCAobm9kZSwgcG9zKSA9PiB7XG4gICAgICAgIGNvbnN0IG5vZGVUeXBlID0gbm9kZS50eXBlO1xuICAgICAgICBjb25zdCBhbGlnbiA9IG5vZGUuYXR0cnMuYWxpZ24gfHwgbnVsbDtcbiAgICAgICAgaWYgKGFsaWduICE9PSBhbGlnbm1lbnQgJiYgYWxsb3dlZE5vZGVUeXBlcy5oYXMobm9kZVR5cGUpKSB7XG4gICAgICAgICAgICB0YXNrcy5wdXNoKHtcbiAgICAgICAgICAgICAgICBub2RlLFxuICAgICAgICAgICAgICAgIHBvcyxcbiAgICAgICAgICAgICAgICBub2RlVHlwZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuXG4gICAgaWYgKCF0YXNrcy5sZW5ndGgpIHtcbiAgICAgICAgcmV0dXJuIHRyO1xuICAgIH1cblxuICAgIHRhc2tzLmZvckVhY2goam9iID0+IHtcbiAgICAgICAgY29uc3Qge25vZGUsIHBvcywgbm9kZVR5cGV9ID0gam9iO1xuICAgICAgICBjb25zdCBuZXdBdHRycyA9IHtcbiAgICAgICAgICAgIC4uLm5vZGUuYXR0cnMsXG4gICAgICAgICAgICBhbGlnbjogYWxpZ25tZW50ID8gYWxpZ25tZW50IDogbnVsbCxcbiAgICAgICAgfTtcbiAgICAgICAgY29uc29sZS5sb2coJ25ld0F0dHJzJywgbmV3QXR0cnMpO1xuICAgICAgICB0ciA9IHRyLnNldE5vZGVNYXJrdXAocG9zLCBub2RlVHlwZSwgbmV3QXR0cnMsIG5vZGUubWFya3MpO1xuICAgIH0pO1xuXG4gICAgcmV0dXJuIHRyO1xufVxuXG5leHBvcnQgY2xhc3MgVGV4dEFsaWduSXRlbSBleHRlbmRzIEl0ZW0ge1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihhbGlnbm1lbnQ6IEFsaWdubWVudCkge1xuICAgICAgICBzdXBlcih7XG4gICAgICAgICAgICBhY3RpdmU6IHN0YXRlID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB7c2VsZWN0aW9uLCBkb2N9ID0gc3RhdGU7XG4gICAgICAgICAgICAgICAgY29uc3Qge2Zyb20sIHRvfSA9IHNlbGVjdGlvbjtcbiAgICAgICAgICAgICAgICBsZXQga2VlcExvb2tpbmcgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGxldCBhY3RpdmUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICBkb2Mubm9kZXNCZXR3ZWVuKGZyb20sIHRvLCBub2RlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGtlZXBMb29raW5nICYmIG5vZGUuYXR0cnMuYWxpZ24gPT09IGFsaWdubWVudCkge1xuICAgICAgICAgICAgICAgICAgICAgICAga2VlcExvb2tpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGFjdGl2ZSA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGtlZXBMb29raW5nO1xuICAgICAgICAgICAgICAgIH0pO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjdGl2ZTtcbiAgICAgICAgICAgIH0sXG5cbiAgICAgICAgICAgIGVuYWJsZTogc3RhdGUgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHtzZWxlY3Rpb259ID0gc3RhdGU7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHNlbGVjdGlvbiBpbnN0YW5jZW9mIFRleHRTZWxlY3Rpb24gfHwgc2VsZWN0aW9uIGluc3RhbmNlb2YgQWxsU2VsZWN0aW9uO1xuICAgICAgICAgICAgfSxcblxuICAgICAgICAgICAgcnVuOiAoc3RhdGUsIGRpc3BhdGNoKTogYm9vbGVhbiA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qge3NjaGVtYSwgc2VsZWN0aW9ufSA9IHN0YXRlO1xuXG4gICAgICAgICAgICAgICAgY29uc29sZS5sb2codGhpcyk7XG4gICAgICAgICAgICAgICAgY29uc3QgdHIgPSBzZXRUZXh0QWxpZ24oc3RhdGUudHIuc2V0U2VsZWN0aW9uKHNlbGVjdGlvbiksIHNjaGVtYSwgdGhpcy5hY3RpdmUgPyBudWxsIDogYWxpZ25tZW50KTtcbiAgICAgICAgICAgICAgICBpZiAodHIuZG9jQ2hhbmdlZCkge1xuICAgICAgICAgICAgICAgICAgICBkaXNwYXRjaD8uKHRyKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==
|
package/lib/utils/table.d.ts
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { EditorState, Transaction } from 'prosemirror-state';
|
|
2
|
-
import { Fragment, Node as ProsemirrorNode } from 'prosemirror-model';
|
|
3
|
-
export declare function addTable(state: EditorState, dispatch?: (tr: Transaction) => void, { rowsCount, colsCount, withHeaderRow, cellContent, }?: {
|
|
4
|
-
rowsCount?: number;
|
|
5
|
-
colsCount?: number;
|
|
6
|
-
withHeaderRow?: boolean;
|
|
7
|
-
cellContent?: Fragment | ProsemirrorNode | Array<ProsemirrorNode>;
|
|
8
|
-
}): void;
|