@progress/kendo-angular-editor 3.0.0-dev.202201121058 → 3.0.0-dev.202201121158

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 (53) hide show
  1. package/dist/cdn/js/kendo-angular-editor.js +1 -1
  2. package/dist/cdn/main.js +1 -1
  3. package/dist/es/common/error-messages.js +1 -1
  4. package/dist/es/config/command-icons.js +1 -0
  5. package/dist/es/config/commands.js +16 -15
  6. package/dist/es/config/schema.js +1 -2
  7. package/dist/es/editor-toolbar-state.js +12 -2
  8. package/dist/es/editor.component.js +2 -2
  9. package/dist/es/editor.module.js +4 -1
  10. package/dist/es/index.js +2 -0
  11. package/dist/es/localization/messages.js +4 -0
  12. package/dist/es/package-metadata.js +1 -1
  13. package/dist/es/tools/blockquote/editor-blockquote-button.directive.js +48 -0
  14. package/dist/es/tools/format/editor-format-dropdownlist.component.js +1 -1
  15. package/dist/es/tools/format/editor-format.component.js +0 -1
  16. package/dist/es2015/common/commands.d.ts +1 -1
  17. package/dist/es2015/common/error-messages.js +1 -1
  18. package/dist/es2015/common/format-item.interface.d.ts +1 -1
  19. package/dist/es2015/config/command-icons.js +1 -0
  20. package/dist/es2015/config/commands.js +16 -15
  21. package/dist/es2015/config/schema.d.ts +1 -1
  22. package/dist/es2015/config/schema.js +1 -1
  23. package/dist/es2015/editor-toolbar-state.js +12 -2
  24. package/dist/es2015/editor.component.d.ts +1 -1
  25. package/dist/es2015/editor.component.js +3 -1
  26. package/dist/es2015/editor.module.js +4 -1
  27. package/dist/es2015/index.d.ts +2 -0
  28. package/dist/es2015/index.js +2 -0
  29. package/dist/es2015/index.metadata.json +1 -1
  30. package/dist/es2015/localization/messages.d.ts +4 -0
  31. package/dist/es2015/localization/messages.js +4 -0
  32. package/dist/es2015/package-metadata.js +1 -1
  33. package/dist/es2015/tools/blockquote/editor-blockquote-button.directive.d.ts +30 -0
  34. package/dist/es2015/tools/blockquote/editor-blockquote-button.directive.js +45 -0
  35. package/dist/es2015/tools/format/editor-format-dropdownlist.component.js +0 -4
  36. package/dist/es2015/tools/format/editor-format.component.js +0 -1
  37. package/dist/fesm2015/index.js +75 -26
  38. package/dist/fesm5/index.js +78 -24
  39. package/dist/npm/common/error-messages.js +1 -1
  40. package/dist/npm/config/command-icons.js +1 -0
  41. package/dist/npm/config/commands.js +16 -14
  42. package/dist/npm/config/schema.js +1 -2
  43. package/dist/npm/editor-toolbar-state.js +11 -1
  44. package/dist/npm/editor.component.js +2 -2
  45. package/dist/npm/editor.module.js +4 -1
  46. package/dist/npm/index.js +5 -0
  47. package/dist/npm/localization/messages.js +4 -0
  48. package/dist/npm/package-metadata.js +1 -1
  49. package/dist/npm/tools/blockquote/editor-blockquote-button.directive.js +50 -0
  50. package/dist/npm/tools/format/editor-format-dropdownlist.component.js +1 -1
  51. package/dist/npm/tools/format/editor-format.component.js +0 -1
  52. package/dist/systemjs/kendo-angular-editor.js +1 -1
  53. package/package.json +2 -2
@@ -13,7 +13,7 @@ export var EditorErrorMessages = {
13
13
  pluginsCallbackType: ɵ0,
14
14
  pastedContentCallbackType: ɵ1,
15
15
  setPluginsOnce: 'The plugins cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/plugins/',
16
- setPlaceHolderOnce: 'The placeholder cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/placeholder/',
16
+ setPlaceHolderOnce: 'The placeholder cannot be changed dynamically. See https://www.telerik.com/kendo-angular-ui/components/editor/plugins/#toc-custom-plugins/',
17
17
  printTool: 'The Print tool and functionality are supported only in iframe mode. See https://www.telerik.com/kendo-angular-ui-develop/components/editor/api/EditorPrintButtonDirective/'
18
18
  };
19
19
  export { ɵ0, ɵ1 };
@@ -11,6 +11,7 @@ export var commandIcons = {
11
11
  alignLeft: 'align-left',
12
12
  alignRight: 'align-right',
13
13
  backColor: 'background',
14
+ blockquote: 'blockquote',
14
15
  bold: 'bold',
15
16
  cleanFormatting: 'clear-css',
16
17
  createLink: 'link-horizontal',
@@ -3,7 +3,7 @@
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
5
  import * as tslib_1 from "tslib";
6
- import { alignBlocks, alignLeftRules, alignCenterRules, alignRightRules, alignJustifyRules, alignRemoveRules, indent, outdent, setHtml, getHtml, insertImage, insertText, applyLink, removeLink, expandToWordWrap,
6
+ import { alignBlocks, alignLeftRules, alignCenterRules, alignRightRules, alignJustifyRules, alignRemoveRules, indent, outdent, setHtml, getHtml, insertImage, insertText, applyLink, removeLink, expandToWordWrap, blockquote,
7
7
  //marks
8
8
  bold, italic, underline, strikethrough, subscript, superscript, link, toggleInlineFormat, applyInlineStyle, formatBlockElements, toggleOrderedList, toggleUnorderedList, isAligned, undo, redo, cleanFormatting, selectAll, addColumnBefore, addColumnAfter, addRowBefore, addRowAfter, deleteRow, deleteColumn, deleteTable, mergeCells, splitCell } from '@progress/kendo-editor-common';
9
9
  import { insertTable } from './table-commands';
@@ -31,7 +31,7 @@ var inlineCommand = {
31
31
  var ɵ17 = function () { return function (state, dispatch) { return isAligned(state, alignCenterRules) ? alignRemove(state, dispatch) : alignBlocks(alignCenterRules)(state, dispatch); }; }, ɵ18 = function () { return function (state, dispatch) { return isAligned(state, alignJustifyRules) ? alignRemove(state, dispatch) : alignBlocks(alignJustifyRules)(state, dispatch); }; }, ɵ19 = function () { return function (state, dispatch) { return isAligned(state, alignLeftRules) ? alignRemove(state, dispatch) : alignBlocks(alignLeftRules)(state, dispatch); }; }, ɵ20 = function () { return function (state, dispatch) { return isAligned(state, alignRightRules) ? alignRemove(state, dispatch) : alignBlocks(alignRightRules)(state, dispatch); }; }, ɵ21 = function (formatAttr) { return formatBlockElements(formatAttr.tag); }, ɵ22 = function () { return getHtml; }, ɵ23 = function () { return indent; }, ɵ24 = function (attrs) { return insertImage(attrs); }, ɵ25 = function () { return toggleOrderedList; }, ɵ26 = function () { return toggleUnorderedList; }, ɵ27 = function () { return outdent; }, ɵ28 = function () { return redo; }, ɵ29 = function (_a) {
32
32
  var content = _a.content, parseOptions = _a.parseOptions;
33
33
  return setHtml(content, 'setHTML', parseOptions);
34
- }, ɵ30 = function () { return undo; };
34
+ }, ɵ30 = function () { return undo; }, ɵ31 = function () { return blockquote; };
35
35
  var blockCommand = {
36
36
  alignCenter: ɵ17,
37
37
  alignJustify: ɵ18,
@@ -48,23 +48,24 @@ var blockCommand = {
48
48
  outdent: ɵ27,
49
49
  redo: ɵ28,
50
50
  setHTML: ɵ29,
51
- undo: ɵ30
51
+ undo: ɵ30,
52
+ blockquote: ɵ31
52
53
  };
53
- var ɵ31 = function (attr) { return insertTable(attr); }, ɵ32 = function () { return addColumnBefore; }, ɵ33 = function () { return addColumnAfter; }, ɵ34 = function () { return addRowBefore; }, ɵ35 = function () { return addRowAfter; }, ɵ36 = function () { return deleteRow; }, ɵ37 = function () { return deleteColumn; }, ɵ38 = function () { return mergeCells; }, ɵ39 = function () { return splitCell; }, ɵ40 = function () { return deleteTable; };
54
+ var ɵ32 = function (attr) { return insertTable(attr); }, ɵ33 = function () { return addColumnBefore; }, ɵ34 = function () { return addColumnAfter; }, ɵ35 = function () { return addRowBefore; }, ɵ36 = function () { return addRowAfter; }, ɵ37 = function () { return deleteRow; }, ɵ38 = function () { return deleteColumn; }, ɵ39 = function () { return mergeCells; }, ɵ40 = function () { return splitCell; }, ɵ41 = function () { return deleteTable; };
54
55
  var tableCommand = {
55
- insertTable: ɵ31,
56
- addColumnBefore: ɵ32,
57
- addColumnAfter: ɵ33,
58
- addRowBefore: ɵ34,
59
- addRowAfter: ɵ35,
60
- deleteRow: ɵ36,
61
- deleteColumn: ɵ37,
62
- mergeCells: ɵ38,
63
- splitCell: ɵ39,
64
- deleteTable: ɵ40
56
+ insertTable: ɵ32,
57
+ addColumnBefore: ɵ33,
58
+ addColumnAfter: ɵ34,
59
+ addRowBefore: ɵ35,
60
+ addRowAfter: ɵ36,
61
+ deleteRow: ɵ37,
62
+ deleteColumn: ɵ38,
63
+ mergeCells: ɵ39,
64
+ splitCell: ɵ40,
65
+ deleteTable: ɵ41
65
66
  };
66
67
  /**
67
68
  * @hidden
68
69
  */
69
70
  export var editorCommands = Object.assign({}, inlineCommand, blockCommand, tableCommand);
70
- export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8, ɵ9, ɵ10, ɵ11, ɵ12, ɵ13, ɵ14, ɵ15, ɵ16, ɵ17, ɵ18, ɵ19, ɵ20, ɵ21, ɵ22, ɵ23, ɵ24, ɵ25, ɵ26, ɵ27, ɵ28, ɵ29, ɵ30, ɵ31, ɵ32, ɵ33, ɵ34, ɵ35, ɵ36, ɵ37, ɵ38, ɵ39, ɵ40 };
71
+ export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8, ɵ9, ɵ10, ɵ11, ɵ12, ɵ13, ɵ14, ɵ15, ɵ16, ɵ17, ɵ18, ɵ19, ɵ20, ɵ21, ɵ22, ɵ23, ɵ24, ɵ25, ɵ26, ɵ27, ɵ28, ɵ29, ɵ30, ɵ31, ɵ32, ɵ33, ɵ34, ɵ35, ɵ36, ɵ37, ɵ38, ɵ39, ɵ40, ɵ41 };
@@ -2,7 +2,6 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import * as tslib_1 from "tslib";
6
5
  import { semanticNodes } from './semantic-nodes';
7
6
  import { marks as commonMarks, nodes as commonNodes, Schema } from '@progress/kendo-editor-common';
8
7
  /**
@@ -15,7 +14,7 @@ var nodes = Object.assign(commonNodes, semanticNodes);
15
14
  */
16
15
  export var schema = new Schema({
17
16
  marks: marks,
18
- nodes: tslib_1.__assign({}, nodes, { blockquote: tslib_1.__assign({}, nodes.blockquote, { content: 'inline*' }) })
17
+ nodes: nodes
19
18
  });
20
19
  /**
21
20
  * @hidden
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { cleanFormatting } from '@progress/kendo-editor-common';
5
+ import { blockquote, cleanFormatting, isIndented } from '@progress/kendo-editor-common';
6
6
  import { alignRightRules, alignCenterRules, alignLeftRules, alignJustifyRules, isAligned, bold, italic, underline, strikethrough, subscript, superscript, link, activeNode, hasNode, getActiveMarks, hasMark, expandSelection, indentRules, outdentRules, canIndentAsListItem, canOutdentAsListItem, canBeIndented, undo, redo, addRowBefore, addRowAfter, addColumnBefore, addColumnAfter, deleteRow, deleteColumn, deleteTable, mergeCells, splitCell } from '@progress/kendo-editor-common';
7
7
  /**
8
8
  * @hidden
@@ -36,6 +36,10 @@ export var getToolbarState = function (state, options) { return ({
36
36
  selected: activeNode(state),
37
37
  disabled: false
38
38
  },
39
+ blockquote: {
40
+ selected: false,
41
+ disabled: !blockquote(state)
42
+ },
39
43
  indent: {
40
44
  selected: false,
41
45
  disabled: !(canIndentAsListItem(state, state.schema.nodes.list_item) || canBeIndented(state, indentRules))
@@ -58,7 +62,11 @@ export var getToolbarState = function (state, options) { return ({
58
62
  },
59
63
  outdent: {
60
64
  selected: false,
61
- disabled: !(canOutdentAsListItem(state, outdentRules) || canBeIndented(state, outdentRules))
65
+ get disabled() {
66
+ return !(hasNode(state, state.schema.nodes.blockquote) ||
67
+ canOutdentAsListItem(state, outdentRules) ||
68
+ isIndented(state, outdentRules.nodes));
69
+ }
62
70
  },
63
71
  redo: {
64
72
  selected: false,
@@ -184,6 +192,7 @@ export var initialToolBarState = {
184
192
  format: { selected: { text: 'Format', tag: null }, disabled: false },
185
193
  style: { selected: { marks: [], hasNodesWithoutMarks: false }, disabled: false },
186
194
  cleanFormatting: { selected: false, disabled: true },
195
+ blockquote: { selected: false, disabled: false },
187
196
  //indent
188
197
  indent: { selected: false, disabled: false },
189
198
  outdent: { selected: false, disabled: false },
@@ -236,6 +245,7 @@ export var disabledToolBarState = {
236
245
  format: { selected: { text: 'Format', tag: null }, disabled: true },
237
246
  style: { selected: { marks: [], hasNodesWithoutMarks: false }, disabled: true },
238
247
  cleanFormatting: { selected: false, disabled: true },
248
+ blockquote: { selected: false, disabled: true },
239
249
  //indent
240
250
  indent: { selected: false, disabled: true },
241
251
  outdent: { selected: false, disabled: true },
@@ -504,7 +504,7 @@ var EditorComponent = /** @class */ (function () {
504
504
  * @param {any} attr - Optional parameters for the command. Apart from the following list,
505
505
  * the parameters do not expect specific attributes when you call them:
506
506
  * - `format` - Accepts an object with the `tag` property.
507
- * The supported tags are `p`, `blockquote`, and any of the `h1` to `h6` heading tags.
507
+ * The supported tags are `p` and any of the `h1` to `h6` heading tags.
508
508
  * - `createLink` - Accepts an object with the `href`, `title`, and `target` properties. The `href` property is mandatory.
509
509
  * - `setHTML` - Accepts a `string` parameter.
510
510
  * - `insertTable` - Accepts an object with the `rows` and `cols` properties. The number values are zero based.
@@ -1011,7 +1011,7 @@ var EditorComponent = /** @class */ (function () {
1011
1011
  }
1012
1012
  ],
1013
1013
  /* tslint:disable:max-line-length */
1014
- template: "\n <ng-container\n kendoEditorLocalizedMessages\n i18n-alignCenter=\"kendo.editor.alignCenter|The title of the tool that aligns text in the center.\"\n alignCenter=\"Center text\"\n i18n-alignJustify=\"kendo.editor.alignJustify|The title of the tool that justifies text both left and right.\"\n alignJustify=\"Justify\"\n i18n-alignLeft=\"kendo.editor.alignLeft|The title of the tool that aligns text on the left.\"\n alignLeft=\"Align text left\"\n i18n-alignRight=\"kendo.editor.alignRight|The title of the tool that aligns text on the right.\"\n alignRight=\"Align text right\"\n i18n-backColor=\"kendo.editor.backColor|The title of the tool that changes the text background color.\"\n backColor=\"Background color\"\n i18n-bold=\"kendo.editor.bold|The title of the tool that makes text bold.\"\n bold=\"Bold\"\n i18n-cleanFormatting=\"kendo.editor.cleanFormatting|The title of the Clean Formatting tool.\"\n cleanFormatting=\"Clean formatting\"\n i18n-createLink=\"kendo.editor.createLink|The title of the tool that creates hyperlinks.\"\n createLink=\"Insert link\"\n i18n-dialogApply=\"kendo.editor.dialogApply|The label of the **Apply** button in all editor dialogs.\"\n dialogApply=\"Apply\"\n i18n-dialogCancel=\"kendo.editor.dialogCancel|The label of the **Cancel** button in all editor dialogs.\"\n dialogCancel=\"Cancel\"\n i18n-dialogInsert=\"kendo.editor.dialogInsert|The label of the **Insert** button in all editor dialogs.\"\n dialogInsert=\"Insert\"\n i18n-dialogUpdate=\"kendo.editor.dialogUpdate|The label of the **Update** button in all editor dialogs.\"\n dialogUpdate=\"Update\"\n i18n-fileText=\"kendo.editor.fileText|The caption for the file text in the insertFile dialog.\"\n fileText=\"Text\"\n i18n-fileTitle=\"kendo.editor.fileTitle|The caption for the file Title in the insertFile dialog.\"\n fileTitle=\"Title\"\n i18n-fileWebAddress=\"kendo.editor.fileWebAddress|The caption for the file URL in the insertFile dialog.\"\n fileWebAddress=\"Web address\"\n i18n-fontFamily=\"kendo.editor.fontFamily|The title of the tool that changes the text font.\"\n fontFamily=\"Select font family\"\n i18n-fontSize=\"kendo.editor.fontSize|The title of the tool that changes the text size.\"\n fontSize=\"Select font size\"\n i18n-foreColor=\"kendo.editor.foreColor|The title of the tool that changes the text color.\"\n foreColor=\"Color\"\n i18n-format=\"kendo.editor.format|The title of the tool that lets users choose block formats.\"\n format=\"Format\"\n i18n-imageAltText=\"kendo.editor.imageAltText|The caption for the image alternate text in the insertImage dialog.\"\n imageAltText=\"Alternate text\"\n i18n-imageHeight=\"kendo.editor.imageHeight|The caption for the image height in the insertImage dialog.\"\n imageHeight=\"Height (px)\"\n i18n-imageWebAddress=\"kendo.editor.imageWebAddress|The caption for the image URL in the insertImage dialog.\"\n imageWebAddress=\"Web address\"\n i18n-imageWidth=\"kendo.editor.imageWidth|The caption for the image width in the insertImage dialog.\"\n imageWidth=\"Width (px)\"\n i18n-indent=\"kendo.editor.indent|The title of the tool that indents the content.\"\n indent=\"Indent\"\n i18n-insertFile=\"kendo.editor.insertFile|The title of the tool that inserts links to files.\"\n insertFile=\"Insert file\"\n i18n-insertImage=\"kendo.editor.insertImage|The title of the tool that inserts images.\"\n insertImage=\"Insert image\"\n i18n-insertOrderedList=\"kendo.editor.insertOrderedList|The title of the tool that inserts an ordered list.\"\n insertOrderedList=\"Insert ordered list\"\n i18n-insertUnorderedList=\"kendo.editor.insertUnorderedList|The title of the tool that inserts an unordered list.\"\n insertUnorderedList=\"Insert unordered list\"\n i18n-italic=\"kendo.editor.italic|The title of the tool that makes text italicized.\"\n italic=\"Italic\"\n i18n-linkOpenInNewWindow=\"kendo.editor.linkOpenInNewWindow|The caption for the checkbox for opening the link in a new window in the createLink dialog.\"\n linkOpenInNewWindow=\"Open link in new window\"\n i18n-linkText=\"kendo.editor.linkText|The caption for the link text in the createLink dialog.\"\n linkText=\"Text\"\n i18n-linkTitle=\"kendo.editor.linkTitle|The caption for the link title in the createLink dialog.\"\n linkTitle=\"Title\"\n i18n-linkWebAddress=\"kendo.editor.linkWebAddress|The caption for the URL in the createLink dialog.\"\n linkWebAddress=\"Web address\"\n i18n-outdent=\"kendo.editor.outdent|The title of the tool that outdents the content.\"\n outdent=\"Outdent\"\n i18n-print=\"kendo.editor.print|The title of the print tool.\"\n print=\"Print\"\n i18n-redo=\"kendo.editor.redo|The title of the tool that undos the last action.\"\n redo=\"Redo\"\n i18n-selectAll=\"kendo.editor.selectAll|The title of the tool that selects all content.\"\n selectAll=\"Select All\"\n i18n-strikethrough=\"kendo.editor.strikethrough|The title of the tool that strikes through text.\"\n strikethrough=\"Strikethrough\"\n i18n-subscript=\"kendo.editor.subscript|The title of the tool that makes text subscript.\"\n subscript=\"Subscript\"\n i18n-superscript=\"kendo.editor.superscript|The title of the tool that makes text superscript.\"\n superscript=\"Superscript\"\n i18n-underline=\"kendo.editor.underline|The title of the tool that underlines text.\"\n underline=\"Underline\"\n i18n-unlink=\"kendo.editor.unlink|The title of the tool that removes hyperlinks.\"\n unlink=\"Remove Link\"\n i18n-undo=\"kendo.editor.undo|The title of the tool that undos the last action.\"\n undo=\"Undo\"\n i18n-viewSource=\"kendo.editor.viewSource|The title of the tool that shows the editor value as HTML.\"\n viewSource=\"View source\"\n i18n-insertTable=\"kendo.editor.insertTable|The title of the tool that inserts table.\"\n insertTable=\"Insert Table\"\n i18n-addColumnBefore=\"kendo.editor.addColumnBefore|The title of the tool that adds new column before currently selected column.\"\n addColumnBefore=\"Add column before\"\n i18n-addColumnAfter=\"kendo.editor.addColumnAfter|The title of the tool that adds new column after currently selected column.\"\n addColumnAfter=\"Add column after\"\n i18n-addRowBefore=\"kendo.editor.addRowBefore|The title of the tool that adds new row before currently selected row.\"\n addRowBefore=\"Add row before\"\n i18n-addRowAfter=\"kendo.editor.addRowAfter|The title of the tool that adds new row after currently selected row.\"\n addRowAfter=\"Add row after\"\n i18n-deleteColumn=\"kendo.editor.deleteColumn|The title of the tool that deletes a table column.\"\n deleteColumn=\"Delete column\"\n i18n-deleteRow=\"kendo.editor.deleteRow|The title of the tool that deletes a table row.\"\n deleteRow=\"Delete row\"\n i18n-deleteTable=\"kendo.editor.deleteTable|The title of the tool that deletes a table.\"\n deleteTable=\"Delete table\"\n >\n </ng-container>\n\n <ng-content select=\"kendo-toolbar\"></ng-content>\n <kendo-toolbar [overflow]=\"true\" [tabindex]=\"readonly ? -1 : 0\" *ngIf=\"!userToolBarElement\" #defaultToolbar>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorBoldButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorItalicButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnderlineButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-dropdownlist kendoEditorFormat></kendo-toolbar-dropdownlist>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorAlignLeftButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignCenterButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignRightButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignJustifyButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertUnorderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorInsertOrderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorIndentButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorOutdentButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorCreateLinkButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnlinkButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertImageButton></kendo-toolbar-button>\n </kendo-toolbar>\n\n <div *ngIf=\"!iframe\" #content [attr.dir]=\"direction\" class=\"k-editor-content\"></div>\n\n <div class=\"k-editor-content\" *ngIf=\"iframe\">\n <iframe #content srcdoc=\"<!DOCTYPE html>\" frameborder=\"0\" class=\"k-iframe\" (load)=\"iframeOnLoad()\"></iframe>\n </div>\n\n <ng-container #dialogsContainer></ng-container>\n ",
1014
+ template: "\n <ng-container\n kendoEditorLocalizedMessages\n i18n-alignCenter=\"kendo.editor.alignCenter|The title of the tool that aligns text in the center.\"\n alignCenter=\"Center text\"\n i18n-alignJustify=\"kendo.editor.alignJustify|The title of the tool that justifies text both left and right.\"\n alignJustify=\"Justify\"\n i18n-alignLeft=\"kendo.editor.alignLeft|The title of the tool that aligns text on the left.\"\n alignLeft=\"Align text left\"\n i18n-alignRight=\"kendo.editor.alignRight|The title of the tool that aligns text on the right.\"\n alignRight=\"Align text right\"\n i18n-backColor=\"kendo.editor.backColor|The title of the tool that changes the text background color.\"\n backColor=\"Background color\"\n i18n-blockquote=\"kendo.editor.blockquote|The title of the tool that wraps an element in a blockquote\"\n blockquote=\"Quotation\"\n i18n-bold=\"kendo.editor.bold|The title of the tool that makes text bold.\"\n bold=\"Bold\"\n i18n-cleanFormatting=\"kendo.editor.cleanFormatting|The title of the Clean Formatting tool.\"\n cleanFormatting=\"Clean formatting\"\n i18n-createLink=\"kendo.editor.createLink|The title of the tool that creates hyperlinks.\"\n createLink=\"Insert link\"\n i18n-dialogApply=\"kendo.editor.dialogApply|The label of the **Apply** button in all editor dialogs.\"\n dialogApply=\"Apply\"\n i18n-dialogCancel=\"kendo.editor.dialogCancel|The label of the **Cancel** button in all editor dialogs.\"\n dialogCancel=\"Cancel\"\n i18n-dialogInsert=\"kendo.editor.dialogInsert|The label of the **Insert** button in all editor dialogs.\"\n dialogInsert=\"Insert\"\n i18n-dialogUpdate=\"kendo.editor.dialogUpdate|The label of the **Update** button in all editor dialogs.\"\n dialogUpdate=\"Update\"\n i18n-fileText=\"kendo.editor.fileText|The caption for the file text in the insertFile dialog.\"\n fileText=\"Text\"\n i18n-fileTitle=\"kendo.editor.fileTitle|The caption for the file Title in the insertFile dialog.\"\n fileTitle=\"Title\"\n i18n-fileWebAddress=\"kendo.editor.fileWebAddress|The caption for the file URL in the insertFile dialog.\"\n fileWebAddress=\"Web address\"\n i18n-fontFamily=\"kendo.editor.fontFamily|The title of the tool that changes the text font.\"\n fontFamily=\"Select font family\"\n i18n-fontSize=\"kendo.editor.fontSize|The title of the tool that changes the text size.\"\n fontSize=\"Select font size\"\n i18n-foreColor=\"kendo.editor.foreColor|The title of the tool that changes the text color.\"\n foreColor=\"Color\"\n i18n-format=\"kendo.editor.format|The title of the tool that lets users choose block formats.\"\n format=\"Format\"\n i18n-imageAltText=\"kendo.editor.imageAltText|The caption for the image alternate text in the insertImage dialog.\"\n imageAltText=\"Alternate text\"\n i18n-imageHeight=\"kendo.editor.imageHeight|The caption for the image height in the insertImage dialog.\"\n imageHeight=\"Height (px)\"\n i18n-imageWebAddress=\"kendo.editor.imageWebAddress|The caption for the image URL in the insertImage dialog.\"\n imageWebAddress=\"Web address\"\n i18n-imageWidth=\"kendo.editor.imageWidth|The caption for the image width in the insertImage dialog.\"\n imageWidth=\"Width (px)\"\n i18n-indent=\"kendo.editor.indent|The title of the tool that indents the content.\"\n indent=\"Indent\"\n i18n-insertFile=\"kendo.editor.insertFile|The title of the tool that inserts links to files.\"\n insertFile=\"Insert file\"\n i18n-insertImage=\"kendo.editor.insertImage|The title of the tool that inserts images.\"\n insertImage=\"Insert image\"\n i18n-insertOrderedList=\"kendo.editor.insertOrderedList|The title of the tool that inserts an ordered list.\"\n insertOrderedList=\"Insert ordered list\"\n i18n-insertUnorderedList=\"kendo.editor.insertUnorderedList|The title of the tool that inserts an unordered list.\"\n insertUnorderedList=\"Insert unordered list\"\n i18n-italic=\"kendo.editor.italic|The title of the tool that makes text italicized.\"\n italic=\"Italic\"\n i18n-linkOpenInNewWindow=\"kendo.editor.linkOpenInNewWindow|The caption for the checkbox for opening the link in a new window in the createLink dialog.\"\n linkOpenInNewWindow=\"Open link in new window\"\n i18n-linkText=\"kendo.editor.linkText|The caption for the link text in the createLink dialog.\"\n linkText=\"Text\"\n i18n-linkTitle=\"kendo.editor.linkTitle|The caption for the link title in the createLink dialog.\"\n linkTitle=\"Title\"\n i18n-linkWebAddress=\"kendo.editor.linkWebAddress|The caption for the URL in the createLink dialog.\"\n linkWebAddress=\"Web address\"\n i18n-outdent=\"kendo.editor.outdent|The title of the tool that outdents the content.\"\n outdent=\"Outdent\"\n i18n-print=\"kendo.editor.print|The title of the print tool.\"\n print=\"Print\"\n i18n-redo=\"kendo.editor.redo|The title of the tool that undos the last action.\"\n redo=\"Redo\"\n i18n-selectAll=\"kendo.editor.selectAll|The title of the tool that selects all content.\"\n selectAll=\"Select All\"\n i18n-strikethrough=\"kendo.editor.strikethrough|The title of the tool that strikes through text.\"\n strikethrough=\"Strikethrough\"\n i18n-subscript=\"kendo.editor.subscript|The title of the tool that makes text subscript.\"\n subscript=\"Subscript\"\n i18n-superscript=\"kendo.editor.superscript|The title of the tool that makes text superscript.\"\n superscript=\"Superscript\"\n i18n-underline=\"kendo.editor.underline|The title of the tool that underlines text.\"\n underline=\"Underline\"\n i18n-unlink=\"kendo.editor.unlink|The title of the tool that removes hyperlinks.\"\n unlink=\"Remove Link\"\n i18n-undo=\"kendo.editor.undo|The title of the tool that undos the last action.\"\n undo=\"Undo\"\n i18n-viewSource=\"kendo.editor.viewSource|The title of the tool that shows the editor value as HTML.\"\n viewSource=\"View source\"\n i18n-insertTable=\"kendo.editor.insertTable|The title of the tool that inserts table.\"\n insertTable=\"Insert Table\"\n i18n-addColumnBefore=\"kendo.editor.addColumnBefore|The title of the tool that adds new column before currently selected column.\"\n addColumnBefore=\"Add column before\"\n i18n-addColumnAfter=\"kendo.editor.addColumnAfter|The title of the tool that adds new column after currently selected column.\"\n addColumnAfter=\"Add column after\"\n i18n-addRowBefore=\"kendo.editor.addRowBefore|The title of the tool that adds new row before currently selected row.\"\n addRowBefore=\"Add row before\"\n i18n-addRowAfter=\"kendo.editor.addRowAfter|The title of the tool that adds new row after currently selected row.\"\n addRowAfter=\"Add row after\"\n i18n-deleteColumn=\"kendo.editor.deleteColumn|The title of the tool that deletes a table column.\"\n deleteColumn=\"Delete column\"\n i18n-deleteRow=\"kendo.editor.deleteRow|The title of the tool that deletes a table row.\"\n deleteRow=\"Delete row\"\n i18n-deleteTable=\"kendo.editor.deleteTable|The title of the tool that deletes a table.\"\n deleteTable=\"Delete table\"\n >\n </ng-container>\n\n <ng-content select=\"kendo-toolbar\"></ng-content>\n <kendo-toolbar [overflow]=\"true\" [tabindex]=\"readonly ? -1 : 0\" *ngIf=\"!userToolBarElement\" #defaultToolbar>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorBoldButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorItalicButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnderlineButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-dropdownlist kendoEditorFormat></kendo-toolbar-dropdownlist>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorAlignLeftButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignCenterButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignRightButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorAlignJustifyButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertUnorderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorInsertOrderedListButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorIndentButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorOutdentButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorCreateLinkButton></kendo-toolbar-button>\n <kendo-toolbar-button kendoEditorUnlinkButton></kendo-toolbar-button>\n </kendo-toolbar-buttongroup>\n <kendo-toolbar-button kendoEditorInsertImageButton></kendo-toolbar-button>\n </kendo-toolbar>\n\n <div *ngIf=\"!iframe\" #content [attr.dir]=\"direction\" class=\"k-editor-content\"></div>\n\n <div class=\"k-editor-content\" *ngIf=\"iframe\">\n <iframe #content srcdoc=\"<!DOCTYPE html>\" frameborder=\"0\" class=\"k-iframe\" (load)=\"iframeOnLoad()\"></iframe>\n </div>\n\n <ng-container #dialogsContainer></ng-container>\n ",
1015
1015
  styles: [
1016
1016
  "\n >>> .k-editor-content > .ProseMirror {\n height: 100%;\n width: 100%;\n box-sizing: border-box;\n outline: none;\n overflow: auto;\n }\n\n .k-iframe {\n width: 100%;\n height: 100%;\n display: block;\n }\n "
1017
1017
  ]
@@ -30,6 +30,7 @@ import { EditorAlignLeftButtonDirective } from './tools/alignment/editor-align-l
30
30
  import { EditorAlignCenterButtonDirective } from './tools/alignment/editor-align-center-button.directive';
31
31
  import { EditorAlignRightButtonDirective } from './tools/alignment/editor-align-right-button.directive';
32
32
  import { EditorAlignJustifyButtonDirective } from './tools/alignment/editor-align-justify-button.directive';
33
+ import { EditorBlockquoteDirective } from './tools/blockquote/editor-blockquote-button.directive';
33
34
  import { EditorRedoButtonDirective } from './tools/history/editor-redo-button.directive';
34
35
  import { EditorUndoButtonDirective } from './tools/history/editor-undo-button.directive';
35
36
  import { EditorInsertImageButtonDirective } from './tools/image/editor-insert-image-button.directive';
@@ -123,7 +124,9 @@ var COMPONENT_DIRECTIVES = [
123
124
  // print
124
125
  EditorPrintDirective,
125
126
  // select all
126
- EditorSelectAllButtonDirective
127
+ EditorSelectAllButtonDirective,
128
+ // blockquote
129
+ EditorBlockquoteDirective
127
130
  ];
128
131
  var TOOLBAR_TOOLS = [
129
132
  EditorFontSizeComponent,
package/dist/es/index.js CHANGED
@@ -6,6 +6,7 @@
6
6
  * Generated bundle index. Do not edit.
7
7
  */
8
8
  export * from './main';
9
+ export { semanticNodes, semanticTagNames } from './config/semantic-nodes';
9
10
  export { ColorPickerDialogComponent } from './dialogs/colorpicker-dialog.component';
10
11
  export { FileLinkDialogComponent } from './dialogs/file-link-dialog.component';
11
12
  export { FontFamilyDialogComponent } from './dialogs/font-family-dialog.component';
@@ -22,6 +23,7 @@ export { EditorAlignCenterButtonDirective } from './tools/alignment/editor-align
22
23
  export { EditorAlignJustifyButtonDirective } from './tools/alignment/editor-align-justify-button.directive';
23
24
  export { EditorAlignLeftButtonDirective } from './tools/alignment/editor-align-left-button.directive';
24
25
  export { EditorAlignRightButtonDirective } from './tools/alignment/editor-align-right-button.directive';
26
+ export { EditorBlockquoteDirective } from './tools/blockquote/editor-blockquote-button.directive';
25
27
  export { EditorBackColorDirective } from './tools/colorpicker/editor-back-color.directive';
26
28
  export { EditorColorPickerComponent } from './tools/colorpicker/editor-colorpicker.component';
27
29
  export { EditorForeColorDirective } from './tools/colorpicker/editor-fore-color.directive';
@@ -33,6 +33,10 @@ var Messages = /** @class */ (function (_super) {
33
33
  Input(),
34
34
  tslib_1.__metadata("design:type", String)
35
35
  ], Messages.prototype, "backColor", void 0);
36
+ tslib_1.__decorate([
37
+ Input(),
38
+ tslib_1.__metadata("design:type", String)
39
+ ], Messages.prototype, "blockquote", void 0);
36
40
  tslib_1.__decorate([
37
41
  Input(),
38
42
  tslib_1.__metadata("design:type", String)
@@ -9,7 +9,7 @@ export var packageMetadata = {
9
9
  name: '@progress/kendo-angular-editor',
10
10
  productName: 'Kendo UI for Angular',
11
11
  productCodes: ['KENDOUIANGULAR', 'KENDOUICOMPLETE'],
12
- publishDate: 1641984793,
12
+ publishDate: 1641988389,
13
13
  version: '',
14
14
  licensingDocsUrl: 'https://www.telerik.com/kendo-angular-ui/my-license/?utm_medium=product&utm_source=kendoangular&utm_campaign=kendo-ui-angular-purchase-license-keys-warning'
15
15
  };
@@ -0,0 +1,48 @@
1
+ /**-----------------------------------------------------------------------------------------
2
+ * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
+ * Licensed under commercial license. See LICENSE.md in the project root for more information
4
+ *-------------------------------------------------------------------------------------------*/
5
+ import * as tslib_1 from "tslib";
6
+ import { Directive, Host } from '@angular/core';
7
+ import { ToolBarButtonComponent } from '@progress/kendo-angular-toolbar';
8
+ import { EditorComponent } from '../../editor.component';
9
+ import { EditorCommandButton } from '../shared/editor-command-button';
10
+ import { EditorLocalizationService } from '../../localization/editor-localization.service';
11
+ import { EditorToolsService } from '../tools.service';
12
+ /**
13
+ * A directive which configures an existing `ToolBarButtonComponent` as an Editor Blockquote tool
14
+ * ([see example]({% slug toolbartools_editor %}#toc-built-in-tools)).
15
+ * The directive will predefine the `icon` and `click` event handlers of the button.
16
+ *
17
+ * @example
18
+ * ```ts-no-run
19
+ * <kendo-toolbar-button kendoEditorBlockquoteButton></kendo-toolbar-button>
20
+ * ```
21
+ *
22
+ * The following example demonstrates how to change the default icon that is applied by the directive.
23
+ *
24
+ * @example
25
+ * ```ts-no-run
26
+ * <kendo-toolbar-button kendoEditorBlockquoteButton icon="blogger"></kendo-toolbar-button>
27
+ * ```
28
+ */
29
+ var EditorBlockquoteDirective = /** @class */ (function (_super) {
30
+ tslib_1.__extends(EditorBlockquoteDirective, _super);
31
+ function EditorBlockquoteDirective(button, editor, localization, toolsService) {
32
+ var _this = _super.call(this, 'blockquote', button, editor, localization, toolsService) || this;
33
+ _this.editor = editor;
34
+ return _this;
35
+ }
36
+ EditorBlockquoteDirective = tslib_1.__decorate([
37
+ Directive({
38
+ selector: 'kendo-toolbar-button[kendoEditorBlockquoteButton]'
39
+ }),
40
+ tslib_1.__param(1, Host()),
41
+ tslib_1.__metadata("design:paramtypes", [ToolBarButtonComponent,
42
+ EditorComponent,
43
+ EditorLocalizationService,
44
+ EditorToolsService])
45
+ ], EditorBlockquoteDirective);
46
+ return EditorBlockquoteDirective;
47
+ }(EditorCommandButton));
48
+ export { EditorBlockquoteDirective };
@@ -62,7 +62,7 @@ var FormatDropDownListComponent = /** @class */ (function () {
62
62
  Component({
63
63
  // tslint:disable-next-line:no-forward-ref
64
64
  selector: 'kendo-editor-format-dropdownlist',
65
- template: "\n <kendo-dropdownlist\n #element\n kendoEditorDropDownTool\n [defaultItem]=\"defaultItem\"\n [textField]=\"'text'\"\n [valueField]=\"'tag'\"\n [data]=\"data\"\n [(value)]=\"value\"\n [valuePrimitive]=\"true\"\n [itemDisabled]=\"itemDisabled\"\n [attr.title]=\"title\"\n [disabled]=\"disabled\"\n [tabindex]=\"tabindex\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <ng-container [ngSwitch]=\"dataItem.tag\">\n <span *ngSwitchCase=\"'h1'\" style=\"display: block; font-size: 2em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h2'\" style=\"display: block; font-size: 1.5em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h3'\" style=\"display: block; font-size: 1.17em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h4'\" style=\"display: block; font-size: 1em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h5'\" style=\"display: block; font-size: .83em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h6'\" style=\"display: block; font-size: .67em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'p'\" style=\"display: block; margin-left: 0;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'blockquote'\" style=\"display: block; margin-left: 0;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchDefault>{{ dataItem.text }}</span>\n </ng-container>\n </ng-template>\n </kendo-dropdownlist>\n "
65
+ template: "\n <kendo-dropdownlist\n #element\n kendoEditorDropDownTool\n [defaultItem]=\"defaultItem\"\n [textField]=\"'text'\"\n [valueField]=\"'tag'\"\n [data]=\"data\"\n [(value)]=\"value\"\n [valuePrimitive]=\"true\"\n [itemDisabled]=\"itemDisabled\"\n [attr.title]=\"title\"\n [disabled]=\"disabled\"\n [tabindex]=\"tabindex\"\n (valueChange)=\"onValueChange($event)\"\n >\n <ng-template kendoDropDownListItemTemplate let-dataItem>\n <ng-container [ngSwitch]=\"dataItem.tag\">\n <span *ngSwitchCase=\"'h1'\" style=\"display: block; font-size: 2em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h2'\" style=\"display: block; font-size: 1.5em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h3'\" style=\"display: block; font-size: 1.17em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h4'\" style=\"display: block; font-size: 1em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h5'\" style=\"display: block; font-size: .83em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'h6'\" style=\"display: block; font-size: .67em; margin-left: 0; font-weight: bold;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchCase=\"'p'\" style=\"display: block; margin-left: 0;\">\n {{ dataItem.text }}\n </span>\n\n <span *ngSwitchDefault>{{ dataItem.text }}</span>\n </ng-container>\n </ng-template>\n </kendo-dropdownlist>\n "
66
66
  })
67
67
  ], FormatDropDownListComponent);
68
68
  return FormatDropDownListComponent;
@@ -39,7 +39,6 @@ var EditorFormatComponent = /** @class */ (function (_super) {
39
39
  _this.valueChange = new EventEmitter();
40
40
  _this._data = [
41
41
  { text: 'Paragraph', tag: 'p' },
42
- { text: 'Quotation', tag: 'blockquote' },
43
42
  { text: 'Heading 1', tag: 'h1' },
44
43
  { text: 'Heading 2', tag: 'h2' },
45
44
  { text: 'Heading 3', tag: 'h3' },
@@ -18,7 +18,7 @@ export declare type EditorInternalCommand = 'print';
18
18
  /**
19
19
  * The list of the command names that are accepted by the `exec` method.
20
20
  */
21
- export declare type EditorCommand = 'bold' | 'italic' | 'underline' | 'strikethrough' | 'createLink' | 'unlink' | 'insertFile' | 'insertImage' | 'insertOrderedList' | 'insertUnorderedList' | 'insertText' | 'indent' | 'outdent' | 'alignLeft' | 'alignCenter' | 'alignRight' | 'alignJustify' | 'format' | 'fontFamily' | 'fontSize' | 'cleanFormat' | 'setHTML' | 'undo' | 'redo' | 'subscript' | 'superscript' | 'cleanFormatting' | 'foreColor' | 'backColor' | 'insertTable' | 'addColumnBefore' | 'addColumnAfter' | 'addRowBefore' | 'addRowAfter' | 'deleteRow' | 'deleteColumn' | 'mergeCells' | 'splitCell' | 'deleteTable' | 'selectAll';
21
+ export declare type EditorCommand = 'bold' | 'italic' | 'underline' | 'strikethrough' | 'createLink' | 'unlink' | 'insertFile' | 'insertImage' | 'insertOrderedList' | 'insertUnorderedList' | 'insertText' | 'indent' | 'outdent' | 'alignLeft' | 'alignCenter' | 'alignRight' | 'alignJustify' | 'format' | 'fontFamily' | 'fontSize' | 'cleanFormat' | 'setHTML' | 'undo' | 'redo' | 'subscript' | 'superscript' | 'cleanFormatting' | 'foreColor' | 'backColor' | 'insertTable' | 'addColumnBefore' | 'addColumnAfter' | 'addRowBefore' | 'addRowAfter' | 'deleteRow' | 'deleteColumn' | 'mergeCells' | 'splitCell' | 'deleteTable' | 'selectAll' | 'blockquote';
22
22
  /**
23
23
  * The list of the dialog names that are accepted by the `openDialog` method.
24
24
  */
@@ -13,7 +13,7 @@ export const EditorErrorMessages = {
13
13
  pluginsCallbackType: ɵ0,
14
14
  pastedContentCallbackType: ɵ1,
15
15
  setPluginsOnce: 'The plugins cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/plugins/',
16
- setPlaceHolderOnce: 'The placeholder cannot be changed dynamically. See http://www.telerik.com/kendo-angular-ui/components/editor/placeholder/',
16
+ setPlaceHolderOnce: 'The placeholder cannot be changed dynamically. See https://www.telerik.com/kendo-angular-ui/components/editor/plugins/#toc-custom-plugins/',
17
17
  printTool: 'The Print tool and functionality are supported only in iframe mode. See https://www.telerik.com/kendo-angular-ui-develop/components/editor/api/EditorPrintButtonDirective/'
18
18
  };
19
19
  export { ɵ0, ɵ1 };
@@ -13,7 +13,7 @@ export interface FormatItem {
13
13
  * 'h1'
14
14
  * ```
15
15
  */
16
- tag: 'p' | 'blockquote' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
16
+ tag: 'p' | 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
17
17
  /**
18
18
  * The text for the defined tag that will be displayed in the drop-down list.
19
19
  * @example
@@ -11,6 +11,7 @@ export const commandIcons = {
11
11
  alignLeft: 'align-left',
12
12
  alignRight: 'align-right',
13
13
  backColor: 'background',
14
+ blockquote: 'blockquote',
14
15
  bold: 'bold',
15
16
  cleanFormatting: 'clear-css',
16
17
  createLink: 'link-horizontal',
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { alignBlocks, alignLeftRules, alignCenterRules, alignRightRules, alignJustifyRules, alignRemoveRules, indent, outdent, setHtml, getHtml, insertImage, insertText, applyLink, removeLink, expandToWordWrap,
5
+ import { alignBlocks, alignLeftRules, alignCenterRules, alignRightRules, alignJustifyRules, alignRemoveRules, indent, outdent, setHtml, getHtml, insertImage, insertText, applyLink, removeLink, expandToWordWrap, blockquote,
6
6
  //marks
7
7
  bold, italic, underline, strikethrough, subscript, superscript, link, toggleInlineFormat, applyInlineStyle, formatBlockElements, toggleOrderedList, toggleUnorderedList, isAligned, undo, redo, cleanFormatting, selectAll, addColumnBefore, addColumnAfter, addRowBefore, addRowAfter, deleteRow, deleteColumn, deleteTable, mergeCells, splitCell } from '@progress/kendo-editor-common';
8
8
  import { insertTable } from './table-commands';
@@ -27,7 +27,7 @@ const inlineCommand = {
27
27
  backColor: ɵ15,
28
28
  selectAll: ɵ16
29
29
  };
30
- const ɵ17 = () => (state, dispatch) => isAligned(state, alignCenterRules) ? alignRemove(state, dispatch) : alignBlocks(alignCenterRules)(state, dispatch), ɵ18 = () => (state, dispatch) => isAligned(state, alignJustifyRules) ? alignRemove(state, dispatch) : alignBlocks(alignJustifyRules)(state, dispatch), ɵ19 = () => (state, dispatch) => isAligned(state, alignLeftRules) ? alignRemove(state, dispatch) : alignBlocks(alignLeftRules)(state, dispatch), ɵ20 = () => (state, dispatch) => isAligned(state, alignRightRules) ? alignRemove(state, dispatch) : alignBlocks(alignRightRules)(state, dispatch), ɵ21 = formatAttr => formatBlockElements(formatAttr.tag), ɵ22 = () => getHtml, ɵ23 = () => indent, ɵ24 = attrs => insertImage(attrs), ɵ25 = () => toggleOrderedList, ɵ26 = () => toggleUnorderedList, ɵ27 = () => outdent, ɵ28 = () => redo, ɵ29 = ({ content, parseOptions }) => setHtml(content, 'setHTML', parseOptions), ɵ30 = () => undo;
30
+ const ɵ17 = () => (state, dispatch) => isAligned(state, alignCenterRules) ? alignRemove(state, dispatch) : alignBlocks(alignCenterRules)(state, dispatch), ɵ18 = () => (state, dispatch) => isAligned(state, alignJustifyRules) ? alignRemove(state, dispatch) : alignBlocks(alignJustifyRules)(state, dispatch), ɵ19 = () => (state, dispatch) => isAligned(state, alignLeftRules) ? alignRemove(state, dispatch) : alignBlocks(alignLeftRules)(state, dispatch), ɵ20 = () => (state, dispatch) => isAligned(state, alignRightRules) ? alignRemove(state, dispatch) : alignBlocks(alignRightRules)(state, dispatch), ɵ21 = formatAttr => formatBlockElements(formatAttr.tag), ɵ22 = () => getHtml, ɵ23 = () => indent, ɵ24 = attrs => insertImage(attrs), ɵ25 = () => toggleOrderedList, ɵ26 = () => toggleUnorderedList, ɵ27 = () => outdent, ɵ28 = () => redo, ɵ29 = ({ content, parseOptions }) => setHtml(content, 'setHTML', parseOptions), ɵ30 = () => undo, ɵ31 = () => blockquote;
31
31
  const blockCommand = {
32
32
  alignCenter: ɵ17,
33
33
  alignJustify: ɵ18,
@@ -44,23 +44,24 @@ const blockCommand = {
44
44
  outdent: ɵ27,
45
45
  redo: ɵ28,
46
46
  setHTML: ɵ29,
47
- undo: ɵ30
47
+ undo: ɵ30,
48
+ blockquote: ɵ31
48
49
  };
49
- const ɵ31 = attr => insertTable(attr), ɵ32 = () => addColumnBefore, ɵ33 = () => addColumnAfter, ɵ34 = () => addRowBefore, ɵ35 = () => addRowAfter, ɵ36 = () => deleteRow, ɵ37 = () => deleteColumn, ɵ38 = () => mergeCells, ɵ39 = () => splitCell, ɵ40 = () => deleteTable;
50
+ const ɵ32 = attr => insertTable(attr), ɵ33 = () => addColumnBefore, ɵ34 = () => addColumnAfter, ɵ35 = () => addRowBefore, ɵ36 = () => addRowAfter, ɵ37 = () => deleteRow, ɵ38 = () => deleteColumn, ɵ39 = () => mergeCells, ɵ40 = () => splitCell, ɵ41 = () => deleteTable;
50
51
  const tableCommand = {
51
- insertTable: ɵ31,
52
- addColumnBefore: ɵ32,
53
- addColumnAfter: ɵ33,
54
- addRowBefore: ɵ34,
55
- addRowAfter: ɵ35,
56
- deleteRow: ɵ36,
57
- deleteColumn: ɵ37,
58
- mergeCells: ɵ38,
59
- splitCell: ɵ39,
60
- deleteTable: ɵ40
52
+ insertTable: ɵ32,
53
+ addColumnBefore: ɵ33,
54
+ addColumnAfter: ɵ34,
55
+ addRowBefore: ɵ35,
56
+ addRowAfter: ɵ36,
57
+ deleteRow: ɵ37,
58
+ deleteColumn: ɵ38,
59
+ mergeCells: ɵ39,
60
+ splitCell: ɵ40,
61
+ deleteTable: ɵ41
61
62
  };
62
63
  /**
63
64
  * @hidden
64
65
  */
65
66
  export const editorCommands = Object.assign({}, inlineCommand, blockCommand, tableCommand);
66
- export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8, ɵ9, ɵ10, ɵ11, ɵ12, ɵ13, ɵ14, ɵ15, ɵ16, ɵ17, ɵ18, ɵ19, ɵ20, ɵ21, ɵ22, ɵ23, ɵ24, ɵ25, ɵ26, ɵ27, ɵ28, ɵ29, ɵ30, ɵ31, ɵ32, ɵ33, ɵ34, ɵ35, ɵ36, ɵ37, ɵ38, ɵ39, ɵ40 };
67
+ export { ɵ0, ɵ1, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8, ɵ9, ɵ10, ɵ11, ɵ12, ɵ13, ɵ14, ɵ15, ɵ16, ɵ17, ɵ18, ɵ19, ɵ20, ɵ21, ɵ22, ɵ23, ɵ24, ɵ25, ɵ26, ɵ27, ɵ28, ɵ29, ɵ30, ɵ31, ɵ32, ɵ33, ɵ34, ɵ35, ɵ36, ɵ37, ɵ38, ɵ39, ɵ40, ɵ41 };
@@ -6,7 +6,7 @@ import { Schema } from '@progress/kendo-editor-common';
6
6
  /**
7
7
  * @hidden
8
8
  */
9
- export declare const schema: Schema<"blockquote", string>;
9
+ export declare const schema: Schema<string, string>;
10
10
  /**
11
11
  * @hidden
12
12
  */
@@ -14,7 +14,7 @@ const nodes = Object.assign(commonNodes, semanticNodes);
14
14
  */
15
15
  export const schema = new Schema({
16
16
  marks,
17
- nodes: Object.assign({}, nodes, { blockquote: Object.assign({}, nodes.blockquote, { content: 'inline*' }) })
17
+ nodes
18
18
  });
19
19
  /**
20
20
  * @hidden
@@ -2,7 +2,7 @@
2
2
  * Copyright © 2021 Progress Software Corporation. All rights reserved.
3
3
  * Licensed under commercial license. See LICENSE.md in the project root for more information
4
4
  *-------------------------------------------------------------------------------------------*/
5
- import { cleanFormatting } from '@progress/kendo-editor-common';
5
+ import { blockquote, cleanFormatting, isIndented } from '@progress/kendo-editor-common';
6
6
  import { alignRightRules, alignCenterRules, alignLeftRules, alignJustifyRules, isAligned, bold, italic, underline, strikethrough, subscript, superscript, link, activeNode, hasNode, getActiveMarks, hasMark, expandSelection, indentRules, outdentRules, canIndentAsListItem, canOutdentAsListItem, canBeIndented, undo, redo, addRowBefore, addRowAfter, addColumnBefore, addColumnAfter, deleteRow, deleteColumn, deleteTable, mergeCells, splitCell } from '@progress/kendo-editor-common';
7
7
  /**
8
8
  * @hidden
@@ -36,6 +36,10 @@ export const getToolbarState = (state, options) => ({
36
36
  selected: activeNode(state),
37
37
  disabled: false
38
38
  },
39
+ blockquote: {
40
+ selected: false,
41
+ disabled: !blockquote(state)
42
+ },
39
43
  indent: {
40
44
  selected: false,
41
45
  disabled: !(canIndentAsListItem(state, state.schema.nodes.list_item) || canBeIndented(state, indentRules))
@@ -58,7 +62,11 @@ export const getToolbarState = (state, options) => ({
58
62
  },
59
63
  outdent: {
60
64
  selected: false,
61
- disabled: !(canOutdentAsListItem(state, outdentRules) || canBeIndented(state, outdentRules))
65
+ get disabled() {
66
+ return !(hasNode(state, state.schema.nodes.blockquote) ||
67
+ canOutdentAsListItem(state, outdentRules) ||
68
+ isIndented(state, outdentRules.nodes));
69
+ }
62
70
  },
63
71
  redo: {
64
72
  selected: false,
@@ -184,6 +192,7 @@ export const initialToolBarState = {
184
192
  format: { selected: { text: 'Format', tag: null }, disabled: false },
185
193
  style: { selected: { marks: [], hasNodesWithoutMarks: false }, disabled: false },
186
194
  cleanFormatting: { selected: false, disabled: true },
195
+ blockquote: { selected: false, disabled: false },
187
196
  //indent
188
197
  indent: { selected: false, disabled: false },
189
198
  outdent: { selected: false, disabled: false },
@@ -236,6 +245,7 @@ export const disabledToolBarState = {
236
245
  format: { selected: { text: 'Format', tag: null }, disabled: true },
237
246
  style: { selected: { marks: [], hasNodesWithoutMarks: false }, disabled: true },
238
247
  cleanFormatting: { selected: false, disabled: true },
248
+ blockquote: { selected: false, disabled: true },
239
249
  //indent
240
250
  indent: { selected: false, disabled: true },
241
251
  outdent: { selected: false, disabled: true },
@@ -189,7 +189,7 @@ export declare class EditorComponent implements AfterViewInit, ControlValueAcces
189
189
  * @param {any} attr - Optional parameters for the command. Apart from the following list,
190
190
  * the parameters do not expect specific attributes when you call them:
191
191
  * - `format` - Accepts an object with the `tag` property.
192
- * The supported tags are `p`, `blockquote`, and any of the `h1` to `h6` heading tags.
192
+ * The supported tags are `p` and any of the `h1` to `h6` heading tags.
193
193
  * - `createLink` - Accepts an object with the `href`, `title`, and `target` properties. The `href` property is mandatory.
194
194
  * - `setHTML` - Accepts a `string` parameter.
195
195
  * - `insertTable` - Accepts an object with the `rows` and `cols` properties. The number values are zero based.
@@ -421,7 +421,7 @@ let EditorComponent = EditorComponent_1 = class EditorComponent {
421
421
  * @param {any} attr - Optional parameters for the command. Apart from the following list,
422
422
  * the parameters do not expect specific attributes when you call them:
423
423
  * - `format` - Accepts an object with the `tag` property.
424
- * The supported tags are `p`, `blockquote`, and any of the `h1` to `h6` heading tags.
424
+ * The supported tags are `p` and any of the `h1` to `h6` heading tags.
425
425
  * - `createLink` - Accepts an object with the `href`, `title`, and `target` properties. The `href` property is mandatory.
426
426
  * - `setHTML` - Accepts a `string` parameter.
427
427
  * - `insertTable` - Accepts an object with the `rows` and `cols` properties. The number values are zero based.
@@ -939,6 +939,8 @@ EditorComponent = EditorComponent_1 = tslib_1.__decorate([
939
939
  alignRight="Align text right"
940
940
  i18n-backColor="kendo.editor.backColor|The title of the tool that changes the text background color."
941
941
  backColor="Background color"
942
+ i18n-blockquote="kendo.editor.blockquote|The title of the tool that wraps an element in a blockquote"
943
+ blockquote="Quotation"
942
944
  i18n-bold="kendo.editor.bold|The title of the tool that makes text bold."
943
945
  bold="Bold"
944
946
  i18n-cleanFormatting="kendo.editor.cleanFormatting|The title of the Clean Formatting tool."
@@ -30,6 +30,7 @@ import { EditorAlignLeftButtonDirective } from './tools/alignment/editor-align-l
30
30
  import { EditorAlignCenterButtonDirective } from './tools/alignment/editor-align-center-button.directive';
31
31
  import { EditorAlignRightButtonDirective } from './tools/alignment/editor-align-right-button.directive';
32
32
  import { EditorAlignJustifyButtonDirective } from './tools/alignment/editor-align-justify-button.directive';
33
+ import { EditorBlockquoteDirective } from './tools/blockquote/editor-blockquote-button.directive';
33
34
  import { EditorRedoButtonDirective } from './tools/history/editor-redo-button.directive';
34
35
  import { EditorUndoButtonDirective } from './tools/history/editor-undo-button.directive';
35
36
  import { EditorInsertImageButtonDirective } from './tools/image/editor-insert-image-button.directive';
@@ -123,7 +124,9 @@ const COMPONENT_DIRECTIVES = [
123
124
  // print
124
125
  EditorPrintDirective,
125
126
  // select all
126
- EditorSelectAllButtonDirective
127
+ EditorSelectAllButtonDirective,
128
+ // blockquote
129
+ EditorBlockquoteDirective
127
130
  ];
128
131
  const TOOLBAR_TOOLS = [
129
132
  EditorFontSizeComponent,
@@ -7,6 +7,7 @@
7
7
  */
8
8
  export * from './main';
9
9
  export { DialogCommand, EditorCommand } from './common/commands';
10
+ export { semanticNodes, semanticTagNames } from './config/semantic-nodes';
10
11
  export { ColorPickerDialogComponent } from './dialogs/colorpicker-dialog.component';
11
12
  export { FileLinkDialogComponent } from './dialogs/file-link-dialog.component';
12
13
  export { FontFamilyDialogComponent } from './dialogs/font-family-dialog.component';
@@ -23,6 +24,7 @@ export { EditorAlignCenterButtonDirective } from './tools/alignment/editor-align
23
24
  export { EditorAlignJustifyButtonDirective } from './tools/alignment/editor-align-justify-button.directive';
24
25
  export { EditorAlignLeftButtonDirective } from './tools/alignment/editor-align-left-button.directive';
25
26
  export { EditorAlignRightButtonDirective } from './tools/alignment/editor-align-right-button.directive';
27
+ export { EditorBlockquoteDirective } from './tools/blockquote/editor-blockquote-button.directive';
26
28
  export { EditorBackColorDirective } from './tools/colorpicker/editor-back-color.directive';
27
29
  export { EditorColorPickerComponent } from './tools/colorpicker/editor-colorpicker.component';
28
30
  export { EditorForeColorDirective } from './tools/colorpicker/editor-fore-color.directive';
@@ -6,6 +6,7 @@
6
6
  * Generated bundle index. Do not edit.
7
7
  */
8
8
  export * from './main';
9
+ export { semanticNodes, semanticTagNames } from './config/semantic-nodes';
9
10
  export { ColorPickerDialogComponent } from './dialogs/colorpicker-dialog.component';
10
11
  export { FileLinkDialogComponent } from './dialogs/file-link-dialog.component';
11
12
  export { FontFamilyDialogComponent } from './dialogs/font-family-dialog.component';
@@ -22,6 +23,7 @@ export { EditorAlignCenterButtonDirective } from './tools/alignment/editor-align
22
23
  export { EditorAlignJustifyButtonDirective } from './tools/alignment/editor-align-justify-button.directive';
23
24
  export { EditorAlignLeftButtonDirective } from './tools/alignment/editor-align-left-button.directive';
24
25
  export { EditorAlignRightButtonDirective } from './tools/alignment/editor-align-right-button.directive';
26
+ export { EditorBlockquoteDirective } from './tools/blockquote/editor-blockquote-button.directive';
25
27
  export { EditorBackColorDirective } from './tools/colorpicker/editor-back-color.directive';
26
28
  export { EditorColorPickerComponent } from './tools/colorpicker/editor-colorpicker.component';
27
29
  export { EditorForeColorDirective } from './tools/colorpicker/editor-fore-color.directive';