@ckeditor/ckeditor5-table 39.0.1 → 40.0.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/LICENSE.md +1 -1
- package/README.md +3 -3
- package/build/table.js +1 -1
- package/build/table.js.map +1 -0
- package/build/translations/hy.js +1 -0
- package/lang/translations/ar.po +1 -0
- package/lang/translations/az.po +1 -0
- package/lang/translations/bg.po +1 -0
- package/lang/translations/bn.po +1 -0
- package/lang/translations/ca.po +1 -0
- package/lang/translations/cs.po +1 -0
- package/lang/translations/da.po +1 -0
- package/lang/translations/de-ch.po +1 -0
- package/lang/translations/de.po +1 -0
- package/lang/translations/el.po +1 -0
- package/lang/translations/en-au.po +1 -0
- package/lang/translations/en-gb.po +1 -0
- package/lang/translations/en.po +1 -0
- package/lang/translations/es.po +1 -0
- package/lang/translations/et.po +1 -0
- package/lang/translations/fa.po +1 -0
- package/lang/translations/fi.po +1 -0
- package/lang/translations/fr.po +1 -0
- package/lang/translations/gl.po +1 -0
- package/lang/translations/he.po +1 -0
- package/lang/translations/hi.po +1 -0
- package/lang/translations/hr.po +1 -0
- package/lang/translations/hu.po +1 -0
- package/lang/translations/hy.po +262 -0
- package/lang/translations/id.po +1 -0
- package/lang/translations/it.po +1 -0
- package/lang/translations/ja.po +1 -0
- package/lang/translations/ko.po +1 -0
- package/lang/translations/ku.po +1 -0
- package/lang/translations/lt.po +1 -0
- package/lang/translations/lv.po +1 -0
- package/lang/translations/ms.po +1 -0
- package/lang/translations/nb.po +1 -0
- package/lang/translations/ne.po +1 -0
- package/lang/translations/nl.po +1 -0
- package/lang/translations/no.po +1 -0
- package/lang/translations/pl.po +1 -0
- package/lang/translations/pt-br.po +1 -0
- package/lang/translations/pt.po +1 -0
- package/lang/translations/ro.po +1 -0
- package/lang/translations/ru.po +1 -0
- package/lang/translations/sk.po +1 -0
- package/lang/translations/sl.po +1 -0
- package/lang/translations/sq.po +1 -0
- package/lang/translations/sr-latn.po +1 -0
- package/lang/translations/sr.po +1 -0
- package/lang/translations/sv.po +1 -0
- package/lang/translations/th.po +1 -0
- package/lang/translations/tk.po +1 -0
- package/lang/translations/tr.po +1 -0
- package/lang/translations/tt.po +1 -0
- package/lang/translations/ug.po +1 -0
- package/lang/translations/uk.po +1 -0
- package/lang/translations/ur.po +1 -0
- package/lang/translations/uz.po +1 -0
- package/lang/translations/vi.po +1 -0
- package/lang/translations/zh-cn.po +1 -0
- package/lang/translations/zh.po +1 -0
- package/package.json +2 -6
- package/src/augmentation.d.ts +76 -76
- package/src/augmentation.js +5 -5
- package/src/commands/insertcolumncommand.d.ts +55 -55
- package/src/commands/insertcolumncommand.js +67 -67
- package/src/commands/insertrowcommand.d.ts +54 -54
- package/src/commands/insertrowcommand.js +66 -66
- package/src/commands/inserttablecommand.d.ts +44 -44
- package/src/commands/inserttablecommand.js +69 -69
- package/src/commands/mergecellcommand.d.ts +68 -68
- package/src/commands/mergecellcommand.js +198 -198
- package/src/commands/mergecellscommand.d.ts +28 -28
- package/src/commands/mergecellscommand.js +94 -94
- package/src/commands/removecolumncommand.d.ts +29 -29
- package/src/commands/removecolumncommand.js +109 -109
- package/src/commands/removerowcommand.d.ts +29 -29
- package/src/commands/removerowcommand.js +82 -82
- package/src/commands/selectcolumncommand.d.ts +33 -33
- package/src/commands/selectcolumncommand.js +60 -60
- package/src/commands/selectrowcommand.d.ts +33 -33
- package/src/commands/selectrowcommand.js +56 -56
- package/src/commands/setheadercolumncommand.d.ts +50 -50
- package/src/commands/setheadercolumncommand.js +71 -71
- package/src/commands/setheaderrowcommand.d.ts +53 -53
- package/src/commands/setheaderrowcommand.js +79 -79
- package/src/commands/splitcellcommand.d.ts +43 -43
- package/src/commands/splitcellcommand.js +54 -54
- package/src/converters/downcast.d.ts +63 -63
- package/src/converters/downcast.js +146 -146
- package/src/converters/table-caption-post-fixer.d.ts +20 -20
- package/src/converters/table-caption-post-fixer.js +53 -53
- package/src/converters/table-cell-paragraph-post-fixer.d.ts +32 -32
- package/src/converters/table-cell-paragraph-post-fixer.js +107 -107
- package/src/converters/table-cell-refresh-handler.d.ts +18 -18
- package/src/converters/table-cell-refresh-handler.js +45 -45
- package/src/converters/table-headings-refresh-handler.d.ts +17 -17
- package/src/converters/table-headings-refresh-handler.js +49 -49
- package/src/converters/table-layout-post-fixer.d.ts +226 -226
- package/src/converters/table-layout-post-fixer.js +367 -367
- package/src/converters/tableproperties.d.ts +54 -54
- package/src/converters/tableproperties.js +159 -159
- package/src/converters/upcasttable.d.ts +49 -49
- package/src/converters/upcasttable.js +243 -243
- package/src/index.d.ts +60 -60
- package/src/index.js +30 -30
- package/src/plaintableoutput.d.ts +26 -26
- package/src/plaintableoutput.js +123 -123
- package/src/table.d.ts +40 -40
- package/src/table.js +44 -44
- package/src/tablecaption/tablecaptionediting.d.ts +63 -63
- package/src/tablecaption/tablecaptionediting.js +122 -122
- package/src/tablecaption/tablecaptionui.d.ts +21 -21
- package/src/tablecaption/tablecaptionui.js +57 -57
- package/src/tablecaption/toggletablecaptioncommand.d.ts +68 -68
- package/src/tablecaption/toggletablecaptioncommand.js +104 -104
- package/src/tablecaption/utils.d.ts +42 -42
- package/src/tablecaption/utils.js +67 -67
- package/src/tablecaption.d.ts +24 -24
- package/src/tablecaption.js +28 -28
- package/src/tablecellproperties/commands/tablecellbackgroundcolorcommand.d.ts +32 -32
- package/src/tablecellproperties/commands/tablecellbackgroundcolorcommand.js +30 -30
- package/src/tablecellproperties/commands/tablecellbordercolorcommand.d.ts +37 -37
- package/src/tablecellproperties/commands/tablecellbordercolorcommand.js +44 -44
- package/src/tablecellproperties/commands/tablecellborderstylecommand.d.ts +37 -37
- package/src/tablecellproperties/commands/tablecellborderstylecommand.js +44 -44
- package/src/tablecellproperties/commands/tablecellborderwidthcommand.d.ts +51 -51
- package/src/tablecellproperties/commands/tablecellborderwidthcommand.js +64 -64
- package/src/tablecellproperties/commands/tablecellheightcommand.d.ts +46 -46
- package/src/tablecellproperties/commands/tablecellheightcommand.js +51 -51
- package/src/tablecellproperties/commands/tablecellhorizontalalignmentcommand.d.ts +32 -32
- package/src/tablecellproperties/commands/tablecellhorizontalalignmentcommand.js +30 -30
- package/src/tablecellproperties/commands/tablecellpaddingcommand.d.ts +51 -51
- package/src/tablecellproperties/commands/tablecellpaddingcommand.js +64 -64
- package/src/tablecellproperties/commands/tablecellpropertycommand.d.ts +62 -62
- package/src/tablecellproperties/commands/tablecellpropertycommand.js +92 -92
- package/src/tablecellproperties/commands/tablecellverticalalignmentcommand.d.ts +40 -40
- package/src/tablecellproperties/commands/tablecellverticalalignmentcommand.js +38 -38
- package/src/tablecellproperties/tablecellpropertiesediting.d.ts +43 -43
- package/src/tablecellproperties/tablecellpropertiesediting.js +241 -241
- package/src/tablecellproperties/tablecellpropertiesui.d.ts +112 -112
- package/src/tablecellproperties/tablecellpropertiesui.js +330 -330
- package/src/tablecellproperties/ui/tablecellpropertiesview.d.ts +228 -228
- package/src/tablecellproperties/ui/tablecellpropertiesview.js +548 -539
- package/src/tablecellproperties.d.ts +30 -30
- package/src/tablecellproperties.js +34 -34
- package/src/tablecellwidth/commands/tablecellwidthcommand.d.ts +46 -46
- package/src/tablecellwidth/commands/tablecellwidthcommand.js +51 -51
- package/src/tablecellwidth/tablecellwidthediting.d.ts +29 -29
- package/src/tablecellwidth/tablecellwidthediting.js +45 -45
- package/src/tableclipboard.d.ts +65 -65
- package/src/tableclipboard.js +450 -450
- package/src/tablecolumnresize/constants.d.ts +20 -20
- package/src/tablecolumnresize/constants.js +20 -20
- package/src/tablecolumnresize/converters.d.ts +18 -18
- package/src/tablecolumnresize/converters.js +46 -45
- package/src/tablecolumnresize/tablecolumnresizeediting.d.ts +139 -139
- package/src/tablecolumnresize/tablecolumnresizeediting.js +583 -571
- package/src/tablecolumnresize/tablewidthscommand.d.ts +38 -38
- package/src/tablecolumnresize/tablewidthscommand.js +61 -61
- package/src/tablecolumnresize/utils.d.ts +148 -141
- package/src/tablecolumnresize/utils.js +358 -330
- package/src/tablecolumnresize.d.ts +26 -26
- package/src/tablecolumnresize.js +30 -30
- package/src/tableconfig.d.ts +343 -343
- package/src/tableconfig.js +5 -5
- package/src/tableediting.d.ts +98 -98
- package/src/tableediting.js +191 -191
- package/src/tablekeyboard.d.ts +68 -68
- package/src/tablekeyboard.js +279 -279
- package/src/tablemouse/mouseeventsobserver.d.ts +62 -62
- package/src/tablemouse/mouseeventsobserver.js +35 -35
- package/src/tablemouse.d.ts +48 -48
- package/src/tablemouse.js +172 -172
- package/src/tableproperties/commands/tablealignmentcommand.d.ts +32 -32
- package/src/tableproperties/commands/tablealignmentcommand.js +30 -30
- package/src/tableproperties/commands/tablebackgroundcolorcommand.d.ts +32 -32
- package/src/tableproperties/commands/tablebackgroundcolorcommand.js +30 -30
- package/src/tableproperties/commands/tablebordercolorcommand.d.ts +37 -37
- package/src/tableproperties/commands/tablebordercolorcommand.js +44 -44
- package/src/tableproperties/commands/tableborderstylecommand.d.ts +37 -37
- package/src/tableproperties/commands/tableborderstylecommand.js +44 -44
- package/src/tableproperties/commands/tableborderwidthcommand.d.ts +51 -51
- package/src/tableproperties/commands/tableborderwidthcommand.js +64 -64
- package/src/tableproperties/commands/tableheightcommand.d.ts +46 -46
- package/src/tableproperties/commands/tableheightcommand.js +54 -54
- package/src/tableproperties/commands/tablepropertycommand.d.ts +61 -61
- package/src/tableproperties/commands/tablepropertycommand.js +80 -80
- package/src/tableproperties/commands/tablewidthcommand.d.ts +46 -46
- package/src/tableproperties/commands/tablewidthcommand.js +54 -54
- package/src/tableproperties/tablepropertiesediting.d.ts +40 -40
- package/src/tableproperties/tablepropertiesediting.js +206 -206
- package/src/tableproperties/tablepropertiesui.d.ts +114 -114
- package/src/tableproperties/tablepropertiesui.js +321 -321
- package/src/tableproperties/ui/tablepropertiesview.d.ts +207 -207
- package/src/tableproperties/ui/tablepropertiesview.js +466 -457
- package/src/tableproperties.d.ts +30 -30
- package/src/tableproperties.js +34 -34
- package/src/tableselection.d.ts +107 -107
- package/src/tableselection.js +297 -297
- package/src/tabletoolbar.d.ts +32 -32
- package/src/tabletoolbar.js +57 -57
- package/src/tableui.d.ts +53 -53
- package/src/tableui.js +309 -309
- package/src/tableutils.d.ts +448 -448
- package/src/tableutils.js +1055 -1041
- package/src/tablewalker.d.ts +362 -323
- package/src/tablewalker.js +393 -333
- package/src/ui/colorinputview.d.ts +140 -140
- package/src/ui/colorinputview.js +271 -265
- package/src/ui/formrowview.d.ts +61 -61
- package/src/ui/formrowview.js +57 -57
- package/src/ui/inserttableview.d.ts +77 -77
- package/src/ui/inserttableview.js +169 -169
- package/src/utils/common.d.ts +42 -42
- package/src/utils/common.js +57 -57
- package/src/utils/structure.d.ts +245 -245
- package/src/utils/structure.js +426 -426
- package/src/utils/table-properties.d.ts +67 -67
- package/src/utils/table-properties.js +86 -86
- package/src/utils/ui/contextualballoon.d.ts +34 -34
- package/src/utils/ui/contextualballoon.js +106 -106
- package/src/utils/ui/table-properties.d.ts +195 -195
- package/src/utils/ui/table-properties.js +362 -362
- package/src/utils/ui/widget.d.ts +16 -16
- package/src/utils/ui/widget.js +38 -38
- package/theme/tablecolumnresize.css +8 -6
|
@@ -1,43 +1,43 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* @module table/tablecellproperties/tablecellpropertiesediting
|
|
7
|
-
*/
|
|
8
|
-
import { Plugin } from 'ckeditor5/src/core';
|
|
9
|
-
import TableEditing from './../tableediting';
|
|
10
|
-
import TableCellWidthEditing from '../tablecellwidth/tablecellwidthediting';
|
|
11
|
-
/**
|
|
12
|
-
* The table cell properties editing feature.
|
|
13
|
-
*
|
|
14
|
-
* Introduces table cell model attributes and their conversion:
|
|
15
|
-
*
|
|
16
|
-
* - border: `tableCellBorderStyle`, `tableCellBorderColor` and `tableCellBorderWidth`
|
|
17
|
-
* - background color: `tableCellBackgroundColor`
|
|
18
|
-
* - cell padding: `tableCellPadding`
|
|
19
|
-
* - horizontal and vertical alignment: `tableCellHorizontalAlignment`, `tableCellVerticalAlignment`
|
|
20
|
-
* - cell width and height: `tableCellWidth`, `tableCellHeight`
|
|
21
|
-
*
|
|
22
|
-
* It also registers commands used to manipulate the above attributes:
|
|
23
|
-
*
|
|
24
|
-
* - border: the `'tableCellBorderStyle'`, `'tableCellBorderColor'` and `'tableCellBorderWidth'` commands
|
|
25
|
-
* - background color: the `'tableCellBackgroundColor'` command
|
|
26
|
-
* - cell padding: the `'tableCellPadding'` command
|
|
27
|
-
* - horizontal and vertical alignment: the `'tableCellHorizontalAlignment'` and `'tableCellVerticalAlignment'` commands
|
|
28
|
-
* - width and height: the `'tableCellWidth'` and `'tableCellHeight'` commands
|
|
29
|
-
*/
|
|
30
|
-
export default class TableCellPropertiesEditing extends Plugin {
|
|
31
|
-
/**
|
|
32
|
-
* @inheritDoc
|
|
33
|
-
*/
|
|
34
|
-
static get pluginName(): "TableCellPropertiesEditing";
|
|
35
|
-
/**
|
|
36
|
-
* @inheritDoc
|
|
37
|
-
*/
|
|
38
|
-
static get requires(): readonly [typeof TableEditing, typeof TableCellWidthEditing];
|
|
39
|
-
/**
|
|
40
|
-
* @inheritDoc
|
|
41
|
-
*/
|
|
42
|
-
init(): void;
|
|
43
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @module table/tablecellproperties/tablecellpropertiesediting
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin } from 'ckeditor5/src/core';
|
|
9
|
+
import TableEditing from './../tableediting';
|
|
10
|
+
import TableCellWidthEditing from '../tablecellwidth/tablecellwidthediting';
|
|
11
|
+
/**
|
|
12
|
+
* The table cell properties editing feature.
|
|
13
|
+
*
|
|
14
|
+
* Introduces table cell model attributes and their conversion:
|
|
15
|
+
*
|
|
16
|
+
* - border: `tableCellBorderStyle`, `tableCellBorderColor` and `tableCellBorderWidth`
|
|
17
|
+
* - background color: `tableCellBackgroundColor`
|
|
18
|
+
* - cell padding: `tableCellPadding`
|
|
19
|
+
* - horizontal and vertical alignment: `tableCellHorizontalAlignment`, `tableCellVerticalAlignment`
|
|
20
|
+
* - cell width and height: `tableCellWidth`, `tableCellHeight`
|
|
21
|
+
*
|
|
22
|
+
* It also registers commands used to manipulate the above attributes:
|
|
23
|
+
*
|
|
24
|
+
* - border: the `'tableCellBorderStyle'`, `'tableCellBorderColor'` and `'tableCellBorderWidth'` commands
|
|
25
|
+
* - background color: the `'tableCellBackgroundColor'` command
|
|
26
|
+
* - cell padding: the `'tableCellPadding'` command
|
|
27
|
+
* - horizontal and vertical alignment: the `'tableCellHorizontalAlignment'` and `'tableCellVerticalAlignment'` commands
|
|
28
|
+
* - width and height: the `'tableCellWidth'` and `'tableCellHeight'` commands
|
|
29
|
+
*/
|
|
30
|
+
export default class TableCellPropertiesEditing extends Plugin {
|
|
31
|
+
/**
|
|
32
|
+
* @inheritDoc
|
|
33
|
+
*/
|
|
34
|
+
static get pluginName(): "TableCellPropertiesEditing";
|
|
35
|
+
/**
|
|
36
|
+
* @inheritDoc
|
|
37
|
+
*/
|
|
38
|
+
static get requires(): readonly [typeof TableEditing, typeof TableCellWidthEditing];
|
|
39
|
+
/**
|
|
40
|
+
* @inheritDoc
|
|
41
|
+
*/
|
|
42
|
+
init(): void;
|
|
43
|
+
}
|
|
@@ -1,241 +1,241 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
-
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* @module table/tablecellproperties/tablecellpropertiesediting
|
|
7
|
-
*/
|
|
8
|
-
import { Plugin } from 'ckeditor5/src/core';
|
|
9
|
-
import { addBorderRules, addPaddingRules, addBackgroundRules } from 'ckeditor5/src/engine';
|
|
10
|
-
import { downcastAttributeToStyle, upcastBorderStyles } from './../converters/tableproperties';
|
|
11
|
-
import TableEditing from './../tableediting';
|
|
12
|
-
import TableCellWidthEditing from '../tablecellwidth/tablecellwidthediting';
|
|
13
|
-
import TableCellPaddingCommand from './commands/tablecellpaddingcommand';
|
|
14
|
-
import TableCellHeightCommand from './commands/tablecellheightcommand';
|
|
15
|
-
import TableCellBackgroundColorCommand from './commands/tablecellbackgroundcolorcommand';
|
|
16
|
-
import TableCellVerticalAlignmentCommand from './commands/tablecellverticalalignmentcommand';
|
|
17
|
-
import TableCellHorizontalAlignmentCommand from './commands/tablecellhorizontalalignmentcommand';
|
|
18
|
-
import TableCellBorderStyleCommand from './commands/tablecellborderstylecommand';
|
|
19
|
-
import TableCellBorderColorCommand from './commands/tablecellbordercolorcommand';
|
|
20
|
-
import TableCellBorderWidthCommand from './commands/tablecellborderwidthcommand';
|
|
21
|
-
import { getNormalizedDefaultProperties } from '../utils/table-properties';
|
|
22
|
-
import { enableProperty } from '../utils/common';
|
|
23
|
-
const VALIGN_VALUES_REG_EXP = /^(top|middle|bottom)$/;
|
|
24
|
-
const ALIGN_VALUES_REG_EXP = /^(left|center|right|justify)$/;
|
|
25
|
-
/**
|
|
26
|
-
* The table cell properties editing feature.
|
|
27
|
-
*
|
|
28
|
-
* Introduces table cell model attributes and their conversion:
|
|
29
|
-
*
|
|
30
|
-
* - border: `tableCellBorderStyle`, `tableCellBorderColor` and `tableCellBorderWidth`
|
|
31
|
-
* - background color: `tableCellBackgroundColor`
|
|
32
|
-
* - cell padding: `tableCellPadding`
|
|
33
|
-
* - horizontal and vertical alignment: `tableCellHorizontalAlignment`, `tableCellVerticalAlignment`
|
|
34
|
-
* - cell width and height: `tableCellWidth`, `tableCellHeight`
|
|
35
|
-
*
|
|
36
|
-
* It also registers commands used to manipulate the above attributes:
|
|
37
|
-
*
|
|
38
|
-
* - border: the `'tableCellBorderStyle'`, `'tableCellBorderColor'` and `'tableCellBorderWidth'` commands
|
|
39
|
-
* - background color: the `'tableCellBackgroundColor'` command
|
|
40
|
-
* - cell padding: the `'tableCellPadding'` command
|
|
41
|
-
* - horizontal and vertical alignment: the `'tableCellHorizontalAlignment'` and `'tableCellVerticalAlignment'` commands
|
|
42
|
-
* - width and height: the `'tableCellWidth'` and `'tableCellHeight'` commands
|
|
43
|
-
*/
|
|
44
|
-
export default class TableCellPropertiesEditing extends Plugin {
|
|
45
|
-
/**
|
|
46
|
-
* @inheritDoc
|
|
47
|
-
*/
|
|
48
|
-
static get pluginName() {
|
|
49
|
-
return 'TableCellPropertiesEditing';
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* @inheritDoc
|
|
53
|
-
*/
|
|
54
|
-
static get requires() {
|
|
55
|
-
return [TableEditing, TableCellWidthEditing];
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* @inheritDoc
|
|
59
|
-
*/
|
|
60
|
-
init() {
|
|
61
|
-
const editor = this.editor;
|
|
62
|
-
const schema = editor.model.schema;
|
|
63
|
-
const conversion = editor.conversion;
|
|
64
|
-
editor.config.define('table.tableCellProperties.defaultProperties', {});
|
|
65
|
-
const defaultTableCellProperties = getNormalizedDefaultProperties(editor.config.get('table.tableCellProperties.defaultProperties'), {
|
|
66
|
-
includeVerticalAlignmentProperty: true,
|
|
67
|
-
includeHorizontalAlignmentProperty: true,
|
|
68
|
-
includePaddingProperty: true,
|
|
69
|
-
isRightToLeftContent: editor.locale.contentLanguageDirection === 'rtl'
|
|
70
|
-
});
|
|
71
|
-
editor.data.addStyleProcessorRules(addBorderRules);
|
|
72
|
-
enableBorderProperties(schema, conversion, {
|
|
73
|
-
color: defaultTableCellProperties.borderColor,
|
|
74
|
-
style: defaultTableCellProperties.borderStyle,
|
|
75
|
-
width: defaultTableCellProperties.borderWidth
|
|
76
|
-
});
|
|
77
|
-
editor.commands.add('tableCellBorderStyle', new TableCellBorderStyleCommand(editor, defaultTableCellProperties.borderStyle));
|
|
78
|
-
editor.commands.add('tableCellBorderColor', new TableCellBorderColorCommand(editor, defaultTableCellProperties.borderColor));
|
|
79
|
-
editor.commands.add('tableCellBorderWidth', new TableCellBorderWidthCommand(editor, defaultTableCellProperties.borderWidth));
|
|
80
|
-
enableProperty(schema, conversion, {
|
|
81
|
-
modelAttribute: 'tableCellHeight',
|
|
82
|
-
styleName: 'height',
|
|
83
|
-
defaultValue: defaultTableCellProperties.height
|
|
84
|
-
});
|
|
85
|
-
editor.commands.add('tableCellHeight', new TableCellHeightCommand(editor, defaultTableCellProperties.height));
|
|
86
|
-
editor.data.addStyleProcessorRules(addPaddingRules);
|
|
87
|
-
enableProperty(schema, conversion, {
|
|
88
|
-
modelAttribute: 'tableCellPadding',
|
|
89
|
-
styleName: 'padding',
|
|
90
|
-
reduceBoxSides: true,
|
|
91
|
-
defaultValue: defaultTableCellProperties.padding
|
|
92
|
-
});
|
|
93
|
-
editor.commands.add('tableCellPadding', new TableCellPaddingCommand(editor, defaultTableCellProperties.padding));
|
|
94
|
-
editor.data.addStyleProcessorRules(addBackgroundRules);
|
|
95
|
-
enableProperty(schema, conversion, {
|
|
96
|
-
modelAttribute: 'tableCellBackgroundColor',
|
|
97
|
-
styleName: 'background-color',
|
|
98
|
-
defaultValue: defaultTableCellProperties.backgroundColor
|
|
99
|
-
});
|
|
100
|
-
editor.commands.add('tableCellBackgroundColor', new TableCellBackgroundColorCommand(editor, defaultTableCellProperties.backgroundColor));
|
|
101
|
-
enableHorizontalAlignmentProperty(schema, conversion, defaultTableCellProperties.horizontalAlignment);
|
|
102
|
-
editor.commands.add('tableCellHorizontalAlignment', new TableCellHorizontalAlignmentCommand(editor, defaultTableCellProperties.horizontalAlignment));
|
|
103
|
-
enableVerticalAlignmentProperty(schema, conversion, defaultTableCellProperties.verticalAlignment);
|
|
104
|
-
editor.commands.add('tableCellVerticalAlignment', new TableCellVerticalAlignmentCommand(editor, defaultTableCellProperties.verticalAlignment));
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Enables the `'tableCellBorderStyle'`, `'tableCellBorderColor'` and `'tableCellBorderWidth'` attributes for table cells.
|
|
109
|
-
*
|
|
110
|
-
* @param defaultBorder The default border values.
|
|
111
|
-
* @param defaultBorder.color The default `tableCellBorderColor` value.
|
|
112
|
-
* @param defaultBorder.style The default `tableCellBorderStyle` value.
|
|
113
|
-
* @param defaultBorder.width The default `tableCellBorderWidth` value.
|
|
114
|
-
*/
|
|
115
|
-
function enableBorderProperties(schema, conversion, defaultBorder) {
|
|
116
|
-
const modelAttributes = {
|
|
117
|
-
width: 'tableCellBorderWidth',
|
|
118
|
-
color: 'tableCellBorderColor',
|
|
119
|
-
style: 'tableCellBorderStyle'
|
|
120
|
-
};
|
|
121
|
-
schema.extend('tableCell', {
|
|
122
|
-
allowAttributes: Object.values(modelAttributes)
|
|
123
|
-
});
|
|
124
|
-
upcastBorderStyles(conversion, 'td', modelAttributes, defaultBorder);
|
|
125
|
-
upcastBorderStyles(conversion, 'th', modelAttributes, defaultBorder);
|
|
126
|
-
downcastAttributeToStyle(conversion, { modelElement: 'tableCell', modelAttribute: modelAttributes.style, styleName: 'border-style' });
|
|
127
|
-
downcastAttributeToStyle(conversion, { modelElement: 'tableCell', modelAttribute: modelAttributes.color, styleName: 'border-color' });
|
|
128
|
-
downcastAttributeToStyle(conversion, { modelElement: 'tableCell', modelAttribute: modelAttributes.width, styleName: 'border-width' });
|
|
129
|
-
}
|
|
130
|
-
/**
|
|
131
|
-
* Enables the `'tableCellHorizontalAlignment'` attribute for table cells.
|
|
132
|
-
*
|
|
133
|
-
* @param defaultValue The default horizontal alignment value.
|
|
134
|
-
*/
|
|
135
|
-
function enableHorizontalAlignmentProperty(schema, conversion, defaultValue) {
|
|
136
|
-
schema.extend('tableCell', {
|
|
137
|
-
allowAttributes: ['tableCellHorizontalAlignment']
|
|
138
|
-
});
|
|
139
|
-
conversion.for('downcast')
|
|
140
|
-
.attributeToAttribute({
|
|
141
|
-
model: {
|
|
142
|
-
name: 'tableCell',
|
|
143
|
-
key: 'tableCellHorizontalAlignment'
|
|
144
|
-
},
|
|
145
|
-
view: alignment => ({
|
|
146
|
-
key: 'style',
|
|
147
|
-
value: {
|
|
148
|
-
'text-align': alignment
|
|
149
|
-
}
|
|
150
|
-
})
|
|
151
|
-
});
|
|
152
|
-
conversion.for('upcast')
|
|
153
|
-
// Support for the `text-align:*;` CSS definition for the table cell alignment.
|
|
154
|
-
.attributeToAttribute({
|
|
155
|
-
view: {
|
|
156
|
-
name: /^(td|th)$/,
|
|
157
|
-
styles: {
|
|
158
|
-
'text-align': ALIGN_VALUES_REG_EXP
|
|
159
|
-
}
|
|
160
|
-
},
|
|
161
|
-
model: {
|
|
162
|
-
key: 'tableCellHorizontalAlignment',
|
|
163
|
-
value: (viewElement) => {
|
|
164
|
-
const align = viewElement.getStyle('text-align');
|
|
165
|
-
return align === defaultValue ? null : align;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
})
|
|
169
|
-
// Support for the `align` attribute as the backward compatibility while pasting from other sources.
|
|
170
|
-
.attributeToAttribute({
|
|
171
|
-
view: {
|
|
172
|
-
name: /^(td|th)$/,
|
|
173
|
-
attributes: {
|
|
174
|
-
align: ALIGN_VALUES_REG_EXP
|
|
175
|
-
}
|
|
176
|
-
},
|
|
177
|
-
model: {
|
|
178
|
-
key: 'tableCellHorizontalAlignment',
|
|
179
|
-
value: (viewElement) => {
|
|
180
|
-
const align = viewElement.getAttribute('align');
|
|
181
|
-
return align === defaultValue ? null : align;
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
|
-
});
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Enables the `'verticalAlignment'` attribute for table cells.
|
|
188
|
-
*
|
|
189
|
-
* @param defaultValue The default vertical alignment value.
|
|
190
|
-
*/
|
|
191
|
-
function enableVerticalAlignmentProperty(schema, conversion, defaultValue) {
|
|
192
|
-
schema.extend('tableCell', {
|
|
193
|
-
allowAttributes: ['tableCellVerticalAlignment']
|
|
194
|
-
});
|
|
195
|
-
conversion.for('downcast')
|
|
196
|
-
.attributeToAttribute({
|
|
197
|
-
model: {
|
|
198
|
-
name: 'tableCell',
|
|
199
|
-
key: 'tableCellVerticalAlignment'
|
|
200
|
-
},
|
|
201
|
-
view: alignment => ({
|
|
202
|
-
key: 'style',
|
|
203
|
-
value: {
|
|
204
|
-
'vertical-align': alignment
|
|
205
|
-
}
|
|
206
|
-
})
|
|
207
|
-
});
|
|
208
|
-
conversion.for('upcast')
|
|
209
|
-
// Support for the `vertical-align:*;` CSS definition for the table cell alignment.
|
|
210
|
-
.attributeToAttribute({
|
|
211
|
-
view: {
|
|
212
|
-
name: /^(td|th)$/,
|
|
213
|
-
styles: {
|
|
214
|
-
'vertical-align': VALIGN_VALUES_REG_EXP
|
|
215
|
-
}
|
|
216
|
-
},
|
|
217
|
-
model: {
|
|
218
|
-
key: 'tableCellVerticalAlignment',
|
|
219
|
-
value: (viewElement) => {
|
|
220
|
-
const align = viewElement.getStyle('vertical-align');
|
|
221
|
-
return align === defaultValue ? null : align;
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
})
|
|
225
|
-
// Support for the `align` attribute as the backward compatibility while pasting from other sources.
|
|
226
|
-
.attributeToAttribute({
|
|
227
|
-
view: {
|
|
228
|
-
name: /^(td|th)$/,
|
|
229
|
-
attributes: {
|
|
230
|
-
valign: VALIGN_VALUES_REG_EXP
|
|
231
|
-
}
|
|
232
|
-
},
|
|
233
|
-
model: {
|
|
234
|
-
key: 'tableCellVerticalAlignment',
|
|
235
|
-
value: (viewElement) => {
|
|
236
|
-
const valign = viewElement.getAttribute('valign');
|
|
237
|
-
return valign === defaultValue ? null : valign;
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
});
|
|
241
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* @license Copyright (c) 2003-2023, CKSource Holding sp. z o.o. All rights reserved.
|
|
3
|
+
* For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* @module table/tablecellproperties/tablecellpropertiesediting
|
|
7
|
+
*/
|
|
8
|
+
import { Plugin } from 'ckeditor5/src/core';
|
|
9
|
+
import { addBorderRules, addPaddingRules, addBackgroundRules } from 'ckeditor5/src/engine';
|
|
10
|
+
import { downcastAttributeToStyle, upcastBorderStyles } from './../converters/tableproperties';
|
|
11
|
+
import TableEditing from './../tableediting';
|
|
12
|
+
import TableCellWidthEditing from '../tablecellwidth/tablecellwidthediting';
|
|
13
|
+
import TableCellPaddingCommand from './commands/tablecellpaddingcommand';
|
|
14
|
+
import TableCellHeightCommand from './commands/tablecellheightcommand';
|
|
15
|
+
import TableCellBackgroundColorCommand from './commands/tablecellbackgroundcolorcommand';
|
|
16
|
+
import TableCellVerticalAlignmentCommand from './commands/tablecellverticalalignmentcommand';
|
|
17
|
+
import TableCellHorizontalAlignmentCommand from './commands/tablecellhorizontalalignmentcommand';
|
|
18
|
+
import TableCellBorderStyleCommand from './commands/tablecellborderstylecommand';
|
|
19
|
+
import TableCellBorderColorCommand from './commands/tablecellbordercolorcommand';
|
|
20
|
+
import TableCellBorderWidthCommand from './commands/tablecellborderwidthcommand';
|
|
21
|
+
import { getNormalizedDefaultProperties } from '../utils/table-properties';
|
|
22
|
+
import { enableProperty } from '../utils/common';
|
|
23
|
+
const VALIGN_VALUES_REG_EXP = /^(top|middle|bottom)$/;
|
|
24
|
+
const ALIGN_VALUES_REG_EXP = /^(left|center|right|justify)$/;
|
|
25
|
+
/**
|
|
26
|
+
* The table cell properties editing feature.
|
|
27
|
+
*
|
|
28
|
+
* Introduces table cell model attributes and their conversion:
|
|
29
|
+
*
|
|
30
|
+
* - border: `tableCellBorderStyle`, `tableCellBorderColor` and `tableCellBorderWidth`
|
|
31
|
+
* - background color: `tableCellBackgroundColor`
|
|
32
|
+
* - cell padding: `tableCellPadding`
|
|
33
|
+
* - horizontal and vertical alignment: `tableCellHorizontalAlignment`, `tableCellVerticalAlignment`
|
|
34
|
+
* - cell width and height: `tableCellWidth`, `tableCellHeight`
|
|
35
|
+
*
|
|
36
|
+
* It also registers commands used to manipulate the above attributes:
|
|
37
|
+
*
|
|
38
|
+
* - border: the `'tableCellBorderStyle'`, `'tableCellBorderColor'` and `'tableCellBorderWidth'` commands
|
|
39
|
+
* - background color: the `'tableCellBackgroundColor'` command
|
|
40
|
+
* - cell padding: the `'tableCellPadding'` command
|
|
41
|
+
* - horizontal and vertical alignment: the `'tableCellHorizontalAlignment'` and `'tableCellVerticalAlignment'` commands
|
|
42
|
+
* - width and height: the `'tableCellWidth'` and `'tableCellHeight'` commands
|
|
43
|
+
*/
|
|
44
|
+
export default class TableCellPropertiesEditing extends Plugin {
|
|
45
|
+
/**
|
|
46
|
+
* @inheritDoc
|
|
47
|
+
*/
|
|
48
|
+
static get pluginName() {
|
|
49
|
+
return 'TableCellPropertiesEditing';
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* @inheritDoc
|
|
53
|
+
*/
|
|
54
|
+
static get requires() {
|
|
55
|
+
return [TableEditing, TableCellWidthEditing];
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* @inheritDoc
|
|
59
|
+
*/
|
|
60
|
+
init() {
|
|
61
|
+
const editor = this.editor;
|
|
62
|
+
const schema = editor.model.schema;
|
|
63
|
+
const conversion = editor.conversion;
|
|
64
|
+
editor.config.define('table.tableCellProperties.defaultProperties', {});
|
|
65
|
+
const defaultTableCellProperties = getNormalizedDefaultProperties(editor.config.get('table.tableCellProperties.defaultProperties'), {
|
|
66
|
+
includeVerticalAlignmentProperty: true,
|
|
67
|
+
includeHorizontalAlignmentProperty: true,
|
|
68
|
+
includePaddingProperty: true,
|
|
69
|
+
isRightToLeftContent: editor.locale.contentLanguageDirection === 'rtl'
|
|
70
|
+
});
|
|
71
|
+
editor.data.addStyleProcessorRules(addBorderRules);
|
|
72
|
+
enableBorderProperties(schema, conversion, {
|
|
73
|
+
color: defaultTableCellProperties.borderColor,
|
|
74
|
+
style: defaultTableCellProperties.borderStyle,
|
|
75
|
+
width: defaultTableCellProperties.borderWidth
|
|
76
|
+
});
|
|
77
|
+
editor.commands.add('tableCellBorderStyle', new TableCellBorderStyleCommand(editor, defaultTableCellProperties.borderStyle));
|
|
78
|
+
editor.commands.add('tableCellBorderColor', new TableCellBorderColorCommand(editor, defaultTableCellProperties.borderColor));
|
|
79
|
+
editor.commands.add('tableCellBorderWidth', new TableCellBorderWidthCommand(editor, defaultTableCellProperties.borderWidth));
|
|
80
|
+
enableProperty(schema, conversion, {
|
|
81
|
+
modelAttribute: 'tableCellHeight',
|
|
82
|
+
styleName: 'height',
|
|
83
|
+
defaultValue: defaultTableCellProperties.height
|
|
84
|
+
});
|
|
85
|
+
editor.commands.add('tableCellHeight', new TableCellHeightCommand(editor, defaultTableCellProperties.height));
|
|
86
|
+
editor.data.addStyleProcessorRules(addPaddingRules);
|
|
87
|
+
enableProperty(schema, conversion, {
|
|
88
|
+
modelAttribute: 'tableCellPadding',
|
|
89
|
+
styleName: 'padding',
|
|
90
|
+
reduceBoxSides: true,
|
|
91
|
+
defaultValue: defaultTableCellProperties.padding
|
|
92
|
+
});
|
|
93
|
+
editor.commands.add('tableCellPadding', new TableCellPaddingCommand(editor, defaultTableCellProperties.padding));
|
|
94
|
+
editor.data.addStyleProcessorRules(addBackgroundRules);
|
|
95
|
+
enableProperty(schema, conversion, {
|
|
96
|
+
modelAttribute: 'tableCellBackgroundColor',
|
|
97
|
+
styleName: 'background-color',
|
|
98
|
+
defaultValue: defaultTableCellProperties.backgroundColor
|
|
99
|
+
});
|
|
100
|
+
editor.commands.add('tableCellBackgroundColor', new TableCellBackgroundColorCommand(editor, defaultTableCellProperties.backgroundColor));
|
|
101
|
+
enableHorizontalAlignmentProperty(schema, conversion, defaultTableCellProperties.horizontalAlignment);
|
|
102
|
+
editor.commands.add('tableCellHorizontalAlignment', new TableCellHorizontalAlignmentCommand(editor, defaultTableCellProperties.horizontalAlignment));
|
|
103
|
+
enableVerticalAlignmentProperty(schema, conversion, defaultTableCellProperties.verticalAlignment);
|
|
104
|
+
editor.commands.add('tableCellVerticalAlignment', new TableCellVerticalAlignmentCommand(editor, defaultTableCellProperties.verticalAlignment));
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Enables the `'tableCellBorderStyle'`, `'tableCellBorderColor'` and `'tableCellBorderWidth'` attributes for table cells.
|
|
109
|
+
*
|
|
110
|
+
* @param defaultBorder The default border values.
|
|
111
|
+
* @param defaultBorder.color The default `tableCellBorderColor` value.
|
|
112
|
+
* @param defaultBorder.style The default `tableCellBorderStyle` value.
|
|
113
|
+
* @param defaultBorder.width The default `tableCellBorderWidth` value.
|
|
114
|
+
*/
|
|
115
|
+
function enableBorderProperties(schema, conversion, defaultBorder) {
|
|
116
|
+
const modelAttributes = {
|
|
117
|
+
width: 'tableCellBorderWidth',
|
|
118
|
+
color: 'tableCellBorderColor',
|
|
119
|
+
style: 'tableCellBorderStyle'
|
|
120
|
+
};
|
|
121
|
+
schema.extend('tableCell', {
|
|
122
|
+
allowAttributes: Object.values(modelAttributes)
|
|
123
|
+
});
|
|
124
|
+
upcastBorderStyles(conversion, 'td', modelAttributes, defaultBorder);
|
|
125
|
+
upcastBorderStyles(conversion, 'th', modelAttributes, defaultBorder);
|
|
126
|
+
downcastAttributeToStyle(conversion, { modelElement: 'tableCell', modelAttribute: modelAttributes.style, styleName: 'border-style' });
|
|
127
|
+
downcastAttributeToStyle(conversion, { modelElement: 'tableCell', modelAttribute: modelAttributes.color, styleName: 'border-color' });
|
|
128
|
+
downcastAttributeToStyle(conversion, { modelElement: 'tableCell', modelAttribute: modelAttributes.width, styleName: 'border-width' });
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Enables the `'tableCellHorizontalAlignment'` attribute for table cells.
|
|
132
|
+
*
|
|
133
|
+
* @param defaultValue The default horizontal alignment value.
|
|
134
|
+
*/
|
|
135
|
+
function enableHorizontalAlignmentProperty(schema, conversion, defaultValue) {
|
|
136
|
+
schema.extend('tableCell', {
|
|
137
|
+
allowAttributes: ['tableCellHorizontalAlignment']
|
|
138
|
+
});
|
|
139
|
+
conversion.for('downcast')
|
|
140
|
+
.attributeToAttribute({
|
|
141
|
+
model: {
|
|
142
|
+
name: 'tableCell',
|
|
143
|
+
key: 'tableCellHorizontalAlignment'
|
|
144
|
+
},
|
|
145
|
+
view: alignment => ({
|
|
146
|
+
key: 'style',
|
|
147
|
+
value: {
|
|
148
|
+
'text-align': alignment
|
|
149
|
+
}
|
|
150
|
+
})
|
|
151
|
+
});
|
|
152
|
+
conversion.for('upcast')
|
|
153
|
+
// Support for the `text-align:*;` CSS definition for the table cell alignment.
|
|
154
|
+
.attributeToAttribute({
|
|
155
|
+
view: {
|
|
156
|
+
name: /^(td|th)$/,
|
|
157
|
+
styles: {
|
|
158
|
+
'text-align': ALIGN_VALUES_REG_EXP
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
model: {
|
|
162
|
+
key: 'tableCellHorizontalAlignment',
|
|
163
|
+
value: (viewElement) => {
|
|
164
|
+
const align = viewElement.getStyle('text-align');
|
|
165
|
+
return align === defaultValue ? null : align;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
})
|
|
169
|
+
// Support for the `align` attribute as the backward compatibility while pasting from other sources.
|
|
170
|
+
.attributeToAttribute({
|
|
171
|
+
view: {
|
|
172
|
+
name: /^(td|th)$/,
|
|
173
|
+
attributes: {
|
|
174
|
+
align: ALIGN_VALUES_REG_EXP
|
|
175
|
+
}
|
|
176
|
+
},
|
|
177
|
+
model: {
|
|
178
|
+
key: 'tableCellHorizontalAlignment',
|
|
179
|
+
value: (viewElement) => {
|
|
180
|
+
const align = viewElement.getAttribute('align');
|
|
181
|
+
return align === defaultValue ? null : align;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Enables the `'verticalAlignment'` attribute for table cells.
|
|
188
|
+
*
|
|
189
|
+
* @param defaultValue The default vertical alignment value.
|
|
190
|
+
*/
|
|
191
|
+
function enableVerticalAlignmentProperty(schema, conversion, defaultValue) {
|
|
192
|
+
schema.extend('tableCell', {
|
|
193
|
+
allowAttributes: ['tableCellVerticalAlignment']
|
|
194
|
+
});
|
|
195
|
+
conversion.for('downcast')
|
|
196
|
+
.attributeToAttribute({
|
|
197
|
+
model: {
|
|
198
|
+
name: 'tableCell',
|
|
199
|
+
key: 'tableCellVerticalAlignment'
|
|
200
|
+
},
|
|
201
|
+
view: alignment => ({
|
|
202
|
+
key: 'style',
|
|
203
|
+
value: {
|
|
204
|
+
'vertical-align': alignment
|
|
205
|
+
}
|
|
206
|
+
})
|
|
207
|
+
});
|
|
208
|
+
conversion.for('upcast')
|
|
209
|
+
// Support for the `vertical-align:*;` CSS definition for the table cell alignment.
|
|
210
|
+
.attributeToAttribute({
|
|
211
|
+
view: {
|
|
212
|
+
name: /^(td|th)$/,
|
|
213
|
+
styles: {
|
|
214
|
+
'vertical-align': VALIGN_VALUES_REG_EXP
|
|
215
|
+
}
|
|
216
|
+
},
|
|
217
|
+
model: {
|
|
218
|
+
key: 'tableCellVerticalAlignment',
|
|
219
|
+
value: (viewElement) => {
|
|
220
|
+
const align = viewElement.getStyle('vertical-align');
|
|
221
|
+
return align === defaultValue ? null : align;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
})
|
|
225
|
+
// Support for the `align` attribute as the backward compatibility while pasting from other sources.
|
|
226
|
+
.attributeToAttribute({
|
|
227
|
+
view: {
|
|
228
|
+
name: /^(td|th)$/,
|
|
229
|
+
attributes: {
|
|
230
|
+
valign: VALIGN_VALUES_REG_EXP
|
|
231
|
+
}
|
|
232
|
+
},
|
|
233
|
+
model: {
|
|
234
|
+
key: 'tableCellVerticalAlignment',
|
|
235
|
+
value: (viewElement) => {
|
|
236
|
+
const valign = viewElement.getAttribute('valign');
|
|
237
|
+
return valign === defaultValue ? null : valign;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
});
|
|
241
|
+
}
|