activeadmin_trumbowyg 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +8 -5
- data/Rakefile +11 -0
- data/app/assets/fonts/trumbowyg/icons.svg +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/az.js +63 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/az.min.js +9 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/ca.js +30 -13
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/ca.min.js +8 -5
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/cs.js +11 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/cs.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/da.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/de.js +11 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/de.min.js +3 -3
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/es_ar.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/et.js +7 -7
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/fa.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/fi.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/fr.js +3 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/fr.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/he.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/hu.js +3 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/hu.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/id.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/it.js +4 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/it.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/lt.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/mn.js +39 -39
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/{no_nb.js → nb.js} +22 -8
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/nb.min.js +15 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/pl.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/pt.js +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/pt_br.js +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/rs.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/rs_latin.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/sl.js +10 -6
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/sl.min.js +2 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/sq.js +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/sv.js +1 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/sv.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/th.js +33 -33
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/tr.js +5 -3
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/tr.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/zh_cn.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/zh_tw.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/allowtagsfrompaste/trumbowyg.allowtagsfrompaste.min.js +11 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/base64/trumbowyg.base64.js +28 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/base64/trumbowyg.base64.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/cleanpaste/trumbowyg.cleanpaste.min.js +11 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/trumbowyg.colors.js +39 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/trumbowyg.colors.min.js +10 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/ui/sass/trumbowyg.colors.scss +3 -3
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/ui/trumbowyg.colors.css +45 -40
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/ui/trumbowyg.colors.min.css +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/trumbowyg.emoji.js +916 -848
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/trumbowyg.emoji.min.js +9 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/ui/sass/trumbowyg.emoji.scss +3 -3
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/ui/trumbowyg.emoji.css +23 -18
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/ui/trumbowyg.emoji.min.css +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontfamily/trumbowyg.fontfamily.js +22 -7
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontfamily/trumbowyg.fontfamily.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontsize/trumbowyg.fontsize.js +100 -8
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontsize/trumbowyg.fontsize.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/trumbowyg.giphy.js +251 -172
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/trumbowyg.giphy.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/ui/sass/trumbowyg.giphy.scss +17 -16
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/ui/trumbowyg.giphy.css +60 -47
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/ui/trumbowyg.giphy.min.css +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/trumbowyg.highlight.js +24 -4
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/trumbowyg.highlight.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/ui/sass/trumbowyg.highlight.scss +12 -12
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/ui/trumbowyg.highlight.css +13 -10
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/ui/trumbowyg.highlight.min.css +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/history/trumbowyg.history.js +6 -61
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/history/trumbowyg.history.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/indent/trumbowyg.indent.js +31 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/indent/trumbowyg.indent.min.js +9 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/insertaudio/trumbowyg.insertaudio.js +18 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/insertaudio/trumbowyg.insertaudio.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/lineheight/trumbowyg.lineheight.js +50 -5
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/lineheight/trumbowyg.lineheight.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/trumbowyg.mathml.js +97 -50
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/trumbowyg.mathml.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/ui/sass/trumbowyg.mathml.scss +31 -26
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/ui/trumbowyg.mathml.css +29 -21
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/ui/trumbowyg.mathml.min.css +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/trumbowyg.mention.js +12 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/trumbowyg.mention.min.js +10 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/ui/sass/trumbowyg.mention.scss +3 -3
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/ui/trumbowyg.mention.css +16 -17
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/ui/trumbowyg.mention.min.css +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/noembed/trumbowyg.noembed.js +51 -20
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/noembed/trumbowyg.noembed.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/pasteembed/trumbowyg.pasteembed.js +36 -53
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/pasteembed/trumbowyg.pasteembed.min.js +10 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/pasteimage/trumbowyg.pasteimage.min.js +9 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/preformatted/trumbowyg.preformatted.js +12 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/preformatted/trumbowyg.preformatted.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/resizimg/trumbowyg.resizimg.min.js +3 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/ruby/trumbowyg.ruby.js +20 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/ruby/trumbowyg.ruby.min.js +10 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/trumbowyg.specialchars.js +18 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/trumbowyg.specialchars.min.js +8 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/ui/sass/trumbowyg.specialchars.scss +3 -3
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/ui/trumbowyg.specialchars.css +25 -19
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/ui/trumbowyg.specialchars.min.css +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/speechrecognition/trumbowyg.speechrecognition.js +198 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/speechrecognition/trumbowyg.speechrecognition.min.js +11 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/trumbowyg.table.js +1436 -158
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/trumbowyg.table.min.js +11 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/ui/sass/trumbowyg.table.scss +157 -32
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/ui/trumbowyg.table.css +143 -22
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/ui/trumbowyg.table.min.css +2 -2
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/template/trumbowyg.template.js +9 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/template/trumbowyg.template.min.js +1 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/trumbowyg.tenor.js +319 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/trumbowyg.tenor.min.js +1 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/ui/sass/trumbowyg.tenor.scss +124 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/ui/trumbowyg.tenor.css +119 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/ui/trumbowyg.tenor.min.css +2 -0
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/upload/trumbowyg.upload.js +119 -76
- data/app/assets/javascripts/activeadmin/trumbowyg/plugins/upload/trumbowyg.upload.min.js +13 -1
- data/app/assets/javascripts/activeadmin/trumbowyg/trumbowyg.js +126 -80
- data/app/assets/javascripts/activeadmin/trumbowyg/trumbowyg.min.js +2 -12
- data/app/assets/stylesheets/activeadmin/_trumbowyg_input.scss +3 -1
- data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.css +776 -0
- data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.min.css +3 -0
- data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.min.css.map +1 -0
- data/lib/activeadmin/trumbowyg/version.rb +1 -1
- data/lib/tasks/trumbowyg.rake +2 -2
- metadata +23 -26
- data/app/assets/javascripts/activeadmin/trumbowyg/langs/no_nb.min.js +0 -10
- data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.scss +0 -836
@@ -0,0 +1,198 @@
|
|
1
|
+
/* ===========================================================
|
2
|
+
* trumbowyg.speechrecognition.js v1.0
|
3
|
+
* Speech recognition plugin for Trumbowyg
|
4
|
+
* http://alex-d.github.com/Trumbowyg
|
5
|
+
* ===========================================================
|
6
|
+
* Authors :
|
7
|
+
* - Tobias Rohde
|
8
|
+
* - Alexandre Demode (Alex-D)
|
9
|
+
* Website : tobiasrohde.de
|
10
|
+
*/
|
11
|
+
(function ($) {
|
12
|
+
'use strict';
|
13
|
+
|
14
|
+
const defaultOptions = {
|
15
|
+
lang: 'en-US'
|
16
|
+
};
|
17
|
+
|
18
|
+
const SpeechRecognition = window.webkitSpeechRecognition || window.SpeechRecognition;
|
19
|
+
|
20
|
+
function buildButtonDef(trumbowyg) {
|
21
|
+
let btnElement = null;
|
22
|
+
let isRecognizing = false;
|
23
|
+
let $resultTextParagraph = null;
|
24
|
+
|
25
|
+
const recognition = new SpeechRecognition();
|
26
|
+
|
27
|
+
recognition.continuous = true;
|
28
|
+
recognition.interimResults = true;
|
29
|
+
recognition.maxAlternatives = 1; // We only read the first
|
30
|
+
|
31
|
+
recognition.onstart = function () {
|
32
|
+
isRecognizing = true;
|
33
|
+
btnElement.style.color = '#e71d36';
|
34
|
+
};
|
35
|
+
|
36
|
+
recognition.onerror = function () {
|
37
|
+
isRecognizing = false;
|
38
|
+
btnElement.style.removeProperty('color');
|
39
|
+
};
|
40
|
+
|
41
|
+
recognition.onend = function () {
|
42
|
+
isRecognizing = false;
|
43
|
+
btnElement.style.removeProperty('color');
|
44
|
+
};
|
45
|
+
|
46
|
+
recognition.onresult = function (event) {
|
47
|
+
const resultText = [...event.results].map((result) => {
|
48
|
+
return result[0].transcript + (result.isFinal ? '<br>' : '');
|
49
|
+
}).join('');
|
50
|
+
$resultTextParagraph.html(resultText);
|
51
|
+
trumbowyg.range.setEndAfter($resultTextParagraph[0]);
|
52
|
+
trumbowyg.range.collapse();
|
53
|
+
trumbowyg.syncCode();
|
54
|
+
};
|
55
|
+
|
56
|
+
return {
|
57
|
+
isSupported,
|
58
|
+
fn: function () {
|
59
|
+
if (isRecognizing) {
|
60
|
+
recognition.stop();
|
61
|
+
return;
|
62
|
+
}
|
63
|
+
|
64
|
+
// Get the actual button to allow to switch his color
|
65
|
+
btnElement = trumbowyg.$btnPane.find('.' + trumbowyg.o.prefix + 'speechrecognition-button svg')[0];
|
66
|
+
|
67
|
+
// Create a container if needed in which we will put the recognized text
|
68
|
+
trumbowyg.$ed.focus();
|
69
|
+
setTimeout(() => {
|
70
|
+
trumbowyg.saveRange();
|
71
|
+
if (
|
72
|
+
trumbowyg.range.startContainer === trumbowyg.range.endContainer &&
|
73
|
+
trumbowyg.range.startContainer.nodeName === 'P' &&
|
74
|
+
trumbowyg.range.startContainer.innerText.trim() === ''
|
75
|
+
) {
|
76
|
+
$resultTextParagraph = $(trumbowyg.range.startContainer);
|
77
|
+
} else {
|
78
|
+
$resultTextParagraph = $('<p/>');
|
79
|
+
trumbowyg.range.deleteContents();
|
80
|
+
trumbowyg.range.insertNode($resultTextParagraph[0]);
|
81
|
+
}
|
82
|
+
|
83
|
+
// Set up the recognition
|
84
|
+
recognition.lang = trumbowyg.o.plugins.speechRecognition.lang;
|
85
|
+
recognition.start();
|
86
|
+
});
|
87
|
+
}
|
88
|
+
};
|
89
|
+
}
|
90
|
+
|
91
|
+
function isSupported() {
|
92
|
+
return SpeechRecognition !== undefined;
|
93
|
+
}
|
94
|
+
|
95
|
+
|
96
|
+
$.extend(true, $.trumbowyg, {
|
97
|
+
langs: {
|
98
|
+
az: {
|
99
|
+
speechRecognition: 'Nitqin tanınması'
|
100
|
+
},
|
101
|
+
bg: {
|
102
|
+
speechRecognition: 'Разпознаване на реч'
|
103
|
+
},
|
104
|
+
by: {
|
105
|
+
speechRecognition: 'Распазнаванне маўлення'
|
106
|
+
},
|
107
|
+
ca: {
|
108
|
+
speechRecognition: 'Reconeixement de veu'
|
109
|
+
},
|
110
|
+
cs: {
|
111
|
+
speechRecognition: 'Rozpoznávání řeči'
|
112
|
+
},
|
113
|
+
da: {
|
114
|
+
speechRecognition: 'Talegenkendelse'
|
115
|
+
},
|
116
|
+
de: {
|
117
|
+
speechRecognition: 'Spracherkennung'
|
118
|
+
},
|
119
|
+
el: {
|
120
|
+
speechRecognition: 'Αναγνώριση ομιλίας'
|
121
|
+
},
|
122
|
+
en: {
|
123
|
+
speechRecognition: 'Speech recognition'
|
124
|
+
},
|
125
|
+
es: {
|
126
|
+
speechRecognition: 'Reconocimiento de voz'
|
127
|
+
},
|
128
|
+
et: {
|
129
|
+
speechRecognition: 'Kõnetuvastus'
|
130
|
+
},
|
131
|
+
fi: {
|
132
|
+
speechRecognition: 'Puheentunnistus'
|
133
|
+
},
|
134
|
+
fr: {
|
135
|
+
speechRecognition: 'Reconnaissance vocale'
|
136
|
+
},
|
137
|
+
hr: {
|
138
|
+
speechRecognition: 'Prepoznavanje govora'
|
139
|
+
},
|
140
|
+
hu: {
|
141
|
+
speechRecognition: 'Beszédfelismerés'
|
142
|
+
},
|
143
|
+
it: {
|
144
|
+
speechRecognition: 'Riconoscimento vocale'
|
145
|
+
},
|
146
|
+
lt: {
|
147
|
+
speechRecognition: 'Kalbos atpažinimas'
|
148
|
+
},
|
149
|
+
nb: {
|
150
|
+
speechRecognition: 'Talegjenkjenning'
|
151
|
+
},
|
152
|
+
nl: {
|
153
|
+
speechRecognition: 'Spraakherkenning'
|
154
|
+
},
|
155
|
+
pl: {
|
156
|
+
speechRecognition: 'Rozpoznawanie mowy'
|
157
|
+
},
|
158
|
+
pt: {
|
159
|
+
speechRecognition: 'Reconhecimento de voz'
|
160
|
+
},
|
161
|
+
ro: {
|
162
|
+
speechRecognition: 'Recunoașterea vorbirii'
|
163
|
+
},
|
164
|
+
rs: {
|
165
|
+
speechRecognition: 'Препознавање говора'
|
166
|
+
},
|
167
|
+
ru: {
|
168
|
+
speechRecognition: 'Распознавание речи'
|
169
|
+
},
|
170
|
+
sk: {
|
171
|
+
speechRecognition: 'Rozpoznávanie reči'
|
172
|
+
},
|
173
|
+
sq: {
|
174
|
+
speechRecognition: 'Njohja e të folurit'
|
175
|
+
},
|
176
|
+
sv: {
|
177
|
+
speechRecognition: 'Taligenkänning'
|
178
|
+
},
|
179
|
+
ua: {
|
180
|
+
speechRecognition: 'Розпізнавання мови'
|
181
|
+
}
|
182
|
+
},
|
183
|
+
|
184
|
+
plugins: {
|
185
|
+
speechRecognition: {
|
186
|
+
shouldInit: isSupported,
|
187
|
+
init: function (trumbowyg) {
|
188
|
+
trumbowyg.o.plugins.speechRecognition = $.extend(true, {},
|
189
|
+
defaultOptions,
|
190
|
+
trumbowyg.o.plugins.speechRecognition || {}
|
191
|
+
);
|
192
|
+
|
193
|
+
trumbowyg.addBtnDef('speechrecognition', buildButtonDef(trumbowyg));
|
194
|
+
}
|
195
|
+
}
|
196
|
+
}
|
197
|
+
});
|
198
|
+
})(jQuery);
|
@@ -0,0 +1,11 @@
|
|
1
|
+
/* ===========================================================
|
2
|
+
* trumbowyg.speechrecognition.js v1.0
|
3
|
+
* Speech recognition plugin for Trumbowyg
|
4
|
+
* http://alex-d.github.com/Trumbowyg
|
5
|
+
* ===========================================================
|
6
|
+
* Authors :
|
7
|
+
* - Tobias Rohde
|
8
|
+
* - Alexandre Demode (Alex-D)
|
9
|
+
* Website : tobiasrohde.de
|
10
|
+
*/
|
11
|
+
!function(e){"use strict";const n={lang:"en-US"},o=window.webkitSpeechRecognition||window.SpeechRecognition;function i(){return void 0!==o}e.extend(!0,e.trumbowyg,{langs:{az:{speechRecognition:"Nitqin tanınması"},bg:{speechRecognition:"Разпознаване на реч"},by:{speechRecognition:"Распазнаванне маўлення"},ca:{speechRecognition:"Reconeixement de veu"},cs:{speechRecognition:"Rozpoznávání řeči"},da:{speechRecognition:"Talegenkendelse"},de:{speechRecognition:"Spracherkennung"},el:{speechRecognition:"Αναγνώριση ομιλίας"},en:{speechRecognition:"Speech recognition"},es:{speechRecognition:"Reconocimiento de voz"},et:{speechRecognition:"Kõnetuvastus"},fi:{speechRecognition:"Puheentunnistus"},fr:{speechRecognition:"Reconnaissance vocale"},hr:{speechRecognition:"Prepoznavanje govora"},hu:{speechRecognition:"Beszédfelismerés"},it:{speechRecognition:"Riconoscimento vocale"},lt:{speechRecognition:"Kalbos atpažinimas"},nb:{speechRecognition:"Talegjenkjenning"},nl:{speechRecognition:"Spraakherkenning"},pl:{speechRecognition:"Rozpoznawanie mowy"},pt:{speechRecognition:"Reconhecimento de voz"},ro:{speechRecognition:"Recunoașterea vorbirii"},rs:{speechRecognition:"Препознавање говора"},ru:{speechRecognition:"Распознавание речи"},sk:{speechRecognition:"Rozpoznávanie reči"},sq:{speechRecognition:"Njohja e të folurit"},sv:{speechRecognition:"Taligenkänning"},ua:{speechRecognition:"Розпізнавання мови"}},plugins:{speechRecognition:{shouldInit:i,init:function(t){t.o.plugins.speechRecognition=e.extend(!0,{},n,t.o.plugins.speechRecognition||{}),t.addBtnDef("speechrecognition",function(n){let t=null,c=!1,s=null;const r=new o;return r.continuous=!0,r.interimResults=!0,r.maxAlternatives=1,r.onstart=function(){c=!0,t.style.color="#e71d36"},r.onerror=function(){c=!1,t.style.removeProperty("color")},r.onend=function(){c=!1,t.style.removeProperty("color")},r.onresult=function(e){const o=[...e.results].map((e=>e[0].transcript+(e.isFinal?"<br>":""))).join("");s.html(o),n.range.setEndAfter(s[0]),n.range.collapse(),n.syncCode()},{isSupported:i,fn:function(){c?r.stop():(t=n.$btnPane.find("."+n.o.prefix+"speechrecognition-button svg")[0],n.$ed.focus(),setTimeout((()=>{n.saveRange(),n.range.startContainer===n.range.endContainer&&"P"===n.range.startContainer.nodeName&&""===n.range.startContainer.innerText.trim()?s=e(n.range.startContainer):(s=e("<p/>"),n.range.deleteContents(),n.range.insertNode(s[0])),r.lang=n.o.plugins.speechRecognition.lang,r.start()})))}}}(t))}}}})}(jQuery);
|