@progress/kendo-react-editor 13.3.0 → 13.4.0-develop.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.
- package/Editor.d.ts +125 -0
- package/Editor.js +1 -1
- package/Editor.mjs +77 -77
- package/EditorProps.d.ts +406 -0
- package/config/defaultStyles.d.ts +19 -0
- package/config/pasteSettings.d.ts +13 -0
- package/config/schema.d.ts +8 -0
- package/config/shortcuts.d.ts +31 -0
- package/config/shortcuts.mjs +7 -7
- package/config/toolsSettings.d.ts +496 -0
- package/dialogs/EditorDialogProps.d.ts +33 -0
- package/dialogs/FindReplace.d.ts +79 -0
- package/dialogs/FindReplace.mjs +3 -3
- package/dialogs/index.d.ts +56 -0
- package/dialogs/insertImage.d.ts +35 -0
- package/dialogs/insertImage.mjs +3 -3
- package/dialogs/insertLink.d.ts +33 -0
- package/dialogs/insertLink.mjs +3 -3
- package/dialogs/viewHtml.d.ts +32 -0
- package/dialogs/viewHtml.mjs +3 -3
- package/dist/cdn/js/kendo-react-editor.js +1 -1
- package/index.d.mts +176 -3134
- package/index.d.ts +176 -3134
- package/index.mjs +139 -139
- package/messages/index.d.ts +359 -0
- package/package-metadata.d.ts +12 -0
- package/package-metadata.js +1 -1
- package/package-metadata.mjs +10 -16
- package/package.json +12 -12
- package/tools/ToolProps.d.ts +41 -0
- package/tools/align.d.ts +14 -0
- package/tools/applyColor.d.ts +19 -0
- package/tools/cleanFormatting.d.ts +23 -0
- package/tools/findReplace.d.ts +36 -0
- package/tools/findReplace.mjs +3 -3
- package/tools/fontStyle.d.ts +35 -0
- package/tools/fontStyle.mjs +3 -3
- package/tools/formatBlock.d.ts +25 -0
- package/tools/formatBlock.mjs +3 -3
- package/tools/history.d.ts +33 -0
- package/tools/indent.d.ts +24 -0
- package/tools/index.d.ts +717 -0
- package/tools/index.mjs +1 -1
- package/tools/inlineFormat.d.ts +54 -0
- package/tools/inlineFormat.mjs +3 -3
- package/tools/insertImage.d.ts +20 -0
- package/tools/insertLink.d.ts +31 -0
- package/tools/insertTable/index.d.ts +10 -0
- package/tools/insertTable/popup.d.ts +100 -0
- package/tools/insertTable/popupGrid.d.ts +38 -0
- package/tools/insertTable/tool.d.ts +31 -0
- package/tools/lists-styled.d.ts +12 -0
- package/tools/lists.d.ts +34 -0
- package/tools/outdent.d.ts +24 -0
- package/tools/pdf.d.ts +32 -0
- package/tools/print.d.ts +23 -0
- package/tools/proseMirrorTool.d.ts +19 -0
- package/tools/selectAll.d.ts +23 -0
- package/tools/table-wizard/cellPropsUtils.d.ts +43 -0
- package/tools/table-wizard/cellPropsUtils.mjs +5 -5
- package/tools/table-wizard/tableCellProperties.d.ts +27 -0
- package/tools/table-wizard/tableProperties.d.ts +18 -0
- package/tools/table-wizard/tableProperties.mjs +13 -13
- package/tools/table-wizard/tablePropsUtils.d.ts +59 -0
- package/tools/table-wizard/tablePropsUtils.mjs +9 -9
- package/tools/table-wizard/utils.d.ts +46 -0
- package/tools/tableEdit.d.ts +105 -0
- package/tools/tableEdit.mjs +3 -3
- package/tools/unlink.d.ts +24 -0
- package/tools/utils.d.ts +57 -0
- package/tools/utils.mjs +1 -1
- package/tools/viewHtml.d.ts +31 -0
- package/utils/browser-detection.d.ts +11 -0
- package/utils/controlled-value.d.ts +12 -0
- package/utils/index.d.ts +370 -0
- package/utils/props-key.d.ts +12 -0
package/EditorProps.d.ts
ADDED
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { EditorState, Plugin, Transaction, EditorView, Schema, Node } from '@progress/kendo-editor-common';
|
|
9
|
+
import { EditorUtils } from './utils/index.js';
|
|
10
|
+
import { Editor } from './Editor.js';
|
|
11
|
+
interface EditorEvent {
|
|
12
|
+
/**
|
|
13
|
+
* An event target.
|
|
14
|
+
*/
|
|
15
|
+
target: Editor;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Represents the object of the `onChange` Editor event.
|
|
19
|
+
*/
|
|
20
|
+
export interface EditorChangeEvent extends EditorEvent {
|
|
21
|
+
/**
|
|
22
|
+
* Represents the [Editor document](https://prosemirror.net/docs/guide/#doc).
|
|
23
|
+
*/
|
|
24
|
+
value: Node;
|
|
25
|
+
/**
|
|
26
|
+
* A getter of the Editor HTML content.
|
|
27
|
+
* Once called, it will convert the Editor document into HTML string.
|
|
28
|
+
* Note that, since onChange event is triggered on every key while typing,
|
|
29
|
+
* this conversion may not be suitable if the Editor is dealing with large amount of content.
|
|
30
|
+
*/
|
|
31
|
+
html: string;
|
|
32
|
+
/**
|
|
33
|
+
* The Editor Schema object.
|
|
34
|
+
*/
|
|
35
|
+
schema: Schema;
|
|
36
|
+
/**
|
|
37
|
+
* The Transaction which causes the change.
|
|
38
|
+
*/
|
|
39
|
+
transaction: Transaction;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Represents the object of the `onMount` Editor event.
|
|
43
|
+
*/
|
|
44
|
+
export interface EditorMountEvent extends EditorEvent {
|
|
45
|
+
/**
|
|
46
|
+
* The content-editable DOM element of the Editor.
|
|
47
|
+
*/
|
|
48
|
+
dom: HTMLDivElement;
|
|
49
|
+
/**
|
|
50
|
+
* The default plugins collection of the Editor.
|
|
51
|
+
*/
|
|
52
|
+
plugins: Array<Plugin>;
|
|
53
|
+
/**
|
|
54
|
+
* The default key bindings of the Editor.
|
|
55
|
+
*/
|
|
56
|
+
shortcuts: EditorUtils.Shortcuts;
|
|
57
|
+
/**
|
|
58
|
+
* The default [viewProps](https://prosemirror.net/docs/ref/#view.DirectEditorProps) object of the Editor.
|
|
59
|
+
*/
|
|
60
|
+
viewProps: {
|
|
61
|
+
state: EditorState;
|
|
62
|
+
[key: string]: any;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Represents the object of the `onPaste` Editor event.
|
|
67
|
+
*/
|
|
68
|
+
export interface EditorPasteEvent extends EditorEvent {
|
|
69
|
+
/**
|
|
70
|
+
* The HTML that will be pasted in the Editor.
|
|
71
|
+
*/
|
|
72
|
+
pastedHtml: string;
|
|
73
|
+
/**
|
|
74
|
+
* The native paste event.
|
|
75
|
+
*/
|
|
76
|
+
nativeEvent: ClipboardEvent;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Represents the object of the `onExecute` Editor event.
|
|
80
|
+
*/
|
|
81
|
+
export interface EditorExecuteEvent extends EditorEvent {
|
|
82
|
+
/**
|
|
83
|
+
* The transaction that will be executed.
|
|
84
|
+
*/
|
|
85
|
+
transaction: Transaction;
|
|
86
|
+
/**
|
|
87
|
+
* The state of the Editor.
|
|
88
|
+
*/
|
|
89
|
+
state: EditorState;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Represents the object of the `onFocus` Editor event.
|
|
93
|
+
*/
|
|
94
|
+
export interface EditorFocusEvent extends EditorEvent {
|
|
95
|
+
/**
|
|
96
|
+
* The native focus event.
|
|
97
|
+
*/
|
|
98
|
+
nativeEvent: FocusEvent;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Represents the object of the `onBlur` Editor event.
|
|
102
|
+
*/
|
|
103
|
+
export interface EditorBlurEvent extends EditorEvent {
|
|
104
|
+
/**
|
|
105
|
+
* The native blur event.
|
|
106
|
+
*/
|
|
107
|
+
nativeEvent: FocusEvent;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Represents the object of the `onIFrameInit` Editor event.
|
|
111
|
+
*/
|
|
112
|
+
export interface EditorIFrameInitEvent extends EditorEvent {
|
|
113
|
+
/**
|
|
114
|
+
* The object that represents the iframe element inside the Editor.
|
|
115
|
+
*/
|
|
116
|
+
iframe: HTMLIFrameElement;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Represents the props of the [KendoReact Editor component](https://www.telerik.com/kendo-react-ui/components/editor).
|
|
120
|
+
*/
|
|
121
|
+
export interface EditorProps {
|
|
122
|
+
/**
|
|
123
|
+
* Sets the default HTML content of the Editor. This content is rendered
|
|
124
|
+
* when the Editor is initialized and no value is provided.
|
|
125
|
+
*
|
|
126
|
+
* @example
|
|
127
|
+
* ```jsx
|
|
128
|
+
* <Editor
|
|
129
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
130
|
+
* defaultContent="<p>Hello, World!</p>"
|
|
131
|
+
* />
|
|
132
|
+
* ```
|
|
133
|
+
*/
|
|
134
|
+
defaultContent?: string;
|
|
135
|
+
/**
|
|
136
|
+
* Sets the initial edit mode of the Editor. Defaults to `iframe`.
|
|
137
|
+
* - `iframe`: The Editor content is rendered inside an `<iframe>`.
|
|
138
|
+
* - `div`: The Editor content is rendered inside a `<div>` element.
|
|
139
|
+
*
|
|
140
|
+
* @example
|
|
141
|
+
* ```jsx
|
|
142
|
+
* <Editor
|
|
143
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
144
|
+
* defaultEditMode="div"
|
|
145
|
+
* />
|
|
146
|
+
* ```
|
|
147
|
+
*/
|
|
148
|
+
defaultEditMode?: 'iframe' | 'div';
|
|
149
|
+
/**
|
|
150
|
+
* Applies custom styles to the content element wrapper of the Editor.
|
|
151
|
+
*
|
|
152
|
+
* @example
|
|
153
|
+
* ```jsx
|
|
154
|
+
* <Editor
|
|
155
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
156
|
+
* contentStyle={{ backgroundColor: 'lightgray' }}
|
|
157
|
+
* />
|
|
158
|
+
* ```
|
|
159
|
+
*/
|
|
160
|
+
contentStyle?: React.CSSProperties;
|
|
161
|
+
/**
|
|
162
|
+
* Specifies the text directionality of the Editor content.
|
|
163
|
+
* Accepts `ltr` (left-to-right) or `rtl` (right-to-left).
|
|
164
|
+
*
|
|
165
|
+
* @example
|
|
166
|
+
* ```jsx
|
|
167
|
+
* <Editor tools={[[EditorTools.Bold, EditorTools.Italic]]} dir="rtl" />
|
|
168
|
+
* ```
|
|
169
|
+
*/
|
|
170
|
+
dir?: string;
|
|
171
|
+
/**
|
|
172
|
+
* Adds custom CSS classes to the Editor's root element.
|
|
173
|
+
*
|
|
174
|
+
* @example
|
|
175
|
+
* ```jsx
|
|
176
|
+
* <Editor
|
|
177
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
178
|
+
* className="custom-editor-class"
|
|
179
|
+
* contentStyle={{ backgroundColor: 'lightgray' }}
|
|
180
|
+
* />
|
|
181
|
+
* ```
|
|
182
|
+
*/
|
|
183
|
+
className?: string;
|
|
184
|
+
/**
|
|
185
|
+
* Applies custom styles to the Editor's root element.
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```jsx
|
|
189
|
+
* <Editor
|
|
190
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
191
|
+
* style={{ border: '1px solid black' }}
|
|
192
|
+
* />
|
|
193
|
+
* ```
|
|
194
|
+
*/
|
|
195
|
+
style?: React.CSSProperties;
|
|
196
|
+
/**
|
|
197
|
+
* Identifies the element(s) that describe the Editor component.
|
|
198
|
+
* Similar to the [HTML aria-describedby attribute](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Techniques/Using_the_aria-describedby_attribute).
|
|
199
|
+
*
|
|
200
|
+
* @example
|
|
201
|
+
* ```jsx
|
|
202
|
+
* <Editor
|
|
203
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
204
|
+
* defaultEditMode="div"
|
|
205
|
+
* ariaDescribedBy="description-element-id"
|
|
206
|
+
* />
|
|
207
|
+
* ```
|
|
208
|
+
*/
|
|
209
|
+
ariaDescribedBy?: string;
|
|
210
|
+
/**
|
|
211
|
+
* Identifies the element(s) that label the Editor component.
|
|
212
|
+
*
|
|
213
|
+
* @example
|
|
214
|
+
* ```jsx
|
|
215
|
+
* <Editor
|
|
216
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
217
|
+
* defaultEditMode="div"
|
|
218
|
+
* ariaLabelledBy="label-element-id"
|
|
219
|
+
* />
|
|
220
|
+
* ```
|
|
221
|
+
*/
|
|
222
|
+
ariaLabelledBy?: string;
|
|
223
|
+
/**
|
|
224
|
+
* Provides an accessible label for the Editor component.
|
|
225
|
+
* Similar to the [aria-label](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label) attribute.
|
|
226
|
+
*
|
|
227
|
+
* @example
|
|
228
|
+
* ```jsx
|
|
229
|
+
* <Editor ariaLabel="Rich Text Editor" />
|
|
230
|
+
* ```
|
|
231
|
+
*/
|
|
232
|
+
ariaLabel?: string;
|
|
233
|
+
/**
|
|
234
|
+
* Enables or disables resizing of the Editor. Defaults to `false`.
|
|
235
|
+
*
|
|
236
|
+
* @example
|
|
237
|
+
* ```jsx
|
|
238
|
+
*
|
|
239
|
+
* <Editor tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
240
|
+
* resizable={true} />
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
243
|
+
resizable?: boolean;
|
|
244
|
+
/**
|
|
245
|
+
* Configures the tools available in the Editor's toolbar.
|
|
246
|
+
* By default, no tools are rendered.
|
|
247
|
+
*
|
|
248
|
+
* @example
|
|
249
|
+
* ```jsx
|
|
250
|
+
* <Editor tools={[[EditorTools.Bold, EditorTools.Italic]]} />
|
|
251
|
+
* ```
|
|
252
|
+
*/
|
|
253
|
+
tools?: Array<any>;
|
|
254
|
+
/**
|
|
255
|
+
* Triggered when the Editor is about to mount. Useful for configuring the `EditorView` object.
|
|
256
|
+
* To initialize `EditorView`, use the properties of the `event` object.
|
|
257
|
+
*
|
|
258
|
+
* @param event - The event object containing initialization details.
|
|
259
|
+
* @returns An `EditorView` instance or `void`.
|
|
260
|
+
*
|
|
261
|
+
* @example
|
|
262
|
+
* ```jsx
|
|
263
|
+
* <Editor
|
|
264
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
265
|
+
* onMount={(event) => console.log(event.dom)}
|
|
266
|
+
* />
|
|
267
|
+
* ```
|
|
268
|
+
*/
|
|
269
|
+
onMount?: (event: EditorMountEvent) => EditorView | void;
|
|
270
|
+
/**
|
|
271
|
+
* Triggered when content is pasted into the Editor. Allows modification of the pasted content.
|
|
272
|
+
*
|
|
273
|
+
* @param event - The event object containing the pasted content details.
|
|
274
|
+
*
|
|
275
|
+
* @returns The modified HTML string or `void`.
|
|
276
|
+
*
|
|
277
|
+
* @example
|
|
278
|
+
* ```jsx
|
|
279
|
+
* <Editor
|
|
280
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
281
|
+
* onPasteHtml={(event) => event.pastedHtml.toUpperCase()}
|
|
282
|
+
* />
|
|
283
|
+
* ```
|
|
284
|
+
*/
|
|
285
|
+
onPasteHtml?: (event: EditorPasteEvent) => string | void;
|
|
286
|
+
/**
|
|
287
|
+
* Triggered when the Editor is about to apply a transaction.
|
|
288
|
+
* To prevent the transaction, return `false`.
|
|
289
|
+
*
|
|
290
|
+
* @param event - The event object containing transaction details.
|
|
291
|
+
* @returns `false` to cancel the transaction or `void`.
|
|
292
|
+
*
|
|
293
|
+
* @example
|
|
294
|
+
* ```jsx
|
|
295
|
+
* <Editor
|
|
296
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
297
|
+
* onExecute={(event) => {
|
|
298
|
+
* console.log('onExecute called');
|
|
299
|
+
* event.transaction.steps.length > 0;
|
|
300
|
+
* }}
|
|
301
|
+
* />
|
|
302
|
+
* ```
|
|
303
|
+
*/
|
|
304
|
+
onExecute?: (event: EditorExecuteEvent) => boolean | void;
|
|
305
|
+
/**
|
|
306
|
+
* Triggered when the Editor's content element receives focus.
|
|
307
|
+
*
|
|
308
|
+
* @param event - The event object containing focus details.
|
|
309
|
+
*
|
|
310
|
+
* @example
|
|
311
|
+
* ```jsx
|
|
312
|
+
* <Editor
|
|
313
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
314
|
+
* onFocus={(event) => console.log('Editor focused')}
|
|
315
|
+
* />
|
|
316
|
+
* ```
|
|
317
|
+
*/
|
|
318
|
+
onFocus?: (event: EditorFocusEvent) => void;
|
|
319
|
+
/**
|
|
320
|
+
* Triggered when the Editor's content element loses focus.
|
|
321
|
+
*
|
|
322
|
+
* @param event - The event object containing blur details.
|
|
323
|
+
*
|
|
324
|
+
* @example
|
|
325
|
+
* ```jsx
|
|
326
|
+
* <Editor
|
|
327
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
328
|
+
* onBlur={(event) => console.log('Editor blurred')}
|
|
329
|
+
* />
|
|
330
|
+
* ```
|
|
331
|
+
*/
|
|
332
|
+
onBlur?: (event: EditorBlurEvent) => void;
|
|
333
|
+
/**
|
|
334
|
+
* Triggered when the value of the Editor is about to change.
|
|
335
|
+
*
|
|
336
|
+
* @param event - The event object containing change details.
|
|
337
|
+
*
|
|
338
|
+
* @example
|
|
339
|
+
* ```jsx
|
|
340
|
+
* <Editor
|
|
341
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
342
|
+
* onChange={(event) => console.log(event.value)}
|
|
343
|
+
* />
|
|
344
|
+
* ```
|
|
345
|
+
*/
|
|
346
|
+
onChange?: (event: EditorChangeEvent) => void;
|
|
347
|
+
/**
|
|
348
|
+
* Triggered during the initialization of an Editor with the `iframe` property set to `true`.
|
|
349
|
+
* Allows access to the iframe document for customization.
|
|
350
|
+
*
|
|
351
|
+
* @param event - The event object containing iframe details.
|
|
352
|
+
*
|
|
353
|
+
* @example
|
|
354
|
+
* ```jsx
|
|
355
|
+
* <Editor
|
|
356
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
357
|
+
* onIFrameInit={(event) => {
|
|
358
|
+
* console.log('Iframe initialized');
|
|
359
|
+
* event.iframe.style.border = 'none';
|
|
360
|
+
* }}
|
|
361
|
+
/>
|
|
362
|
+
* ```
|
|
363
|
+
*/
|
|
364
|
+
onIFrameInit?: (event: EditorIFrameInitEvent) => void;
|
|
365
|
+
/**
|
|
366
|
+
* Specifies the value of the Editor. Can be a ProseMirror `Node` or an HTML string.
|
|
367
|
+
*
|
|
368
|
+
* @example
|
|
369
|
+
* ```jsx
|
|
370
|
+
* <Editor
|
|
371
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
372
|
+
* value="<p>Initial content</p>"
|
|
373
|
+
* />
|
|
374
|
+
* ```
|
|
375
|
+
*/
|
|
376
|
+
value?: Node | string;
|
|
377
|
+
/**
|
|
378
|
+
* Disables the built-in keyboard navigation of the Editor's toolbar when set to `false`.
|
|
379
|
+
*
|
|
380
|
+
* @example
|
|
381
|
+
* ```jsx
|
|
382
|
+
* <Editor
|
|
383
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
384
|
+
* keyboardNavigation={false}
|
|
385
|
+
* />
|
|
386
|
+
* ```
|
|
387
|
+
*/
|
|
388
|
+
keyboardNavigation?: boolean;
|
|
389
|
+
/**
|
|
390
|
+
* Defines options for parsing HTML content:
|
|
391
|
+
* - `false`: Collapses whitespace as per HTML rules.
|
|
392
|
+
* - `true`: Preserves whitespace but normalizes newlines to spaces.
|
|
393
|
+
* - `full`: Fully preserves whitespace.
|
|
394
|
+
* Defaults to `full`.
|
|
395
|
+
*
|
|
396
|
+
* @example
|
|
397
|
+
* ```jsx
|
|
398
|
+
* <Editor
|
|
399
|
+
* tools={[[EditorTools.Bold, EditorTools.Italic]]}
|
|
400
|
+
* preserveWhitespace="full"
|
|
401
|
+
* />
|
|
402
|
+
* ```
|
|
403
|
+
*/
|
|
404
|
+
preserveWhitespace?: boolean | 'full';
|
|
405
|
+
}
|
|
406
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* @hidden
|
|
10
|
+
*/
|
|
11
|
+
export declare const defaultStyle = "\nhtml, body {\n margin: 0;\n height: 100%;\n padding: 0;\n}\nhtml {\n min-height: 100%;\n}\nbody {\n box-sizing: border-box;\n position: relative;\n word-wrap: break-word;\n padding: 8px;\n}\nbody > .k-content {\n outline: 0;\n height: 100%;\n white-space: pre-wrap;\n}\n.k-content > p {\n margin: 0 0 1em;\n}\n.k-content table {\n white-space: pre-wrap;\n}\n.k-content .k-text-selected {\n color: HighlightText;\n background-color: Highlight;\n}\n.k-content .k-text-highlighted {\n background-color: #bbdefb;\n}\n.k-content .ProseMirror-selectednode {\n outline: 2px solid #8cf;\n}\n.ProseMirror-hideselection *::selection { background: transparent; }\n.ProseMirror-hideselection *::-moz-selection { background: transparent; }\n.ProseMirror-hideselection { caret-color: transparent; }\n.ProseMirror-gapcursor {\n display: none;\n pointer-events: none;\n position: absolute;\n}\n.ProseMirror-gapcursor:after {\n content: \"\";\n display: block;\n position: absolute;\n top: -2px;\n width: 20px;\n border-top: 1px solid black;\n animation: ProseMirror-cursor-blink 1.1s steps(2, start) infinite;\n}\n@keyframes ProseMirror-cursor-blink {\n to {\n visibility: hidden;\n }\n}\n.ProseMirror-focused .ProseMirror-gapcursor {\n display: block;\n}\n.k-editor-resize-handles-wrapper {\n position: absolute;\n visibility: hidden;\n}\n.k-editor-resize-handle {\n position: absolute;\n visibility: visible;\n background-color: #fff;\n border: 1px solid #000;\n z-index: 100;\n width: 5px;\n height: 5px;\n}\n.k-editor-resize-handle.northwest {\n top: 0;\n left: 0;\n transform: translate(-50%, -50%);\n cursor: nw-resize;\n}\n.k-editor-resize-handle.north {\n top: 0;\n left: 50%;\n transform: translate(-50%, -50%);\n cursor: n-resize;\n}\n.k-editor-resize-handle.northeast {\n top: 0;\n right: 0;\n transform: translate(50%, -50%);\n cursor: ne-resize;\n}\n.k-editor-resize-handle.southwest {\n left: 0;\n bottom: 0;\n transform: translate(-50%, 50%);\n cursor: sw-resize;\n}\n.k-editor-resize-handle.south {\n bottom: 0;\n left: 50%;\n transform: translate(-50%, 50%);\n cursor: s-resize;\n}\n.k-editor-resize-handle.southeast {\n right: 0;\n bottom: 0;\n transform: translate(50%, 50%);\n cursor: se-resize;\n}\n.k-editor-resize-handle.west {\n top: 50%;\n left: 0;\n transform: translate(-50%, -50%);\n cursor: w-resize;\n}\n.k-editor-resize-handle.east {\n top: 50%;\n right: 0;\n transform: translate(50%, -50%);\n cursor: e-resize;\n}\n.k-editor-resize-wrap-element {\n display: inline-block;\n position: relative;\n}\n.ProseMirror .row-resize-handle {\n position: absolute;\n right: 0; left: 0; bottom: 0;\n transform: translate(0, 50%);\n height: 4px;\n z-index: 20;\n background-color: #adf;\n pointer-events: none;\n}\n.ProseMirror .column-resize-handle {\n position: absolute;\n right: -2px; top: 0; bottom: 0;\n width: 4px;\n z-index: 20;\n background-color: #adf;\n pointer-events: none;\n}\n.ProseMirror.resize-cursor {\n cursor: ew-resize;\n cursor: col-resize;\n}\n.ProseMirror.resize-cursor-vertical {\n cursor: sn-resize;\n cursor: row-resize;\n}\n.k-editor-resize-wrap-element table td p,\n.k-editor-resize-wrap-element table th p {\n margin: 0 auto;\n}\n";
|
|
12
|
+
/**
|
|
13
|
+
* @hidden
|
|
14
|
+
*/
|
|
15
|
+
export declare const tablesStyles = "\n .ProseMirror .tableWrapper {\n overflow-x: auto;\n margin: 1em 0;\n }\n .ProseMirror table {\n margin: 0;\n border-collapse: collapse;\n table-layout: fixed;\n width: 100%;\n overflow: hidden;\n }\n .ProseMirror td, .ProseMirror th {\n min-width: 1em;\n border: 1px solid #ddd;\n padding: 3px 5px;\n vertical-align: top;\n box-sizing: border-box;\n position: relative;\n }\n .ProseMirror th {\n font-weight: bold;\n text-align: left;\n }\n /* Give selected cells a blue overlay */\n .ProseMirror .selectedCell:after {\n z-index: 2;\n position: absolute;\n content: \"\";\n left: 0; right: 0; top: 0; bottom: 0;\n background: rgba(200, 200, 255, 0.4);\n pointer-events: none;\n }\n .ProseMirror .selectedCell ::selection {\n background-color: transparent;\n }\n";
|
|
16
|
+
/**
|
|
17
|
+
* @hidden
|
|
18
|
+
*/
|
|
19
|
+
export declare const rtlStyles = "body { direction: rtl }";
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { PasteCleanupSettings as PasteSettings } from '@progress/kendo-editor-common';
|
|
9
|
+
/**
|
|
10
|
+
* The settings passed to `pasteCleanup` function ([see example](https://www.telerik.com/kendo-react-ui/components/editor/paste)).
|
|
11
|
+
*/
|
|
12
|
+
export interface PasteCleanupSettings extends PasteSettings {
|
|
13
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
export { marks, nodes } from '@progress/kendo-editor-common';
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
*-------------------------------------------------------------------------------------------
|
|
4
|
+
* Copyright © 2026 Progress Software Corporation. All rights reserved.
|
|
5
|
+
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
|
+
*-------------------------------------------------------------------------------------------
|
|
7
|
+
*/
|
|
8
|
+
import { EditorState, Transaction, EditorView } from '@progress/kendo-editor-common';
|
|
9
|
+
import { EditorToolsSettings } from './toolsSettings.js';
|
|
10
|
+
declare const bold: EditorToolsSettings.InlineFormatSettings, underline: EditorToolsSettings.InlineFormatSettings, italic: EditorToolsSettings.InlineFormatSettings;
|
|
11
|
+
/**
|
|
12
|
+
* @hidden
|
|
13
|
+
*/
|
|
14
|
+
export interface Shortcuts {
|
|
15
|
+
[key: string]: (state: EditorState, dispatch: (tr: Transaction) => void, view?: EditorView) => boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @hidden
|
|
19
|
+
*/
|
|
20
|
+
export declare const getShortcuts: (settings?: {
|
|
21
|
+
types?: {
|
|
22
|
+
listItem: string;
|
|
23
|
+
hardBreak: string;
|
|
24
|
+
};
|
|
25
|
+
toolsSettings?: {
|
|
26
|
+
bold?: EditorToolsSettings.InlineFormatOptions;
|
|
27
|
+
italic?: EditorToolsSettings.InlineFormatOptions;
|
|
28
|
+
underline?: EditorToolsSettings.InlineFormatOptions;
|
|
29
|
+
};
|
|
30
|
+
}) => Shortcuts;
|
|
31
|
+
export {};
|
package/config/shortcuts.mjs
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Licensed under commercial license. See LICENSE.md in the package root for more information
|
|
6
6
|
*-------------------------------------------------------------------------------------------
|
|
7
7
|
*/
|
|
8
|
-
import { chainCommands as u, exitCode as h,
|
|
8
|
+
import { chainCommands as u, exitCode as h, goToNextCell as l, splitListItem as p, undoInputRule as f, redo as a, undo as S, toggleInlineFormat as i } from "@progress/kendo-editor-common";
|
|
9
9
|
import { EditorToolsSettings as M } from "./toolsSettings.mjs";
|
|
10
10
|
const { bold: b, underline: y, italic: I } = M, c = typeof navigator != "undefined" ? /Mac/.test(navigator.platform) : !1, B = (e) => {
|
|
11
11
|
const r = u(h, (t, o) => {
|
|
@@ -16,16 +16,16 @@ const { bold: b, underline: y, italic: I } = M, c = typeof navigator != "undefin
|
|
|
16
16
|
"Mod-b": (t, o) => i(n.bold || b)(t, o),
|
|
17
17
|
"Mod-i": (t, o) => i(n.italic || I)(t, o),
|
|
18
18
|
"Mod-u": (t, o) => i(n.underline || y)(t, o),
|
|
19
|
-
"Mod-z":
|
|
20
|
-
"Shift-Mod-z":
|
|
21
|
-
...c ? {} : { "Mod-y":
|
|
19
|
+
"Mod-z": S,
|
|
20
|
+
"Shift-Mod-z": a,
|
|
21
|
+
...c ? {} : { "Mod-y": a },
|
|
22
22
|
Backspace: f,
|
|
23
23
|
"Mod-Enter": r,
|
|
24
24
|
"Shift-Enter": r,
|
|
25
25
|
...c ? { "Ctrl-Enter": r } : {},
|
|
26
|
-
Enter: (t, o) =>
|
|
27
|
-
Tab:
|
|
28
|
-
"Shift-Tab":
|
|
26
|
+
Enter: (t, o) => p(t.schema.nodes[s])(t, o),
|
|
27
|
+
Tab: l(1),
|
|
28
|
+
"Shift-Tab": l(-1)
|
|
29
29
|
};
|
|
30
30
|
};
|
|
31
31
|
export {
|