@ckeditor/ckeditor5-table 38.1.1 → 38.2.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/build/table.js +1 -1
  2. package/package.json +3 -2
  3. package/src/augmentation.d.ts +76 -76
  4. package/src/augmentation.js +5 -5
  5. package/src/commands/insertcolumncommand.d.ts +55 -55
  6. package/src/commands/insertcolumncommand.js +67 -67
  7. package/src/commands/insertrowcommand.d.ts +54 -54
  8. package/src/commands/insertrowcommand.js +66 -66
  9. package/src/commands/inserttablecommand.d.ts +44 -44
  10. package/src/commands/inserttablecommand.js +69 -69
  11. package/src/commands/mergecellcommand.d.ts +68 -68
  12. package/src/commands/mergecellcommand.js +198 -198
  13. package/src/commands/mergecellscommand.d.ts +28 -28
  14. package/src/commands/mergecellscommand.js +94 -94
  15. package/src/commands/removecolumncommand.d.ts +29 -29
  16. package/src/commands/removecolumncommand.js +109 -109
  17. package/src/commands/removerowcommand.d.ts +29 -29
  18. package/src/commands/removerowcommand.js +82 -82
  19. package/src/commands/selectcolumncommand.d.ts +33 -33
  20. package/src/commands/selectcolumncommand.js +60 -60
  21. package/src/commands/selectrowcommand.d.ts +33 -33
  22. package/src/commands/selectrowcommand.js +56 -56
  23. package/src/commands/setheadercolumncommand.d.ts +50 -50
  24. package/src/commands/setheadercolumncommand.js +71 -71
  25. package/src/commands/setheaderrowcommand.d.ts +53 -53
  26. package/src/commands/setheaderrowcommand.js +79 -79
  27. package/src/commands/splitcellcommand.d.ts +43 -43
  28. package/src/commands/splitcellcommand.js +54 -54
  29. package/src/converters/downcast.d.ts +63 -63
  30. package/src/converters/downcast.js +146 -146
  31. package/src/converters/table-caption-post-fixer.d.ts +20 -20
  32. package/src/converters/table-caption-post-fixer.js +53 -53
  33. package/src/converters/table-cell-paragraph-post-fixer.d.ts +32 -32
  34. package/src/converters/table-cell-paragraph-post-fixer.js +107 -107
  35. package/src/converters/table-cell-refresh-handler.d.ts +18 -18
  36. package/src/converters/table-cell-refresh-handler.js +45 -45
  37. package/src/converters/table-headings-refresh-handler.d.ts +17 -17
  38. package/src/converters/table-headings-refresh-handler.js +49 -49
  39. package/src/converters/table-layout-post-fixer.d.ts +226 -226
  40. package/src/converters/table-layout-post-fixer.js +367 -367
  41. package/src/converters/tableproperties.d.ts +54 -54
  42. package/src/converters/tableproperties.js +159 -159
  43. package/src/converters/upcasttable.d.ts +49 -49
  44. package/src/converters/upcasttable.js +243 -243
  45. package/src/index.d.ts +60 -60
  46. package/src/index.js +30 -30
  47. package/src/plaintableoutput.d.ts +26 -26
  48. package/src/plaintableoutput.js +123 -123
  49. package/src/table.d.ts +40 -40
  50. package/src/table.js +44 -44
  51. package/src/tablecaption/tablecaptionediting.d.ts +63 -63
  52. package/src/tablecaption/tablecaptionediting.js +122 -122
  53. package/src/tablecaption/tablecaptionui.d.ts +21 -21
  54. package/src/tablecaption/tablecaptionui.js +57 -57
  55. package/src/tablecaption/toggletablecaptioncommand.d.ts +68 -68
  56. package/src/tablecaption/toggletablecaptioncommand.js +104 -104
  57. package/src/tablecaption/utils.d.ts +42 -42
  58. package/src/tablecaption/utils.js +67 -67
  59. package/src/tablecaption.d.ts +24 -24
  60. package/src/tablecaption.js +28 -28
  61. package/src/tablecellproperties/commands/tablecellbackgroundcolorcommand.d.ts +32 -32
  62. package/src/tablecellproperties/commands/tablecellbackgroundcolorcommand.js +30 -30
  63. package/src/tablecellproperties/commands/tablecellbordercolorcommand.d.ts +37 -37
  64. package/src/tablecellproperties/commands/tablecellbordercolorcommand.js +44 -44
  65. package/src/tablecellproperties/commands/tablecellborderstylecommand.d.ts +37 -37
  66. package/src/tablecellproperties/commands/tablecellborderstylecommand.js +44 -44
  67. package/src/tablecellproperties/commands/tablecellborderwidthcommand.d.ts +51 -51
  68. package/src/tablecellproperties/commands/tablecellborderwidthcommand.js +64 -64
  69. package/src/tablecellproperties/commands/tablecellheightcommand.d.ts +46 -46
  70. package/src/tablecellproperties/commands/tablecellheightcommand.js +51 -51
  71. package/src/tablecellproperties/commands/tablecellhorizontalalignmentcommand.d.ts +32 -32
  72. package/src/tablecellproperties/commands/tablecellhorizontalalignmentcommand.js +30 -30
  73. package/src/tablecellproperties/commands/tablecellpaddingcommand.d.ts +51 -51
  74. package/src/tablecellproperties/commands/tablecellpaddingcommand.js +64 -64
  75. package/src/tablecellproperties/commands/tablecellpropertycommand.d.ts +62 -62
  76. package/src/tablecellproperties/commands/tablecellpropertycommand.js +92 -92
  77. package/src/tablecellproperties/commands/tablecellverticalalignmentcommand.d.ts +40 -40
  78. package/src/tablecellproperties/commands/tablecellverticalalignmentcommand.js +38 -38
  79. package/src/tablecellproperties/tablecellpropertiesediting.d.ts +43 -43
  80. package/src/tablecellproperties/tablecellpropertiesediting.js +241 -241
  81. package/src/tablecellproperties/tablecellpropertiesui.d.ts +112 -112
  82. package/src/tablecellproperties/tablecellpropertiesui.js +330 -328
  83. package/src/tablecellproperties/ui/tablecellpropertiesview.d.ts +228 -227
  84. package/src/tablecellproperties/ui/tablecellpropertiesview.js +539 -537
  85. package/src/tablecellproperties.d.ts +30 -30
  86. package/src/tablecellproperties.js +34 -34
  87. package/src/tablecellwidth/commands/tablecellwidthcommand.d.ts +46 -46
  88. package/src/tablecellwidth/commands/tablecellwidthcommand.js +51 -51
  89. package/src/tablecellwidth/tablecellwidthediting.d.ts +29 -29
  90. package/src/tablecellwidth/tablecellwidthediting.js +45 -45
  91. package/src/tableclipboard.d.ts +65 -65
  92. package/src/tableclipboard.js +450 -450
  93. package/src/tablecolumnresize/constants.d.ts +20 -20
  94. package/src/tablecolumnresize/constants.js +20 -20
  95. package/src/tablecolumnresize/converters.d.ts +18 -18
  96. package/src/tablecolumnresize/converters.js +45 -45
  97. package/src/tablecolumnresize/tablecolumnresizeediting.d.ts +139 -139
  98. package/src/tablecolumnresize/tablecolumnresizeediting.js +571 -571
  99. package/src/tablecolumnresize/tablewidthscommand.d.ts +38 -38
  100. package/src/tablecolumnresize/tablewidthscommand.js +61 -61
  101. package/src/tablecolumnresize/utils.d.ts +141 -141
  102. package/src/tablecolumnresize/utils.js +330 -330
  103. package/src/tablecolumnresize.d.ts +26 -26
  104. package/src/tablecolumnresize.js +30 -30
  105. package/src/tableconfig.d.ts +343 -331
  106. package/src/tableconfig.js +5 -5
  107. package/src/tableediting.d.ts +98 -98
  108. package/src/tableediting.js +191 -191
  109. package/src/tablekeyboard.d.ts +68 -68
  110. package/src/tablekeyboard.js +279 -279
  111. package/src/tablemouse/mouseeventsobserver.d.ts +62 -62
  112. package/src/tablemouse/mouseeventsobserver.js +35 -35
  113. package/src/tablemouse.d.ts +48 -48
  114. package/src/tablemouse.js +172 -172
  115. package/src/tableproperties/commands/tablealignmentcommand.d.ts +32 -32
  116. package/src/tableproperties/commands/tablealignmentcommand.js +30 -30
  117. package/src/tableproperties/commands/tablebackgroundcolorcommand.d.ts +32 -32
  118. package/src/tableproperties/commands/tablebackgroundcolorcommand.js +30 -30
  119. package/src/tableproperties/commands/tablebordercolorcommand.d.ts +37 -37
  120. package/src/tableproperties/commands/tablebordercolorcommand.js +44 -44
  121. package/src/tableproperties/commands/tableborderstylecommand.d.ts +37 -37
  122. package/src/tableproperties/commands/tableborderstylecommand.js +44 -44
  123. package/src/tableproperties/commands/tableborderwidthcommand.d.ts +51 -51
  124. package/src/tableproperties/commands/tableborderwidthcommand.js +64 -64
  125. package/src/tableproperties/commands/tableheightcommand.d.ts +46 -46
  126. package/src/tableproperties/commands/tableheightcommand.js +54 -54
  127. package/src/tableproperties/commands/tablepropertycommand.d.ts +61 -61
  128. package/src/tableproperties/commands/tablepropertycommand.js +80 -80
  129. package/src/tableproperties/commands/tablewidthcommand.d.ts +46 -46
  130. package/src/tableproperties/commands/tablewidthcommand.js +54 -54
  131. package/src/tableproperties/tablepropertiesediting.d.ts +40 -40
  132. package/src/tableproperties/tablepropertiesediting.js +206 -206
  133. package/src/tableproperties/tablepropertiesui.d.ts +114 -114
  134. package/src/tableproperties/tablepropertiesui.js +321 -319
  135. package/src/tableproperties/ui/tablepropertiesview.d.ts +207 -203
  136. package/src/tableproperties/ui/tablepropertiesview.js +457 -455
  137. package/src/tableproperties.d.ts +30 -30
  138. package/src/tableproperties.js +34 -34
  139. package/src/tableselection.d.ts +107 -107
  140. package/src/tableselection.js +297 -297
  141. package/src/tabletoolbar.d.ts +32 -32
  142. package/src/tabletoolbar.js +57 -57
  143. package/src/tableui.d.ts +53 -53
  144. package/src/tableui.js +309 -309
  145. package/src/tableutils.d.ts +448 -448
  146. package/src/tableutils.js +1041 -1041
  147. package/src/tablewalker.d.ts +323 -323
  148. package/src/tablewalker.js +333 -333
  149. package/src/ui/colorinputview.d.ts +140 -143
  150. package/src/ui/colorinputview.js +265 -248
  151. package/src/ui/formrowview.d.ts +61 -61
  152. package/src/ui/formrowview.js +57 -57
  153. package/src/ui/inserttableview.d.ts +77 -77
  154. package/src/ui/inserttableview.js +169 -169
  155. package/src/utils/common.d.ts +42 -42
  156. package/src/utils/common.js +57 -57
  157. package/src/utils/structure.d.ts +245 -245
  158. package/src/utils/structure.js +426 -426
  159. package/src/utils/table-properties.d.ts +67 -67
  160. package/src/utils/table-properties.js +86 -86
  161. package/src/utils/ui/contextualballoon.d.ts +34 -34
  162. package/src/utils/ui/contextualballoon.js +106 -106
  163. package/src/utils/ui/table-properties.d.ts +195 -193
  164. package/src/utils/ui/table-properties.js +362 -360
  165. package/src/utils/ui/widget.d.ts +16 -16
  166. package/src/utils/ui/widget.js +38 -38
  167. package/theme/tablecaption.css +7 -7
  168. package/theme/tablecolumnresize.css +2 -2
  169. package/build/table.js.map +0 -1
@@ -1,30 +1,30 @@
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
7
- */
8
- import { Plugin } from 'ckeditor5/src/core';
9
- import TableCellPropertiesUI from './tablecellproperties/tablecellpropertiesui';
10
- import TableCellPropertiesEditing from './tablecellproperties/tablecellpropertiesediting';
11
- /**
12
- * The table cell properties feature. Enables support for setting properties of table cells (size, border, background, etc.).
13
- *
14
- * Read more in the {@glink features/tables/tables-styling Table and cell styling tools} section.
15
- * See also the {@link module:table/tableproperties~TableProperties} plugin.
16
- *
17
- * This is a "glue" plugin that loads the
18
- * {@link module:table/tablecellproperties/tablecellpropertiesediting~TableCellPropertiesEditing table cell properties editing feature} and
19
- * the {@link module:table/tablecellproperties/tablecellpropertiesui~TableCellPropertiesUI table cell properties UI feature}.
20
- */
21
- export default class TableCellProperties extends Plugin {
22
- /**
23
- * @inheritDoc
24
- */
25
- static get pluginName(): "TableCellProperties";
26
- /**
27
- * @inheritDoc
28
- */
29
- static get requires(): readonly [typeof TableCellPropertiesEditing, typeof TableCellPropertiesUI];
30
- }
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
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core.js';
9
+ import TableCellPropertiesUI from './tablecellproperties/tablecellpropertiesui.js';
10
+ import TableCellPropertiesEditing from './tablecellproperties/tablecellpropertiesediting.js';
11
+ /**
12
+ * The table cell properties feature. Enables support for setting properties of table cells (size, border, background, etc.).
13
+ *
14
+ * Read more in the {@glink features/tables/tables-styling Table and cell styling tools} section.
15
+ * See also the {@link module:table/tableproperties~TableProperties} plugin.
16
+ *
17
+ * This is a "glue" plugin that loads the
18
+ * {@link module:table/tablecellproperties/tablecellpropertiesediting~TableCellPropertiesEditing table cell properties editing feature} and
19
+ * the {@link module:table/tablecellproperties/tablecellpropertiesui~TableCellPropertiesUI table cell properties UI feature}.
20
+ */
21
+ export default class TableCellProperties extends Plugin {
22
+ /**
23
+ * @inheritDoc
24
+ */
25
+ static get pluginName(): "TableCellProperties";
26
+ /**
27
+ * @inheritDoc
28
+ */
29
+ static get requires(): readonly [typeof TableCellPropertiesEditing, typeof TableCellPropertiesUI];
30
+ }
@@ -1,34 +1,34 @@
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
7
- */
8
- import { Plugin } from 'ckeditor5/src/core';
9
- import TableCellPropertiesUI from './tablecellproperties/tablecellpropertiesui';
10
- import TableCellPropertiesEditing from './tablecellproperties/tablecellpropertiesediting';
11
- /**
12
- * The table cell properties feature. Enables support for setting properties of table cells (size, border, background, etc.).
13
- *
14
- * Read more in the {@glink features/tables/tables-styling Table and cell styling tools} section.
15
- * See also the {@link module:table/tableproperties~TableProperties} plugin.
16
- *
17
- * This is a "glue" plugin that loads the
18
- * {@link module:table/tablecellproperties/tablecellpropertiesediting~TableCellPropertiesEditing table cell properties editing feature} and
19
- * the {@link module:table/tablecellproperties/tablecellpropertiesui~TableCellPropertiesUI table cell properties UI feature}.
20
- */
21
- export default class TableCellProperties extends Plugin {
22
- /**
23
- * @inheritDoc
24
- */
25
- static get pluginName() {
26
- return 'TableCellProperties';
27
- }
28
- /**
29
- * @inheritDoc
30
- */
31
- static get requires() {
32
- return [TableCellPropertiesEditing, TableCellPropertiesUI];
33
- }
34
- }
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
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core.js';
9
+ import TableCellPropertiesUI from './tablecellproperties/tablecellpropertiesui.js';
10
+ import TableCellPropertiesEditing from './tablecellproperties/tablecellpropertiesediting.js';
11
+ /**
12
+ * The table cell properties feature. Enables support for setting properties of table cells (size, border, background, etc.).
13
+ *
14
+ * Read more in the {@glink features/tables/tables-styling Table and cell styling tools} section.
15
+ * See also the {@link module:table/tableproperties~TableProperties} plugin.
16
+ *
17
+ * This is a "glue" plugin that loads the
18
+ * {@link module:table/tablecellproperties/tablecellpropertiesediting~TableCellPropertiesEditing table cell properties editing feature} and
19
+ * the {@link module:table/tablecellproperties/tablecellpropertiesui~TableCellPropertiesUI table cell properties UI feature}.
20
+ */
21
+ export default class TableCellProperties extends Plugin {
22
+ /**
23
+ * @inheritDoc
24
+ */
25
+ static get pluginName() {
26
+ return 'TableCellProperties';
27
+ }
28
+ /**
29
+ * @inheritDoc
30
+ */
31
+ static get requires() {
32
+ return [TableCellPropertiesEditing, TableCellPropertiesUI];
33
+ }
34
+ }
@@ -1,46 +1,46 @@
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/tablecellwidth/commands/tablecellwidthcommand
7
- */
8
- import type { Editor } from 'ckeditor5/src/core';
9
- import TableCellPropertyCommand from '../../tablecellproperties/commands/tablecellpropertycommand';
10
- /**
11
- * The table cell width command.
12
- *
13
- * The command is registered by the {@link module:table/tablecellwidth/tablecellwidthediting~TableCellWidthEditing} as
14
- * the `'tableCellWidth'` editor command.
15
- *
16
- * To change the width of selected cells, execute the command:
17
- *
18
- * ```ts
19
- * editor.execute( 'tableCellWidth', {
20
- * value: '50px'
21
- * } );
22
- * ```
23
- *
24
- * **Note**: This command adds a default `'px'` unit to numeric values. Executing:
25
- *
26
- * ```ts
27
- * editor.execute( 'tableCellWidth', {
28
- * value: '50'
29
- * } );
30
- * ```
31
- *
32
- * will set the `width` attribute to `'50px'` in the model.
33
- */
34
- export default class TableCellWidthCommand extends TableCellPropertyCommand {
35
- /**
36
- * Creates a new `TableCellWidthCommand` instance.
37
- *
38
- * @param editor An editor in which this command will be used.
39
- * @param defaultValue The default value of the attribute.
40
- */
41
- constructor(editor: Editor, defaultValue: string);
42
- /**
43
- * @inheritDoc
44
- */
45
- _getValueToSet(value: string | number | undefined): unknown;
46
- }
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/tablecellwidth/commands/tablecellwidthcommand
7
+ */
8
+ import type { Editor } from 'ckeditor5/src/core.js';
9
+ import TableCellPropertyCommand from '../../tablecellproperties/commands/tablecellpropertycommand.js';
10
+ /**
11
+ * The table cell width command.
12
+ *
13
+ * The command is registered by the {@link module:table/tablecellwidth/tablecellwidthediting~TableCellWidthEditing} as
14
+ * the `'tableCellWidth'` editor command.
15
+ *
16
+ * To change the width of selected cells, execute the command:
17
+ *
18
+ * ```ts
19
+ * editor.execute( 'tableCellWidth', {
20
+ * value: '50px'
21
+ * } );
22
+ * ```
23
+ *
24
+ * **Note**: This command adds a default `'px'` unit to numeric values. Executing:
25
+ *
26
+ * ```ts
27
+ * editor.execute( 'tableCellWidth', {
28
+ * value: '50'
29
+ * } );
30
+ * ```
31
+ *
32
+ * will set the `width` attribute to `'50px'` in the model.
33
+ */
34
+ export default class TableCellWidthCommand extends TableCellPropertyCommand {
35
+ /**
36
+ * Creates a new `TableCellWidthCommand` instance.
37
+ *
38
+ * @param editor An editor in which this command will be used.
39
+ * @param defaultValue The default value of the attribute.
40
+ */
41
+ constructor(editor: Editor, defaultValue: string);
42
+ /**
43
+ * @inheritDoc
44
+ */
45
+ _getValueToSet(value: string | number | undefined): unknown;
46
+ }
@@ -1,51 +1,51 @@
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
- import TableCellPropertyCommand from '../../tablecellproperties/commands/tablecellpropertycommand';
6
- import { addDefaultUnitToNumericValue } from '../../utils/table-properties';
7
- /**
8
- * The table cell width command.
9
- *
10
- * The command is registered by the {@link module:table/tablecellwidth/tablecellwidthediting~TableCellWidthEditing} as
11
- * the `'tableCellWidth'` editor command.
12
- *
13
- * To change the width of selected cells, execute the command:
14
- *
15
- * ```ts
16
- * editor.execute( 'tableCellWidth', {
17
- * value: '50px'
18
- * } );
19
- * ```
20
- *
21
- * **Note**: This command adds a default `'px'` unit to numeric values. Executing:
22
- *
23
- * ```ts
24
- * editor.execute( 'tableCellWidth', {
25
- * value: '50'
26
- * } );
27
- * ```
28
- *
29
- * will set the `width` attribute to `'50px'` in the model.
30
- */
31
- export default class TableCellWidthCommand extends TableCellPropertyCommand {
32
- /**
33
- * Creates a new `TableCellWidthCommand` instance.
34
- *
35
- * @param editor An editor in which this command will be used.
36
- * @param defaultValue The default value of the attribute.
37
- */
38
- constructor(editor, defaultValue) {
39
- super(editor, 'tableCellWidth', defaultValue);
40
- }
41
- /**
42
- * @inheritDoc
43
- */
44
- _getValueToSet(value) {
45
- value = addDefaultUnitToNumericValue(value, 'px');
46
- if (value === this._defaultValue) {
47
- return;
48
- }
49
- return value;
50
- }
51
- }
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
+ import TableCellPropertyCommand from '../../tablecellproperties/commands/tablecellpropertycommand.js';
6
+ import { addDefaultUnitToNumericValue } from '../../utils/table-properties.js';
7
+ /**
8
+ * The table cell width command.
9
+ *
10
+ * The command is registered by the {@link module:table/tablecellwidth/tablecellwidthediting~TableCellWidthEditing} as
11
+ * the `'tableCellWidth'` editor command.
12
+ *
13
+ * To change the width of selected cells, execute the command:
14
+ *
15
+ * ```ts
16
+ * editor.execute( 'tableCellWidth', {
17
+ * value: '50px'
18
+ * } );
19
+ * ```
20
+ *
21
+ * **Note**: This command adds a default `'px'` unit to numeric values. Executing:
22
+ *
23
+ * ```ts
24
+ * editor.execute( 'tableCellWidth', {
25
+ * value: '50'
26
+ * } );
27
+ * ```
28
+ *
29
+ * will set the `width` attribute to `'50px'` in the model.
30
+ */
31
+ export default class TableCellWidthCommand extends TableCellPropertyCommand {
32
+ /**
33
+ * Creates a new `TableCellWidthCommand` instance.
34
+ *
35
+ * @param editor An editor in which this command will be used.
36
+ * @param defaultValue The default value of the attribute.
37
+ */
38
+ constructor(editor, defaultValue) {
39
+ super(editor, 'tableCellWidth', defaultValue);
40
+ }
41
+ /**
42
+ * @inheritDoc
43
+ */
44
+ _getValueToSet(value) {
45
+ value = addDefaultUnitToNumericValue(value, 'px');
46
+ if (value === this._defaultValue) {
47
+ return;
48
+ }
49
+ return value;
50
+ }
51
+ }
@@ -1,29 +1,29 @@
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/tablecellwidth/tablecellwidthediting
7
- */
8
- import { Plugin } from 'ckeditor5/src/core';
9
- import TableEditing from './../tableediting';
10
- /**
11
- * The table cell width editing feature.
12
- *
13
- * Introduces `tableCellWidth` table cell model attribute alongside with its converters
14
- * and a command.
15
- */
16
- export default class TableCellWidthEditing extends Plugin {
17
- /**
18
- * @inheritDoc
19
- */
20
- static get pluginName(): "TableCellWidthEditing";
21
- /**
22
- * @inheritDoc
23
- */
24
- static get requires(): readonly [typeof TableEditing];
25
- /**
26
- * @inheritDoc
27
- */
28
- init(): void;
29
- }
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/tablecellwidth/tablecellwidthediting
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core.js';
9
+ import TableEditing from './../tableediting.js';
10
+ /**
11
+ * The table cell width editing feature.
12
+ *
13
+ * Introduces `tableCellWidth` table cell model attribute alongside with its converters
14
+ * and a command.
15
+ */
16
+ export default class TableCellWidthEditing extends Plugin {
17
+ /**
18
+ * @inheritDoc
19
+ */
20
+ static get pluginName(): "TableCellWidthEditing";
21
+ /**
22
+ * @inheritDoc
23
+ */
24
+ static get requires(): readonly [typeof TableEditing];
25
+ /**
26
+ * @inheritDoc
27
+ */
28
+ init(): void;
29
+ }
@@ -1,45 +1,45 @@
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/tablecellwidth/tablecellwidthediting
7
- */
8
- import { Plugin } from 'ckeditor5/src/core';
9
- import TableEditing from './../tableediting';
10
- import TableCellWidthCommand from './commands/tablecellwidthcommand';
11
- import { getNormalizedDefaultProperties } from '../utils/table-properties';
12
- import { enableProperty } from '../utils/common';
13
- /**
14
- * The table cell width editing feature.
15
- *
16
- * Introduces `tableCellWidth` table cell model attribute alongside with its converters
17
- * and a command.
18
- */
19
- export default class TableCellWidthEditing extends Plugin {
20
- /**
21
- * @inheritDoc
22
- */
23
- static get pluginName() {
24
- return 'TableCellWidthEditing';
25
- }
26
- /**
27
- * @inheritDoc
28
- */
29
- static get requires() {
30
- return [TableEditing];
31
- }
32
- /**
33
- * @inheritDoc
34
- */
35
- init() {
36
- const editor = this.editor;
37
- const defaultTableCellProperties = getNormalizedDefaultProperties(editor.config.get('table.tableCellProperties.defaultProperties'));
38
- enableProperty(editor.model.schema, editor.conversion, {
39
- modelAttribute: 'tableCellWidth',
40
- styleName: 'width',
41
- defaultValue: defaultTableCellProperties.width
42
- });
43
- editor.commands.add('tableCellWidth', new TableCellWidthCommand(editor, defaultTableCellProperties.width));
44
- }
45
- }
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/tablecellwidth/tablecellwidthediting
7
+ */
8
+ import { Plugin } from 'ckeditor5/src/core.js';
9
+ import TableEditing from './../tableediting.js';
10
+ import TableCellWidthCommand from './commands/tablecellwidthcommand.js';
11
+ import { getNormalizedDefaultProperties } from '../utils/table-properties.js';
12
+ import { enableProperty } from '../utils/common.js';
13
+ /**
14
+ * The table cell width editing feature.
15
+ *
16
+ * Introduces `tableCellWidth` table cell model attribute alongside with its converters
17
+ * and a command.
18
+ */
19
+ export default class TableCellWidthEditing extends Plugin {
20
+ /**
21
+ * @inheritDoc
22
+ */
23
+ static get pluginName() {
24
+ return 'TableCellWidthEditing';
25
+ }
26
+ /**
27
+ * @inheritDoc
28
+ */
29
+ static get requires() {
30
+ return [TableEditing];
31
+ }
32
+ /**
33
+ * @inheritDoc
34
+ */
35
+ init() {
36
+ const editor = this.editor;
37
+ const defaultTableCellProperties = getNormalizedDefaultProperties(editor.config.get('table.tableCellProperties.defaultProperties'));
38
+ enableProperty(editor.model.schema, editor.conversion, {
39
+ modelAttribute: 'tableCellWidth',
40
+ styleName: 'width',
41
+ defaultValue: defaultTableCellProperties.width
42
+ });
43
+ editor.commands.add('tableCellWidth', new TableCellWidthCommand(editor, defaultTableCellProperties.width));
44
+ }
45
+ }
@@ -1,65 +1,65 @@
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
- import { Plugin } from 'ckeditor5/src/core';
6
- import type { DocumentFragment, Element, Item, Model, Position, Writer } from 'ckeditor5/src/engine';
7
- import TableSelection from './tableselection';
8
- import { type TableSlot } from './tablewalker';
9
- import TableUtils from './tableutils';
10
- /**
11
- * This plugin adds support for copying/cutting/pasting fragments of tables.
12
- * It is loaded automatically by the {@link module:table/table~Table} plugin.
13
- */
14
- export default class TableClipboard extends Plugin {
15
- /**
16
- * @inheritDoc
17
- */
18
- static get pluginName(): "TableClipboard";
19
- /**
20
- * @inheritDoc
21
- */
22
- static get requires(): readonly [typeof TableSelection, typeof TableUtils];
23
- /**
24
- * @inheritDoc
25
- */
26
- init(): void;
27
- /**
28
- * Copies table content to a clipboard on "copy" & "cut" events.
29
- *
30
- * @param evt An object containing information about the handled event.
31
- * @param data Clipboard event data.
32
- */
33
- private _onCopyCut;
34
- /**
35
- * Overrides default {@link module:engine/model/model~Model#insertContent `model.insertContent()`} method to handle pasting table inside
36
- * selected table fragment.
37
- *
38
- * Depending on selected table fragment:
39
- * - If a selected table fragment is smaller than paste table it will crop pasted table to match dimensions.
40
- * - If dimensions are equal it will replace selected table fragment with a pasted table contents.
41
- *
42
- * @param content The content to insert.
43
- * @param selectable The selection into which the content should be inserted.
44
- * If not provided the current model document selection will be used.
45
- */
46
- private _onInsertContent;
47
- /**
48
- * Replaces the part of selectedTable with pastedTable.
49
- */
50
- private _replaceSelectedCellsWithPasted;
51
- /**
52
- * Replaces a single table slot.
53
- *
54
- * @returns Inserted table cell or null if slot should remain empty.
55
- * @private
56
- */
57
- _replaceTableSlotCell(tableSlot: TableSlot, cellToInsert: Element | null, insertPosition: Position, writer: Writer): Element | null;
58
- /**
59
- * Extracts the table for pasting into a table.
60
- *
61
- * @param content The content to insert.
62
- * @param model The editor model.
63
- */
64
- getTableIfOnlyTableInContent(content: DocumentFragment | Item, model: Model): Element | null;
65
- }
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
+ import { Plugin } from 'ckeditor5/src/core.js';
6
+ import type { DocumentFragment, Element, Item, Model, Position, Writer } from 'ckeditor5/src/engine.js';
7
+ import TableSelection from './tableselection.js';
8
+ import { type TableSlot } from './tablewalker.js';
9
+ import TableUtils from './tableutils.js';
10
+ /**
11
+ * This plugin adds support for copying/cutting/pasting fragments of tables.
12
+ * It is loaded automatically by the {@link module:table/table~Table} plugin.
13
+ */
14
+ export default class TableClipboard extends Plugin {
15
+ /**
16
+ * @inheritDoc
17
+ */
18
+ static get pluginName(): "TableClipboard";
19
+ /**
20
+ * @inheritDoc
21
+ */
22
+ static get requires(): readonly [typeof TableSelection, typeof TableUtils];
23
+ /**
24
+ * @inheritDoc
25
+ */
26
+ init(): void;
27
+ /**
28
+ * Copies table content to a clipboard on "copy" & "cut" events.
29
+ *
30
+ * @param evt An object containing information about the handled event.
31
+ * @param data Clipboard event data.
32
+ */
33
+ private _onCopyCut;
34
+ /**
35
+ * Overrides default {@link module:engine/model/model~Model#insertContent `model.insertContent()`} method to handle pasting table inside
36
+ * selected table fragment.
37
+ *
38
+ * Depending on selected table fragment:
39
+ * - If a selected table fragment is smaller than paste table it will crop pasted table to match dimensions.
40
+ * - If dimensions are equal it will replace selected table fragment with a pasted table contents.
41
+ *
42
+ * @param content The content to insert.
43
+ * @param selectable The selection into which the content should be inserted.
44
+ * If not provided the current model document selection will be used.
45
+ */
46
+ private _onInsertContent;
47
+ /**
48
+ * Replaces the part of selectedTable with pastedTable.
49
+ */
50
+ private _replaceSelectedCellsWithPasted;
51
+ /**
52
+ * Replaces a single table slot.
53
+ *
54
+ * @returns Inserted table cell or null if slot should remain empty.
55
+ * @private
56
+ */
57
+ _replaceTableSlotCell(tableSlot: TableSlot, cellToInsert: Element | null, insertPosition: Position, writer: Writer): Element | null;
58
+ /**
59
+ * Extracts the table for pasting into a table.
60
+ *
61
+ * @param content The content to insert.
62
+ * @param model The editor model.
63
+ */
64
+ getTableIfOnlyTableInContent(content: DocumentFragment | Item, model: Model): Element | null;
65
+ }