tinymce-rails 7.2.1 → 7.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (98) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +10 -4
  3. data/app/assets/source/tinymce/tinymce.js +263 -189
  4. data/lib/tinymce/rails/asset_installer/copy_no_preserve.rb +1 -1
  5. data/lib/tinymce/rails/asset_installer.rb +4 -4
  6. data/lib/tinymce/rails/asset_manifest/json_manifest.rb +62 -0
  7. data/lib/tinymce/rails/asset_manifest/null_manifest.rb +12 -0
  8. data/lib/tinymce/rails/asset_manifest/propshaft_manifest.rb +43 -0
  9. data/lib/tinymce/rails/asset_manifest/yaml_manifest.rb +43 -0
  10. data/lib/tinymce/rails/asset_manifest.rb +6 -108
  11. data/lib/tinymce/rails/engine.rb +15 -2
  12. data/lib/tinymce/rails/helper.rb +19 -5
  13. data/lib/tinymce/rails/propshaft/asset.rb +11 -0
  14. data/lib/tinymce/rails/version.rb +2 -2
  15. data/lib/tinymce/rails.rb +2 -2
  16. data/vendor/assets/javascripts/tinymce/icons/default/icons.js +1 -1
  17. data/vendor/assets/javascripts/tinymce/models/dom/model.js +2 -2
  18. data/vendor/assets/javascripts/tinymce/plugins/accordion/plugin.js +2 -2
  19. data/vendor/assets/javascripts/tinymce/plugins/advlist/plugin.js +2 -2
  20. data/vendor/assets/javascripts/tinymce/plugins/anchor/plugin.js +1 -1
  21. data/vendor/assets/javascripts/tinymce/plugins/autolink/plugin.js +2 -2
  22. data/vendor/assets/javascripts/tinymce/plugins/autoresize/plugin.js +1 -1
  23. data/vendor/assets/javascripts/tinymce/plugins/autosave/plugin.js +2 -2
  24. data/vendor/assets/javascripts/tinymce/plugins/charmap/plugin.js +1 -1
  25. data/vendor/assets/javascripts/tinymce/plugins/code/plugin.js +1 -1
  26. data/vendor/assets/javascripts/tinymce/plugins/codesample/plugin.js +1 -1
  27. data/vendor/assets/javascripts/tinymce/plugins/directionality/plugin.js +2 -2
  28. data/vendor/assets/javascripts/tinymce/plugins/emoticons/plugin.js +1 -1
  29. data/vendor/assets/javascripts/tinymce/plugins/fullscreen/plugin.js +2 -2
  30. data/vendor/assets/javascripts/tinymce/plugins/help/plugin.js +2 -2
  31. data/vendor/assets/javascripts/tinymce/plugins/image/plugin.js +2 -2
  32. data/vendor/assets/javascripts/tinymce/plugins/importcss/plugin.js +1 -1
  33. data/vendor/assets/javascripts/tinymce/plugins/insertdatetime/plugin.js +2 -2
  34. data/vendor/assets/javascripts/tinymce/plugins/link/plugin.js +2 -2
  35. data/vendor/assets/javascripts/tinymce/plugins/lists/plugin.js +2 -2
  36. data/vendor/assets/javascripts/tinymce/plugins/media/plugin.js +1 -1
  37. data/vendor/assets/javascripts/tinymce/plugins/nonbreaking/plugin.js +1 -1
  38. data/vendor/assets/javascripts/tinymce/plugins/pagebreak/plugin.js +1 -1
  39. data/vendor/assets/javascripts/tinymce/plugins/preview/plugin.js +2 -2
  40. data/vendor/assets/javascripts/tinymce/plugins/quickbars/plugin.js +2 -2
  41. data/vendor/assets/javascripts/tinymce/plugins/save/plugin.js +1 -1
  42. data/vendor/assets/javascripts/tinymce/plugins/searchreplace/plugin.js +1 -1
  43. data/vendor/assets/javascripts/tinymce/plugins/table/plugin.js +2 -2
  44. data/vendor/assets/javascripts/tinymce/plugins/visualblocks/plugin.js +2 -2
  45. data/vendor/assets/javascripts/tinymce/plugins/visualchars/plugin.js +2 -2
  46. data/vendor/assets/javascripts/tinymce/plugins/wordcount/plugin.js +2 -2
  47. data/vendor/assets/javascripts/tinymce/skins/content/dark/content.js +1 -2
  48. data/vendor/assets/javascripts/tinymce/skins/content/default/content.js +1 -2
  49. data/vendor/assets/javascripts/tinymce/skins/content/document/content.js +1 -2
  50. data/vendor/assets/javascripts/tinymce/skins/content/tinymce-5/content.js +1 -2
  51. data/vendor/assets/javascripts/tinymce/skins/content/tinymce-5-dark/content.js +1 -2
  52. data/vendor/assets/javascripts/tinymce/skins/content/writer/content.js +1 -2
  53. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.css +1 -1
  54. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.inline.css +1 -1
  55. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.inline.js +1 -2
  56. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.inline.min.css +1 -1
  57. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.js +1 -2
  58. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/content.min.css +1 -1
  59. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.css +1 -1
  60. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.js +1 -2
  61. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.min.css +1 -1
  62. data/vendor/assets/javascripts/tinymce/skins/ui/oxide/skin.shadowdom.js +1 -2
  63. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.css +1 -1
  64. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.inline.css +1 -1
  65. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.inline.js +1 -2
  66. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.inline.min.css +1 -1
  67. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.js +1 -2
  68. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/content.min.css +1 -1
  69. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.css +1 -1
  70. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.js +1 -2
  71. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.min.css +1 -1
  72. data/vendor/assets/javascripts/tinymce/skins/ui/oxide-dark/skin.shadowdom.js +1 -2
  73. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/content.css +1 -1
  74. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/content.inline.css +1 -1
  75. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/content.inline.js +1 -2
  76. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/content.inline.min.css +1 -1
  77. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/content.js +1 -2
  78. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/content.min.css +1 -1
  79. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.css +1 -1
  80. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.js +1 -2
  81. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.min.css +1 -1
  82. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5/skin.shadowdom.js +1 -2
  83. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/content.css +1 -1
  84. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/content.inline.css +1 -1
  85. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/content.inline.js +1 -2
  86. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/content.inline.min.css +1 -1
  87. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/content.js +1 -2
  88. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/content.min.css +1 -1
  89. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.css +1 -1
  90. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.js +1 -2
  91. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.min.css +1 -1
  92. data/vendor/assets/javascripts/tinymce/skins/ui/tinymce-5-dark/skin.shadowdom.js +1 -2
  93. data/vendor/assets/javascripts/tinymce/themes/silver/theme.js +2 -2
  94. data/vendor/assets/javascripts/tinymce/tinymce.d.ts +23 -0
  95. data/vendor/assets/javascripts/tinymce/tinymce.js +2 -2
  96. metadata +13 -8
  97. /data/app/assets/{javascripts → sprockets}/tinymce/preinit.js.erb +0 -0
  98. /data/app/assets/{javascripts → sprockets}/tinymce.js +0 -0
@@ -501,6 +501,7 @@ interface ButtonSpec {
501
501
  icon?: string;
502
502
  borderless?: boolean;
503
503
  buttonType?: 'primary' | 'secondary' | 'toolbar';
504
+ context?: string;
504
505
  }
505
506
  interface FormComponentSpec {
506
507
  type: string;
@@ -513,9 +514,11 @@ interface CheckboxSpec extends FormComponentSpec {
513
514
  type: 'checkbox';
514
515
  label: string;
515
516
  enabled?: boolean;
517
+ context?: string;
516
518
  }
517
519
  interface CollectionSpec extends FormComponentWithLabelSpec {
518
520
  type: 'collection';
521
+ context?: string;
519
522
  }
520
523
  interface CollectionItem {
521
524
  value: string;
@@ -525,6 +528,7 @@ interface CollectionItem {
525
528
  interface ColorInputSpec extends FormComponentWithLabelSpec {
526
529
  type: 'colorinput';
527
530
  storageKey?: string;
531
+ context?: string;
528
532
  }
529
533
  interface ColorPickerSpec extends FormComponentWithLabelSpec {
530
534
  type: 'colorpicker';
@@ -551,6 +555,7 @@ interface CustomEditorNewSpec extends FormComponentSpec {
551
555
  type CustomEditorSpec = CustomEditorOldSpec | CustomEditorNewSpec;
552
556
  interface DropZoneSpec extends FormComponentWithLabelSpec {
553
557
  type: 'dropzone';
558
+ context?: string;
554
559
  }
555
560
  interface GridSpec {
556
561
  type: 'grid';
@@ -581,6 +586,7 @@ interface InputSpec extends FormComponentWithLabelSpec {
581
586
  placeholder?: string;
582
587
  maximized?: boolean;
583
588
  enabled?: boolean;
589
+ context?: string;
584
590
  }
585
591
  type Alignment = 'start' | 'center' | 'end';
586
592
  interface LabelSpec {
@@ -603,6 +609,7 @@ interface ListBoxSpec extends FormComponentWithLabelSpec {
603
609
  type: 'listbox';
604
610
  items: ListBoxItemSpec[];
605
611
  disabled?: boolean;
612
+ context?: string;
606
613
  }
607
614
  interface PanelSpec {
608
615
  type: 'panel';
@@ -618,11 +625,13 @@ interface SelectBoxSpec extends FormComponentWithLabelSpec {
618
625
  items: SelectBoxItemSpec[];
619
626
  size?: number;
620
627
  enabled?: boolean;
628
+ context?: string;
621
629
  }
622
630
  interface SizeInputSpec extends FormComponentWithLabelSpec {
623
631
  type: 'sizeinput';
624
632
  constrain?: boolean;
625
633
  enabled?: boolean;
634
+ context?: string;
626
635
  }
627
636
  interface SliderSpec extends FormComponentSpec {
628
637
  type: 'slider';
@@ -640,6 +649,7 @@ interface TextAreaSpec extends FormComponentWithLabelSpec {
640
649
  placeholder?: string;
641
650
  maximized?: boolean;
642
651
  enabled?: boolean;
652
+ context?: string;
643
653
  }
644
654
  interface BaseToolbarButtonSpec<I extends BaseToolbarButtonInstanceApi> {
645
655
  enabled?: boolean;
@@ -647,6 +657,7 @@ interface BaseToolbarButtonSpec<I extends BaseToolbarButtonInstanceApi> {
647
657
  icon?: string;
648
658
  text?: string;
649
659
  onSetup?: (api: I) => (api: I) => void;
660
+ context?: string;
650
661
  }
651
662
  interface BaseToolbarButtonInstanceApi {
652
663
  isEnabled: () => boolean;
@@ -701,6 +712,7 @@ interface CommonMenuItemSpec {
701
712
  value?: string;
702
713
  meta?: Record<string, any>;
703
714
  shortcut?: string;
715
+ context?: string;
704
716
  }
705
717
  interface CommonMenuItemInstanceApi {
706
718
  isEnabled: () => boolean;
@@ -816,6 +828,7 @@ interface BaseMenuButtonSpec {
816
828
  };
817
829
  fetch: (success: SuccessCallback$1, fetchContext: MenuButtonFetchContext, api: BaseMenuButtonInstanceApi) => void;
818
830
  onSetup?: (api: BaseMenuButtonInstanceApi) => (api: BaseMenuButtonInstanceApi) => void;
831
+ context?: string;
819
832
  }
820
833
  interface BaseMenuButtonInstanceApi {
821
834
  isEnabled: () => boolean;
@@ -848,6 +861,7 @@ interface ToolbarSplitButtonSpec {
848
861
  onSetup?: (api: ToolbarSplitButtonInstanceApi) => (api: ToolbarSplitButtonInstanceApi) => void;
849
862
  onAction: (api: ToolbarSplitButtonInstanceApi) => void;
850
863
  onItemAction: (api: ToolbarSplitButtonInstanceApi, value: string) => void;
864
+ context?: string;
851
865
  }
852
866
  interface ToolbarSplitButtonInstanceApi {
853
867
  isEnabled: () => boolean;
@@ -889,6 +903,8 @@ interface BaseTreeItemSpec {
889
903
  title: string;
890
904
  id: Id;
891
905
  menu?: ToolbarMenuButtonSpec;
906
+ customStateIcon?: string;
907
+ customStateIconTooltip?: string;
892
908
  }
893
909
  interface DirectorySpec extends BaseTreeItemSpec {
894
910
  type: 'directory';
@@ -903,6 +919,7 @@ interface UrlInputSpec extends FormComponentWithLabelSpec {
903
919
  filetype?: 'image' | 'media' | 'file';
904
920
  enabled?: boolean;
905
921
  picker_text?: string;
922
+ context?: string;
906
923
  }
907
924
  interface UrlInputData {
908
925
  value: string;
@@ -927,6 +944,7 @@ interface BaseDialogFooterButtonSpec {
927
944
  enabled?: boolean;
928
945
  icon?: string;
929
946
  buttonType?: 'primary' | 'secondary';
947
+ context?: string;
930
948
  }
931
949
  interface DialogFooterNormalButtonSpec extends BaseDialogFooterButtonSpec {
932
950
  type: 'submit' | 'cancel' | 'custom';
@@ -1229,6 +1247,7 @@ interface ViewButtonApi {
1229
1247
  interface ViewToggleButtonApi extends ViewButtonApi {
1230
1248
  isActive: () => boolean;
1231
1249
  setActive: (state: boolean) => void;
1250
+ focus: () => void;
1232
1251
  }
1233
1252
  interface BaseButtonSpec<Api extends ViewButtonApi> {
1234
1253
  text?: string;
@@ -1237,6 +1256,7 @@ interface BaseButtonSpec<Api extends ViewButtonApi> {
1237
1256
  buttonType?: 'primary' | 'secondary';
1238
1257
  borderless?: boolean;
1239
1258
  onAction: (api: Api) => void;
1259
+ context?: string;
1240
1260
  }
1241
1261
  interface ViewNormalButtonSpec extends BaseButtonSpec<ViewButtonApi> {
1242
1262
  text: string;
@@ -1281,6 +1301,7 @@ interface Registry$1 {
1281
1301
  addAutocompleter: (name: string, spec: AutocompleterSpec) => void;
1282
1302
  addSidebar: (name: string, spec: SidebarSpec) => void;
1283
1303
  addView: (name: string, spec: ViewSpec) => void;
1304
+ addContext: (name: string, pred: (args: string) => boolean) => void;
1284
1305
  getAll: () => {
1285
1306
  buttons: Record<string, ToolbarButtonSpec | GroupToolbarButtonSpec | ToolbarMenuButtonSpec | ToolbarSplitButtonSpec | ToolbarToggleButtonSpec>;
1286
1307
  menuItems: Record<string, MenuItemSpec | NestedMenuItemSpec | ToggleMenuItemSpec>;
@@ -1290,6 +1311,7 @@ interface Registry$1 {
1290
1311
  icons: Record<string, string>;
1291
1312
  sidebars: Record<string, SidebarSpec>;
1292
1313
  views: Record<string, ViewSpec>;
1314
+ contexts: Record<string, (args: string) => boolean>;
1293
1315
  };
1294
1316
  }
1295
1317
  interface AutocompleteLookupData {
@@ -1392,6 +1414,7 @@ interface DomParserSettings {
1392
1414
  allow_html_in_named_anchor?: boolean;
1393
1415
  allow_script_urls?: boolean;
1394
1416
  allow_unsafe_link_target?: boolean;
1417
+ allow_mathml_annotation_encodings?: string[];
1395
1418
  blob_cache?: BlobCache;
1396
1419
  convert_fonts_to_spans?: boolean;
1397
1420
  convert_unsafe_embeds?: boolean;