tinymce-rails 6.8.3 → 7.0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +6 -2
  3. data/app/assets/source/tinymce/tinymce.js +1596 -1416
  4. data/lib/tinymce/rails/asset_manifest.rb +8 -3
  5. data/lib/tinymce/rails/version.rb +2 -2
  6. data/vendor/assets/javascripts/tinymce/icons/default/icons.js +1 -1
  7. data/vendor/assets/javascripts/tinymce/license.md +6 -0
  8. data/vendor/assets/javascripts/tinymce/models/dom/model.js +2 -2
  9. data/vendor/assets/javascripts/tinymce/plugins/accordion/plugin.js +1 -1
  10. data/vendor/assets/javascripts/tinymce/plugins/advlist/plugin.js +2 -2
  11. data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.js +1 -1
  12. data/vendor/assets/javascripts/tinymce/plugins/autolink/plugin.js +1 -1
  13. data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.js +1 -1
  14. data/vendor/assets/javascripts/tinymce/plugins/autosave/plugin.js +1 -1
  15. data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.js +1 -1
  16. data/vendor/assets/javascripts/tinymce/plugins/code/plugin.js +1 -1
  17. data/vendor/assets/javascripts/tinymce/plugins/codesample/plugin.js +1 -1
  18. data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.js +1 -1
  19. data/vendor/assets/javascripts/tinymce/plugins/emoticons/plugin.js +2 -2
  20. data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.js +2 -2
  21. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ar.js +1 -1
  22. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/bg_BG.js +1 -1
  23. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ca.js +1 -1
  24. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/cs.js +1 -1
  25. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/da.js +1 -1
  26. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/de.js +1 -1
  27. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/el.js +1 -1
  28. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/en.js +1 -1
  29. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/es.js +1 -1
  30. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/eu.js +1 -1
  31. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/fa.js +1 -1
  32. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/fi.js +1 -1
  33. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/fr_FR.js +1 -1
  34. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/he_IL.js +1 -1
  35. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/hi.js +1 -1
  36. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/hr.js +1 -1
  37. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/hu_HU.js +1 -1
  38. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/id.js +1 -1
  39. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/it.js +1 -1
  40. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ja.js +1 -1
  41. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/kk.js +1 -1
  42. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ko_KR.js +1 -1
  43. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ms.js +1 -1
  44. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/nb_NO.js +1 -1
  45. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/nl.js +1 -1
  46. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/pl.js +1 -1
  47. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/pt_BR.js +1 -1
  48. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/pt_PT.js +1 -1
  49. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ro.js +1 -1
  50. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/ru.js +1 -1
  51. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/sk.js +1 -1
  52. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/sl_SI.js +2 -2
  53. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/sv_SE.js +1 -1
  54. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/th_TH.js +1 -1
  55. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/tr.js +1 -1
  56. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/uk.js +1 -1
  57. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/vi.js +1 -1
  58. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/zh_CN.js +1 -1
  59. data/vendor/assets/javascripts/tinymce/plugins/help/js/i18n/keynav/zh_TW.js +1 -1
  60. data/vendor/assets/javascripts/tinymce/plugins/help/plugin.js +2 -2
  61. data/vendor/assets/javascripts/tinymce/plugins/image/plugin.js +1 -1
  62. data/vendor/assets/javascripts/tinymce/plugins/importcss/plugin.js +1 -1
  63. data/vendor/assets/javascripts/tinymce/plugins/insertdatetime/plugin.js +1 -1
  64. data/vendor/assets/javascripts/tinymce/plugins/link/plugin.js +2 -2
  65. data/vendor/assets/javascripts/tinymce/plugins/lists/plugin.js +2 -2
  66. data/vendor/assets/javascripts/tinymce/plugins/media/plugin.js +2 -2
  67. data/vendor/assets/javascripts/tinymce/plugins/nonbreaking/plugin.js +1 -1
  68. data/vendor/assets/javascripts/tinymce/plugins/pagebreak/plugin.js +1 -1
  69. data/vendor/assets/javascripts/tinymce/plugins/preview/plugin.js +1 -1
  70. data/vendor/assets/javascripts/tinymce/plugins/quickbars/plugin.js +1 -1
  71. data/vendor/assets/javascripts/tinymce/plugins/save/plugin.js +2 -2
  72. data/vendor/assets/javascripts/tinymce/plugins/searchreplace/plugin.js +2 -2
  73. data/vendor/assets/javascripts/tinymce/plugins/table/plugin.js +2 -2
  74. data/vendor/assets/javascripts/tinymce/plugins/visualblocks/plugin.js +1 -1
  75. data/vendor/assets/javascripts/tinymce/plugins/visualchars/plugin.js +1 -1
  76. data/vendor/assets/javascripts/tinymce/plugins/wordcount/plugin.js +1 -1
  77. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.css +1 -1
  78. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.js +1 -1
  79. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.min.css +1 -1
  80. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.css +1 -1
  81. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.js +1 -1
  82. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  83. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.css +1 -1
  84. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.js +1 -1
  85. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
  86. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.css +1 -1
  87. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.js +1 -1
  88. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
  89. data/vendor/assets/javascripts/tinymce/themes/silver/theme.js +2 -2
  90. data/vendor/assets/javascripts/tinymce/tinymce.d.ts +27 -15
  91. data/vendor/assets/javascripts/tinymce/tinymce.js +2 -2
  92. metadata +6 -8
  93. data/LICENSE +0 -19
  94. data/vendor/assets/javascripts/tinymce/license.txt +0 -21
  95. data/vendor/assets/javascripts/tinymce/plugins/template/plugin.js +0 -4
  96. /data/vendor/assets/javascripts/tinymce/langs/{README.md → readme.md} +0 -0
@@ -152,7 +152,7 @@ interface ElementSettings {
152
152
  wrap_block_elements?: string;
153
153
  }
154
154
  interface SchemaSettings extends ElementSettings {
155
- custom_elements?: string;
155
+ custom_elements?: string | Record<string, CustomElementSpec>;
156
156
  extended_valid_elements?: string;
157
157
  invalid_elements?: string;
158
158
  invalid_styles?: string | Record<string, string>;
@@ -200,6 +200,12 @@ interface SchemaMap {
200
200
  interface SchemaRegExpMap {
201
201
  [name: string]: RegExp;
202
202
  }
203
+ interface CustomElementSpec {
204
+ extends?: string;
205
+ attributes?: string[];
206
+ children?: string[];
207
+ padEmpty?: boolean;
208
+ }
203
209
  interface Schema {
204
210
  type: SchemaType;
205
211
  children: Record<string, SchemaMap>;
@@ -227,7 +233,7 @@ interface Schema {
227
233
  getCustomElements: () => SchemaMap;
228
234
  addValidElements: (validElements: string) => void;
229
235
  setValidElements: (validElements: string) => void;
230
- addCustomElements: (customElements: string) => void;
236
+ addCustomElements: (customElements: string | Record<string, CustomElementSpec>) => void;
231
237
  addValidChildren: (validChildren: any) => void;
232
238
  }
233
239
  type Attributes$1 = Array<{
@@ -374,6 +380,12 @@ interface Annotator {
374
380
  removeAll: (name: string) => void;
375
381
  getAll: (name: string) => Record<string, Element[]>;
376
382
  }
383
+ interface IsEmptyOptions {
384
+ readonly skipBogus?: boolean;
385
+ readonly includeZwsp?: boolean;
386
+ readonly checkRootAsContent?: boolean;
387
+ readonly isContent?: (node: Node) => boolean;
388
+ }
377
389
  interface GeomRect {
378
390
  readonly x: number;
379
391
  readonly y: number;
@@ -400,7 +412,6 @@ interface NotificationSpec {
400
412
  icon?: string;
401
413
  progressBar?: boolean;
402
414
  timeout?: number;
403
- closeButton?: boolean;
404
415
  }
405
416
  interface NotificationApi {
406
417
  close: () => void;
@@ -429,6 +440,7 @@ interface UploadResult$2 {
429
440
  status: boolean;
430
441
  error?: UploadFailure;
431
442
  }
443
+ type BlockPatternTrigger = 'enter' | 'space';
432
444
  interface RawPattern {
433
445
  start?: any;
434
446
  end?: any;
@@ -436,6 +448,7 @@ interface RawPattern {
436
448
  cmd?: any;
437
449
  value?: any;
438
450
  replacement?: any;
451
+ trigger?: BlockPatternTrigger;
439
452
  }
440
453
  interface InlineBasePattern {
441
454
  readonly start: string;
@@ -453,6 +466,7 @@ interface InlineCmdPattern extends InlineBasePattern {
453
466
  type InlinePattern = InlineFormatPattern | InlineCmdPattern;
454
467
  interface BlockBasePattern {
455
468
  readonly start: string;
469
+ readonly trigger: BlockPatternTrigger;
456
470
  }
457
471
  interface BlockFormatPattern extends BlockBasePattern {
458
472
  readonly type: 'block-format';
@@ -531,6 +545,7 @@ interface CustomEditorNewSpec extends FormComponentSpec {
531
545
  tag?: string;
532
546
  scriptId: string;
533
547
  scriptUrl: string;
548
+ onFocus?: (e: HTMLElement) => void;
534
549
  settings?: any;
535
550
  }
536
551
  type CustomEditorSpec = CustomEditorOldSpec | CustomEditorNewSpec;
@@ -639,6 +654,7 @@ interface BaseToolbarButtonInstanceApi {
639
654
  interface ToolbarButtonSpec extends BaseToolbarButtonSpec<ToolbarButtonInstanceApi> {
640
655
  type?: 'button';
641
656
  onAction: (api: ToolbarButtonInstanceApi) => void;
657
+ shortcut?: string;
642
658
  }
643
659
  interface ToolbarButtonInstanceApi extends BaseToolbarButtonInstanceApi {
644
660
  }
@@ -850,6 +866,7 @@ interface BaseToolbarToggleButtonInstanceApi extends BaseToolbarButtonInstanceAp
850
866
  interface ToolbarToggleButtonSpec extends BaseToolbarToggleButtonSpec<ToolbarToggleButtonInstanceApi> {
851
867
  type?: 'togglebutton';
852
868
  onAction: (api: ToolbarToggleButtonInstanceApi) => void;
869
+ shortcut?: string;
853
870
  }
854
871
  interface ToolbarToggleButtonInstanceApi extends BaseToolbarToggleButtonInstanceApi {
855
872
  }
@@ -1025,8 +1042,7 @@ interface AutocompleterItemSpec {
1025
1042
  type AutocompleterContents = SeparatorItemSpec | AutocompleterItemSpec | CardMenuItemSpec;
1026
1043
  interface AutocompleterSpec {
1027
1044
  type?: 'autocompleter';
1028
- ch?: string;
1029
- trigger?: string;
1045
+ trigger: string;
1030
1046
  minChars?: number;
1031
1047
  columns?: ColumnTypes;
1032
1048
  matches?: (rng: Range, text: string, pattern: string) => boolean;
@@ -1384,9 +1400,9 @@ interface DomParserSettings {
1384
1400
  inline_styles?: boolean;
1385
1401
  pad_empty_with_br?: boolean;
1386
1402
  preserve_cdata?: boolean;
1387
- remove_trailing_brs?: boolean;
1388
1403
  root_name?: string;
1389
1404
  sandbox_iframes?: boolean;
1405
+ sandbox_iframes_exclusions?: string[];
1390
1406
  sanitize?: boolean;
1391
1407
  validate?: boolean;
1392
1408
  }
@@ -1797,7 +1813,6 @@ interface ToolbarGroup {
1797
1813
  }
1798
1814
  type ToolbarMode = 'floating' | 'sliding' | 'scrolling' | 'wrap';
1799
1815
  type ToolbarLocation = 'top' | 'bottom' | 'auto';
1800
- type ForceHexColor = 'always' | 'rgb_only' | 'off';
1801
1816
  interface BaseEditorOptions {
1802
1817
  a11y_advanced_options?: boolean;
1803
1818
  add_form_submit_trigger?: boolean;
@@ -1841,7 +1856,7 @@ interface BaseEditorOptions {
1841
1856
  convert_unsafe_embeds?: boolean;
1842
1857
  convert_urls?: boolean;
1843
1858
  custom_colors?: boolean;
1844
- custom_elements?: string;
1859
+ custom_elements?: string | Record<string, CustomElementSpec>;
1845
1860
  custom_ui_selector?: string;
1846
1861
  custom_undo_redo_levels?: number;
1847
1862
  default_font_stack?: string[];
@@ -1873,7 +1888,6 @@ interface BaseEditorOptions {
1873
1888
  font_size_style_values?: string;
1874
1889
  font_size_formats?: string;
1875
1890
  font_size_input_default_unit?: string;
1876
- force_hex_color?: ForceHexColor;
1877
1891
  forced_root_block?: string;
1878
1892
  forced_root_block_attrs?: Record<string, string>;
1879
1893
  formats?: Formats;
@@ -1954,6 +1968,7 @@ interface BaseEditorOptions {
1954
1968
  resize_img_proportional?: boolean;
1955
1969
  root_name?: string;
1956
1970
  sandbox_iframes?: boolean;
1971
+ sandbox_iframes_exclusions?: string[];
1957
1972
  schema?: SchemaType;
1958
1973
  selector?: string;
1959
1974
  setup?: SetupCallback;
@@ -2003,6 +2018,7 @@ interface BaseEditorOptions {
2003
2018
  visual_table_class?: string;
2004
2019
  width?: number | string;
2005
2020
  xss_sanitization?: boolean;
2021
+ license_key?: string;
2006
2022
  disable_nodechange?: boolean;
2007
2023
  forced_plugins?: string | string[];
2008
2024
  plugin_base_urls?: Record<string, string>;
@@ -2054,7 +2070,6 @@ interface EditorOptions extends NormalizedEditorOptions {
2054
2070
  font_size_style_values: string;
2055
2071
  forced_root_block: string;
2056
2072
  forced_root_block_attrs: Record<string, string>;
2057
- force_hex_color: ForceHexColor;
2058
2073
  format_noneditable_selector: string;
2059
2074
  height: number | string;
2060
2075
  highlight_on_focus: boolean;
@@ -2089,6 +2104,7 @@ interface EditorOptions extends NormalizedEditorOptions {
2089
2104
  readonly: boolean;
2090
2105
  removed_menuitems: string;
2091
2106
  sandbox_iframes: boolean;
2107
+ sandbox_iframes_exclusions: string[];
2092
2108
  toolbar: boolean | string | string[] | Array<ToolbarGroup>;
2093
2109
  toolbar_groups: Record<string, GroupToolbarButtonSpec>;
2094
2110
  toolbar_location: ToolbarLocation;
@@ -2110,7 +2126,6 @@ interface StylesSettings {
2110
2126
  allow_svg_data_urls?: boolean;
2111
2127
  url_converter?: URLConverter;
2112
2128
  url_converter_scope?: any;
2113
- force_hex_color?: ForceHexColor;
2114
2129
  }
2115
2130
  interface Styles {
2116
2131
  parse: (css: string | undefined) => Record<string, string>;
@@ -2171,7 +2186,6 @@ interface DOMUtilsSettings {
2171
2186
  onSetAttrib: (event: SetAttribEvent) => void;
2172
2187
  contentCssCors: boolean;
2173
2188
  referrerPolicy: ReferrerPolicy;
2174
- force_hex_color: ForceHexColor;
2175
2189
  }
2176
2190
  type Target = Node | Window;
2177
2191
  type RunArguments<T extends Node = Node> = string | T | Array<string | T> | null;
@@ -2290,9 +2304,7 @@ interface DOMUtils {
2290
2304
  findCommonAncestor: (a: Node, b: Node) => Node | null;
2291
2305
  run<R, T extends Node>(this: DOMUtils, elm: T | T[], func: (node: T) => R, scope?: any): typeof elm extends Array<any> ? R[] : R;
2292
2306
  run<R, T extends Node>(this: DOMUtils, elm: RunArguments<T>, func: (node: T) => R, scope?: any): RunResult<typeof elm, R>;
2293
- isEmpty: (node: Node, elements?: Record<string, any>, options?: ({
2294
- includeZwsp?: boolean;
2295
- })) => boolean;
2307
+ isEmpty: (node: Node, elements?: Record<string, any>, options?: IsEmptyOptions) => boolean;
2296
2308
  createRng: () => Range;
2297
2309
  nodeIndex: (node: Node, normalized?: boolean) => number;
2298
2310
  split: {