@progress/kendo-vue-editor 3.0.0-dev.202201141128 → 3.0.0-dev.202201161025

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.
@@ -5,7 +5,7 @@ export var packageMetadata = {
5
5
  name: '@progress/kendo-vue-editor',
6
6
  productName: 'Kendo UI for Vue',
7
7
  productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
8
- publishDate: 1642159085,
8
+ publishDate: 1642328162,
9
9
  version: '',
10
10
  licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
11
11
  };
@@ -47,6 +47,7 @@ var allVue = Vue;
47
47
  var gh = allVue.h;
48
48
  import { DropDownList } from '@progress/kendo-vue-dropdowns';
49
49
  import { getInlineStyles, applyInlineStyle } from '@progress/kendo-editor-common';
50
+ import { Keys } from '@progress/kendo-vue-common';
50
51
  import { userSelectNone } from './utils';
51
52
  import { provideLocalizationService } from '@progress/kendo-vue-intl';
52
53
  import { messages } from './../messages'; // tslint:enable:max-line-length
@@ -76,6 +77,30 @@ var FontNameVue2 = {
76
77
  v3: v3
77
78
  };
78
79
  },
80
+ data: function data() {
81
+ return {
82
+ currentValue: null,
83
+ currentOpened: false
84
+ };
85
+ },
86
+ computed: {
87
+ computedValue: function computedValue() {
88
+ var _a = this.$props,
89
+ view = _a.view,
90
+ settings = _a.settings,
91
+ dataItems = _a.dataItems;
92
+ var style = settings.style;
93
+ var items = dataItems || settings.items;
94
+ var styles = view ? getInlineStyles(view.state, {
95
+ name: style,
96
+ value: /^.+$/
97
+ }) : [];
98
+ var value = new Set(styles).size === 1 ? styles[0] : null;
99
+ return this.currentValue ? this.currentValue : value ? items.find(function (i) {
100
+ return i.value === value;
101
+ }) : value;
102
+ }
103
+ },
79
104
  // @ts-ignore
80
105
  render: function render(createElement) {
81
106
  var h = gh || createElement;
@@ -88,13 +113,8 @@ var FontNameVue2 = {
88
113
  defaultItemProps = _a.defaultItem,
89
114
  other = __rest(_a, ["view", "render", "dataItems", "settings", "defaultItem"]);
90
115
 
91
- var style = settings.style;
92
116
  var items = dataItems || settings.items;
93
117
  var defaultItem = defaultItemProps || settings.defaultItem;
94
- var styles = view ? getInlineStyles(view.state, {
95
- name: style,
96
- value: /^.+$/
97
- }) : [];
98
118
  var localization = provideLocalizationService(this);
99
119
 
100
120
  if (defaultItem && defaultItem.localizationKey) {
@@ -102,12 +122,8 @@ var FontNameVue2 = {
102
122
  defaultItem.text = defaultItem.localizationKey ? localization.toLanguageString(defaultItem.localizationKey, messages[defaultItem.localizationKey]) : defaultItem.text;
103
123
  }
104
124
 
105
- var value = new Set(styles).size === 1 ? styles[0] : null;
106
-
107
125
  var ddlProps = __assign(__assign(__assign({}, other), {
108
- value: value ? items.find(function (i) {
109
- return i.value === value;
110
- }) : value,
126
+ value: this.computedValue,
111
127
  dataItems: items,
112
128
  defaultItem: defaultItem,
113
129
  itemRender: this.customItemRender,
@@ -119,8 +135,12 @@ var FontNameVue2 = {
119
135
  var dropdown = h(DropDownList, __assign({
120
136
  onChange: this.onChange,
121
137
  on: this.v3 ? undefined : {
122
- 'change': this.onChange
138
+ 'change': this.onChange,
139
+ 'close': this.onClose,
140
+ 'open': this.onOpen
123
141
  },
142
+ onClose: this.onClose,
143
+ onOpen: this.onOpen,
124
144
  style: userSelectNone,
125
145
  attrs: this.v3 ? undefined : ddlProps
126
146
  }, ddlProps));
@@ -139,23 +159,39 @@ var FontNameVue2 = {
139
159
  }, __spreadArrays(li.children))]) : li;
140
160
  },
141
161
  onChange: function onChange(e) {
142
- var item = e.target.value;
143
162
  var _a = this.$props,
144
163
  view = _a.view,
145
164
  settings = _a.settings;
146
165
  var style = settings.style;
147
166
 
148
- if (view && item) {
167
+ if (!this.currentOpened) {
149
168
  applyInlineStyle({
150
169
  style: style,
151
- value: item.value
170
+ value: e.target.value.value
152
171
  }, settings.commandName)(view.state, view.dispatch);
153
- var event_1 = e.event;
172
+ view.focus();
173
+ this.currentValue = null;
174
+ } else {
175
+ this.currentValue = e.target.value;
176
+ }
177
+ },
178
+ onClose: function onClose(e) {
179
+ var _a = this.$props,
180
+ view = _a.view,
181
+ settings = _a.settings;
182
+ var style = settings.style;
154
183
 
155
- if (event_1 && event_1.type === 'click') {
156
- view.focus();
157
- }
184
+ if (view && this.computedValue && (e.event.type === 'click' || e.event.keyCode && e.event.keyCode === Keys.enter)) {
185
+ applyInlineStyle({
186
+ style: style,
187
+ value: this.computedValue.value
188
+ }, settings.commandName)(view.state, view.dispatch);
189
+ view.focus();
190
+ this.currentValue = null;
158
191
  }
192
+ },
193
+ onOpen: function onOpen() {
194
+ this.currentOpened = true;
159
195
  }
160
196
  }
161
197
  };
@@ -47,6 +47,7 @@ var allVue = Vue;
47
47
  var gh = allVue.h;
48
48
  import { DropDownList } from '@progress/kendo-vue-dropdowns';
49
49
  import { getBlockFormats, formatBlockElements } from '@progress/kendo-editor-common';
50
+ import { Keys } from '@progress/kendo-vue-common';
50
51
  import { userSelectNone } from './utils';
51
52
  import { provideLocalizationService } from '@progress/kendo-vue-intl';
52
53
  import { messages } from './../messages'; // tslint:enable:max-line-length
@@ -69,6 +70,27 @@ var FormatBlockVue2 = {
69
70
  default: null
70
71
  }
71
72
  },
73
+ data: function data() {
74
+ return {
75
+ currentValue: null,
76
+ currentOpened: false
77
+ };
78
+ },
79
+ computed: {
80
+ computedValue: function computedValue() {
81
+ var _a = this.$props,
82
+ view = _a.view,
83
+ settings = _a.settings,
84
+ dataItems = _a.dataItems;
85
+ var items = dataItems || settings.items;
86
+ var state = view && view.state;
87
+ var formats = state ? getBlockFormats(state) : [];
88
+ var value = new Set(formats).size === 1 ? formats[0] : null;
89
+ return this.currentValue ? this.currentValue : value ? items.find(function (i) {
90
+ return i.value === value;
91
+ }) : value;
92
+ }
93
+ },
72
94
  // @ts-ignore
73
95
  setup: !gh ? undefined : function () {
74
96
  var v3 = !!gh;
@@ -90,8 +112,6 @@ var FormatBlockVue2 = {
90
112
 
91
113
  var items = dataItems || settings.items;
92
114
  var defaultItem = defaultItemProps || settings.defaultItem;
93
- var state = view && view.state;
94
- var formats = state ? getBlockFormats(state) : [];
95
115
  var localization = provideLocalizationService(this);
96
116
 
97
117
  if (defaultItem && defaultItem.localizationKey) {
@@ -99,12 +119,8 @@ var FormatBlockVue2 = {
99
119
  defaultItem.text = defaultItem.localizationKey ? localization.toLanguageString(defaultItem.localizationKey, messages[defaultItem.localizationKey]) : defaultItem.text;
100
120
  }
101
121
 
102
- var value = new Set(formats).size === 1 ? formats[0] : null;
103
-
104
122
  var ddlProps = __assign(__assign(__assign({}, other), {
105
- value: value ? items.find(function (i) {
106
- return i.value === value;
107
- }) : value,
123
+ value: this.computedValue,
108
124
  dataItems: items,
109
125
  defaultItem: defaultItem,
110
126
  itemRender: this.customItemRender,
@@ -116,8 +132,12 @@ var FormatBlockVue2 = {
116
132
  var dropdown = h(DropDownList, __assign({
117
133
  onChange: this.onChange,
118
134
  on: this.v3 ? undefined : {
119
- 'change': this.onChange
135
+ 'change': this.onChange,
136
+ 'close': this.onClose,
137
+ 'open': this.onOpen
120
138
  },
139
+ onClose: this.onClose,
140
+ onOpen: this.onOpen,
121
141
  style: userSelectNone,
122
142
  attrs: this.v3 ? undefined : ddlProps
123
143
  }, ddlProps));
@@ -136,18 +156,32 @@ var FormatBlockVue2 = {
136
156
  }, __spreadArrays(li.children))]) : li;
137
157
  },
138
158
  onChange: function onChange(e) {
139
- var item = e.target.value;
140
159
  var _a = this.$props,
141
160
  view = _a.view,
142
161
  settings = _a.settings;
143
162
 
144
- if (view && formatBlockElements(item.value, settings.commandName)(view.state, view.dispatch)) {
145
- var event_1 = e.event;
163
+ if (!this.currentOpened) {
164
+ formatBlockElements(e.target.value.value, settings.commandName)(view.state, view.dispatch);
165
+ view.focus();
166
+ this.currentValue = null;
167
+ } else {
168
+ this.currentValue = e.target.value;
169
+ }
170
+ },
171
+ onClose: function onClose(e) {
172
+ var _a = this.$props,
173
+ view = _a.view,
174
+ settings = _a.settings;
175
+ this.currentOpened = false;
146
176
 
147
- if (event_1 && event_1.type === 'click') {
148
- view.focus();
149
- }
177
+ if (view && this.computedValue && (e.event.type === 'click' || e.event.keyCode && e.event.keyCode === Keys.enter)) {
178
+ formatBlockElements(this.computedValue.value, settings.commandName)(view.state, view.dispatch);
179
+ view.focus();
180
+ this.currentValue = null;
150
181
  }
182
+ },
183
+ onOpen: function onOpen() {
184
+ this.currentOpened = true;
151
185
  }
152
186
  }
153
187
  };
@@ -8,7 +8,7 @@ exports.packageMetadata = {
8
8
  name: '@progress/kendo-vue-editor',
9
9
  productName: 'Kendo UI for Vue',
10
10
  productCodes: ['KENDOUIVUE', 'KENDOUICOMPLETE'],
11
- publishDate: 1642159085,
11
+ publishDate: 1642328162,
12
12
  version: '',
13
13
  licensingDocsUrl: 'https://www.telerik.com/kendo-vue-ui/my-license/?utm_medium=product&utm_source=kendovue&utm_campaign=kendo-ui-vue-purchase-license-keys-warning'
14
14
  };
@@ -57,6 +57,8 @@ var kendo_vue_dropdowns_1 = require("@progress/kendo-vue-dropdowns");
57
57
 
58
58
  var kendo_editor_common_1 = require("@progress/kendo-editor-common");
59
59
 
60
+ var kendo_vue_common_1 = require("@progress/kendo-vue-common");
61
+
60
62
  var utils_1 = require("./utils");
61
63
 
62
64
  var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
@@ -89,6 +91,30 @@ var FontNameVue2 = {
89
91
  v3: v3
90
92
  };
91
93
  },
94
+ data: function data() {
95
+ return {
96
+ currentValue: null,
97
+ currentOpened: false
98
+ };
99
+ },
100
+ computed: {
101
+ computedValue: function computedValue() {
102
+ var _a = this.$props,
103
+ view = _a.view,
104
+ settings = _a.settings,
105
+ dataItems = _a.dataItems;
106
+ var style = settings.style;
107
+ var items = dataItems || settings.items;
108
+ var styles = view ? kendo_editor_common_1.getInlineStyles(view.state, {
109
+ name: style,
110
+ value: /^.+$/
111
+ }) : [];
112
+ var value = new Set(styles).size === 1 ? styles[0] : null;
113
+ return this.currentValue ? this.currentValue : value ? items.find(function (i) {
114
+ return i.value === value;
115
+ }) : value;
116
+ }
117
+ },
92
118
  // @ts-ignore
93
119
  render: function render(createElement) {
94
120
  var h = gh || createElement;
@@ -101,13 +127,8 @@ var FontNameVue2 = {
101
127
  defaultItemProps = _a.defaultItem,
102
128
  other = __rest(_a, ["view", "render", "dataItems", "settings", "defaultItem"]);
103
129
 
104
- var style = settings.style;
105
130
  var items = dataItems || settings.items;
106
131
  var defaultItem = defaultItemProps || settings.defaultItem;
107
- var styles = view ? kendo_editor_common_1.getInlineStyles(view.state, {
108
- name: style,
109
- value: /^.+$/
110
- }) : [];
111
132
  var localization = kendo_vue_intl_1.provideLocalizationService(this);
112
133
 
113
134
  if (defaultItem && defaultItem.localizationKey) {
@@ -115,12 +136,8 @@ var FontNameVue2 = {
115
136
  defaultItem.text = defaultItem.localizationKey ? localization.toLanguageString(defaultItem.localizationKey, messages_1.messages[defaultItem.localizationKey]) : defaultItem.text;
116
137
  }
117
138
 
118
- var value = new Set(styles).size === 1 ? styles[0] : null;
119
-
120
139
  var ddlProps = __assign(__assign(__assign({}, other), {
121
- value: value ? items.find(function (i) {
122
- return i.value === value;
123
- }) : value,
140
+ value: this.computedValue,
124
141
  dataItems: items,
125
142
  defaultItem: defaultItem,
126
143
  itemRender: this.customItemRender,
@@ -132,8 +149,12 @@ var FontNameVue2 = {
132
149
  var dropdown = h(kendo_vue_dropdowns_1.DropDownList, __assign({
133
150
  onChange: this.onChange,
134
151
  on: this.v3 ? undefined : {
135
- 'change': this.onChange
152
+ 'change': this.onChange,
153
+ 'close': this.onClose,
154
+ 'open': this.onOpen
136
155
  },
156
+ onClose: this.onClose,
157
+ onOpen: this.onOpen,
137
158
  style: utils_1.userSelectNone,
138
159
  attrs: this.v3 ? undefined : ddlProps
139
160
  }, ddlProps));
@@ -152,23 +173,39 @@ var FontNameVue2 = {
152
173
  }, __spreadArrays(li.children))]) : li;
153
174
  },
154
175
  onChange: function onChange(e) {
155
- var item = e.target.value;
156
176
  var _a = this.$props,
157
177
  view = _a.view,
158
178
  settings = _a.settings;
159
179
  var style = settings.style;
160
180
 
161
- if (view && item) {
181
+ if (!this.currentOpened) {
162
182
  kendo_editor_common_1.applyInlineStyle({
163
183
  style: style,
164
- value: item.value
184
+ value: e.target.value.value
165
185
  }, settings.commandName)(view.state, view.dispatch);
166
- var event_1 = e.event;
186
+ view.focus();
187
+ this.currentValue = null;
188
+ } else {
189
+ this.currentValue = e.target.value;
190
+ }
191
+ },
192
+ onClose: function onClose(e) {
193
+ var _a = this.$props,
194
+ view = _a.view,
195
+ settings = _a.settings;
196
+ var style = settings.style;
167
197
 
168
- if (event_1 && event_1.type === 'click') {
169
- view.focus();
170
- }
198
+ if (view && this.computedValue && (e.event.type === 'click' || e.event.keyCode && e.event.keyCode === kendo_vue_common_1.Keys.enter)) {
199
+ kendo_editor_common_1.applyInlineStyle({
200
+ style: style,
201
+ value: this.computedValue.value
202
+ }, settings.commandName)(view.state, view.dispatch);
203
+ view.focus();
204
+ this.currentValue = null;
171
205
  }
206
+ },
207
+ onOpen: function onOpen() {
208
+ this.currentOpened = true;
172
209
  }
173
210
  }
174
211
  };
@@ -57,6 +57,8 @@ var kendo_vue_dropdowns_1 = require("@progress/kendo-vue-dropdowns");
57
57
 
58
58
  var kendo_editor_common_1 = require("@progress/kendo-editor-common");
59
59
 
60
+ var kendo_vue_common_1 = require("@progress/kendo-vue-common");
61
+
60
62
  var utils_1 = require("./utils");
61
63
 
62
64
  var kendo_vue_intl_1 = require("@progress/kendo-vue-intl");
@@ -82,6 +84,27 @@ var FormatBlockVue2 = {
82
84
  default: null
83
85
  }
84
86
  },
87
+ data: function data() {
88
+ return {
89
+ currentValue: null,
90
+ currentOpened: false
91
+ };
92
+ },
93
+ computed: {
94
+ computedValue: function computedValue() {
95
+ var _a = this.$props,
96
+ view = _a.view,
97
+ settings = _a.settings,
98
+ dataItems = _a.dataItems;
99
+ var items = dataItems || settings.items;
100
+ var state = view && view.state;
101
+ var formats = state ? kendo_editor_common_1.getBlockFormats(state) : [];
102
+ var value = new Set(formats).size === 1 ? formats[0] : null;
103
+ return this.currentValue ? this.currentValue : value ? items.find(function (i) {
104
+ return i.value === value;
105
+ }) : value;
106
+ }
107
+ },
85
108
  // @ts-ignore
86
109
  setup: !gh ? undefined : function () {
87
110
  var v3 = !!gh;
@@ -103,8 +126,6 @@ var FormatBlockVue2 = {
103
126
 
104
127
  var items = dataItems || settings.items;
105
128
  var defaultItem = defaultItemProps || settings.defaultItem;
106
- var state = view && view.state;
107
- var formats = state ? kendo_editor_common_1.getBlockFormats(state) : [];
108
129
  var localization = kendo_vue_intl_1.provideLocalizationService(this);
109
130
 
110
131
  if (defaultItem && defaultItem.localizationKey) {
@@ -112,12 +133,8 @@ var FormatBlockVue2 = {
112
133
  defaultItem.text = defaultItem.localizationKey ? localization.toLanguageString(defaultItem.localizationKey, messages_1.messages[defaultItem.localizationKey]) : defaultItem.text;
113
134
  }
114
135
 
115
- var value = new Set(formats).size === 1 ? formats[0] : null;
116
-
117
136
  var ddlProps = __assign(__assign(__assign({}, other), {
118
- value: value ? items.find(function (i) {
119
- return i.value === value;
120
- }) : value,
137
+ value: this.computedValue,
121
138
  dataItems: items,
122
139
  defaultItem: defaultItem,
123
140
  itemRender: this.customItemRender,
@@ -129,8 +146,12 @@ var FormatBlockVue2 = {
129
146
  var dropdown = h(kendo_vue_dropdowns_1.DropDownList, __assign({
130
147
  onChange: this.onChange,
131
148
  on: this.v3 ? undefined : {
132
- 'change': this.onChange
149
+ 'change': this.onChange,
150
+ 'close': this.onClose,
151
+ 'open': this.onOpen
133
152
  },
153
+ onClose: this.onClose,
154
+ onOpen: this.onOpen,
134
155
  style: utils_1.userSelectNone,
135
156
  attrs: this.v3 ? undefined : ddlProps
136
157
  }, ddlProps));
@@ -149,18 +170,32 @@ var FormatBlockVue2 = {
149
170
  }, __spreadArrays(li.children))]) : li;
150
171
  },
151
172
  onChange: function onChange(e) {
152
- var item = e.target.value;
153
173
  var _a = this.$props,
154
174
  view = _a.view,
155
175
  settings = _a.settings;
156
176
 
157
- if (view && kendo_editor_common_1.formatBlockElements(item.value, settings.commandName)(view.state, view.dispatch)) {
158
- var event_1 = e.event;
177
+ if (!this.currentOpened) {
178
+ kendo_editor_common_1.formatBlockElements(e.target.value.value, settings.commandName)(view.state, view.dispatch);
179
+ view.focus();
180
+ this.currentValue = null;
181
+ } else {
182
+ this.currentValue = e.target.value;
183
+ }
184
+ },
185
+ onClose: function onClose(e) {
186
+ var _a = this.$props,
187
+ view = _a.view,
188
+ settings = _a.settings;
189
+ this.currentOpened = false;
159
190
 
160
- if (event_1 && event_1.type === 'click') {
161
- view.focus();
162
- }
191
+ if (view && this.computedValue && (e.event.type === 'click' || e.event.keyCode && e.event.keyCode === kendo_vue_common_1.Keys.enter)) {
192
+ kendo_editor_common_1.formatBlockElements(this.computedValue.value, settings.commandName)(view.state, view.dispatch);
193
+ view.focus();
194
+ this.currentValue = null;
163
195
  }
196
+ },
197
+ onOpen: function onOpen() {
198
+ this.currentOpened = true;
164
199
  }
165
200
  }
166
201
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@progress/kendo-vue-editor",
3
3
  "description": "Kendo UI for Vue Editor package",
4
- "version": "3.0.0-dev.202201141128",
4
+ "version": "3.0.0-dev.202201161025",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/telerik/kendo-vue.git"
@@ -43,21 +43,21 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@progress/kendo-editor-common": "1.6.0",
46
- "@progress/kendo-vue-common": "3.0.0-dev.202201141128"
46
+ "@progress/kendo-vue-common": "3.0.0-dev.202201161025"
47
47
  },
48
48
  "devDependencies": {
49
49
  "@progress/kendo-drawing": "^1.8.0",
50
50
  "@progress/kendo-licensing": "^1.0.1",
51
- "@progress/kendo-vue-buttons": "3.0.0-dev.202201141128",
52
- "@progress/kendo-vue-dialogs": "3.0.0-dev.202201141128",
53
- "@progress/kendo-vue-dropdowns": "3.0.0-dev.202201141128",
54
- "@progress/kendo-vue-form": "3.0.0-dev.202201141128",
55
- "@progress/kendo-vue-inputs": "3.0.0-dev.202201141128",
56
- "@progress/kendo-vue-intl": "3.0.0-dev.202201141128",
57
- "@progress/kendo-vue-layout": "3.0.0-dev.202201141128",
58
- "@progress/kendo-vue-pdf": "3.0.0-dev.202201141128",
59
- "@progress/kendo-vue-popup": "3.0.0-dev.202201141128",
60
- "@progress/kendo-vue-upload": "3.0.0-dev.202201141128"
51
+ "@progress/kendo-vue-buttons": "3.0.0-dev.202201161025",
52
+ "@progress/kendo-vue-dialogs": "3.0.0-dev.202201161025",
53
+ "@progress/kendo-vue-dropdowns": "3.0.0-dev.202201161025",
54
+ "@progress/kendo-vue-form": "3.0.0-dev.202201161025",
55
+ "@progress/kendo-vue-inputs": "3.0.0-dev.202201161025",
56
+ "@progress/kendo-vue-intl": "3.0.0-dev.202201161025",
57
+ "@progress/kendo-vue-layout": "3.0.0-dev.202201161025",
58
+ "@progress/kendo-vue-pdf": "3.0.0-dev.202201161025",
59
+ "@progress/kendo-vue-popup": "3.0.0-dev.202201161025",
60
+ "@progress/kendo-vue-upload": "3.0.0-dev.202201161025"
61
61
  },
62
62
  "@progress": {
63
63
  "friendlyName": "Editor",