activeadmin_trumbowyg 1.1.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.
Files changed (132) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -5
  3. data/Rakefile +11 -0
  4. data/app/assets/fonts/trumbowyg/icons.svg +1 -1
  5. data/app/assets/javascripts/activeadmin/trumbowyg/langs/az.js +63 -0
  6. data/app/assets/javascripts/activeadmin/trumbowyg/langs/az.min.js +9 -0
  7. data/app/assets/javascripts/activeadmin/trumbowyg/langs/ca.js +30 -13
  8. data/app/assets/javascripts/activeadmin/trumbowyg/langs/ca.min.js +8 -5
  9. data/app/assets/javascripts/activeadmin/trumbowyg/langs/cs.js +11 -2
  10. data/app/assets/javascripts/activeadmin/trumbowyg/langs/cs.min.js +1 -1
  11. data/app/assets/javascripts/activeadmin/trumbowyg/langs/da.js +1 -1
  12. data/app/assets/javascripts/activeadmin/trumbowyg/langs/de.js +11 -2
  13. data/app/assets/javascripts/activeadmin/trumbowyg/langs/de.min.js +3 -3
  14. data/app/assets/javascripts/activeadmin/trumbowyg/langs/es_ar.js +1 -1
  15. data/app/assets/javascripts/activeadmin/trumbowyg/langs/et.js +7 -7
  16. data/app/assets/javascripts/activeadmin/trumbowyg/langs/fa.js +1 -1
  17. data/app/assets/javascripts/activeadmin/trumbowyg/langs/fi.js +1 -1
  18. data/app/assets/javascripts/activeadmin/trumbowyg/langs/fr.js +3 -0
  19. data/app/assets/javascripts/activeadmin/trumbowyg/langs/fr.min.js +1 -1
  20. data/app/assets/javascripts/activeadmin/trumbowyg/langs/he.js +1 -1
  21. data/app/assets/javascripts/activeadmin/trumbowyg/langs/hu.js +3 -0
  22. data/app/assets/javascripts/activeadmin/trumbowyg/langs/hu.min.js +1 -1
  23. data/app/assets/javascripts/activeadmin/trumbowyg/langs/id.js +1 -1
  24. data/app/assets/javascripts/activeadmin/trumbowyg/langs/it.js +4 -1
  25. data/app/assets/javascripts/activeadmin/trumbowyg/langs/it.min.js +1 -1
  26. data/app/assets/javascripts/activeadmin/trumbowyg/langs/lt.js +1 -1
  27. data/app/assets/javascripts/activeadmin/trumbowyg/langs/mn.js +39 -39
  28. data/app/assets/javascripts/activeadmin/trumbowyg/langs/{no_nb.js → nb.js} +22 -8
  29. data/app/assets/javascripts/activeadmin/trumbowyg/langs/nb.min.js +15 -0
  30. data/app/assets/javascripts/activeadmin/trumbowyg/langs/pl.js +1 -1
  31. data/app/assets/javascripts/activeadmin/trumbowyg/langs/pt.js +2 -2
  32. data/app/assets/javascripts/activeadmin/trumbowyg/langs/pt_br.js +2 -2
  33. data/app/assets/javascripts/activeadmin/trumbowyg/langs/rs.js +1 -1
  34. data/app/assets/javascripts/activeadmin/trumbowyg/langs/rs_latin.js +1 -1
  35. data/app/assets/javascripts/activeadmin/trumbowyg/langs/sl.js +10 -6
  36. data/app/assets/javascripts/activeadmin/trumbowyg/langs/sl.min.js +2 -1
  37. data/app/assets/javascripts/activeadmin/trumbowyg/langs/sq.js +2 -2
  38. data/app/assets/javascripts/activeadmin/trumbowyg/langs/sv.js +1 -0
  39. data/app/assets/javascripts/activeadmin/trumbowyg/langs/sv.min.js +1 -1
  40. data/app/assets/javascripts/activeadmin/trumbowyg/langs/th.js +33 -33
  41. data/app/assets/javascripts/activeadmin/trumbowyg/langs/tr.js +5 -3
  42. data/app/assets/javascripts/activeadmin/trumbowyg/langs/tr.min.js +1 -1
  43. data/app/assets/javascripts/activeadmin/trumbowyg/langs/zh_cn.js +1 -1
  44. data/app/assets/javascripts/activeadmin/trumbowyg/langs/zh_tw.js +1 -1
  45. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/allowtagsfrompaste/trumbowyg.allowtagsfrompaste.min.js +11 -0
  46. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/base64/trumbowyg.base64.js +28 -1
  47. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/base64/trumbowyg.base64.min.js +8 -1
  48. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/cleanpaste/trumbowyg.cleanpaste.min.js +11 -0
  49. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/trumbowyg.colors.js +39 -2
  50. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/trumbowyg.colors.min.js +10 -1
  51. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/ui/sass/trumbowyg.colors.scss +3 -3
  52. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/ui/trumbowyg.colors.css +45 -40
  53. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/colors/ui/trumbowyg.colors.min.css +1 -1
  54. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/trumbowyg.emoji.js +916 -848
  55. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/trumbowyg.emoji.min.js +9 -1
  56. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/ui/sass/trumbowyg.emoji.scss +3 -3
  57. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/ui/trumbowyg.emoji.css +23 -18
  58. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/emoji/ui/trumbowyg.emoji.min.css +1 -1
  59. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontfamily/trumbowyg.fontfamily.js +22 -7
  60. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontfamily/trumbowyg.fontfamily.min.js +1 -1
  61. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontsize/trumbowyg.fontsize.js +100 -8
  62. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/fontsize/trumbowyg.fontsize.min.js +1 -1
  63. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/trumbowyg.giphy.js +251 -172
  64. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/trumbowyg.giphy.min.js +1 -1
  65. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/ui/sass/trumbowyg.giphy.scss +17 -16
  66. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/ui/trumbowyg.giphy.css +60 -47
  67. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/giphy/ui/trumbowyg.giphy.min.css +2 -2
  68. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/trumbowyg.highlight.js +24 -4
  69. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/trumbowyg.highlight.min.js +1 -1
  70. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/ui/sass/trumbowyg.highlight.scss +12 -12
  71. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/ui/trumbowyg.highlight.css +13 -10
  72. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/highlight/ui/trumbowyg.highlight.min.css +2 -2
  73. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/history/trumbowyg.history.js +6 -61
  74. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/history/trumbowyg.history.min.js +8 -1
  75. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/indent/trumbowyg.indent.js +31 -2
  76. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/indent/trumbowyg.indent.min.js +9 -1
  77. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/insertaudio/trumbowyg.insertaudio.js +18 -0
  78. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/insertaudio/trumbowyg.insertaudio.min.js +8 -1
  79. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/lineheight/trumbowyg.lineheight.js +50 -5
  80. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/lineheight/trumbowyg.lineheight.min.js +1 -1
  81. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/trumbowyg.mathml.js +97 -50
  82. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/trumbowyg.mathml.min.js +8 -1
  83. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/ui/sass/trumbowyg.mathml.scss +31 -26
  84. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/ui/trumbowyg.mathml.css +29 -21
  85. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mathml/ui/trumbowyg.mathml.min.css +2 -2
  86. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/trumbowyg.mention.js +12 -0
  87. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/trumbowyg.mention.min.js +10 -1
  88. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/ui/sass/trumbowyg.mention.scss +3 -3
  89. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/ui/trumbowyg.mention.css +16 -17
  90. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/mention/ui/trumbowyg.mention.min.css +2 -2
  91. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/noembed/trumbowyg.noembed.js +51 -20
  92. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/noembed/trumbowyg.noembed.min.js +8 -1
  93. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/pasteembed/trumbowyg.pasteembed.js +36 -53
  94. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/pasteembed/trumbowyg.pasteembed.min.js +10 -1
  95. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/pasteimage/trumbowyg.pasteimage.min.js +9 -0
  96. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/preformatted/trumbowyg.preformatted.js +12 -0
  97. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/preformatted/trumbowyg.preformatted.min.js +8 -1
  98. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/resizimg/trumbowyg.resizimg.min.js +3 -1
  99. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/ruby/trumbowyg.ruby.js +20 -0
  100. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/ruby/trumbowyg.ruby.min.js +10 -1
  101. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/trumbowyg.specialchars.js +18 -0
  102. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/trumbowyg.specialchars.min.js +8 -1
  103. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/ui/sass/trumbowyg.specialchars.scss +3 -3
  104. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/ui/trumbowyg.specialchars.css +25 -19
  105. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/specialchars/ui/trumbowyg.specialchars.min.css +1 -1
  106. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/speechrecognition/trumbowyg.speechrecognition.js +198 -0
  107. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/speechrecognition/trumbowyg.speechrecognition.min.js +11 -0
  108. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/trumbowyg.table.js +1436 -158
  109. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/trumbowyg.table.min.js +11 -1
  110. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/ui/sass/trumbowyg.table.scss +157 -32
  111. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/ui/trumbowyg.table.css +143 -22
  112. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/table/ui/trumbowyg.table.min.css +2 -2
  113. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/template/trumbowyg.template.js +9 -0
  114. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/template/trumbowyg.template.min.js +1 -1
  115. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/trumbowyg.tenor.js +319 -0
  116. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/trumbowyg.tenor.min.js +1 -0
  117. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/ui/sass/trumbowyg.tenor.scss +124 -0
  118. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/ui/trumbowyg.tenor.css +119 -0
  119. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/tenor/ui/trumbowyg.tenor.min.css +2 -0
  120. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/upload/trumbowyg.upload.js +119 -76
  121. data/app/assets/javascripts/activeadmin/trumbowyg/plugins/upload/trumbowyg.upload.min.js +13 -1
  122. data/app/assets/javascripts/activeadmin/trumbowyg/trumbowyg.js +126 -80
  123. data/app/assets/javascripts/activeadmin/trumbowyg/trumbowyg.min.js +2 -12
  124. data/app/assets/stylesheets/activeadmin/_trumbowyg_input.scss +3 -1
  125. data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.css +776 -0
  126. data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.min.css +3 -0
  127. data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.min.css.map +1 -0
  128. data/lib/activeadmin/trumbowyg/version.rb +1 -1
  129. data/lib/tasks/trumbowyg.rake +2 -2
  130. metadata +18 -21
  131. data/app/assets/javascripts/activeadmin/trumbowyg/langs/no_nb.min.js +0 -10
  132. data/app/assets/stylesheets/activeadmin/trumbowyg/trumbowyg.scss +0 -836
@@ -6,6 +6,7 @@
6
6
  * Author : Jake Johns (jakejohns)
7
7
  */
8
8
 
9
+ /* global AbortSignal:true */
9
10
  (function ($) {
10
11
  'use strict';
11
12
 
@@ -24,12 +25,23 @@
24
25
  noembed: 'Noembed',
25
26
  noembedError: 'Error'
26
27
  },
28
+ az: {
29
+ noembed: 'Noembed',
30
+ noembedError: 'Xəta'
31
+ },
32
+ by: {
33
+ noembedError: 'Памылка'
34
+ },
27
35
  cs: {
28
36
  noembedError: 'Chyba'
29
37
  },
30
38
  da: {
31
39
  noembedError: 'Fejl'
32
40
  },
41
+ de: {
42
+ noembed: 'Noembed',
43
+ noembedError: 'Fehler'
44
+ },
33
45
  et: {
34
46
  noembed: 'Noembed',
35
47
  noembedError: 'Viga'
@@ -55,6 +67,10 @@
55
67
  ru: {
56
68
  noembedError: 'Ошибка'
57
69
  },
70
+ sl: {
71
+ noembed: 'Noembed',
72
+ noembedError: 'Napaka'
73
+ },
58
74
  sk: {
59
75
  noembedError: 'Chyba'
60
76
  },
@@ -89,32 +105,47 @@
89
105
 
90
106
  // Callback
91
107
  function (data) {
92
- $.ajax({
93
- url: trumbowyg.o.plugins.noembed.proxy,
94
- type: 'GET',
95
- data: data,
96
- cache: false,
97
- dataType: 'json',
108
+ // Build request URL
109
+ var requestUrl = new URL(trumbowyg.o.plugins.noembed.proxy);
110
+ Object.keys(data).forEach((key) => {
111
+ requestUrl.searchParams.append(key, data[key].trim());
112
+ });
113
+
114
+ // Launch async request
115
+ fetch(requestUrl, {
116
+ method: 'GET',
117
+ cache: 'no-cache',
118
+ signal: AbortSignal.timeout(2000)
119
+ }).then((response) => {
120
+ if (trumbowyg.o.plugins.noembed.success) {
121
+ trumbowyg.o.plugins.noembed.success(data, trumbowyg, $modal);
122
+ return;
123
+ }
98
124
 
99
- success: trumbowyg.o.plugins.noembed.success || function (data) {
100
- if (data.html) {
101
- trumbowyg.execCmd('insertHTML', data.html);
102
- setTimeout(function () {
103
- trumbowyg.closeModal();
104
- }, 250);
105
- } else {
125
+ return response.json().then((json) => {
126
+ if (!json.html) {
106
127
  trumbowyg.addErrorOnModalField(
107
128
  $('input[type=text]', $modal),
108
- data.error
129
+ json.error
109
130
  );
131
+ return;
110
132
  }
111
- },
112
- error: trumbowyg.o.plugins.noembed.error || function () {
113
- trumbowyg.addErrorOnModalField(
114
- $('input[type=text]', $modal),
115
- trumbowyg.lang.noembedError
116
- );
133
+
134
+ trumbowyg.execCmd('insertHTML', json.html);
135
+ setTimeout(function () {
136
+ trumbowyg.closeModal();
137
+ }, 250);
138
+ });
139
+ }).catch((...args) => {
140
+ if (trumbowyg.o.plugins.noembed.error) {
141
+ trumbowyg.o.plugins.noembed.error(...args);
142
+ return;
117
143
  }
144
+
145
+ trumbowyg.addErrorOnModalField(
146
+ $('input[type=text]', $modal),
147
+ trumbowyg.lang.noembedError
148
+ );
118
149
  });
119
150
  }
120
151
  );
@@ -1 +1,8 @@
1
- !function(e){"use strict";var r={proxy:"https://noembed.com/embed?nowrap=on",urlFiled:"url",data:[],success:void 0,error:void 0};e.extend(!0,e.trumbowyg,{langs:{en:{noembed:"Noembed",noembedError:"Error"},cs:{noembedError:"Chyba"},da:{noembedError:"Fejl"},et:{noembed:"Noembed",noembedError:"Viga"},fr:{noembedError:"Erreur"},hu:{noembed:"Noembed",noembedError:"Hiba"},ja:{noembedError:"エラー"},ko:{noembed:"oEmbed 넣기",noembedError:"에러"},pt_br:{noembed:"Incorporar",noembedError:"Erro"},ru:{noembedError:"Ошибка"},sk:{noembedError:"Chyba"},tr:{noembedError:"Hata"},zh_tw:{noembed:"插入影片",noembedError:"錯誤"}},plugins:{noembed:{init:function(o){o.o.plugins.noembed=e.extend(!0,{},r,o.o.plugins.noembed||{});var n={fn:function(){var r=o.openModalInsert(o.lang.noembed,{url:{label:"URL",required:!0}},(function(n){e.ajax({url:o.o.plugins.noembed.proxy,type:"GET",data:n,cache:!1,dataType:"json",success:o.o.plugins.noembed.success||function(n){n.html?(o.execCmd("insertHTML",n.html),setTimeout((function(){o.closeModal()}),250)):o.addErrorOnModalField(e("input[type=text]",r),n.error)},error:o.o.plugins.noembed.error||function(){o.addErrorOnModalField(e("input[type=text]",r),o.lang.noembedError)}})}))}};o.addBtnDef("noembed",n)}}}})}(jQuery);
1
+ /* ===========================================================
2
+ * trumbowyg.noembed.js v1.0
3
+ * noEmbed plugin for Trumbowyg
4
+ * http://alex-d.github.com/Trumbowyg
5
+ * ===========================================================
6
+ * Author : Jake Johns (jakejohns)
7
+ */
8
+ !function(e){"use strict";var r={proxy:"https://noembed.com/embed?nowrap=on",urlFiled:"url",data:[],success:void 0,error:void 0};e.extend(!0,e.trumbowyg,{langs:{en:{noembed:"Noembed",noembedError:"Error"},az:{noembed:"Noembed",noembedError:"Xəta"},by:{noembedError:"Памылка"},cs:{noembedError:"Chyba"},da:{noembedError:"Fejl"},de:{noembed:"Noembed",noembedError:"Fehler"},et:{noembed:"Noembed",noembedError:"Viga"},fr:{noembedError:"Erreur"},hu:{noembed:"Noembed",noembedError:"Hiba"},ja:{noembedError:"エラー"},ko:{noembed:"oEmbed 넣기",noembedError:"에러"},pt_br:{noembed:"Incorporar",noembedError:"Erro"},ru:{noembedError:"Ошибка"},sl:{noembed:"Noembed",noembedError:"Napaka"},sk:{noembedError:"Chyba"},tr:{noembedError:"Hata"},zh_tw:{noembed:"插入影片",noembedError:"錯誤"}},plugins:{noembed:{init:function(o){o.o.plugins.noembed=e.extend(!0,{},r,o.o.plugins.noembed||{});var n={fn:function(){var r=o.openModalInsert(o.lang.noembed,{url:{label:"URL",required:!0}},(function(n){var d=new URL(o.o.plugins.noembed.proxy);Object.keys(n).forEach((e=>{d.searchParams.append(e,n[e].trim())})),fetch(d,{method:"GET",cache:"no-cache",signal:AbortSignal.timeout(2e3)}).then((d=>{if(!o.o.plugins.noembed.success)return d.json().then((n=>{n.html?(o.execCmd("insertHTML",n.html),setTimeout((function(){o.closeModal()}),250)):o.addErrorOnModalField(e("input[type=text]",r),n.error)}));o.o.plugins.noembed.success(n,o,r)})).catch(((...n)=>{o.o.plugins.noembed.error?o.o.plugins.noembed.error(...n):o.addErrorOnModalField(e("input[type=text]",r),o.lang.noembedError)}))}))}};o.addBtnDef("noembed",n)}}}})}(jQuery);
@@ -8,15 +8,13 @@
8
8
  * Website : https://www.maxmade.nl/
9
9
  */
10
10
 
11
+ /* global AbortSignal:true */
11
12
  (function($) {
12
13
  'use strict';
13
14
 
14
15
  var defaultOptions = {
15
16
  enabled: true,
16
- endpoints: [
17
- 'https://noembed.com/embed?nowrap=on',
18
- 'https://api.maxmade.nl/url2iframe/embed'
19
- ]
17
+ endpoint: 'https://noembed.com/embed?nowrap=on'
20
18
  };
21
19
 
22
20
  $.extend(true, $.trumbowyg, {
@@ -25,6 +23,11 @@
25
23
  init: function(trumbowyg) {
26
24
  trumbowyg.o.plugins.pasteEmbed = $.extend(true, {}, defaultOptions, trumbowyg.o.plugins.pasteEmbed || {});
27
25
 
26
+ // Compatibility layer with older 'endpoints' array options
27
+ if (Array.isArray(trumbowyg.o.plugins.pasteEmbed.endpoints)) {
28
+ trumbowyg.o.plugins.pasteEmbed.endpoint = trumbowyg.o.plugins.pasteEmbed.endpoints[0];
29
+ }
30
+
28
31
  if (!trumbowyg.o.plugins.pasteEmbed.enabled) {
29
32
  return;
30
33
  }
@@ -33,60 +36,40 @@
33
36
  try {
34
37
  var clipboardData = (pasteEvent.originalEvent || pasteEvent).clipboardData,
35
38
  pastedData = clipboardData.getData('Text'),
36
- endpoints = trumbowyg.o.plugins.pasteEmbed.endpoints,
37
- request = null;
39
+ endpoint = trumbowyg.o.plugins.pasteEmbed.endpoint;
38
40
 
39
- if (pastedData.startsWith('http')) {
40
- pasteEvent.stopPropagation();
41
- pasteEvent.preventDefault();
41
+ if (!pastedData.startsWith('http')) {
42
+ return;
43
+ }
42
44
 
43
- var query = {
44
- url: pastedData.trim()
45
- };
46
- var content = '';
47
- var index = 0;
45
+ pasteEvent.stopPropagation();
46
+ pasteEvent.preventDefault();
48
47
 
49
- if (request && request.transport) {
50
- request.transport.abort();
51
- }
48
+ // Build request URL
49
+ var requestUrl = new URL(endpoint);
50
+ requestUrl.searchParams.append('url', pastedData.trim());
52
51
 
53
- request = $.ajax({
54
- crossOrigin: true,
55
- url: endpoints[index],
56
- type: 'GET',
57
- data: query,
58
- cache: false,
59
- dataType: 'jsonp',
60
- success: function(res) {
61
- if (res.html) {
62
- index = 0;
63
- content = res.html;
64
- } else {
65
- index += 1;
66
- }
67
- },
68
- error: function() {
69
- index += 1;
70
- },
71
- complete: function() {
72
- if (content.length === 0 && index < endpoints.length - 1) {
73
- this.url = endpoints[index];
74
- this.data = query;
75
- $.ajax(this);
76
- }
77
- if (index === endpoints.length - 1) {
78
- content = $('<a>', {
79
- href: pastedData,
80
- text: pastedData
81
- }).prop('outerHTML');
82
- }
83
- if (content.length > 0) {
84
- index = 0;
85
- trumbowyg.execCmd('insertHTML', content);
86
- }
87
- }
52
+ // Launch async request
53
+ fetch(requestUrl, {
54
+ method: 'GET',
55
+ cache: 'no-cache',
56
+ signal: AbortSignal.timeout(2000)
57
+ }).then((response) => {
58
+ return response.json().then((json) => {
59
+ return json.html;
88
60
  });
89
- }
61
+ }).catch(() => {
62
+ return undefined;
63
+ }).then((content) => {
64
+ if (content === undefined) {
65
+ content = $('<a>', {
66
+ href: pastedData,
67
+ text: pastedData
68
+ })[0].outerHTML;
69
+ }
70
+
71
+ trumbowyg.execCmd('insertHTML', content);
72
+ });
90
73
  } catch (c) {}
91
74
  });
92
75
  }
@@ -1 +1,10 @@
1
- !function(t){"use strict";var e={enabled:!0,endpoints:["https://noembed.com/embed?nowrap=on","https://api.maxmade.nl/url2iframe/embed"]};t.extend(!0,t.trumbowyg,{plugins:{pasteEmbed:{init:function(n){n.o.plugins.pasteEmbed=t.extend(!0,{},e,n.o.plugins.pasteEmbed||{}),n.o.plugins.pasteEmbed.enabled&&n.pasteHandlers.push((function(e){try{var a=(e.originalEvent||e).clipboardData.getData("Text"),r=n.o.plugins.pasteEmbed.endpoints,s=null;if(a.startsWith("http")){e.stopPropagation(),e.preventDefault();var i={url:a.trim()},o="",p=0;s&&s.transport&&s.transport.abort(),s=t.ajax({crossOrigin:!0,url:r[p],type:"GET",data:i,cache:!1,dataType:"jsonp",success:function(t){t.html?(p=0,o=t.html):p+=1},error:function(){p+=1},complete:function(){0===o.length&&p<r.length-1&&(this.url=r[p],this.data=i,t.ajax(this)),p===r.length-1&&(o=t("<a>",{href:a,text:a}).prop("outerHTML")),o.length>0&&(p=0,n.execCmd("insertHTML",o))}})}}catch(t){}}))}}}})}(jQuery);
1
+ /* ===========================================================
2
+ * trumbowyg.pasteembed.js v1.0
3
+ * Url paste to iframe with noembed. Plugin for Trumbowyg
4
+ * http://alex-d.github.com/Trumbowyg
5
+ * ===========================================================
6
+ * Author : Max Seelig
7
+ * Facebook : https://facebook.com/maxse
8
+ * Website : https://www.maxmade.nl/
9
+ */
10
+ !function(e){"use strict";var t={enabled:!0,endpoint:"https://noembed.com/embed?nowrap=on"};e.extend(!0,e.trumbowyg,{plugins:{pasteEmbed:{init:function(n){n.o.plugins.pasteEmbed=e.extend(!0,{},t,n.o.plugins.pasteEmbed||{}),Array.isArray(n.o.plugins.pasteEmbed.endpoints)&&(n.o.plugins.pasteEmbed.endpoint=n.o.plugins.pasteEmbed.endpoints[0]),n.o.plugins.pasteEmbed.enabled&&n.pasteHandlers.push((function(t){try{var a=(t.originalEvent||t).clipboardData.getData("Text"),s=n.o.plugins.pasteEmbed.endpoint;if(!a.startsWith("http"))return;t.stopPropagation(),t.preventDefault();var i=new URL(s);i.searchParams.append("url",a.trim()),fetch(i,{method:"GET",cache:"no-cache",signal:AbortSignal.timeout(2e3)}).then((e=>e.json().then((e=>e.html)))).catch((()=>{})).then((t=>{void 0===t&&(t=e("<a>",{href:a,text:a})[0].outerHTML),n.execCmd("insertHTML",t)}))}catch(e){}}))}}}})}(jQuery);
@@ -1 +1,10 @@
1
+ /* ===========================================================
2
+ * trumbowyg.pasteimage.js v1.0
3
+ * Basic base64 paste plugin for Trumbowyg
4
+ * http://alex-d.github.com/Trumbowyg
5
+ * ===========================================================
6
+ * Author : Alexandre Demode (Alex-D)
7
+ * Twitter : @AlexandreDemode
8
+ * Website : alex-d.fr
9
+ */
1
10
  !function(e){"use strict";e.extend(!0,e.trumbowyg,{plugins:{pasteImage:{init:function(e){e.pasteHandlers.push((function(t){try{for(var a,n=(t.originalEvent||t).clipboardData.items,i=!1,r=n.length-1;r>=0;r-=1)n[r].type.match(/^image\//)&&((a=new FileReader).onloadend=function(t){e.execCmd("insertImage",t.target.result,!1,!0)},a.readAsDataURL(n[r].getAsFile()),i=!0);i&&(t.stopPropagation(),t.preventDefault())}catch(e){}}))}}}})}(jQuery);
@@ -16,9 +16,18 @@
16
16
  en: {
17
17
  preformatted: 'Code sample <pre>'
18
18
  },
19
+ az: {
20
+ preformatted: 'Kod nümunəsi <pre>'
21
+ },
22
+ by: {
23
+ preformatted: 'Прыклад кода <pre>'
24
+ },
19
25
  da: {
20
26
  preformatted: 'Præformateret <pre>'
21
27
  },
28
+ de: {
29
+ preformatted: 'Code-Beispiel <pre>'
30
+ },
22
31
  et: {
23
32
  preformatted: 'Eelvormindatud tekst <pre>'
24
33
  },
@@ -43,6 +52,9 @@
43
52
  ru: {
44
53
  preformatted: 'Пример кода <pre>'
45
54
  },
55
+ sl: {
56
+ preformatted: 'Vstavi neformatiran tekst <pre>'
57
+ },
46
58
  tr: {
47
59
  preformatted: 'Kod örneği <pre>'
48
60
  },
@@ -1 +1,8 @@
1
- !function(e){"use strict";e.extend(!0,e.trumbowyg,{langs:{en:{preformatted:"Code sample <pre>"},da:{preformatted:"Præformateret <pre>"},et:{preformatted:"Eelvormindatud tekst <pre>"},fr:{preformatted:"Exemple de code <pre>"},hu:{preformatted:"Kód minta <pre>"},it:{preformatted:"Codice <pre>"},ja:{preformatted:"コードサンプル <pre>"},ko:{preformatted:"코드 예제 <pre>"},pt_br:{preformatted:"Exemple de código <pre>"},ru:{preformatted:"Пример кода <pre>"},tr:{preformatted:"Kod örneği <pre>"},zh_cn:{preformatted:"代码示例 <pre>"},zh_tw:{preformatted:"代碼範例 <pre>"}},plugins:{preformatted:{init:function(t){var r={fn:function(){t.saveRange();var r,n,o=t.getRangeText();if(""!==o.replace(/\s/g,""))try{var a=function(){var e,t=null;window.getSelection?(e=window.getSelection()).rangeCount&&1!==(t=e.getRangeAt(0).commonAncestorContainer).nodeType&&(t=t.parentNode):(e=document.selection)&&"Control"!==e.type&&(t=e.createRange().parentElement());return t}().tagName.toLowerCase();if("code"===a||"pre"===a)return function(){var t=null;if(document.selection)t=document.selection.createRange().parentElement();else{var r=window.getSelection();r.rangeCount>0&&(t=r.getRangeAt(0).startContainer.parentNode)}var n=e(t).contents().closest("pre").length,o=e(t).contents().closest("code").length;n&&o?e(t).contents().unwrap("code").unwrap("pre"):n?e(t).contents().unwrap("pre"):o&&e(t).contents().unwrap("code")}();t.execCmd("insertHTML","<pre><code>"+(r=o,(n=document.createElement("DIV")).innerHTML=r,(n.textContent||n.innerText||"")+"</code></pre>"))}catch(e){}},tag:"pre"};t.addBtnDef("preformatted",r)}}}})}(jQuery);
1
+ /* ===========================================================
2
+ * trumbowyg.preformatted.js v1.0
3
+ * Preformatted plugin for Trumbowyg
4
+ * http://alex-d.github.com/Trumbowyg
5
+ * ===========================================================
6
+ * Author : Casella Edoardo (Civile)
7
+ */
8
+ !function(e){"use strict";e.extend(!0,e.trumbowyg,{langs:{en:{preformatted:"Code sample <pre>"},az:{preformatted:"Kod nümunəsi <pre>"},by:{preformatted:"Прыклад кода <pre>"},da:{preformatted:"Præformateret <pre>"},de:{preformatted:"Code-Beispiel <pre>"},et:{preformatted:"Eelvormindatud tekst <pre>"},fr:{preformatted:"Exemple de code <pre>"},hu:{preformatted:"Kód minta <pre>"},it:{preformatted:"Codice <pre>"},ja:{preformatted:"コードサンプル <pre>"},ko:{preformatted:"코드 예제 <pre>"},pt_br:{preformatted:"Exemple de código <pre>"},ru:{preformatted:"Пример кода <pre>"},sl:{preformatted:"Vstavi neformatiran tekst <pre>"},tr:{preformatted:"Kod örneği <pre>"},zh_cn:{preformatted:"代码示例 <pre>"},zh_tw:{preformatted:"代碼範例 <pre>"}},plugins:{preformatted:{init:function(t){var r={fn:function(){t.saveRange();var r,n,o=t.getRangeText();if(""!==o.replace(/\s/g,""))try{var a=function(){var e,t=null;window.getSelection?(e=window.getSelection()).rangeCount&&1!==(t=e.getRangeAt(0).commonAncestorContainer).nodeType&&(t=t.parentNode):(e=document.selection)&&"Control"!==e.type&&(t=e.createRange().parentElement());return t}().tagName.toLowerCase();if("code"===a||"pre"===a)return function(){var t=null;if(document.selection)t=document.selection.createRange().parentElement();else{var r=window.getSelection();r.rangeCount>0&&(t=r.getRangeAt(0).startContainer.parentNode)}var n=e(t).contents().closest("pre").length,o=e(t).contents().closest("code").length;n&&o?e(t).contents().unwrap("code").unwrap("pre"):n?e(t).contents().unwrap("pre"):o&&e(t).contents().unwrap("code")}();t.execCmd("insertHTML","<pre><code>"+(r=o,(n=document.createElement("DIV")).innerHTML=r,(n.textContent||n.innerText||"")+"</code></pre>"))}catch(e){}},tag:"pre"};t.addBtnDef("preformatted",r)}}}})}(jQuery);
@@ -1 +1,3 @@
1
- !function(e){"use strict";var i={minSize:32,step:4};function t(e){e.stopPropagation(),e.preventDefault()}var s=function(i){this.resizeCanvas=document.createElement("canvas"),this.resizeCanvas.setAttribute("tabindex","0"),this.resizeCanvas.id="trumbowyg-resizimg-"+ +new Date,this.ctx=null,this.resizeImg=null,this.pressEscape=function(e){e.reset()},this.pressBackspaceOrDelete=function(t){e(t.resizeCanvas).remove(),t.resizeImg=null,null!==i&&(i.syncCode(),i.$c.trigger("tbwchange"))};var s,n,r=!1,a=!1,o=function(e){var i=e.getBoundingClientRect();s=i.left,n=i.top},h=function(e,i,t,s,n){return i.translate(.5,.5),i.lineWidth=1,i.drawImage(t,5,5,s-10,n-10),i.beginPath(),i.rect(5,5,s-10,n-10),i.stroke(),i.beginPath(),i.fillStyle="rgb(255, 255, 255)",i.rect(s-10,n-10,9,9),i.fill(),i.stroke(),o(e),i};this.init=function(){var i=this;e(window).on("scroll resize",(function(){i.reCalcOffset()}))},this.reCalcOffset=function(){o(this.resizeCanvas)},this.canvasId=function(){return this.resizeCanvas.id},this.isActive=function(){return null!==this.resizeImg},this.isFocusedNow=function(){return r},this.blurNow=function(){r=!1},this.reset=function(){null!==this.resizeImg&&(this.resizeImg.setAttribute("style","width: 100%; max-width: "+(this.resizeCanvas.clientWidth-10)+"px; height: auto; max-height: "+(this.resizeCanvas.clientHeight-10)+"px;"),e(this.resizeCanvas).replaceWith(e(this.resizeImg)),this.resizeCanvas.removeAttribute("style"),this.resizeImg=null)},this.setup=function(o,c){if(this.resizeImg=o,!this.resizeCanvas.getContext)return!1;r=!0,this.resizeCanvas.width=e(this.resizeImg).width()+10,this.resizeCanvas.height=e(this.resizeImg).height()+10,this.resizeCanvas.style.margin="-5px",this.ctx=this.resizeCanvas.getContext("2d"),e(this.resizeImg).replaceWith(e(this.resizeCanvas)),h(this.resizeCanvas,this.ctx,this.resizeImg,this.resizeCanvas.width,this.resizeCanvas.height),e(this.resizeCanvas).resizableSafe(c).on("mousedown",t);var u=this;return e(this.resizeCanvas).on("mousemove",(function(e){var i=Math.round(e.clientX-s),t=Math.round(e.clientY-n),r=a;u.ctx.rect(u.resizeCanvas.width-10,u.resizeCanvas.height-10,9,9),r!==(a=u.ctx.isPointInPath(i,t))&&(this.style.cursor=a?"se-resize":"default")})).on("keydown",(function(e){if(u.isActive()){var i=e.keyCode;27===i?u.pressEscape(u):8!==i&&46!==i||u.pressBackspaceOrDelete(u)}})).on("focus",t).on("blur",(function(){u.reset(),null!==i&&(i.syncCode(),i.$c.trigger("tbwchange"))})),this.resizeCanvas.focus(),!0},this.refresh=function(){this.resizeCanvas.getContext&&(this.resizeCanvas.width=this.resizeCanvas.clientWidth,this.resizeCanvas.height=this.resizeCanvas.clientHeight,h(this.resizeCanvas,this.ctx,this.resizeImg,this.resizeCanvas.width,this.resizeCanvas.height))}};e.extend(!0,e.trumbowyg,{plugins:{resizimg:{destroyResizable:function(){},init:function(n){var r=this.destroyResizable,a=new s(n);function o(){n.$ed.find("img").off("click").on("click",(function(e){a.isActive()&&a.reset(),a.setup(this,n.o.plugins.resizimg.resizable),t(e)}))}this.destroyResizable=function(){n.$ed.find("canvas.resizable").resizableSafe("destroy").off("mousedown",t).removeClass("resizable"),a.reset(),n.syncCode()},n.o.plugins.resizimg=e.extend(!0,{},i,n.o.plugins.resizimg||{},{resizable:{resizeWidth:!1,onDragStart:function(e,i){var t=n.o.plugins.resizimg,s=e.pageX-i.offset().left,r=e.pageY-i.offset().top;if(s<i.width()-t.minSize||r<i.height()-t.minSize)return!1},onDrag:function(e,i,t,s){var r=n.o.plugins.resizimg;return s<r.minSize&&(s=r.minSize),s-=s%r.step,i.height(s),!1},onDragEnd:function(){a.refresh(),n.syncCode()}}}),n.$c.on("tbwinit",(function(){o(),n.$ed.on("click",(function(i){e(i.target).is("img")||i.target.id===a.canvasId()||(t(i),a.reset(),n.syncCode(),n.$c.trigger("tbwchange"))})),n.$ed.on("scroll",(function(){a.reCalcOffset()}))})),n.$c.on("tbwfocus tbwchange",o),n.$c.on("tbwresize",(function(){a.reCalcOffset()})),n.$c.on("tbwblur",(function(){a.isFocusedNow()?a.blurNow():r()}))},destroy:function(){this.destroyResizable()}}}})}(jQuery);
1
+ !function(e){"use strict";var i={minSize:32,step:4};function t(e){e.stopPropagation(),e.preventDefault()}var s=function(i){this.resizeCanvas=document.createElement("canvas"),this.resizeCanvas.setAttribute("tabindex","0"),this.resizeCanvas.id="trumbowyg-resizimg-"+ +new Date,this.ctx=null,this.resizeImg=null,this.pressEscape=function(e){e.reset()},this.pressBackspaceOrDelete=function(t){e(t.resizeCanvas).remove(),t.resizeImg=null,null!==i&&(i.syncCode(),i.$c.trigger("tbwchange"))};var s,n,r=!1,a=!1,o=function(e){var i=e.getBoundingClientRect();s=i.left,n=i.top},h=function(e,i,t,s,n){return i.translate(.5,.5),i.lineWidth=1,i.drawImage(t,5,5,s-10,n-10),i.beginPath(),i.rect(5,5,s-10,n-10),i.stroke(),i.beginPath(),i.fillStyle="rgb(255, 255, 255)",i.rect(s-10,n-10,9,9),i.fill(),i.stroke(),o(e),i};
2
+ // necessary to correctly print cursor over square. Called once for instance. Useless with trumbowyg.
3
+ this.init=function(){var i=this;e(window).on("scroll resize",(function(){i.reCalcOffset()}))},this.reCalcOffset=function(){o(this.resizeCanvas)},this.canvasId=function(){return this.resizeCanvas.id},this.isActive=function(){return null!==this.resizeImg},this.isFocusedNow=function(){return r},this.blurNow=function(){r=!1},this.reset=function(){null!==this.resizeImg&&(this.resizeImg.setAttribute("style","width: 100%; max-width: "+(this.resizeCanvas.clientWidth-10)+"px; height: auto; max-height: "+(this.resizeCanvas.clientHeight-10)+"px;"),e(this.resizeCanvas).replaceWith(e(this.resizeImg)),this.resizeCanvas.removeAttribute("style"),this.resizeImg=null)},this.setup=function(o,c){if(this.resizeImg=o,!this.resizeCanvas.getContext)return!1;r=!0,this.resizeCanvas.width=e(this.resizeImg).width()+10,this.resizeCanvas.height=e(this.resizeImg).height()+10,this.resizeCanvas.style.margin="-5px",this.ctx=this.resizeCanvas.getContext("2d"),e(this.resizeImg).replaceWith(e(this.resizeCanvas)),h(this.resizeCanvas,this.ctx,this.resizeImg,this.resizeCanvas.width,this.resizeCanvas.height),e(this.resizeCanvas).resizableSafe(c).on("mousedown",t);var u=this;return e(this.resizeCanvas).on("mousemove",(function(e){var i=Math.round(e.clientX-s),t=Math.round(e.clientY-n),r=a;u.ctx.rect(u.resizeCanvas.width-10,u.resizeCanvas.height-10,9,9),r!==(a=u.ctx.isPointInPath(i,t))&&(this.style.cursor=a?"se-resize":"default")})).on("keydown",(function(e){if(u.isActive()){var i=e.keyCode;27===i?u.pressEscape(u):8!==i&&46!==i||u.pressBackspaceOrDelete(u)}})).on("focus",t).on("blur",(function(){u.reset(),null!==i&&(i.syncCode(),i.$c.trigger("tbwchange"))})),this.resizeCanvas.focus(),!0},this.refresh=function(){this.resizeCanvas.getContext&&(this.resizeCanvas.width=this.resizeCanvas.clientWidth,this.resizeCanvas.height=this.resizeCanvas.clientHeight,h(this.resizeCanvas,this.ctx,this.resizeImg,this.resizeCanvas.width,this.resizeCanvas.height))}};e.extend(!0,e.trumbowyg,{plugins:{resizimg:{destroyResizable:function(){},init:function(n){var r=this.destroyResizable,a=new s(n);function o(){n.$ed.find("img").off("click").on("click",(function(e){a.isActive()&&a.reset(),a.setup(this,n.o.plugins.resizimg.resizable),t(e)}))}this.destroyResizable=function(){n.$ed.find("canvas.resizable").resizableSafe("destroy").off("mousedown",t).removeClass("resizable"),a.reset(),n.syncCode()},n.o.plugins.resizimg=e.extend(!0,{},i,n.o.plugins.resizimg||{},{resizable:{resizeWidth:!1,onDragStart:function(e,i){var t=n.o.plugins.resizimg,s=e.pageX-i.offset().left,r=e.pageY-i.offset().top;if(s<i.width()-t.minSize||r<i.height()-t.minSize)return!1},onDrag:function(e,i,t,s){var r=n.o.plugins.resizimg;return s<r.minSize&&(s=r.minSize),s-=s%r.step,i.height(s),!1},onDragEnd:function(){a.refresh(),n.syncCode()}}}),n.$c.on("tbwinit",(function(){o(),n.$ed.on("click",(function(i){e(i.target).is("img")||i.target.id===a.canvasId()||(t(i),a.reset(),n.syncCode(),n.$c.trigger("tbwchange"))})),n.$ed.on("scroll",(function(){a.reCalcOffset()}))})),n.$c.on("tbwfocus tbwchange",o),n.$c.on("tbwresize",(function(){a.reCalcOffset()})),n.$c.on("tbwblur",(function(){a.isFocusedNow()?a.blurNow():r()}))},destroy:function(){this.destroyResizable()}}}})}(jQuery);
@@ -19,11 +19,26 @@
19
19
  rubyModal: 'Ruby modal',
20
20
  rubyText: 'Ruby text'
21
21
  },
22
+ az: {
23
+ ruby: 'Ruby mətni əlavə et',
24
+ rubyModal: 'Ruby modal',
25
+ rubyText: 'Ruby mətni'
26
+ },
27
+ by: {
28
+ ruby: 'Уставіць ruby тэкст',
29
+ rubyModal: 'Ruby анатацыя',
30
+ rubyText: 'Ruby тэкст'
31
+ },
22
32
  da: {
23
33
  ruby: 'Tilføj ruby tekst',
24
34
  rubyModal: 'Ruby modal',
25
35
  rubyText: 'Ruby tekst'
26
36
  },
37
+ de: {
38
+ ruby: 'Ruby-Text einfügen',
39
+ rubyModal: 'Ruby-Modal',
40
+ rubyText: 'Ruby-Text'
41
+ },
27
42
  et: {
28
43
  ruby: 'Lisa ruby tekst',
29
44
  rubyModal: 'Ruby modaal',
@@ -54,6 +69,11 @@
54
69
  rubyModal: 'Modal ruby',
55
70
  rubyText: 'Texto ruby'
56
71
  },
72
+ ru: {
73
+ ruby: 'Вставить ruby текст',
74
+ rubyModal: 'Ruby аннотация',
75
+ rubyText: 'Ruby текст'
76
+ },
57
77
  tr: {
58
78
  ruby: 'Ruby metni ekle',
59
79
  rubyModal: 'Ruby modal',
@@ -1 +1,10 @@
1
- !function(u){"use strict";u.extend(!0,u.trumbowyg,{langs:{en:{ruby:"Add ruby text",rubyModal:"Ruby modal",rubyText:"Ruby text"},da:{ruby:"Tilføj ruby tekst",rubyModal:"Ruby modal",rubyText:"Ruby tekst"},et:{ruby:"Lisa ruby tekst",rubyModal:"Ruby modaal",rubyText:"Ruby tekst"},fr:{ruby:"Ajouter du texte ruby",rubyModal:"Modale ruby",rubyText:"Texte ruby"},hu:{ruby:"Ruby szöveg hozzáadás",rubyModal:"Ruby modal",rubyText:"Ruby szöveg"},id:{ruby:"Sisipkan teks ruby",rubyModal:"Modal teks ruby",rubyText:"Teks ruby"},ko:{ruby:"루비 문자 넣기",rubyModal:"대상 문자",rubyText:"루비 문자"},pt_br:{ruby:"Adicionar texto ruby",rubyModal:"Modal ruby",rubyText:"Texto ruby"},tr:{ruby:"Ruby metni ekle",rubyModal:"Ruby modal",rubyText:"Ruby metni"},zh_tw:{ruby:"加入 ruby 文字",rubyModal:"Ruby 彈跳視窗",rubyText:"Ruby 文字"}},plugins:{ruby:{init:function(r){var b={fn:function(){r.saveRange(),r.openModalInsert(r.lang.ruby,{rubyText:{label:r.lang.rubyText,required:!1},modal:{label:r.lang.rubyModal,value:r.getRangeText(),required:!0}},(function(b){var e=u('<ruby title="'+b.rubyText+'">'+b.modal+"<rp> (</rp><rt>"+b.rubyText+"</rt><rp>)</rp></ruby>")[0];return r.range.deleteContents(),r.range.insertNode(e),r.syncCode(),r.$c.trigger("tbwchange"),!0}))}};r.addBtnDef("ruby",b)}}}})}(jQuery);
1
+ /* ===========================================================
2
+ * trumbowyg.ruby.js v1.0
3
+ * Ruby text plugin for Trumbowyg
4
+ * http://alex-d.github.com/Trumbowyg
5
+ * ===========================================================
6
+ * Author : Fathi Anshory (0x00000F5C)
7
+ * Twitter : @fscchannl
8
+ * Comment : Since I use trumbowyg in my project and required it to insert ruby text, so I thought I can contribute a little. :D
9
+ */
10
+ !function(u){"use strict";u.extend(!0,u.trumbowyg,{langs:{en:{ruby:"Add ruby text",rubyModal:"Ruby modal",rubyText:"Ruby text"},az:{ruby:"Ruby mətni əlavə et",rubyModal:"Ruby modal",rubyText:"Ruby mətni"},by:{ruby:"Уставіць ruby тэкст",rubyModal:"Ruby анатацыя",rubyText:"Ruby тэкст"},da:{ruby:"Tilføj ruby tekst",rubyModal:"Ruby modal",rubyText:"Ruby tekst"},de:{ruby:"Ruby-Text einfügen",rubyModal:"Ruby-Modal",rubyText:"Ruby-Text"},et:{ruby:"Lisa ruby tekst",rubyModal:"Ruby modaal",rubyText:"Ruby tekst"},fr:{ruby:"Ajouter du texte ruby",rubyModal:"Modale ruby",rubyText:"Texte ruby"},hu:{ruby:"Ruby szöveg hozzáadás",rubyModal:"Ruby modal",rubyText:"Ruby szöveg"},id:{ruby:"Sisipkan teks ruby",rubyModal:"Modal teks ruby",rubyText:"Teks ruby"},ko:{ruby:"루비 문자 넣기",rubyModal:"대상 문자",rubyText:"루비 문자"},pt_br:{ruby:"Adicionar texto ruby",rubyModal:"Modal ruby",rubyText:"Texto ruby"},ru:{ruby:"Вставить ruby текст",rubyModal:"Ruby аннотация",rubyText:"Ruby текст"},tr:{ruby:"Ruby metni ekle",rubyModal:"Ruby modal",rubyText:"Ruby metni"},zh_tw:{ruby:"加入 ruby 文字",rubyModal:"Ruby 彈跳視窗",rubyText:"Ruby 文字"}},plugins:{ruby:{init:function(b){var r={fn:function(){b.saveRange(),b.openModalInsert(b.lang.ruby,{rubyText:{label:b.lang.rubyText,required:!1},modal:{label:b.lang.rubyModal,value:b.getRangeText(),required:!0}},(function(r){var y=u('<ruby title="'+r.rubyText+'">'+r.modal+"<rp> (</rp><rt>"+r.rubyText+"</rt><rp>)</rp></ruby>")[0];return b.range.deleteContents(),b.range.insertNode(y),b.syncCode(),b.$c.trigger("tbwchange"),!0}))}};b.addBtnDef("ruby",r)}}}})}(jQuery);
@@ -28,6 +28,15 @@
28
28
  en: {
29
29
  specialChars: 'Special characters'
30
30
  },
31
+ az: {
32
+ specialChars: 'Xüsusi simvollar'
33
+ },
34
+ by: {
35
+ specialChars: 'Спецыяльныя сімвалы'
36
+ },
37
+ de: {
38
+ specialChars: 'Spezialzeichen'
39
+ },
31
40
  et: {
32
41
  specialChars: 'Erimärgid'
33
42
  },
@@ -40,6 +49,15 @@
40
49
  ko: {
41
50
  specialChars: '특수문자'
42
51
  },
52
+ ru: {
53
+ specialChars: 'Специальные символы'
54
+ },
55
+ sl: {
56
+ specialChars: 'Posebni znaki'
57
+ },
58
+ tr: {
59
+ specialChars: 'Özel karakterler'
60
+ },
43
61
  },
44
62
  plugins: {
45
63
  specialchars: {
@@ -1 +1,8 @@
1
- !function(a){"use strict";var s={symbolList:["0024","20AC","00A3","00A2","00A5","00A4","2030",null,"00A9","00AE","2122",null,"00A7","00B6","00C6","00E6","0152","0153",null,"2022","25CF","2023","25B6","2B29","25C6",null,"00B1","00D7","00F7","21D2","21D4","220F","2211","2243","2264","2265"]};function e(s){var e=[];return a.each(s.o.plugins.specialchars.symbolList,(function(a,r){var n="symbol-"+(r=null===r?"&nbsp":"&#x"+r).replace(/:/g,""),i={text:r,hasIcon:!1,fn:function(){var a=String.fromCodePoint(parseInt(r.replace("&#","0")));return s.execCmd("insertText",a),!0}};s.addBtnDef(n,i),e.push(n)})),e}a.extend(!0,a.trumbowyg,{langs:{en:{specialChars:"Special characters"},et:{specialChars:"Erimärgid"},fr:{specialChars:"Caractères spéciaux"},hu:{specialChars:"Speciális karakterek"},ko:{specialChars:"특수문자"}},plugins:{specialchars:{init:function(a){a.o.plugins.specialchars=a.o.plugins.specialchars||s;var r={dropdown:e(a)};a.addBtnDef("specialChars",r)}}}})}(jQuery);
1
+ /* ===========================================================
2
+ * trumbowyg.specialchars.js v0.99
3
+ * Unicode characters picker plugin for Trumbowyg
4
+ * http://alex-d.github.com/Trumbowyg
5
+ * ===========================================================
6
+ * Author : Renaud Hoyoux (geektortoise)
7
+ */
8
+ !function(a){"use strict";var s={symbolList:["0024","20AC","00A3","00A2","00A5","00A4","2030",null,"00A9","00AE","2122",null,"00A7","00B6","00C6","00E6","0152","0153",null,"2022","25CF","2023","25B6","2B29","25C6",null,"00B1","00D7","00F7","21D2","21D4","220F","2211","2243","2264","2265"]};function e(s){var e=[];return a.each(s.o.plugins.specialchars.symbolList,(function(a,r){var i="symbol-"+(r=null===r?"&nbsp":"&#x"+r).replace(/:/g,""),l={text:r,hasIcon:!1,fn:function(){var a=String.fromCodePoint(parseInt(r.replace("&#","0")));return s.execCmd("insertText",a),!0}};s.addBtnDef(i,l),e.push(i)})),e}a.extend(!0,a.trumbowyg,{langs:{en:{specialChars:"Special characters"},az:{specialChars:"Xüsusi simvollar"},by:{specialChars:"Спецыяльныя сімвалы"},de:{specialChars:"Spezialzeichen"},et:{specialChars:"Erimärgid"},fr:{specialChars:"Caractères spéciaux"},hu:{specialChars:"Speciális karakterek"},ko:{specialChars:"특수문자"},ru:{specialChars:"Специальные символы"},sl:{specialChars:"Posebni znaki"},tr:{specialChars:"Özel karakterler"}},plugins:{specialchars:{init:function(a){a.o.plugins.specialchars=a.o.plugins.specialchars||s;var r={dropdown:e(a)};a.addBtnDef("specialChars",r)}}}})}(jQuery);
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Trumbowyg v2.25.1 - A lightweight WYSIWYG editor
3
- * Default stylesheet for Trumbowyg editor plugin
2
+ * Trumbowyg v2.31.0 - A lightweight WYSIWYG editor
3
+ * Trumbowyg plugin stylesheet
4
4
  * ------------------------
5
- * @link http://alex-d.github.io/Trumbowyg
5
+ * @link https://alex-d.github.io/Trumbowyg/
6
6
  * @license MIT
7
7
  * @author Alexandre Demode (Alex-D)
8
8
  * Twitter : @AlexandreDemode
@@ -1,8 +1,8 @@
1
1
  /**
2
- * Trumbowyg v2.25.1 - A lightweight WYSIWYG editor
2
+ * Trumbowyg v2.31.0 - A lightweight WYSIWYG editor
3
3
  * Trumbowyg plugin stylesheet
4
4
  * ------------------------
5
- * @link http://alex-d.github.io/Trumbowyg
5
+ * @link https://alex-d.github.io/Trumbowyg/
6
6
  * @license MIT
7
7
  * @author Alexandre Demode (Alex-D)
8
8
  * Twitter : @AlexandreDemode
@@ -10,14 +10,17 @@
10
10
  */
11
11
 
12
12
  .trumbowyg-symbol-\&nbsp-dropdown-button {
13
- display: none !important; }
13
+ display: none !important;
14
+ }
14
15
 
15
16
  .trumbowyg-symbol-\&nbsp-dropdown-button + button {
16
- clear: both; }
17
+ clear: both;
18
+ }
17
19
 
18
20
  .trumbowyg-dropdown-specialChars {
19
21
  width: 248px;
20
- padding: 5px 3px 3px; }
22
+ padding: 5px 3px 3px;
23
+ }
21
24
 
22
25
  .trumbowyg-dropdown-specialChars button {
23
26
  display: block;
@@ -28,21 +31,24 @@
28
31
  padding: 0;
29
32
  margin: 2px;
30
33
  line-height: 24px;
31
- text-align: center; }
32
- .trumbowyg-dropdown-specialChars button:hover::after, .trumbowyg-dropdown-specialChars button:focus::after {
33
- display: block;
34
- position: absolute;
35
- top: -5px;
36
- left: -5px;
37
- height: 27px;
38
- width: 27px;
39
- background: inherit;
40
- -webkit-box-shadow: #000 0 0 2px;
41
- box-shadow: #000 0 0 2px;
42
- z-index: 10;
43
- background-color: transparent; }
34
+ text-align: center;
35
+ }
36
+ .trumbowyg-dropdown-specialChars button:hover::after, .trumbowyg-dropdown-specialChars button:focus::after {
37
+ display: block;
38
+ position: absolute;
39
+ top: -5px;
40
+ left: -5px;
41
+ height: 27px;
42
+ width: 27px;
43
+ background: inherit;
44
+ -webkit-box-shadow: #000 0 0 2px;
45
+ box-shadow: #000 0 0 2px;
46
+ z-index: 10;
47
+ background-color: transparent;
48
+ }
44
49
 
45
50
  .trumbowyg .specialChars {
46
51
  width: 22px;
47
52
  height: 22px;
48
- display: inline-block; }
53
+ display: inline-block;
54
+ }
@@ -1,2 +1,2 @@
1
- /** Trumbowyg v2.25.1 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
1
+ /** Trumbowyg v2.31.0 - A lightweight WYSIWYG editor - alex-d.github.io/Trumbowyg/ - License MIT - Author : Alexandre Demode (Alex-D) / alex-d.fr */
2
2
  .trumbowyg-symbol-\&nbsp-dropdown-button{display:none!important}.trumbowyg-symbol-\&nbsp-dropdown-button+button{clear:both}.trumbowyg-dropdown-specialChars{width:248px;padding:5px 3px 3px}.trumbowyg-dropdown-specialChars button{display:block;position:relative;float:left;height:26px;width:26px;padding:0;margin:2px;line-height:24px;text-align:center}.trumbowyg-dropdown-specialChars button:focus::after,.trumbowyg-dropdown-specialChars button:hover::after{display:block;position:absolute;top:-5px;left:-5px;height:27px;width:27px;background:inherit;-webkit-box-shadow:#000 0 0 2px;box-shadow:#000 0 0 2px;z-index:10;background-color:transparent}.trumbowyg .specialChars{width:22px;height:22px;display:inline-block}