@ckeditor/ckeditor5-code-block 48.8.1-alpha.3 → 49.0.0-alpha.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 (166) hide show
  1. package/dist/augmentation.d.ts +23 -23
  2. package/dist/codeblock.d.ts +28 -28
  3. package/dist/codeblockcommand.d.ts +56 -56
  4. package/dist/codeblockconfig.d.ts +142 -142
  5. package/dist/codeblockediting.d.ts +42 -42
  6. package/dist/codeblockui.d.ts +27 -28
  7. package/dist/converters.d.ts +119 -119
  8. package/dist/indentcodeblockcommand.d.ts +28 -28
  9. package/dist/index-content.css +20 -18
  10. package/dist/index-content.css.map +1 -0
  11. package/dist/index-editor.css +23 -20
  12. package/dist/index-editor.css.map +1 -0
  13. package/dist/index.css +14 -13
  14. package/dist/index.css.map +1 -1
  15. package/dist/index.d.ts +17 -15
  16. package/dist/index.js +1141 -1426
  17. package/dist/index.js.map +1 -1
  18. package/dist/outdentcodeblockcommand.d.ts +29 -29
  19. package/dist/translations/af.js +1 -1
  20. package/dist/translations/af.umd.js +5 -3
  21. package/dist/translations/ar.js +1 -1
  22. package/dist/translations/ar.umd.js +5 -3
  23. package/dist/translations/ast.js +1 -1
  24. package/dist/translations/ast.umd.js +5 -3
  25. package/dist/translations/az.js +1 -1
  26. package/dist/translations/az.umd.js +5 -3
  27. package/dist/translations/be.js +1 -1
  28. package/dist/translations/be.umd.js +5 -3
  29. package/dist/translations/bg.js +1 -1
  30. package/dist/translations/bg.umd.js +5 -3
  31. package/dist/translations/bn.js +1 -1
  32. package/dist/translations/bn.umd.js +5 -3
  33. package/dist/translations/bs.js +1 -1
  34. package/dist/translations/bs.umd.js +5 -3
  35. package/dist/translations/ca.js +1 -1
  36. package/dist/translations/ca.umd.js +5 -3
  37. package/dist/translations/cs.js +1 -1
  38. package/dist/translations/cs.umd.js +5 -3
  39. package/dist/translations/da.js +1 -1
  40. package/dist/translations/da.umd.js +5 -3
  41. package/dist/translations/de-ch.js +1 -1
  42. package/dist/translations/de-ch.umd.js +5 -3
  43. package/dist/translations/de.js +1 -1
  44. package/dist/translations/de.umd.js +5 -3
  45. package/dist/translations/el.js +1 -1
  46. package/dist/translations/el.umd.js +5 -3
  47. package/dist/translations/en-au.js +1 -1
  48. package/dist/translations/en-au.umd.js +5 -3
  49. package/dist/translations/en-gb.js +1 -1
  50. package/dist/translations/en-gb.umd.js +5 -3
  51. package/dist/translations/en.js +1 -1
  52. package/dist/translations/en.umd.js +5 -3
  53. package/dist/translations/eo.js +1 -1
  54. package/dist/translations/eo.umd.js +5 -3
  55. package/dist/translations/es-co.js +1 -1
  56. package/dist/translations/es-co.umd.js +5 -3
  57. package/dist/translations/es.js +1 -1
  58. package/dist/translations/es.umd.js +5 -3
  59. package/dist/translations/et.js +1 -1
  60. package/dist/translations/et.umd.js +5 -3
  61. package/dist/translations/eu.js +1 -1
  62. package/dist/translations/eu.umd.js +5 -3
  63. package/dist/translations/fa.js +1 -1
  64. package/dist/translations/fa.umd.js +5 -3
  65. package/dist/translations/fi.js +1 -1
  66. package/dist/translations/fi.umd.js +5 -3
  67. package/dist/translations/fr.js +1 -1
  68. package/dist/translations/fr.umd.js +5 -3
  69. package/dist/translations/gl.js +1 -1
  70. package/dist/translations/gl.umd.js +5 -3
  71. package/dist/translations/gu.js +1 -1
  72. package/dist/translations/gu.umd.js +5 -3
  73. package/dist/translations/he.js +1 -1
  74. package/dist/translations/he.umd.js +5 -3
  75. package/dist/translations/hi.js +1 -1
  76. package/dist/translations/hi.umd.js +5 -3
  77. package/dist/translations/hr.js +1 -1
  78. package/dist/translations/hr.umd.js +5 -3
  79. package/dist/translations/hu.js +1 -1
  80. package/dist/translations/hu.umd.js +5 -3
  81. package/dist/translations/hy.js +1 -1
  82. package/dist/translations/hy.umd.js +5 -3
  83. package/dist/translations/id.js +1 -1
  84. package/dist/translations/id.umd.js +5 -3
  85. package/dist/translations/it.js +1 -1
  86. package/dist/translations/it.umd.js +5 -3
  87. package/dist/translations/ja.js +1 -1
  88. package/dist/translations/ja.umd.js +5 -3
  89. package/dist/translations/jv.js +1 -1
  90. package/dist/translations/jv.umd.js +5 -3
  91. package/dist/translations/kk.js +1 -1
  92. package/dist/translations/kk.umd.js +5 -3
  93. package/dist/translations/km.js +1 -1
  94. package/dist/translations/km.umd.js +5 -3
  95. package/dist/translations/kn.js +1 -1
  96. package/dist/translations/kn.umd.js +5 -3
  97. package/dist/translations/ko.js +1 -1
  98. package/dist/translations/ko.umd.js +5 -3
  99. package/dist/translations/ku.js +1 -1
  100. package/dist/translations/ku.umd.js +5 -3
  101. package/dist/translations/lt.js +1 -1
  102. package/dist/translations/lt.umd.js +5 -3
  103. package/dist/translations/lv.js +1 -1
  104. package/dist/translations/lv.umd.js +5 -3
  105. package/dist/translations/ms.js +1 -1
  106. package/dist/translations/ms.umd.js +5 -3
  107. package/dist/translations/nb.js +1 -1
  108. package/dist/translations/nb.umd.js +5 -3
  109. package/dist/translations/ne.js +1 -1
  110. package/dist/translations/ne.umd.js +5 -3
  111. package/dist/translations/nl.js +1 -1
  112. package/dist/translations/nl.umd.js +5 -3
  113. package/dist/translations/no.js +1 -1
  114. package/dist/translations/no.umd.js +5 -3
  115. package/dist/translations/oc.js +1 -1
  116. package/dist/translations/oc.umd.js +5 -3
  117. package/dist/translations/pl.js +1 -1
  118. package/dist/translations/pl.umd.js +5 -3
  119. package/dist/translations/pt-br.js +1 -1
  120. package/dist/translations/pt-br.umd.js +5 -3
  121. package/dist/translations/pt.js +1 -1
  122. package/dist/translations/pt.umd.js +5 -3
  123. package/dist/translations/ro.js +1 -1
  124. package/dist/translations/ro.umd.js +5 -3
  125. package/dist/translations/ru.js +1 -1
  126. package/dist/translations/ru.umd.js +5 -3
  127. package/dist/translations/si.js +1 -1
  128. package/dist/translations/si.umd.js +5 -3
  129. package/dist/translations/sk.js +1 -1
  130. package/dist/translations/sk.umd.js +5 -3
  131. package/dist/translations/sl.js +1 -1
  132. package/dist/translations/sl.umd.js +5 -3
  133. package/dist/translations/sq.js +1 -1
  134. package/dist/translations/sq.umd.js +5 -3
  135. package/dist/translations/sr-latn.js +1 -1
  136. package/dist/translations/sr-latn.umd.js +5 -3
  137. package/dist/translations/sr.js +1 -1
  138. package/dist/translations/sr.umd.js +5 -3
  139. package/dist/translations/sv.js +1 -1
  140. package/dist/translations/sv.umd.js +5 -3
  141. package/dist/translations/th.js +1 -1
  142. package/dist/translations/th.umd.js +5 -3
  143. package/dist/translations/ti.js +1 -1
  144. package/dist/translations/ti.umd.js +5 -3
  145. package/dist/translations/tk.js +1 -1
  146. package/dist/translations/tk.umd.js +5 -3
  147. package/dist/translations/tr.js +1 -1
  148. package/dist/translations/tr.umd.js +5 -3
  149. package/dist/translations/tt.js +1 -1
  150. package/dist/translations/tt.umd.js +5 -3
  151. package/dist/translations/ug.js +1 -1
  152. package/dist/translations/ug.umd.js +5 -3
  153. package/dist/translations/uk.js +1 -1
  154. package/dist/translations/uk.umd.js +5 -3
  155. package/dist/translations/ur.js +1 -1
  156. package/dist/translations/ur.umd.js +5 -3
  157. package/dist/translations/uz.js +1 -1
  158. package/dist/translations/uz.umd.js +5 -3
  159. package/dist/translations/vi.js +1 -1
  160. package/dist/translations/vi.umd.js +5 -3
  161. package/dist/translations/zh-cn.js +1 -1
  162. package/dist/translations/zh-cn.umd.js +5 -3
  163. package/dist/translations/zh.js +1 -1
  164. package/dist/translations/zh.umd.js +5 -3
  165. package/dist/utils.d.ts +174 -174
  166. package/package.json +8 -8
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"ug":{"dictionary":{"Insert code block":"كود بۆلىكى قىستۇر","Plain text":"ساپ تېكىست","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""},getPluralForm(n){return 0;}}}
5
+ export default {"ug":{"dictionary":{"Insert code block":"كود بۆلىكى قىستۇر","Plain text":"ساپ تېكىست","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'ug' ]: { dictionary, getPluralForm } } = {"ug":{"dictionary":{"Insert code block":"كود بۆلىكى قىستۇر","Plain text":"ساپ تېكىست","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""},getPluralForm(n){return 0;}}};
7
+ const { [ 'ug' ]: translations } = {"ug":{"dictionary":{"Insert code block":"كود بۆلىكى قىستۇر","Plain text":"ساپ تېكىست","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""}}};
8
8
  e[ 'ug' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'ug' ].dictionary = Object.assign( e[ 'ug' ].dictionary, dictionary );
10
- e[ 'ug' ].getPluralForm = getPluralForm;
9
+ e[ 'ug' ].dictionary = Object.assign( e[ 'ug' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'ug' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"uk":{"dictionary":{"Insert code block":"Вставте блок коду","Plain text":"Простий текст","Leaving %0 code snippet":"Вихід з фрагменту коду %0","Entering %0 code snippet":"Вхід у фрагмент коду %0","Entering code snippet":"Вхід у фрагмент коду","Leaving code snippet":"Вихід з фрагменту коду","Code block":"Блок коду"},getPluralForm(n){return (n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);}}}
5
+ export default {"uk":{"dictionary":{"Insert code block":"Вставте блок коду","Plain text":"Простий текст","Leaving %0 code snippet":"Вихід з фрагменту коду %0","Entering %0 code snippet":"Вхід у фрагмент коду %0","Entering code snippet":"Вхід у фрагмент коду","Leaving code snippet":"Вихід з фрагменту коду","Code block":"Блок коду"}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'uk' ]: { dictionary, getPluralForm } } = {"uk":{"dictionary":{"Insert code block":"Вставте блок коду","Plain text":"Простий текст","Leaving %0 code snippet":"Вихід з фрагменту коду %0","Entering %0 code snippet":"Вхід у фрагмент коду %0","Entering code snippet":"Вхід у фрагмент коду","Leaving code snippet":"Вихід з фрагменту коду","Code block":"Блок коду"},getPluralForm(n){return (n % 10 == 1 && n % 100 != 11 ? 0 : n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 10 || n % 100 >= 20) ? 1 : 2);}}};
7
+ const { [ 'uk' ]: translations } = {"uk":{"dictionary":{"Insert code block":"Вставте блок коду","Plain text":"Простий текст","Leaving %0 code snippet":"Вихід з фрагменту коду %0","Entering %0 code snippet":"Вхід у фрагмент коду %0","Entering code snippet":"Вхід у фрагмент коду","Leaving code snippet":"Вихід з фрагменту коду","Code block":"Блок коду"}}};
8
8
  e[ 'uk' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'uk' ].dictionary = Object.assign( e[ 'uk' ].dictionary, dictionary );
10
- e[ 'uk' ].getPluralForm = getPluralForm;
9
+ e[ 'uk' ].dictionary = Object.assign( e[ 'uk' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'uk' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"ur":{"dictionary":{"Insert code block":"کوڈ خانہ نصب کیرں","Plain text":"سادہ متن","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""},getPluralForm(n){return (n != 1);}}}
5
+ export default {"ur":{"dictionary":{"Insert code block":"کوڈ خانہ نصب کیرں","Plain text":"سادہ متن","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'ur' ]: { dictionary, getPluralForm } } = {"ur":{"dictionary":{"Insert code block":"کوڈ خانہ نصب کیرں","Plain text":"سادہ متن","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""},getPluralForm(n){return (n != 1);}}};
7
+ const { [ 'ur' ]: translations } = {"ur":{"dictionary":{"Insert code block":"کوڈ خانہ نصب کیرں","Plain text":"سادہ متن","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""}}};
8
8
  e[ 'ur' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'ur' ].dictionary = Object.assign( e[ 'ur' ].dictionary, dictionary );
10
- e[ 'ur' ].getPluralForm = getPluralForm;
9
+ e[ 'ur' ].dictionary = Object.assign( e[ 'ur' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'ur' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"uz":{"dictionary":{"Insert code block":"Kodni kiritish","Plain text":"Oddiy matn","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""},getPluralForm(n){return (n > 1);}}}
5
+ export default {"uz":{"dictionary":{"Insert code block":"Kodni kiritish","Plain text":"Oddiy matn","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'uz' ]: { dictionary, getPluralForm } } = {"uz":{"dictionary":{"Insert code block":"Kodni kiritish","Plain text":"Oddiy matn","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""},getPluralForm(n){return (n > 1);}}};
7
+ const { [ 'uz' ]: translations } = {"uz":{"dictionary":{"Insert code block":"Kodni kiritish","Plain text":"Oddiy matn","Leaving %0 code snippet":"","Entering %0 code snippet":"","Entering code snippet":"","Leaving code snippet":"","Code block":""}}};
8
8
  e[ 'uz' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'uz' ].dictionary = Object.assign( e[ 'uz' ].dictionary, dictionary );
10
- e[ 'uz' ].getPluralForm = getPluralForm;
9
+ e[ 'uz' ].dictionary = Object.assign( e[ 'uz' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'uz' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"vi":{"dictionary":{"Insert code block":"Chèn khối mã","Plain text":"Văn bản thuần","Leaving %0 code snippet":"Đang rời khỏi đoạn mã snippet %0","Entering %0 code snippet":"Đang nhập đoạn mã snippet %0","Entering code snippet":"Đang nhập đoạn mã snippet","Leaving code snippet":"Đang rời khỏi đoạn mã snippet","Code block":"Khối mã"},getPluralForm(n){return 0;}}}
5
+ export default {"vi":{"dictionary":{"Insert code block":"Chèn khối mã","Plain text":"Văn bản thuần","Leaving %0 code snippet":"Đang rời khỏi đoạn mã snippet %0","Entering %0 code snippet":"Đang nhập đoạn mã snippet %0","Entering code snippet":"Đang nhập đoạn mã snippet","Leaving code snippet":"Đang rời khỏi đoạn mã snippet","Code block":"Khối mã"}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'vi' ]: { dictionary, getPluralForm } } = {"vi":{"dictionary":{"Insert code block":"Chèn khối mã","Plain text":"Văn bản thuần","Leaving %0 code snippet":"Đang rời khỏi đoạn mã snippet %0","Entering %0 code snippet":"Đang nhập đoạn mã snippet %0","Entering code snippet":"Đang nhập đoạn mã snippet","Leaving code snippet":"Đang rời khỏi đoạn mã snippet","Code block":"Khối mã"},getPluralForm(n){return 0;}}};
7
+ const { [ 'vi' ]: translations } = {"vi":{"dictionary":{"Insert code block":"Chèn khối mã","Plain text":"Văn bản thuần","Leaving %0 code snippet":"Đang rời khỏi đoạn mã snippet %0","Entering %0 code snippet":"Đang nhập đoạn mã snippet %0","Entering code snippet":"Đang nhập đoạn mã snippet","Leaving code snippet":"Đang rời khỏi đoạn mã snippet","Code block":"Khối mã"}}};
8
8
  e[ 'vi' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'vi' ].dictionary = Object.assign( e[ 'vi' ].dictionary, dictionary );
10
- e[ 'vi' ].getPluralForm = getPluralForm;
9
+ e[ 'vi' ].dictionary = Object.assign( e[ 'vi' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'vi' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"zh-cn":{"dictionary":{"Insert code block":"插入代码块","Plain text":"纯文本","Leaving %0 code snippet":"正在退出 %0 代码片段","Entering %0 code snippet":"正在输入 %0 代码片段","Entering code snippet":"正在输入代码片段","Leaving code snippet":"正在退出代码片段","Code block":"代码块"},getPluralForm(n){return 0;}}}
5
+ export default {"zh-cn":{"dictionary":{"Insert code block":"插入代码块","Plain text":"纯文本","Leaving %0 code snippet":"正在退出 %0 代码片段","Entering %0 code snippet":"正在输入 %0 代码片段","Entering code snippet":"正在输入代码片段","Leaving code snippet":"正在退出代码片段","Code block":"代码块"}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'zh-cn' ]: { dictionary, getPluralForm } } = {"zh-cn":{"dictionary":{"Insert code block":"插入代码块","Plain text":"纯文本","Leaving %0 code snippet":"正在退出 %0 代码片段","Entering %0 code snippet":"正在输入 %0 代码片段","Entering code snippet":"正在输入代码片段","Leaving code snippet":"正在退出代码片段","Code block":"代码块"},getPluralForm(n){return 0;}}};
7
+ const { [ 'zh-cn' ]: translations } = {"zh-cn":{"dictionary":{"Insert code block":"插入代码块","Plain text":"纯文本","Leaving %0 code snippet":"正在退出 %0 代码片段","Entering %0 code snippet":"正在输入 %0 代码片段","Entering code snippet":"正在输入代码片段","Leaving code snippet":"正在退出代码片段","Code block":"代码块"}}};
8
8
  e[ 'zh-cn' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'zh-cn' ].dictionary = Object.assign( e[ 'zh-cn' ].dictionary, dictionary );
10
- e[ 'zh-cn' ].getPluralForm = getPluralForm;
9
+ e[ 'zh-cn' ].dictionary = Object.assign( e[ 'zh-cn' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'zh-cn' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
@@ -2,4 +2,4 @@
2
2
  * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
3
  * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
4
  */
5
- export default {"zh":{"dictionary":{"Insert code block":"插入程式碼區塊","Plain text":"純文字","Leaving %0 code snippet":"離開 %0 程式碼片段","Entering %0 code snippet":"進入 %0 程式碼片段","Entering code snippet":"進入程式碼片段","Leaving code snippet":"離開程式碼片段","Code block":"程式碼區塊"},getPluralForm(n){return 0;}}}
5
+ export default {"zh":{"dictionary":{"Insert code block":"插入程式碼區塊","Plain text":"純文字","Leaving %0 code snippet":"離開 %0 程式碼片段","Entering %0 code snippet":"進入 %0 程式碼片段","Entering code snippet":"進入程式碼片段","Leaving code snippet":"離開程式碼片段","Code block":"程式碼區塊"}}}
@@ -4,8 +4,10 @@
4
4
  */
5
5
 
6
6
  ( e => {
7
- const { [ 'zh' ]: { dictionary, getPluralForm } } = {"zh":{"dictionary":{"Insert code block":"插入程式碼區塊","Plain text":"純文字","Leaving %0 code snippet":"離開 %0 程式碼片段","Entering %0 code snippet":"進入 %0 程式碼片段","Entering code snippet":"進入程式碼片段","Leaving code snippet":"離開程式碼片段","Code block":"程式碼區塊"},getPluralForm(n){return 0;}}};
7
+ const { [ 'zh' ]: translations } = {"zh":{"dictionary":{"Insert code block":"插入程式碼區塊","Plain text":"純文字","Leaving %0 code snippet":"離開 %0 程式碼片段","Entering %0 code snippet":"進入 %0 程式碼片段","Entering code snippet":"進入程式碼片段","Leaving code snippet":"離開程式碼片段","Code block":"程式碼區塊"}}};
8
8
  e[ 'zh' ] ||= { dictionary: {}, getPluralForm: null };
9
- e[ 'zh' ].dictionary = Object.assign( e[ 'zh' ].dictionary, dictionary );
10
- e[ 'zh' ].getPluralForm = getPluralForm;
9
+ e[ 'zh' ].dictionary = Object.assign( e[ 'zh' ].dictionary, translations.dictionary );
10
+ if ( translations.getPluralForm ) {
11
+ e[ 'zh' ].getPluralForm = translations.getPluralForm;
12
+ }
11
13
  } )( window.CKEDITOR_TRANSLATIONS ||= {} );
package/dist/utils.d.ts CHANGED
@@ -1,193 +1,193 @@
1
1
  /**
2
- * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
- * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
- */
2
+ * @license Copyright (c) 2003-2026, CKSource Holding sp. z o.o. All rights reserved.
3
+ * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
4
+ */
5
5
  /**
6
- * @module code-block/utils
7
- */
8
- import type { Editor } from '@ckeditor/ckeditor5-core';
9
- import type { CodeBlockLanguageDefinition } from './codeblockconfig.js';
10
- import type { ModelDocumentSelection, ModelElement, Model, ModelPosition, ModelSchema, ModelText, ViewUpcastWriter, ViewDocumentFragment } from '@ckeditor/ckeditor5-engine';
11
- import { type LocaleTranslate } from '@ckeditor/ckeditor5-utils';
6
+ * @module code-block/utils
7
+ */
8
+ import type { Editor } from "@ckeditor/ckeditor5-core";
9
+ import type { CodeBlockLanguageDefinition } from "./codeblockconfig.js";
10
+ import type { ModelDocumentSelection, ModelElement, Model, ModelPosition, ModelSchema, ModelText, ViewUpcastWriter, ViewDocumentFragment } from "@ckeditor/ckeditor5-engine";
11
+ import { type LocaleTranslate } from "@ckeditor/ckeditor5-utils";
12
12
  /**
13
- * Returns code block languages as defined in `config.codeBlock.languages` but processed:
14
- *
15
- * * To consider the editor localization, i.e. to display {@link module:code-block/codeblockconfig~CodeBlockLanguageDefinition}
16
- * in the correct language. There is no way to use {@link module:utils/locale~Locale#t} when the user
17
- * configuration is defined because the editor does not exist yet.
18
- * * To make sure each definition has a CSS class associated with it even if not specified
19
- * in the original configuration.
20
- *
21
- * @internal
22
- */
13
+ * Returns code block languages as defined in `config.codeBlock.languages` but processed:
14
+ *
15
+ * * To consider the editor localization, i.e. to display {@link module:code-block/codeblockconfig~CodeBlockLanguageDefinition}
16
+ * in the correct language. There is no way to use {@link module:utils/locale~Locale#t} when the user
17
+ * configuration is defined because the editor does not exist yet.
18
+ * * To make sure each definition has a CSS class associated with it even if not specified
19
+ * in the original configuration.
20
+ *
21
+ * @internal
22
+ */
23
23
  export declare function getNormalizedAndLocalizedLanguageDefinitions(editor: Editor): Array<CodeBlockLanguageDefinition>;
24
24
  /**
25
- * Returns an object associating certain language definition properties with others. For instance:
26
- *
27
- * For:
28
- *
29
- * ```ts
30
- * const definitions = {
31
- * { language: 'php', class: 'language-php', label: 'PHP' },
32
- * { language: 'javascript', class: 'js', label: 'JavaScript' },
33
- * };
34
- *
35
- * getPropertyAssociation( definitions, 'class', 'language' );
36
- * ```
37
- *
38
- * returns:
39
- *
40
- * ```ts
41
- * {
42
- * 'language-php': 'php',
43
- * 'js': 'javascript'
44
- * }
45
- * ```
46
- *
47
- * and
48
- *
49
- * ```ts
50
- * getPropertyAssociation( definitions, 'language', 'label' );
51
- * ```
52
- *
53
- * returns:
54
- *
55
- * ```ts
56
- * {
57
- * 'php': 'PHP',
58
- * 'javascript': 'JavaScript'
59
- * }
60
- * ```
61
- *
62
- * @internal
63
- */
25
+ * Returns an object associating certain language definition properties with others. For instance:
26
+ *
27
+ * For:
28
+ *
29
+ * ```ts
30
+ * const definitions = {
31
+ * { language: 'php', class: 'language-php', label: 'PHP' },
32
+ * { language: 'javascript', class: 'js', label: 'JavaScript' },
33
+ * };
34
+ *
35
+ * getPropertyAssociation( definitions, 'class', 'language' );
36
+ * ```
37
+ *
38
+ * returns:
39
+ *
40
+ * ```ts
41
+ * {
42
+ * 'language-php': 'php',
43
+ * 'js': 'javascript'
44
+ * }
45
+ * ```
46
+ *
47
+ * and
48
+ *
49
+ * ```ts
50
+ * getPropertyAssociation( definitions, 'language', 'label' );
51
+ * ```
52
+ *
53
+ * returns:
54
+ *
55
+ * ```ts
56
+ * {
57
+ * 'php': 'PHP',
58
+ * 'javascript': 'JavaScript'
59
+ * }
60
+ * ```
61
+ *
62
+ * @internal
63
+ */
64
64
  export declare function getPropertyAssociation(languageDefs: Array<CodeBlockLanguageDefinition>, key: keyof CodeBlockLanguageDefinition, value: keyof CodeBlockLanguageDefinition): Record<string, string>;
65
65
  /**
66
- * For a given model text node, it returns white spaces that precede other characters in that node.
67
- * This corresponds to the indentation part of the code block line.
68
- *
69
- * @internal
70
- */
66
+ * For a given model text node, it returns white spaces that precede other characters in that node.
67
+ * This corresponds to the indentation part of the code block line.
68
+ *
69
+ * @internal
70
+ */
71
71
  export declare function getLeadingWhiteSpaces(textNode: ModelText): string;
72
72
  /**
73
- * For plain text containing the code (a snippet), it returns a document fragment containing
74
- * view text nodes separated by `<br>` elements (in place of new line characters "\n"), for instance:
75
- *
76
- * Input:
77
- *
78
- * ```ts
79
- * "foo()\n
80
- * bar()"
81
- * ```
82
- *
83
- * Output:
84
- *
85
- * ```html
86
- * <DocumentFragment>
87
- * "foo()"
88
- * <br/>
89
- * "bar()"
90
- * </DocumentFragment>
91
- * ```
92
- *
93
- * @param text The raw code text to be converted.
94
- * @internal
95
- */
73
+ * For plain text containing the code (a snippet), it returns a document fragment containing
74
+ * view text nodes separated by `<br>` elements (in place of new line characters "\n"), for instance:
75
+ *
76
+ * Input:
77
+ *
78
+ * ```ts
79
+ * "foo()\n
80
+ * bar()"
81
+ * ```
82
+ *
83
+ * Output:
84
+ *
85
+ * ```html
86
+ * <DocumentFragment>
87
+ * "foo()"
88
+ * <br/>
89
+ * "bar()"
90
+ * </DocumentFragment>
91
+ * ```
92
+ *
93
+ * @param text The raw code text to be converted.
94
+ * @internal
95
+ */
96
96
  export declare function rawSnippetTextToViewDocumentFragment(writer: ViewUpcastWriter, text: string): ViewDocumentFragment;
97
97
  /**
98
- * Returns an array of all model positions within the selection that represent code block lines.
99
- *
100
- * If the selection is collapsed, it returns the exact selection anchor position:
101
- *
102
- * ```html
103
- * <codeBlock>[]foo</codeBlock> -> <codeBlock>^foo</codeBlock>
104
- * <codeBlock>foo[]bar</codeBlock> -> <codeBlock>foo^bar</codeBlock>
105
- * ```
106
- *
107
- * Otherwise, it returns positions **before** each text node belonging to all code blocks contained by the selection:
108
- *
109
- * ```html
110
- * <codeBlock> <codeBlock>
111
- * foo[bar ^foobar
112
- * <softBreak></softBreak> -> <softBreak></softBreak>
113
- * baz]qux ^bazqux
114
- * </codeBlock> </codeBlock>
115
- * ```
116
- *
117
- * It also works across other non–code blocks:
118
- *
119
- * ```html
120
- * <codeBlock> <codeBlock>
121
- * foo[bar ^foobar
122
- * </codeBlock> </codeBlock>
123
- * <paragraph>text</paragraph> -> <paragraph>text</paragraph>
124
- * <codeBlock> <codeBlock>
125
- * baz]qux ^bazqux
126
- * </codeBlock> </codeBlock>
127
- * ```
128
- *
129
- * **Note:** The positions are in reverse order so they do not get outdated when iterating over them and
130
- * the writer inserts or removes elements at the same time.
131
- *
132
- * **Note:** The position is located after the leading white spaces in the text node.
133
- *
134
- * @internal
135
- */
98
+ * Returns an array of all model positions within the selection that represent code block lines.
99
+ *
100
+ * If the selection is collapsed, it returns the exact selection anchor position:
101
+ *
102
+ * ```html
103
+ * <codeBlock>[]foo</codeBlock> -> <codeBlock>^foo</codeBlock>
104
+ * <codeBlock>foo[]bar</codeBlock> -> <codeBlock>foo^bar</codeBlock>
105
+ * ```
106
+ *
107
+ * Otherwise, it returns positions **before** each text node belonging to all code blocks contained by the selection:
108
+ *
109
+ * ```html
110
+ * <codeBlock> <codeBlock>
111
+ * foo[bar ^foobar
112
+ * <softBreak></softBreak> -> <softBreak></softBreak>
113
+ * baz]qux ^bazqux
114
+ * </codeBlock> </codeBlock>
115
+ * ```
116
+ *
117
+ * It also works across other non–code blocks:
118
+ *
119
+ * ```html
120
+ * <codeBlock> <codeBlock>
121
+ * foo[bar ^foobar
122
+ * </codeBlock> </codeBlock>
123
+ * <paragraph>text</paragraph> -> <paragraph>text</paragraph>
124
+ * <codeBlock> <codeBlock>
125
+ * baz]qux ^bazqux
126
+ * </codeBlock> </codeBlock>
127
+ * ```
128
+ *
129
+ * **Note:** The positions are in reverse order so they do not get outdated when iterating over them and
130
+ * the writer inserts or removes elements at the same time.
131
+ *
132
+ * **Note:** The position is located after the leading white spaces in the text node.
133
+ *
134
+ * @internal
135
+ */
136
136
  export declare function getIndentOutdentPositions(model: Model): Array<ModelPosition>;
137
137
  /**
138
- * Checks if any of the blocks within the model selection is a code block.
139
- *
140
- * @internal
141
- */
138
+ * Checks if any of the blocks within the model selection is a code block.
139
+ *
140
+ * @internal
141
+ */
142
142
  export declare function isModelSelectionInCodeBlock(selection: ModelDocumentSelection): boolean;
143
143
  /**
144
- * Checks if an {@link module:engine/model/element~ModelElement Element} can become a code block.
145
- *
146
- * @param schema Model's schema.
147
- * @param element The element to be checked.
148
- * @returns Check result.
149
- * @internal
150
- */
144
+ * Checks if an {@link module:engine/model/element~ModelElement Element} can become a code block.
145
+ *
146
+ * @param schema Model's schema.
147
+ * @param element The element to be checked.
148
+ * @returns Check result.
149
+ * @internal
150
+ */
151
151
  export declare function canBeCodeBlock(schema: ModelSchema, element: ModelElement): boolean;
152
152
  /**
153
- * Get the translated message read by the screen reader when you enter or exit an element with your cursor.
154
- *
155
- * @internal
156
- */
157
- export declare function getCodeBlockAriaAnnouncement(t: LocaleTranslate, languageDefs: Array<CodeBlockLanguageDefinition>, element: ModelElement, direction: 'enter' | 'leave'): string;
153
+ * Get the translated message read by the screen reader when you enter or exit an element with your cursor.
154
+ *
155
+ * @internal
156
+ */
157
+ export declare function getCodeBlockAriaAnnouncement(t: LocaleTranslate, languageDefs: Array<CodeBlockLanguageDefinition>, element: ModelElement, direction: "enter" | "leave"): string;
158
158
  /**
159
- * For given position, finds the closest position that is at the beginning of a line of code and returns a text node that is at the
160
- * beginning of the line (or `null` if there's no text node at the beginning of a given line).
161
- *
162
- * Line beings at the start of a code block element and after each `softBreak` element.
163
- *
164
- * Note: even though code block doesn't allow inline elements other than `<softBreak>` by default, some features may overwrite this rule,
165
- * so such inline elements are taken into account.
166
- *
167
- * Some examples of expected results:
168
- *
169
- * ```
170
- * <codeBlock>^</codeBlock> -> null
171
- * <codeBlock>^foobar</codeBlock> -> <codeBlock>[foobar]</codeBlock>
172
- * <codeBlock>foobar^</codeBlock> -> <codeBlock>[foobar]</codeBlock>
173
- * <codeBlock>foo^bar</codeBlock> -> <codeBlock>[foobar]</codeBlock>
174
- * <codeBlock>foo^<softBreak />bar</codeBlock> -> <codeBlock>[foo]<softBreak />bar</codeBlock>
175
- * <codeBlock>foo<softBreak />bar^</codeBlock> -> <codeBlock>foo<softBreak />[bar]</codeBlock>
176
- * <codeBlock>foo<softBreak />b^ar</codeBlock> -> <codeBlock>foo<softBreak />[bar]</codeBlock>
177
- * <codeBlock>foo<softBreak />^bar</codeBlock> -> <codeBlock>foo<softBreak />[bar]</codeBlock>
178
- * <codeBlock>^<element /></codeBlock> -> null
179
- * <codeBlock><element />^</codeBlock> -> null
180
- * <codeBlock>foo^<element /></codeBlock> -> <codeBlock>[foo]<element /></codeBlock>
181
- * <codeBlock>foo<element />^</codeBlock> -> <codeBlock>[foo]<element /></codeBlock>
182
- * <codeBlock>foo<element />bar^</codeBlock> -> <codeBlock>[foo]<element />bar</codeBlock>
183
- * <codeBlock><element />bar^</codeBlock> -> null
184
- * <codeBlock>foo<softBreak />^<softBreak /></codeBlock> -> null
185
- * <codeBlock>foo<softBreak />^<element /></codeBlock> -> null
186
- * <codeBlock>foo<softBreak /><element />^</codeBlock> -> null
187
- * <codeBlock>foo<softBreak />bar<element />^</codeBlock> -> <codeBlock>foo<softBreak />[bar]<element /></codeBlock>
188
- * <codeBlock>foo<softBreak /><element />ba^r</codeBlock> -> null
189
- * ```
190
- *
191
- * @internal
192
- */
159
+ * For given position, finds the closest position that is at the beginning of a line of code and returns a text node that is at the
160
+ * beginning of the line (or `null` if there's no text node at the beginning of a given line).
161
+ *
162
+ * Line beings at the start of a code block element and after each `softBreak` element.
163
+ *
164
+ * Note: even though code block doesn't allow inline elements other than `<softBreak>` by default, some features may overwrite this rule,
165
+ * so such inline elements are taken into account.
166
+ *
167
+ * Some examples of expected results:
168
+ *
169
+ * ```
170
+ * <codeBlock>^</codeBlock> -> null
171
+ * <codeBlock>^foobar</codeBlock> -> <codeBlock>[foobar]</codeBlock>
172
+ * <codeBlock>foobar^</codeBlock> -> <codeBlock>[foobar]</codeBlock>
173
+ * <codeBlock>foo^bar</codeBlock> -> <codeBlock>[foobar]</codeBlock>
174
+ * <codeBlock>foo^<softBreak />bar</codeBlock> -> <codeBlock>[foo]<softBreak />bar</codeBlock>
175
+ * <codeBlock>foo<softBreak />bar^</codeBlock> -> <codeBlock>foo<softBreak />[bar]</codeBlock>
176
+ * <codeBlock>foo<softBreak />b^ar</codeBlock> -> <codeBlock>foo<softBreak />[bar]</codeBlock>
177
+ * <codeBlock>foo<softBreak />^bar</codeBlock> -> <codeBlock>foo<softBreak />[bar]</codeBlock>
178
+ * <codeBlock>^<element /></codeBlock> -> null
179
+ * <codeBlock><element />^</codeBlock> -> null
180
+ * <codeBlock>foo^<element /></codeBlock> -> <codeBlock>[foo]<element /></codeBlock>
181
+ * <codeBlock>foo<element />^</codeBlock> -> <codeBlock>[foo]<element /></codeBlock>
182
+ * <codeBlock>foo<element />bar^</codeBlock> -> <codeBlock>[foo]<element />bar</codeBlock>
183
+ * <codeBlock><element />bar^</codeBlock> -> null
184
+ * <codeBlock>foo<softBreak />^<softBreak /></codeBlock> -> null
185
+ * <codeBlock>foo<softBreak />^<element /></codeBlock> -> null
186
+ * <codeBlock>foo<softBreak /><element />^</codeBlock> -> null
187
+ * <codeBlock>foo<softBreak />bar<element />^</codeBlock> -> <codeBlock>foo<softBreak />[bar]<element /></codeBlock>
188
+ * <codeBlock>foo<softBreak /><element />ba^r</codeBlock> -> null
189
+ * ```
190
+ *
191
+ * @internal
192
+ */
193
193
  export declare function getTextNodeAtLineStart(position: ModelPosition, model: Model): ModelText | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ckeditor/ckeditor5-code-block",
3
- "version": "48.8.1-alpha.3",
3
+ "version": "49.0.0-alpha.0",
4
4
  "description": "Code block feature for CKEditor 5.",
5
5
  "license": "SEE LICENSE IN LICENSE.md",
6
6
  "author": "CKSource (http://cksource.com/)",
@@ -26,13 +26,13 @@
26
26
  "./package.json": "./package.json"
27
27
  },
28
28
  "dependencies": {
29
- "@ckeditor/ckeditor5-core": "48.8.1-alpha.3",
30
- "@ckeditor/ckeditor5-clipboard": "48.8.1-alpha.3",
31
- "@ckeditor/ckeditor5-engine": "48.8.1-alpha.3",
32
- "@ckeditor/ckeditor5-enter": "48.8.1-alpha.3",
33
- "@ckeditor/ckeditor5-icons": "48.8.1-alpha.3",
34
- "@ckeditor/ckeditor5-ui": "48.8.1-alpha.3",
35
- "@ckeditor/ckeditor5-utils": "48.8.1-alpha.3"
29
+ "@ckeditor/ckeditor5-core": "49.0.0-alpha.0",
30
+ "@ckeditor/ckeditor5-clipboard": "49.0.0-alpha.0",
31
+ "@ckeditor/ckeditor5-engine": "49.0.0-alpha.0",
32
+ "@ckeditor/ckeditor5-enter": "49.0.0-alpha.0",
33
+ "@ckeditor/ckeditor5-icons": "49.0.0-alpha.0",
34
+ "@ckeditor/ckeditor5-ui": "49.0.0-alpha.0",
35
+ "@ckeditor/ckeditor5-utils": "49.0.0-alpha.0"
36
36
  },
37
37
  "files": [
38
38
  "dist",