create-nextjs-cms 0.5.23 → 0.5.25

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 (192) hide show
  1. package/dist/index.js +11 -0
  2. package/package.json +6 -8
  3. package/templates/default/components/NewPage.tsx +2 -2
  4. package/templates/default/components/ProgressBar.tsx +46 -22
  5. package/templates/default/components/form/DateRangeFormInput.tsx +8 -6
  6. package/templates/default/components/form/helpers/_section-hot-reload.js +1 -1
  7. package/templates/default/components/form/inputs/DateFormInput.tsx +82 -34
  8. package/templates/default/components/form/inputs/MultipleSelectFormInput.tsx +40 -107
  9. package/templates/default/components/form/inputs/RichTextFormInput.tsx +2 -0
  10. package/templates/default/components/form/inputs/TagsFormInput.tsx +115 -26
  11. package/templates/default/components/form/inputs/TextFormInput.tsx +1 -1
  12. package/templates/default/components/multi-select.tsx +1144 -0
  13. package/templates/default/components/ui/badge.tsx +16 -12
  14. package/templates/default/components/ui/button.tsx +35 -30
  15. package/templates/default/components/ui/calendar.tsx +145 -47
  16. package/templates/default/components/ui/command.tsx +184 -0
  17. package/templates/default/components/ui/dialog.tsx +143 -0
  18. package/templates/default/components/ui/popover.tsx +39 -22
  19. package/templates/default/components/ui/progress.tsx +31 -0
  20. package/templates/default/components/ui/select.tsx +150 -149
  21. package/templates/default/components/ui/separator.tsx +28 -0
  22. package/templates/default/components.json +8 -3
  23. package/templates/default/{postinstall.js → lib/postinstall.js} +1 -1
  24. package/templates/default/lib/utils.ts +6 -0
  25. package/templates/default/{proxy.ts → middleware.ts} +3 -2
  26. package/templates/default/next-env.d.ts +1 -1
  27. package/templates/default/package.json +41 -53
  28. package/templates/default/public/tinymce/CHANGELOG.md +155 -0
  29. package/templates/default/public/tinymce/README.md +12 -12
  30. package/templates/default/public/tinymce/bower.json +1 -1
  31. package/templates/default/public/tinymce/composer.json +2 -2
  32. package/templates/default/public/tinymce/icons/default/icons.js +40 -32
  33. package/templates/default/public/tinymce/icons/default/icons.min.js +1 -1
  34. package/templates/default/public/tinymce/license.md +7 -4
  35. package/templates/default/public/tinymce/models/dom/model.js +36 -50
  36. package/templates/default/public/tinymce/models/dom/model.min.js +1 -1
  37. package/templates/default/public/tinymce/notices.txt +2 -2
  38. package/templates/default/public/tinymce/package.json +2 -2
  39. package/templates/default/public/tinymce/plugins/accordion/plugin.js +45 -21
  40. package/templates/default/public/tinymce/plugins/accordion/plugin.min.js +1 -1
  41. package/templates/default/public/tinymce/plugins/advlist/plugin.js +8 -6
  42. package/templates/default/public/tinymce/plugins/advlist/plugin.min.js +1 -1
  43. package/templates/default/public/tinymce/plugins/anchor/plugin.js +1 -1
  44. package/templates/default/public/tinymce/plugins/autolink/plugin.js +3 -6
  45. package/templates/default/public/tinymce/plugins/autolink/plugin.min.js +1 -1
  46. package/templates/default/public/tinymce/plugins/autoresize/plugin.js +4 -6
  47. package/templates/default/public/tinymce/plugins/autoresize/plugin.min.js +1 -1
  48. package/templates/default/public/tinymce/plugins/autosave/plugin.js +4 -7
  49. package/templates/default/public/tinymce/plugins/autosave/plugin.min.js +1 -1
  50. package/templates/default/public/tinymce/plugins/charmap/plugin.js +8 -8
  51. package/templates/default/public/tinymce/plugins/charmap/plugin.min.js +1 -1
  52. package/templates/default/public/tinymce/plugins/code/plugin.js +3 -2
  53. package/templates/default/public/tinymce/plugins/code/plugin.min.js +1 -1
  54. package/templates/default/public/tinymce/plugins/codesample/plugin.js +11 -10
  55. package/templates/default/public/tinymce/plugins/codesample/plugin.min.js +2 -2
  56. package/templates/default/public/tinymce/plugins/directionality/plugin.js +9 -11
  57. package/templates/default/public/tinymce/plugins/directionality/plugin.min.js +1 -1
  58. package/templates/default/public/tinymce/plugins/emoticons/plugin.js +7 -7
  59. package/templates/default/public/tinymce/plugins/emoticons/plugin.min.js +1 -1
  60. package/templates/default/public/tinymce/plugins/fullscreen/plugin.js +11 -13
  61. package/templates/default/public/tinymce/plugins/fullscreen/plugin.min.js +1 -1
  62. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/bg-BG.js +93 -0
  63. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/fr-FR.js +93 -0
  64. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/he-IL.js +93 -0
  65. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/hu-HU.js +93 -0
  66. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/ko-KR.js +93 -0
  67. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/nb-NO.js +93 -0
  68. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/pt-BR.js +93 -0
  69. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/pt-PT.js +93 -0
  70. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/sl-SI.js +93 -0
  71. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/sv-SE.js +93 -0
  72. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/th-TH.js +93 -0
  73. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/zh-CN.js +87 -0
  74. package/templates/default/public/tinymce/plugins/help/js/i18n/keynav/zh-TW.js +93 -0
  75. package/templates/default/public/tinymce/plugins/help/plugin.js +15 -17
  76. package/templates/default/public/tinymce/plugins/help/plugin.min.js +1 -1
  77. package/templates/default/public/tinymce/plugins/image/plugin.js +34 -32
  78. package/templates/default/public/tinymce/plugins/image/plugin.min.js +1 -1
  79. package/templates/default/public/tinymce/plugins/importcss/plugin.js +4 -6
  80. package/templates/default/public/tinymce/plugins/importcss/plugin.min.js +1 -1
  81. package/templates/default/public/tinymce/plugins/insertdatetime/plugin.js +4 -3
  82. package/templates/default/public/tinymce/plugins/insertdatetime/plugin.min.js +1 -1
  83. package/templates/default/public/tinymce/plugins/link/plugin.js +170 -38
  84. package/templates/default/public/tinymce/plugins/link/plugin.min.js +1 -1
  85. package/templates/default/public/tinymce/plugins/lists/plugin.js +111 -2053
  86. package/templates/default/public/tinymce/plugins/lists/plugin.min.js +1 -1
  87. package/templates/default/public/tinymce/plugins/media/plugin.js +15 -23
  88. package/templates/default/public/tinymce/plugins/media/plugin.min.js +1 -1
  89. package/templates/default/public/tinymce/plugins/nonbreaking/plugin.js +1 -1
  90. package/templates/default/public/tinymce/plugins/pagebreak/plugin.js +1 -1
  91. package/templates/default/public/tinymce/plugins/preview/plugin.js +88 -10
  92. package/templates/default/public/tinymce/plugins/preview/plugin.min.js +1 -1
  93. package/templates/default/public/tinymce/plugins/quickbars/plugin.js +9 -9
  94. package/templates/default/public/tinymce/plugins/quickbars/plugin.min.js +1 -1
  95. package/templates/default/public/tinymce/plugins/save/plugin.js +1 -1
  96. package/templates/default/public/tinymce/plugins/searchreplace/plugin.js +10 -13
  97. package/templates/default/public/tinymce/plugins/searchreplace/plugin.min.js +1 -1
  98. package/templates/default/public/tinymce/plugins/table/plugin.js +13 -24
  99. package/templates/default/public/tinymce/plugins/table/plugin.min.js +1 -1
  100. package/templates/default/public/tinymce/plugins/visualblocks/plugin.js +1 -1
  101. package/templates/default/public/tinymce/plugins/visualchars/plugin.js +9 -10
  102. package/templates/default/public/tinymce/plugins/visualchars/plugin.min.js +1 -1
  103. package/templates/default/public/tinymce/plugins/wordcount/plugin.js +1 -1
  104. package/templates/default/public/tinymce/skins/content/dark/content.min.ts +3 -0
  105. package/templates/default/public/tinymce/skins/content/dark/content.ts +3 -0
  106. package/templates/default/public/tinymce/skins/content/default/content.min.ts +3 -0
  107. package/templates/default/public/tinymce/skins/content/default/content.ts +3 -0
  108. package/templates/default/public/tinymce/skins/content/document/content.min.ts +3 -0
  109. package/templates/default/public/tinymce/skins/content/document/content.ts +3 -0
  110. package/templates/default/public/tinymce/skins/content/tinymce-5/content.min.ts +3 -0
  111. package/templates/default/public/tinymce/skins/content/tinymce-5/content.ts +3 -0
  112. package/templates/default/public/tinymce/skins/content/tinymce-5-dark/content.min.ts +3 -0
  113. package/templates/default/public/tinymce/skins/content/tinymce-5-dark/content.ts +3 -0
  114. package/templates/default/public/tinymce/skins/content/writer/content.min.ts +3 -0
  115. package/templates/default/public/tinymce/skins/content/writer/content.ts +3 -0
  116. package/templates/default/public/tinymce/skins/ui/oxide/content.css +144 -0
  117. package/templates/default/public/tinymce/skins/ui/oxide/content.inline.css +144 -0
  118. package/templates/default/public/tinymce/skins/ui/oxide/content.inline.js +1 -1
  119. package/templates/default/public/tinymce/skins/ui/oxide/content.inline.min.css +1 -1
  120. package/templates/default/public/tinymce/skins/ui/oxide/content.inline.min.ts +116 -0
  121. package/templates/default/public/tinymce/skins/ui/oxide/content.inline.ts +116 -0
  122. package/templates/default/public/tinymce/skins/ui/oxide/content.js +1 -1
  123. package/templates/default/public/tinymce/skins/ui/oxide/content.min.css +1 -1
  124. package/templates/default/public/tinymce/skins/ui/oxide/content.min.ts +116 -0
  125. package/templates/default/public/tinymce/skins/ui/oxide/content.ts +116 -0
  126. package/templates/default/public/tinymce/skins/ui/oxide/skin.css +923 -449
  127. package/templates/default/public/tinymce/skins/ui/oxide/skin.js +1 -1
  128. package/templates/default/public/tinymce/skins/ui/oxide/skin.min.css +1 -1
  129. package/templates/default/public/tinymce/skins/ui/oxide/skin.min.ts +507 -0
  130. package/templates/default/public/tinymce/skins/ui/oxide/skin.shadowdom.min.ts +9 -0
  131. package/templates/default/public/tinymce/skins/ui/oxide/skin.shadowdom.ts +9 -0
  132. package/templates/default/public/tinymce/skins/ui/oxide/skin.ts +507 -0
  133. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.css +144 -0
  134. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.css +144 -0
  135. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.js +1 -1
  136. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -1
  137. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.min.ts +116 -0
  138. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.inline.ts +116 -0
  139. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.js +1 -1
  140. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.min.css +1 -1
  141. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.min.ts +116 -0
  142. package/templates/default/public/tinymce/skins/ui/oxide-dark/content.ts +116 -0
  143. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.css +926 -452
  144. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.js +1 -1
  145. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  146. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.min.ts +507 -0
  147. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.min.ts +9 -0
  148. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.shadowdom.ts +9 -0
  149. package/templates/default/public/tinymce/skins/ui/oxide-dark/skin.ts +507 -0
  150. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.css +144 -0
  151. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.css +144 -0
  152. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.js +1 -1
  153. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -1
  154. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.min.ts +116 -0
  155. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.inline.ts +116 -0
  156. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.js +1 -1
  157. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.min.css +1 -1
  158. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.min.ts +116 -0
  159. package/templates/default/public/tinymce/skins/ui/tinymce-5/content.ts +116 -0
  160. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.css +924 -450
  161. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.js +1 -1
  162. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
  163. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.min.ts +508 -0
  164. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.min.ts +9 -0
  165. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.shadowdom.ts +9 -0
  166. package/templates/default/public/tinymce/skins/ui/tinymce-5/skin.ts +508 -0
  167. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.css +144 -0
  168. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.css +144 -0
  169. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.js +1 -1
  170. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -1
  171. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.min.ts +116 -0
  172. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.inline.ts +116 -0
  173. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.js +1 -1
  174. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -1
  175. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.min.ts +116 -0
  176. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/content.ts +116 -0
  177. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.css +925 -451
  178. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.js +1 -1
  179. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
  180. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.min.ts +508 -0
  181. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.min.ts +9 -0
  182. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.ts +9 -0
  183. package/templates/default/public/tinymce/skins/ui/tinymce-5-dark/skin.ts +508 -0
  184. package/templates/default/public/tinymce/themes/silver/theme.js +543 -593
  185. package/templates/default/public/tinymce/themes/silver/theme.min.js +1 -1
  186. package/templates/default/public/tinymce/tinymce.d.ts +559 -496
  187. package/templates/default/public/tinymce/tinymce.js +6788 -3964
  188. package/templates/default/public/tinymce/tinymce.min.js +3 -4
  189. package/templates/default/styles/globals.css +132 -107
  190. package/templates/default/tsconfig.json +45 -45
  191. package/templates/default/.prettierrc.json +0 -19
  192. package/templates/default/eslint.config.mjs +0 -38
@@ -0,0 +1,93 @@
1
+ tinymce.Resource.add('tinymce.html-i18n.help-keynav.th-TH',
2
+ '<h1>เริ่มต้นการนำทางด้วยแป้นพิมพ์</h1>\n' +
3
+ '\n' +
4
+ '<dl>\n' +
5
+ ' <dt>โฟกัสที่แถบเมนู</dt>\n' +
6
+ ' <dd>Windows หรือ Linux: Alt+F9</dd>\n' +
7
+ ' <dd>macOS: &#x2325;F9</dd>\n' +
8
+ ' <dt>โฟกัสที่แถบเครื่องมือ</dt>\n' +
9
+ ' <dd>Windows หรือ Linux: Alt+F10</dd>\n' +
10
+ ' <dd>macOS: &#x2325;F10</dd>\n' +
11
+ ' <dt>โฟกัสที่ส่วนท้าย</dt>\n' +
12
+ ' <dd>Windows หรือ Linux: Alt+F11</dd>\n' +
13
+ ' <dd>macOS: &#x2325;F11</dd>\n' +
14
+ ' <dt>โฟกัสไปที่การแจ้งเตือน</dt>\n' +
15
+ ' <dd>Windows หรือ Linux: Alt+F12</dd>\n' +
16
+ ' <dd>macOS: &#x2325;F12</dd>\n' +
17
+ ' <dt>โฟกัสที่แถบเครื่องมือตามบริบท</dt>\n' +
18
+ ' <dd>Windows, Linux หรือ macOS: Ctrl+F9</dd>\n' +
19
+ '</dl>\n' +
20
+ '\n' +
21
+ '<p>การนำทางจะเริ่มที่รายการ UI แรก ซึ่งจะมีการไฮไลต์หรือขีดเส้นใต้ไว้ในกรณีที่รายการแรกอยู่ใน\n' +
22
+ ' พาธองค์ประกอบส่วนท้าย</p>\n' +
23
+ '\n' +
24
+ '<h1>การนำทางระหว่างส่วนต่างๆ ของ UI</h1>\n' +
25
+ '\n' +
26
+ '<p>ในการย้ายจากส่วน UI หนึ่งไปยังส่วนถัดไป ให้กด <strong>Tab</strong></p>\n' +
27
+ '\n' +
28
+ '<p>ในการย้ายจากส่วน UI หนึ่งไปยังส่วนก่อนหน้า ให้กด <strong>Shift+Tab</strong></p>\n' +
29
+ '\n' +
30
+ '<p>ลำดับ<strong>แท็บ</strong>ของส่วนต่างๆ ของ UI คือ:</p>\n' +
31
+ '\n' +
32
+ '<ol>\n' +
33
+ ' <li>แถบเมนู</li>\n' +
34
+ ' <li>แต่ละกลุ่มแถบเครื่องมือ</li>\n' +
35
+ ' <li>แถบข้าง</li>\n' +
36
+ ' <li>พาธองค์ประกอบในส่วนท้าย</li>\n' +
37
+ ' <li>ปุ่มสลับเปิด/ปิดจำนวนคำในส่วนท้าย</li>\n' +
38
+ ' <li>ลิงก์ชื่อแบรนด์ในส่วนท้าย</li>\n' +
39
+ ' <li>จุดจับปรับขนาดของตัวแก้ไขในส่วนท้าย</li>\n' +
40
+ '</ol>\n' +
41
+ '\n' +
42
+ '<p>หากส่วน UI ไม่ปรากฏ แสดงว่าถูกข้ามไป</p>\n' +
43
+ '\n' +
44
+ '<p>หากส่วนท้ายมีการโฟกัสการนำทางแป้นพิมพ์และไม่มีแถบข้างปรากฏ การกด <strong>Shift+Tab</strong>\n' +
45
+ ' จะย้ายการโฟกัสไปที่กลุ่มแถบเครื่องมือแรก ไม่ใช่สุดท้าย</p>\n' +
46
+ '\n' +
47
+ '<h1>การนำทางภายในส่วนต่างๆ ของ UI</h1>\n' +
48
+ '\n' +
49
+ '<p>ในการย้ายจากองค์ประกอบ UI หนึ่งไปยังองค์ประกอบส่วนถัดไป ให้กดปุ่ม<strong>ลูกศร</strong>ที่เหมาะสม</p>\n' +
50
+ '\n' +
51
+ '<p>ปุ่มลูกศร<strong>ซ้าย</strong>และ<strong>ขวา</strong></p>\n' +
52
+ '\n' +
53
+ '<ul>\n' +
54
+ ' <li>ย้ายไปมาระหว่างเมนูต่างๆ ในแถบเมนู</li>\n' +
55
+ ' <li>เปิดเมนูย่อยในเมนู</li>\n' +
56
+ ' <li>ย้ายไปมาระหว่างปุ่มต่างๆ ในกลุ่มแถบเครื่องมือ</li>\n' +
57
+ ' <li>ย้ายไปมาระหว่างรายการต่างๆ ในพาธองค์ประกอบของส่วนท้าย</li>\n' +
58
+ '</ul>\n' +
59
+ '\n' +
60
+ '<p>ปุ่มลูกศร<strong>ลง</strong>และ<strong>ขึ้น</strong></p>\n' +
61
+ '\n' +
62
+ '<ul>\n' +
63
+ ' <li>ย้ายไปมาระหว่างรายการเมนูต่างๆ ในเมนู</li>\n' +
64
+ ' <li>ย้ายไปมาระหว่างรายการต่างๆ ในเมนูป๊อบอัพแถบเครื่องมือ</li>\n' +
65
+ '</ul>\n' +
66
+ '\n' +
67
+ '<p>ปุ่ม<strong>ลูกศร</strong>จะเลื่อนไปมาภายในส่วน UI ที่โฟกัส</p>\n' +
68
+ '\n' +
69
+ '<p>ในการปิดเมนูที่เปิดอยู่ เมนูย่อยที่เปิดอยู่ หรือเมนูป๊อบอัพที่เปิดอยู่ ให้กดปุ่ม <strong>Esc</strong></p>\n' +
70
+ '\n' +
71
+ '<p>หากโฟกัสปัจจุบันอยู่ที่ ‘ด้านบนสุด’ ของส่วน UI เฉพาะ การกดปุ่ม <strong>Esc</strong> จะทำให้ออกจาก\n' +
72
+ ' การนำทางด้วยแป้นพิมพ์ทั้งหมดเช่นกัน</p>\n' +
73
+ '\n' +
74
+ '<h1>การดำเนินการรายการเมนูหรือปุ่มในแถบเครื่องมือ</h1>\n' +
75
+ '\n' +
76
+ '<p>เมื่อไฮไลต์รายการเมนูหรือปุ่มในแถบเครื่องมือที่ต้องการ ให้กด <strong>Return</strong>, <strong>Enter</strong>\n' +
77
+ ' หรือ <strong>Space bar</strong> เพื่อดำเนินการรายการดังกล่าว</p>\n' +
78
+ '\n' +
79
+ '<h1>การนำทางสำหรับกล่องโต้ตอบที่ไม่อยู่ในแท็บ</h1>\n' +
80
+ '\n' +
81
+ '<p>ในกล่องโต้ตอบที่ไม่อยู่ในแท็บ จะโฟกัสที่ส่วนประกอบเชิงโต้ตอบแรกเมื่อกล่องโต้ตอบเปิด</p>\n' +
82
+ '\n' +
83
+ '<p>นำทางระหว่างส่วนประกอบเชิงโต้ตอบต่างๆ ของกล่องโต้ตอบ โดยการกด <strong>Tab</strong> หรือ <strong>Shift+Tab</strong></p>\n' +
84
+ '\n' +
85
+ '<h1>การนำทางสำหรับกล่องโต้ตอบที่อยู่ในแท็บ</h1>\n' +
86
+ '\n' +
87
+ '<p>ในกล่องโต้ตอบที่อยู่ในแท็บ จะโฟกัสที่ปุ่มแรกในเมนูแท็บเมื่อกล่องโต้ตอบเปิด</p>\n' +
88
+ '\n' +
89
+ '<p>นำทางระหว่างส่วนประกอบเชิงโต้ตอบต่างๆ ของแท็บกล่องโต้ตอบนี้โดยการกด <strong>Tab</strong> หรือ\n' +
90
+ ' <strong>Shift+Tab</strong></p>\n' +
91
+ '\n' +
92
+ '<p>สลับไปยังแท็บกล่องโต้ตอบอื่นโดยการเลือกโฟกัสที่เมนูแท็บ แล้วกดปุ่ม<strong>ลูกศร</strong>ที่เหมาะสม\n' +
93
+ ' เพื่อเลือกแท็บที่ใช้ได้</p>\n');
@@ -0,0 +1,87 @@
1
+ tinymce.Resource.add('tinymce.html-i18n.help-keynav.zh-CN',
2
+ '<h1>开始键盘导航</h1>\n' +
3
+ '\n' +
4
+ '<dl>\n' +
5
+ ' <dt>使菜单栏处于焦点</dt>\n' +
6
+ ' <dd>Windows 或 Linux:Alt+F9</dd>\n' +
7
+ ' <dd>macOS:&#x2325;F9</dd>\n' +
8
+ ' <dt>使工具栏处于焦点</dt>\n' +
9
+ ' <dd>Windows 或 Linux:Alt+F10</dd>\n' +
10
+ ' <dd>macOS:&#x2325;F10</dd>\n' +
11
+ ' <dt>使页脚处于焦点</dt>\n' +
12
+ ' <dd>Windows 或 Linux:Alt+F11</dd>\n' +
13
+ ' <dd>macOS:&#x2325;F11</dd>\n' +
14
+ ' <dt>使通知处于焦点</dt>\n' +
15
+ ' <dd>Windows 或 Linux:Alt+F12</dd>\n' +
16
+ ' <dd>macOS:&#x2325;F12</dd>\n' +
17
+ ' <dt>使上下文工具栏处于焦点</dt>\n' +
18
+ ' <dd>Windows、Linux 或 macOS:Ctrl+F9</dd>\n' +
19
+ '</dl>\n' +
20
+ '\n' +
21
+ '<p>导航将在第一个 UI 项上开始,其中突出显示该项,或者对于页脚元素路径中的第一项,将为其添加下划线。</p>\n' +
22
+ '\n' +
23
+ '<h1>在 UI 部分之间导航</h1>\n' +
24
+ '\n' +
25
+ '<p>要从一个 UI 部分移至下一个,请按 <strong>Tab</strong>。</p>\n' +
26
+ '\n' +
27
+ '<p>要从一个 UI 部分移至上一个,请按 <strong>Shift+Tab</strong>。</p>\n' +
28
+ '\n' +
29
+ '<p>这些 UI 部分的 <strong>Tab</strong> 顺序为:</p>\n' +
30
+ '\n' +
31
+ '<ol>\n' +
32
+ ' <li>菜单栏</li>\n' +
33
+ ' <li>每个工具栏组</li>\n' +
34
+ ' <li>边栏</li>\n' +
35
+ ' <li>页脚中的元素路径</li>\n' +
36
+ ' <li>页脚中的字数切换按钮</li>\n' +
37
+ ' <li>页脚中的品牌链接</li>\n' +
38
+ ' <li>页脚中的编辑器调整大小图柄</li>\n' +
39
+ '</ol>\n' +
40
+ '\n' +
41
+ '<p>如果不存在某个 UI 部分,则跳过它。</p>\n' +
42
+ '\n' +
43
+ '<p>如果键盘导航焦点在页脚,并且没有可见的边栏,则按 <strong>Shift+Tab</strong> 将焦点移至第一个工具栏组而非最后一个。</p>\n' +
44
+ '\n' +
45
+ '<h1>在 UI 部分内导航</h1>\n' +
46
+ '\n' +
47
+ '<p>要从一个 UI 元素移至下一个,请按相应的<strong>箭头</strong>键。</p>\n' +
48
+ '\n' +
49
+ '<p><strong>左</strong>和<strong>右</strong>箭头键</p>\n' +
50
+ '\n' +
51
+ '<ul>\n' +
52
+ ' <li>在菜单栏中的菜单之间移动。</li>\n' +
53
+ ' <li>打开菜单中的子菜单。</li>\n' +
54
+ ' <li>在工具栏组中的按钮之间移动。</li>\n' +
55
+ ' <li>在页脚的元素路径中的各项之间移动。</li>\n' +
56
+ '</ul>\n' +
57
+ '\n' +
58
+ '<p><strong>下</strong>和<strong>上</strong>箭头键</p>\n' +
59
+ '\n' +
60
+ '<ul>\n' +
61
+ ' <li>在菜单中的菜单项之间移动。</li>\n' +
62
+ ' <li>在工具栏弹出菜单中的各项之间移动。</li>\n' +
63
+ '</ul>\n' +
64
+ '\n' +
65
+ '<p><strong>箭头</strong>键在具有焦点的 UI 部分内循环。</p>\n' +
66
+ '\n' +
67
+ '<p>要关闭打开的菜单、打开的子菜单或打开的弹出菜单,请按 <strong>Esc</strong> 键。</p>\n' +
68
+ '\n' +
69
+ '<p>如果当前的焦点在特定 UI 部分的“顶部”,则按 <strong>Esc</strong> 键还将完全退出键盘导航。</p>\n' +
70
+ '\n' +
71
+ '<h1>执行菜单项或工具栏按钮</h1>\n' +
72
+ '\n' +
73
+ '<p>当突出显示所需的菜单项或工具栏按钮时,按 <strong>Return</strong>、<strong>Enter</strong> 或<strong>空格</strong>以执行该项。</p>\n' +
74
+ '\n' +
75
+ '<h1>在非标签页式对话框中导航</h1>\n' +
76
+ '\n' +
77
+ '<p>在非标签页式对话框中,当对话框打开时,第一个交互组件获得焦点。</p>\n' +
78
+ '\n' +
79
+ '<p>通过按 <strong>Tab</strong> 或 <strong>Shift+Tab</strong>,在交互对话框组件之间导航。</p>\n' +
80
+ '\n' +
81
+ '<h1>在标签页式对话框中导航</h1>\n' +
82
+ '\n' +
83
+ '<p>在标签页式对话框中,当对话框打开时,标签页菜单中的第一个按钮获得焦点。</p>\n' +
84
+ '\n' +
85
+ '<p>通过按 <strong>Tab</strong> 或 <strong>Shift+Tab</strong>,在此对话框的交互组件之间导航。</p>\n' +
86
+ '\n' +
87
+ '<p>通过将焦点移至另一对话框标签页的菜单,然后按相应的<strong>箭头</strong>键以在可用的标签页间循环,从而切换到该对话框标签页。</p>\n');
@@ -0,0 +1,93 @@
1
+ tinymce.Resource.add('tinymce.html-i18n.help-keynav.zh-TW',
2
+ '<h1>開始鍵盤瀏覽</h1>\n' +
3
+ '\n' +
4
+ '<dl>\n' +
5
+ ' <dt>跳至功能表列</dt>\n' +
6
+ ' <dd>Windows 或 Linux:Alt+F9</dd>\n' +
7
+ ' <dd>macOS:&#x2325;F9</dd>\n' +
8
+ ' <dt>跳至工具列</dt>\n' +
9
+ ' <dd>Windows 或 Linux:Alt+F10</dd>\n' +
10
+ ' <dd>macOS:&#x2325;F10</dd>\n' +
11
+ ' <dt>跳至頁尾</dt>\n' +
12
+ ' <dd>Windows 或 Linux:Alt+F11</dd>\n' +
13
+ ' <dd>macOS:&#x2325;F11</dd>\n' +
14
+ ' <dt>跳至通知</dt>\n' +
15
+ ' <dd>Windows 或 Linux:Alt+F12</dd>\n' +
16
+ ' <dd>macOS:&#x2325;F12</dd>\n' +
17
+ ' <dt>跳至關聯式工具列</dt>\n' +
18
+ ' <dd>Windows、Linux 或 macOS:Ctrl+F9</dd>\n' +
19
+ '</dl>\n' +
20
+ '\n' +
21
+ '<p>瀏覽會從第一個 UI 項目開始,該項目會反白顯示,但如果是「頁尾」元素路徑的第一項,\n' +
22
+ ' 則加底線。</p>\n' +
23
+ '\n' +
24
+ '<h1>在 UI 區段之間瀏覽</h1>\n' +
25
+ '\n' +
26
+ '<p>從 UI 區段移至下一個,請按 <strong>Tab</strong>。</p>\n' +
27
+ '\n' +
28
+ '<p>從 UI 區段移回上一個,請按 <strong>Shift+Tab</strong>。</p>\n' +
29
+ '\n' +
30
+ '<p>這些 UI 區段的 <strong>Tab</strong> 順序如下:</p>\n' +
31
+ '\n' +
32
+ '<ol>\n' +
33
+ ' <li>功能表列</li>\n' +
34
+ ' <li>各個工具列群組</li>\n' +
35
+ ' <li>側邊欄</li>\n' +
36
+ ' <li>頁尾中的元素路徑</li>\n' +
37
+ ' <li>頁尾中字數切換按鈕</li>\n' +
38
+ ' <li>頁尾中的品牌連結</li>\n' +
39
+ ' <li>頁尾中編輯器調整大小控點</li>\n' +
40
+ '</ol>\n' +
41
+ '\n' +
42
+ '<p>如果 UI 區段未顯示,表示已略過該區段。</p>\n' +
43
+ '\n' +
44
+ '<p>如果鍵盤瀏覽跳至頁尾,但沒有顯示側邊欄,則按下 <strong>Shift+Tab</strong>\n' +
45
+ ' 會跳至第一個工具列群組,而不是最後一個。</p>\n' +
46
+ '\n' +
47
+ '<h1>在 UI 區段之內瀏覽</h1>\n' +
48
+ '\n' +
49
+ '<p>在兩個 UI 元素之間移動,請按適當的<strong>方向</strong>鍵。</p>\n' +
50
+ '\n' +
51
+ '<p><strong>向左</strong>和<strong>向右</strong>方向鍵</p>\n' +
52
+ '\n' +
53
+ '<ul>\n' +
54
+ ' <li>在功能表列中的功能表之間移動。</li>\n' +
55
+ ' <li>開啟功能表中的子功能表。</li>\n' +
56
+ ' <li>在工具列群組中的按鈕之間移動。</li>\n' +
57
+ ' <li>在頁尾的元素路徑中項目之間移動。</li>\n' +
58
+ '</ul>\n' +
59
+ '\n' +
60
+ '<p><strong>向下</strong>和<strong>向上</strong>方向鍵</p>\n' +
61
+ '\n' +
62
+ '<ul>\n' +
63
+ ' <li>在功能表中的功能表項目之間移動。</li>\n' +
64
+ ' <li>在工具列快顯功能表中的項目之間移動。</li>\n' +
65
+ '</ul>\n' +
66
+ '\n' +
67
+ '<p><strong>方向</strong>鍵會在所跳至 UI 區段之內循環。</p>\n' +
68
+ '\n' +
69
+ '<p>若要關閉已開啟的功能表、已開啟的子功能表,或已開啟的快顯功能表,請按 <strong>Esc</strong> 鍵。</p>\n' +
70
+ '\n' +
71
+ '<p>如果目前已跳至特定 UI 區段的「頂端」,則按 <strong>Esc</strong> 鍵也會結束\n' +
72
+ ' 整個鍵盤瀏覽。</p>\n' +
73
+ '\n' +
74
+ '<h1>執行功能表列項目或工具列按鈕</h1>\n' +
75
+ '\n' +
76
+ '<p>當想要的功能表項目或工具列按鈕已反白顯示時,按 <strong>Return</strong>、<strong>Enter</strong>、\n' +
77
+ ' 或<strong>空白鍵</strong>即可執行該項目。</p>\n' +
78
+ '\n' +
79
+ '<h1>瀏覽非索引標籤式對話方塊</h1>\n' +
80
+ '\n' +
81
+ '<p>在非索引標籤式對話方塊中,開啟對話方塊時會跳至第一個互動元件。</p>\n' +
82
+ '\n' +
83
+ '<p>按 <strong>Tab</strong> 或 <strong>Shift+Tab</strong> 即可在互動式對話方塊元件之間瀏覽。</p>\n' +
84
+ '\n' +
85
+ '<h1>瀏覽索引標籤式對話方塊</h1>\n' +
86
+ '\n' +
87
+ '<p>在索引標籤式對話方塊中,開啟對話方塊時會跳至索引標籤式功能表中的第一個按鈕。</p>\n' +
88
+ '\n' +
89
+ '<p>若要在此對話方塊的互動式元件之間瀏覽,請按 <strong>Tab</strong> 或\n' +
90
+ ' <strong>Shift+Tab</strong>。</p>\n' +
91
+ '\n' +
92
+ '<p>先跳至索引標籤式功能表,然後按適當的<strong>方向</strong>鍵,即可切換至另一個對話方塊索引標籤,\n' +
93
+ ' 以循環瀏覽可用的索引標籤。</p>\n');
@@ -1,5 +1,5 @@
1
1
  /**
2
- * TinyMCE version 7.9.1 (2025-05-29)
2
+ * TinyMCE version 8.3.1 (2025-12-17)
3
3
  */
4
4
 
5
5
  (function () {
@@ -7,13 +7,12 @@
7
7
 
8
8
  /* eslint-disable @typescript-eslint/no-wrapper-object-types */
9
9
  const hasProto = (v, constructor, predicate) => {
10
- var _a;
11
10
  if (predicate(v, constructor.prototype)) {
12
11
  return true;
13
12
  }
14
13
  else {
15
14
  // String-based fallback time
16
- return ((_a = v.constructor) === null || _a === void 0 ? void 0 : _a.name) === constructor.name;
15
+ return v.constructor?.name === constructor.name;
17
16
  }
18
17
  };
19
18
  const typeOf = (x) => {
@@ -63,6 +62,11 @@
63
62
  * strict-null-checks
64
63
  */
65
64
  class Optional {
65
+ tag;
66
+ value;
67
+ // Sneaky optimisation: every instance of Optional.none is identical, so just
68
+ // reuse the same object
69
+ static singletonNone = new Optional(false);
66
70
  // The internal representation has a `tag` and a `value`, but both are
67
71
  // private: able to be console.logged, but not able to be accessed by code
68
72
  constructor(tag, value) {
@@ -230,7 +234,7 @@
230
234
  */
231
235
  getOrDie(message) {
232
236
  if (!this.tag) {
233
- throw new Error(message !== null && message !== void 0 ? message : 'Called getOrDie on None');
237
+ throw new Error(message ?? 'Called getOrDie on None');
234
238
  }
235
239
  else {
236
240
  return this.value;
@@ -294,14 +298,9 @@
294
298
  return this.tag ? `some(${this.value})` : 'none()';
295
299
  }
296
300
  }
297
- // Sneaky optimisation: every instance of Optional.none is identical, so just
298
- // reuse the same object
299
- Optional.singletonNone = new Optional(false);
300
301
 
301
- /* eslint-disable @typescript-eslint/unbound-method */
302
302
  const nativeSlice = Array.prototype.slice;
303
303
  const nativeIndexOf = Array.prototype.indexOf;
304
- /* eslint-enable */
305
304
  const rawIndexOf = (ts, t) => nativeIndexOf.call(ts, t);
306
305
  const contains = (xs, x) => rawIndexOf(xs, x) > -1;
307
306
  const map = (xs, f) => {
@@ -352,7 +351,6 @@
352
351
  //
353
352
  // Use the native keys if it is available (IE9+), otherwise fall back to manually filtering
354
353
  const keys = Object.keys;
355
- // eslint-disable-next-line @typescript-eslint/unbound-method
356
354
  const hasOwnProperty = Object.hasOwnProperty;
357
355
  const get$1 = (obj, key) => {
358
356
  return has(obj, key) ? Optional.from(obj[key]) : Optional.none();
@@ -416,8 +414,7 @@
416
414
 
417
415
  const get = (customTabs) => {
418
416
  const addTab = (spec) => {
419
- var _a;
420
- const name = (_a = spec.name) !== null && _a !== void 0 ? _a : generate('tab-name');
417
+ const name = spec.name ?? generate('tab-name');
421
418
  const currentCustomTabs = customTabs.get();
422
419
  currentCustomTabs[name] = spec;
423
420
  customTabs.set(currentCustomTabs);
@@ -620,8 +617,10 @@
620
617
  { key: 'powerpaste', name: 'PowerPaste', type: "premium" /* PluginType.Premium */, slug: 'introduction-to-powerpaste' },
621
618
  { key: 'revisionhistory', name: 'Revision History', type: "premium" /* PluginType.Premium */ },
622
619
  { key: 'tinymcespellchecker', name: 'Spell Checker', type: "premium" /* PluginType.Premium */, slug: 'introduction-to-tiny-spellchecker' },
620
+ { key: 'suggestededits', name: 'Suggested Edits', type: "premium" /* PluginType.Premium */ },
623
621
  { key: 'autocorrect', name: 'Spelling Autocorrect', type: "premium" /* PluginType.Premium */ },
624
622
  { key: 'tableofcontents', name: 'Table of Contents', type: "premium" /* PluginType.Premium */ },
623
+ { key: 'fullpagehtml', name: 'Fullpage HTML', type: "premium" /* PluginType.Premium */ },
625
624
  { key: 'advtemplate', name: 'Templates', type: "premium" /* PluginType.Premium */, slug: 'advanced-templates' },
626
625
  { key: 'tinycomments', name: 'Tiny Comments', type: "premium" /* PluginType.Premium */, slug: 'introduction-to-tiny-comments' },
627
626
  { key: 'tinydrive', name: 'Tiny Drive', type: "premium" /* PluginType.Premium */, slug: 'tinydrive-introduction' },
@@ -667,13 +666,13 @@
667
666
  }, (x) => {
668
667
  // We know this plugin, so use our stored details.
669
668
  const name = x.type === "premium" /* PluginUrls.PluginType.Premium */ ? `${x.name}*` : x.name;
670
- const html = makeLink({ name, url: `https://www.tiny.cloud/docs/tinymce/7/${x.slug}/` });
669
+ const html = makeLink({ name, url: `https://www.tiny.cloud/docs/tinymce/${tinymce.majorVersion}/${x.slug}/` });
671
670
  return { name, html };
672
671
  });
673
672
  const getPluginKeys = (editor) => {
674
673
  const keys$1 = keys(editor.plugins);
675
674
  const forcedPlugins = getForcedPlugins(editor);
676
- const hiddenPlugins = isUndefined(forcedPlugins) ? ['onboarding'] : forcedPlugins.concat(['onboarding']);
675
+ const hiddenPlugins = isUndefined(forcedPlugins) ? ['onboarding', 'licensekeymanager'] : forcedPlugins.concat(['onboarding', 'licensekeymanager']);
677
676
  return filter(keys$1, (k) => !contains(hiddenPlugins, k));
678
677
  };
679
678
  const pluginLister = (editor) => {
@@ -718,7 +717,7 @@
718
717
  const tab = () => {
719
718
  const getVersion = (major, minor) => major.indexOf('@') === 0 ? 'X.X.X' : major + '.' + minor;
720
719
  const version = getVersion(global.majorVersion, global.minorVersion);
721
- const changeLogLink = '<a data-alloy-tabstop="true" tabindex="-1" href="https://www.tiny.cloud/docs/tinymce/7/changelog/?utm_campaign=help_dialog_version_tab&utm_source=tiny&utm_medium=referral" rel="noopener" target="_blank">TinyMCE ' + version + '</a>';
720
+ const changeLogLink = '<a data-alloy-tabstop="true" tabindex="-1" href="https://www.tiny.cloud/docs/tinymce/8/changelog/?utm_campaign=help_dialog_version_tab&utm_source=tiny&utm_medium=referral" rel="noopener" target="_blank">TinyMCE ' + version + '</a>';
722
721
  const htmlPanel = {
723
722
  type: 'htmlpanel',
724
723
  html: '<p>' + global$2.translate(['You are using {0}', changeLogLink]) + '</p>',
@@ -736,7 +735,6 @@
736
735
  const parseHelpTabsSetting = (tabsFromSettings, tabs) => {
737
736
  const newTabs = {};
738
737
  const names = map(tabsFromSettings, (t) => {
739
- var _a;
740
738
  if (isString(t)) {
741
739
  // Code below shouldn't care if a tab name doesn't have a spec.
742
740
  // If we find it does, we'll need to make this smarter.
@@ -747,7 +745,7 @@
747
745
  return t;
748
746
  }
749
747
  else {
750
- const name = (_a = t.name) !== null && _a !== void 0 ? _a : generate('tab-name');
748
+ const name = t.name ?? generate('tab-name');
751
749
  newTabs[name] = t;
752
750
  return name;
753
751
  }
@@ -1 +1 @@
1
- !function(){"use strict";const e=e=>"string"===(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(n=a=e,(r=String).prototype.isPrototypeOf(n)||(null===(o=a.constructor)||void 0===o?void 0:o.name)===r.name)?"string":t;var n,a,r,o})(e);const t=e=>undefined===e;const n=e=>"function"==typeof e,a=()=>false;class r{constructor(e,t){this.tag=e,this.value=t}static some(e){return new r(!0,e)}static none(){return r.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?r.some(e(this.value)):r.none()}bind(e){return this.tag?e(this.value):r.none()}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){return!this.tag||e(this.value)?this:r.none()}getOr(e){return this.tag?this.value:e}or(e){return this.tag?this:e}getOrThunk(e){return this.tag?this.value:e()}orThunk(e){return this.tag?this:e()}getOrDie(e){if(this.tag)return this.value;throw new Error(null!=e?e:"Called getOrDie on None")}static from(e){return null==e?r.none():r.some(e)}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(e){this.tag&&e(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}r.singletonNone=new r(!1);const o=Array.prototype.slice,i=Array.prototype.indexOf,s=(e,t)=>{const n=e.length,a=new Array(n);for(let r=0;r<n;r++){const n=e[r];a[r]=t(n,r)}return a},c=(e,t)=>{const n=[];for(let a=0,r=e.length;a<r;a++){const r=e[a];t(r,a)&&n.push(r)}return n},m=(e,t)=>{const n=o.call(e,0);return n.sort(t),n};n(Array.from)&&Array.from;const l=Object.keys,u=Object.hasOwnProperty,p=(e,t)=>u.call(e,t);let y=0;const h=e=>{const t=(new Date).getTime(),n=Math.floor(window.crypto.getRandomValues(new Uint32Array(1))[0]/4294967295*1e9);return y++,e+"_"+n+y+String(t)};var d=tinymce.util.Tools.resolve("tinymce.PluginManager");const g=e=>t=>t.options.get(e),k=g("help_tabs"),v=g("forced_plugins");var b=tinymce.util.Tools.resolve("tinymce.Resource"),f=tinymce.util.Tools.resolve("tinymce.util.I18n");const A=(e,t)=>b.load(`tinymce.html-i18n.help-keynav.${t}`,`${e}/js/i18n/keynav/${t}.js`),w=e=>A(e,f.getCode()).catch((()=>A(e,"en")));var C=tinymce.util.Tools.resolve("tinymce.Env");const S=e=>{const t=C.os.isMacOS()||C.os.isiOS(),n=t?{alt:"&#x2325;",ctrl:"&#x2303;",shift:"&#x21E7;",meta:"&#x2318;",access:"&#x2303;&#x2325;"}:{meta:"Ctrl ",access:"Shift + Alt "},a=e.split("+"),r=s(a,(e=>{const t=e.toLowerCase().trim();return p(n,t)?n[t]:e}));return t?r.join("").replace(/\s/,""):r.join("+")},M=[{shortcuts:["Meta + B"],action:"Bold"},{shortcuts:["Meta + I"],action:"Italic"},{shortcuts:["Meta + U"],action:"Underline"},{shortcuts:["Meta + A"],action:"Select all"},{shortcuts:["Meta + Y","Meta + Shift + Z"],action:"Redo"},{shortcuts:["Meta + Z"],action:"Undo"},{shortcuts:["Access + 1"],action:"Heading 1"},{shortcuts:["Access + 2"],action:"Heading 2"},{shortcuts:["Access + 3"],action:"Heading 3"},{shortcuts:["Access + 4"],action:"Heading 4"},{shortcuts:["Access + 5"],action:"Heading 5"},{shortcuts:["Access + 6"],action:"Heading 6"},{shortcuts:["Access + 7"],action:"Paragraph"},{shortcuts:["Access + 8"],action:"Div"},{shortcuts:["Access + 9"],action:"Address"},{shortcuts:["Alt + 0"],action:"Open help dialog"},{shortcuts:["Alt + F9"],action:"Focus to menubar"},{shortcuts:["Alt + F10"],action:"Focus to toolbar"},{shortcuts:["Alt + F11"],action:"Focus to element path"},{shortcuts:["Alt + F12"],action:"Focus to notification"},{shortcuts:["Ctrl + F9"],action:"Focus to contextual toolbar"},{shortcuts:["Shift + Enter"],action:"Open popup menu for split buttons"},{shortcuts:["Meta + K"],action:"Insert link (if link plugin activated)"},{shortcuts:["Meta + S"],action:"Save (if save plugin activated)"},{shortcuts:["Meta + F"],action:"Find (if searchreplace plugin activated)"},{shortcuts:["Meta + Shift + F"],action:"Switch to or from fullscreen mode"}],_=()=>({name:"shortcuts",title:"Handy Shortcuts",items:[{type:"table",header:["Action","Shortcut"],cells:s(M,(e=>{const t=s(e.shortcuts,S).join(" or ");return[e.action,t]}))}]}),x=s([{key:"accordion",name:"Accordion"},{key:"anchor",name:"Anchor"},{key:"autolink",name:"Autolink"},{key:"autoresize",name:"Autoresize"},{key:"autosave",name:"Autosave"},{key:"charmap",name:"Character Map"},{key:"code",name:"Code"},{key:"codesample",name:"Code Sample"},{key:"colorpicker",name:"Color Picker"},{key:"directionality",name:"Directionality"},{key:"emoticons",name:"Emoticons"},{key:"fullscreen",name:"Full Screen"},{key:"help",name:"Help"},{key:"image",name:"Image"},{key:"importcss",name:"Import CSS"},{key:"insertdatetime",name:"Insert Date/Time"},{key:"link",name:"Link"},{key:"lists",name:"Lists"},{key:"advlist",name:"List Styles"},{key:"media",name:"Media"},{key:"nonbreaking",name:"Nonbreaking"},{key:"pagebreak",name:"Page Break"},{key:"preview",name:"Preview"},{key:"quickbars",name:"Quick Toolbars"},{key:"save",name:"Save"},{key:"searchreplace",name:"Search and Replace"},{key:"table",name:"Table"},{key:"textcolor",name:"Text Color"},{key:"visualblocks",name:"Visual Blocks"},{key:"visualchars",name:"Visual Characters"},{key:"wordcount",name:"Word Count"},{key:"a11ychecker",name:"Accessibility Checker",type:"premium"},{key:"typography",name:"Advanced Typography",type:"premium",slug:"advanced-typography"},{key:"ai",name:"AI Assistant",type:"premium"},{key:"casechange",name:"Case Change",type:"premium"},{key:"checklist",name:"Checklist",type:"premium"},{key:"advcode",name:"Enhanced Code Editor",type:"premium"},{key:"mediaembed",name:"Enhanced Media Embed",type:"premium",slug:"introduction-to-mediaembed"},{key:"advtable",name:"Enhanced Tables",type:"premium"},{key:"exportpdf",name:"Export to PDF",type:"premium"},{key:"exportword",name:"Export to Word",type:"premium"},{key:"footnotes",name:"Footnotes",type:"premium"},{key:"formatpainter",name:"Format Painter",type:"premium"},{key:"editimage",name:"Image Editing",type:"premium"},{key:"uploadcare",name:"Image Optimizer Powered by Uploadcare",type:"premium"},{key:"importword",name:"Import from Word",type:"premium"},{key:"inlinecss",name:"Inline CSS",type:"premium",slug:"inline-css"},{key:"linkchecker",name:"Link Checker",type:"premium"},{key:"math",name:"Math",type:"premium"},{key:"markdown",name:"Markdown",type:"premium"},{key:"mentions",name:"Mentions",type:"premium"},{key:"mergetags",name:"Merge Tags",type:"premium"},{key:"pageembed",name:"Page Embed",type:"premium"},{key:"permanentpen",name:"Permanent Pen",type:"premium"},{key:"powerpaste",name:"PowerPaste",type:"premium",slug:"introduction-to-powerpaste"},{key:"revisionhistory",name:"Revision History",type:"premium"},{key:"tinymcespellchecker",name:"Spell Checker",type:"premium",slug:"introduction-to-tiny-spellchecker"},{key:"autocorrect",name:"Spelling Autocorrect",type:"premium"},{key:"tableofcontents",name:"Table of Contents",type:"premium"},{key:"advtemplate",name:"Templates",type:"premium",slug:"advanced-templates"},{key:"tinycomments",name:"Tiny Comments",type:"premium",slug:"introduction-to-tiny-comments"},{key:"tinydrive",name:"Tiny Drive",type:"premium",slug:"tinydrive-introduction"}],(e=>({...e,type:e.type||"opensource",slug:e.slug||e.key}))),T=e=>{const o=e=>`<a data-alloy-tabstop="true" tabindex="-1" href="${e.url}" target="_blank" rel="noopener">${e.name}</a>`,u=(e,t)=>{return(i=x,s=e=>e.key===t,((e,t,n)=>{for(let a=0,o=e.length;a<o;a++){const o=e[a];if(t(o,a))return r.some(o);if(n(o,a))break}return r.none()})(i,s,a)).fold((()=>((e,t)=>{const a=e.plugins[t].getMetadata;if(n(a)){const e=a();return{name:e.name,html:o(e)}}return{name:t,html:t}})(e,t)),(e=>{const t="premium"===e.type?`${e.name}*`:e.name;return{name:t,html:o({name:t,url:`https://www.tiny.cloud/docs/tinymce/7/${e.slug}/`})}}));var i,s},p=e=>{const n=(e=>{const n=l(e.plugins),a=v(e),r=t(a)?["onboarding"]:a.concat(["onboarding"]);return c(n,(e=>!(((e,t)=>i.call(e,t))(r,e)>-1)))})(e),a=m(s(n,(t=>u(e,t))),((e,t)=>e.name.localeCompare(t.name))),r=s(a,(e=>"<li>"+e.html+"</li>")),o=r.length,p=r.join("");return"<p><b>"+f.translate(["Plugins installed ({0}):",o])+"</b></p><ul>"+p+"</ul>"},y={type:"htmlpanel",presets:"document",html:[(e=>null==e?"":"<div>"+p(e)+"</div>")(e),(()=>{const e=c(x,(({type:e})=>"premium"===e)),t=m(s(e,(e=>e.name)),((e,t)=>e.localeCompare(t))),n=s(t,(e=>`<li>${e}</li>`)).join("");return"<div><p><b>"+f.translate("Premium plugins:")+"</b></p><ul>"+n+'<li class="tox-help__more-link" "><a href="https://www.tiny.cloud/pricing/?utm_campaign=help_dialog_plugin_tab&utm_source=tiny&utm_medium=referral&utm_term=read_more&utm_content=premium_plugin_heading" rel="noopener" target="_blank" data-alloy-tabstop="true" tabindex="-1">'+f.translate("Learn more...")+"</a></li></ul></div>"})()].join("")};return{name:"plugins",title:"Plugins",items:[y]}};var O=tinymce.util.Tools.resolve("tinymce.EditorManager");const P=(t,n,a)=>()=>{(async(t,n,a)=>{const o=_(),i=await(async e=>({name:"keyboardnav",title:"Keyboard Navigation",items:[{type:"htmlpanel",presets:"document",html:await w(e)}]}))(a),c=T(t),m=(()=>{var e,t;const n='<a data-alloy-tabstop="true" tabindex="-1" href="https://www.tiny.cloud/docs/tinymce/7/changelog/?utm_campaign=help_dialog_version_tab&utm_source=tiny&utm_medium=referral" rel="noopener" target="_blank">TinyMCE '+(e=O.majorVersion,t=O.minorVersion,(0===e.indexOf("@")?"X.X.X":e+"."+t)+"</a>");return{name:"versions",title:"Version",items:[{type:"htmlpanel",html:"<p>"+f.translate(["You are using {0}",n])+"</p>",presets:"document"}]}})(),u={[o.name]:o,[i.name]:i,[c.name]:c,[m.name]:m,...n.get()};return r.from(k(t)).fold((()=>(e=>{const t=l(e),n=t.indexOf("versions");return-1!==n&&(t.splice(n,1),t.push("versions")),{tabs:e,names:t}})(u)),(t=>((t,n)=>{const a={},r=s(t,(t=>{var r;if(e(t))return p(n,t)&&(a[t]=n[t]),t;{const e=null!==(r=t.name)&&void 0!==r?r:h("tab-name");return a[e]=t,e}}));return{tabs:a,names:r}})(t,u)))})(t,n,a).then((({tabs:e,names:n})=>{const a={type:"tabpanel",tabs:(e=>{const t=[],n=e=>{t.push(e)};for(let t=0;t<e.length;t++)e[t].each(n);return t})(s(n,(t=>{return p(n=e,a=t)?r.from(n[a]):r.none();var n,a})))};t.windowManager.open({title:"Help",size:"medium",body:a,buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}],initialData:{}})}))};d.add("help",((e,t)=>{const n=(()=>{let e={};return{get:()=>e,set:t=>{e=t}}})(),a=(e=>({addTab:t=>{var n;const a=null!==(n=t.name)&&void 0!==n?n:h("tab-name"),r=e.get();r[a]=t,e.set(r)}}))(n);(e=>{(0,e.options.register)("help_tabs",{processor:"array"})})(e);const r=P(e,n,t);return((e,t)=>{e.ui.registry.addButton("help",{icon:"help",tooltip:"Help",onAction:t,context:"any"}),e.ui.registry.addMenuItem("help",{text:"Help",icon:"help",shortcut:"Alt+0",onAction:t,context:"any"})})(e,r),((e,t)=>{e.addCommand("mceHelp",t)})(e,r),e.shortcuts.add("Alt+0","Open help dialog","mceHelp"),((e,t)=>{e.on("init",(()=>{w(t)}))})(e,t),a}))}();
1
+ !function(){"use strict";const e=e=>"string"===(e=>{const t=typeof e;return null===e?"null":"object"===t&&Array.isArray(e)?"array":"object"===t&&(n=a=e,(r=String).prototype.isPrototypeOf(n)||a.constructor?.name===r.name)?"string":t;var n,a,r})(e);const t=e=>undefined===e;const n=e=>"function"==typeof e,a=()=>false;class r{tag;value;static singletonNone=new r(!1);constructor(e,t){this.tag=e,this.value=t}static some(e){return new r(!0,e)}static none(){return r.singletonNone}fold(e,t){return this.tag?t(this.value):e()}isSome(){return this.tag}isNone(){return!this.tag}map(e){return this.tag?r.some(e(this.value)):r.none()}bind(e){return this.tag?e(this.value):r.none()}exists(e){return this.tag&&e(this.value)}forall(e){return!this.tag||e(this.value)}filter(e){return!this.tag||e(this.value)?this:r.none()}getOr(e){return this.tag?this.value:e}or(e){return this.tag?this:e}getOrThunk(e){return this.tag?this.value:e()}orThunk(e){return this.tag?this:e()}getOrDie(e){if(this.tag)return this.value;throw new Error(e??"Called getOrDie on None")}static from(e){return null==e?r.none():r.some(e)}getOrNull(){return this.tag?this.value:null}getOrUndefined(){return this.value}each(e){this.tag&&e(this.value)}toArray(){return this.tag?[this.value]:[]}toString(){return this.tag?`some(${this.value})`:"none()"}}const o=Array.prototype.slice,i=Array.prototype.indexOf,s=(e,t)=>{const n=e.length,a=new Array(n);for(let r=0;r<n;r++){const n=e[r];a[r]=t(n,r)}return a},m=(e,t)=>{const n=[];for(let a=0,r=e.length;a<r;a++){const r=e[a];t(r,a)&&n.push(r)}return n},c=(e,t)=>{const n=o.call(e,0);return n.sort(t),n};n(Array.from)&&Array.from;const l=Object.keys,u=Object.hasOwnProperty,p=(e,t)=>u.call(e,t);let y=0;const h=e=>{const t=(new Date).getTime(),n=Math.floor(window.crypto.getRandomValues(new Uint32Array(1))[0]/4294967295*1e9);return y++,e+"_"+n+y+String(t)};var d=tinymce.util.Tools.resolve("tinymce.PluginManager");const g=e=>t=>t.options.get(e),k=g("help_tabs"),v=g("forced_plugins");var b=tinymce.util.Tools.resolve("tinymce.Resource"),f=tinymce.util.Tools.resolve("tinymce.util.I18n");const A=(e,t)=>b.load(`tinymce.html-i18n.help-keynav.${t}`,`${e}/js/i18n/keynav/${t}.js`),w=e=>A(e,f.getCode()).catch((()=>A(e,"en")));var C=tinymce.util.Tools.resolve("tinymce.Env");const S=e=>{const t=C.os.isMacOS()||C.os.isiOS(),n=t?{alt:"&#x2325;",ctrl:"&#x2303;",shift:"&#x21E7;",meta:"&#x2318;",access:"&#x2303;&#x2325;"}:{meta:"Ctrl ",access:"Shift + Alt "},a=e.split("+"),r=s(a,(e=>{const t=e.toLowerCase().trim();return p(n,t)?n[t]:e}));return t?r.join("").replace(/\s/,""):r.join("+")},M=[{shortcuts:["Meta + B"],action:"Bold"},{shortcuts:["Meta + I"],action:"Italic"},{shortcuts:["Meta + U"],action:"Underline"},{shortcuts:["Meta + A"],action:"Select all"},{shortcuts:["Meta + Y","Meta + Shift + Z"],action:"Redo"},{shortcuts:["Meta + Z"],action:"Undo"},{shortcuts:["Access + 1"],action:"Heading 1"},{shortcuts:["Access + 2"],action:"Heading 2"},{shortcuts:["Access + 3"],action:"Heading 3"},{shortcuts:["Access + 4"],action:"Heading 4"},{shortcuts:["Access + 5"],action:"Heading 5"},{shortcuts:["Access + 6"],action:"Heading 6"},{shortcuts:["Access + 7"],action:"Paragraph"},{shortcuts:["Access + 8"],action:"Div"},{shortcuts:["Access + 9"],action:"Address"},{shortcuts:["Alt + 0"],action:"Open help dialog"},{shortcuts:["Alt + F9"],action:"Focus to menubar"},{shortcuts:["Alt + F10"],action:"Focus to toolbar"},{shortcuts:["Alt + F11"],action:"Focus to element path"},{shortcuts:["Alt + F12"],action:"Focus to notification"},{shortcuts:["Ctrl + F9"],action:"Focus to contextual toolbar"},{shortcuts:["Shift + Enter"],action:"Open popup menu for split buttons"},{shortcuts:["Meta + K"],action:"Insert link (if link plugin activated)"},{shortcuts:["Meta + S"],action:"Save (if save plugin activated)"},{shortcuts:["Meta + F"],action:"Find (if searchreplace plugin activated)"},{shortcuts:["Meta + Shift + F"],action:"Switch to or from fullscreen mode"}],_=()=>({name:"shortcuts",title:"Handy Shortcuts",items:[{type:"table",header:["Action","Shortcut"],cells:s(M,(e=>{const t=s(e.shortcuts,S).join(" or ");return[e.action,t]}))}]}),x=s([{key:"accordion",name:"Accordion"},{key:"anchor",name:"Anchor"},{key:"autolink",name:"Autolink"},{key:"autoresize",name:"Autoresize"},{key:"autosave",name:"Autosave"},{key:"charmap",name:"Character Map"},{key:"code",name:"Code"},{key:"codesample",name:"Code Sample"},{key:"colorpicker",name:"Color Picker"},{key:"directionality",name:"Directionality"},{key:"emoticons",name:"Emoticons"},{key:"fullscreen",name:"Full Screen"},{key:"help",name:"Help"},{key:"image",name:"Image"},{key:"importcss",name:"Import CSS"},{key:"insertdatetime",name:"Insert Date/Time"},{key:"link",name:"Link"},{key:"lists",name:"Lists"},{key:"advlist",name:"List Styles"},{key:"media",name:"Media"},{key:"nonbreaking",name:"Nonbreaking"},{key:"pagebreak",name:"Page Break"},{key:"preview",name:"Preview"},{key:"quickbars",name:"Quick Toolbars"},{key:"save",name:"Save"},{key:"searchreplace",name:"Search and Replace"},{key:"table",name:"Table"},{key:"textcolor",name:"Text Color"},{key:"visualblocks",name:"Visual Blocks"},{key:"visualchars",name:"Visual Characters"},{key:"wordcount",name:"Word Count"},{key:"a11ychecker",name:"Accessibility Checker",type:"premium"},{key:"typography",name:"Advanced Typography",type:"premium",slug:"advanced-typography"},{key:"ai",name:"AI Assistant",type:"premium"},{key:"casechange",name:"Case Change",type:"premium"},{key:"checklist",name:"Checklist",type:"premium"},{key:"advcode",name:"Enhanced Code Editor",type:"premium"},{key:"mediaembed",name:"Enhanced Media Embed",type:"premium",slug:"introduction-to-mediaembed"},{key:"advtable",name:"Enhanced Tables",type:"premium"},{key:"exportpdf",name:"Export to PDF",type:"premium"},{key:"exportword",name:"Export to Word",type:"premium"},{key:"footnotes",name:"Footnotes",type:"premium"},{key:"formatpainter",name:"Format Painter",type:"premium"},{key:"editimage",name:"Image Editing",type:"premium"},{key:"uploadcare",name:"Image Optimizer Powered by Uploadcare",type:"premium"},{key:"importword",name:"Import from Word",type:"premium"},{key:"inlinecss",name:"Inline CSS",type:"premium",slug:"inline-css"},{key:"linkchecker",name:"Link Checker",type:"premium"},{key:"math",name:"Math",type:"premium"},{key:"markdown",name:"Markdown",type:"premium"},{key:"mentions",name:"Mentions",type:"premium"},{key:"mergetags",name:"Merge Tags",type:"premium"},{key:"pageembed",name:"Page Embed",type:"premium"},{key:"permanentpen",name:"Permanent Pen",type:"premium"},{key:"powerpaste",name:"PowerPaste",type:"premium",slug:"introduction-to-powerpaste"},{key:"revisionhistory",name:"Revision History",type:"premium"},{key:"tinymcespellchecker",name:"Spell Checker",type:"premium",slug:"introduction-to-tiny-spellchecker"},{key:"suggestededits",name:"Suggested Edits",type:"premium"},{key:"autocorrect",name:"Spelling Autocorrect",type:"premium"},{key:"tableofcontents",name:"Table of Contents",type:"premium"},{key:"fullpagehtml",name:"Fullpage HTML",type:"premium"},{key:"advtemplate",name:"Templates",type:"premium",slug:"advanced-templates"},{key:"tinycomments",name:"Tiny Comments",type:"premium",slug:"introduction-to-tiny-comments"},{key:"tinydrive",name:"Tiny Drive",type:"premium",slug:"tinydrive-introduction"}],(e=>({...e,type:e.type||"opensource",slug:e.slug||e.key}))),T=e=>{const o=e=>`<a data-alloy-tabstop="true" tabindex="-1" href="${e.url}" target="_blank" rel="noopener">${e.name}</a>`,u=(e,t)=>{return(i=x,s=e=>e.key===t,((e,t,n)=>{for(let a=0,o=e.length;a<o;a++){const o=e[a];if(t(o,a))return r.some(o);if(n(o,a))break}return r.none()})(i,s,a)).fold((()=>((e,t)=>{const a=e.plugins[t].getMetadata;if(n(a)){const e=a();return{name:e.name,html:o(e)}}return{name:t,html:t}})(e,t)),(e=>{const t="premium"===e.type?`${e.name}*`:e.name;return{name:t,html:o({name:t,url:`https://www.tiny.cloud/docs/tinymce/${tinymce.majorVersion}/${e.slug}/`})}}));var i,s},p=e=>{const n=(e=>{const n=l(e.plugins),a=v(e),r=t(a)?["onboarding","licensekeymanager"]:a.concat(["onboarding","licensekeymanager"]);return m(n,(e=>!(((e,t)=>i.call(e,t))(r,e)>-1)))})(e),a=c(s(n,(t=>u(e,t))),((e,t)=>e.name.localeCompare(t.name))),r=s(a,(e=>"<li>"+e.html+"</li>")),o=r.length,p=r.join("");return"<p><b>"+f.translate(["Plugins installed ({0}):",o])+"</b></p><ul>"+p+"</ul>"},y={type:"htmlpanel",presets:"document",html:[(e=>null==e?"":"<div>"+p(e)+"</div>")(e),(()=>{const e=m(x,(({type:e})=>"premium"===e)),t=c(s(e,(e=>e.name)),((e,t)=>e.localeCompare(t))),n=s(t,(e=>`<li>${e}</li>`)).join("");return"<div><p><b>"+f.translate("Premium plugins:")+"</b></p><ul>"+n+'<li class="tox-help__more-link" "><a href="https://www.tiny.cloud/pricing/?utm_campaign=help_dialog_plugin_tab&utm_source=tiny&utm_medium=referral&utm_term=read_more&utm_content=premium_plugin_heading" rel="noopener" target="_blank" data-alloy-tabstop="true" tabindex="-1">'+f.translate("Learn more...")+"</a></li></ul></div>"})()].join("")};return{name:"plugins",title:"Plugins",items:[y]}};var O=tinymce.util.Tools.resolve("tinymce.EditorManager");const F=(t,n,a)=>()=>{(async(t,n,a)=>{const o=_(),i=await(async e=>({name:"keyboardnav",title:"Keyboard Navigation",items:[{type:"htmlpanel",presets:"document",html:await w(e)}]}))(a),m=T(t),c=(()=>{var e,t;const n='<a data-alloy-tabstop="true" tabindex="-1" href="https://www.tiny.cloud/docs/tinymce/8/changelog/?utm_campaign=help_dialog_version_tab&utm_source=tiny&utm_medium=referral" rel="noopener" target="_blank">TinyMCE '+(e=O.majorVersion,t=O.minorVersion,(0===e.indexOf("@")?"X.X.X":e+"."+t)+"</a>");return{name:"versions",title:"Version",items:[{type:"htmlpanel",html:"<p>"+f.translate(["You are using {0}",n])+"</p>",presets:"document"}]}})(),u={[o.name]:o,[i.name]:i,[m.name]:m,[c.name]:c,...n.get()};return r.from(k(t)).fold((()=>(e=>{const t=l(e),n=t.indexOf("versions");return-1!==n&&(t.splice(n,1),t.push("versions")),{tabs:e,names:t}})(u)),(t=>((t,n)=>{const a={},r=s(t,(t=>{if(e(t))return p(n,t)&&(a[t]=n[t]),t;{const e=t.name??h("tab-name");return a[e]=t,e}}));return{tabs:a,names:r}})(t,u)))})(t,n,a).then((({tabs:e,names:n})=>{const a={type:"tabpanel",tabs:(e=>{const t=[],n=e=>{t.push(e)};for(let t=0;t<e.length;t++)e[t].each(n);return t})(s(n,(t=>{return p(n=e,a=t)?r.from(n[a]):r.none();var n,a})))};t.windowManager.open({title:"Help",size:"medium",body:a,buttons:[{type:"cancel",name:"close",text:"Close",primary:!0}],initialData:{}})}))};d.add("help",((e,t)=>{const n=(()=>{let e={};return{get:()=>e,set:t=>{e=t}}})(),a=(e=>({addTab:t=>{const n=t.name??h("tab-name"),a=e.get();a[n]=t,e.set(a)}}))(n);(e=>{(0,e.options.register)("help_tabs",{processor:"array"})})(e);const r=F(e,n,t);return((e,t)=>{e.ui.registry.addButton("help",{icon:"help",tooltip:"Help",onAction:t,context:"any"}),e.ui.registry.addMenuItem("help",{text:"Help",icon:"help",shortcut:"Alt+0",onAction:t,context:"any"})})(e,r),((e,t)=>{e.addCommand("mceHelp",t)})(e,r),e.shortcuts.add("Alt+0","Open help dialog","mceHelp"),((e,t)=>{e.on("init",(()=>{w(t)}))})(e,t),a}))}();