@instructure/canvas-rce 5.11.1 → 5.12.2

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 (505) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/babel-register.js +0 -7
  3. package/babel.config.cjs.js +0 -7
  4. package/babel.config.js +0 -9
  5. package/es/canvasFileBrowser/FileBrowser.js +6 -1
  6. package/es/common/fileUrl.js +3 -4
  7. package/es/defaultTinymceConfig.js +1 -1
  8. package/{lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/Lti13ContentItemJson.js → es/elementDenylist.js} +2 -6
  9. package/es/enhance-user-content/doc_previews.js +4 -0
  10. package/es/enhance-user-content/enhance_user_content.js +4 -59
  11. package/es/enhance-user-content/external_links.js +75 -0
  12. package/es/enhance-user-content/mathml.js +9 -7
  13. package/es/getThemeVars.js +4 -3
  14. package/es/getTranslations.js +77 -1
  15. package/es/index.js +1 -1
  16. package/es/rce/RCEWrapper.js +5 -2328
  17. package/es/rce/StatusBar.js +8 -2
  18. package/es/rce/contentInsertion.js +5 -2
  19. package/es/rce/plugins/instructure_documents/components/DocumentsPanel.js +3 -9
  20. package/es/rce/plugins/instructure_equation/EquationEditorModal/index.js +1 -1
  21. package/es/rce/plugins/instructure_equation/EquationEditorModal/styles.js +3 -11
  22. package/es/rce/plugins/instructure_equation/mathlive/index.js +5 -13
  23. package/es/rce/plugins/instructure_html_view/plugin.js +2 -2
  24. package/es/rce/plugins/instructure_icon_maker/components/SavedIconMakerList.js +3 -2
  25. package/es/rce/plugins/instructure_image/ImageList/Image.js +2 -2
  26. package/es/rce/plugins/instructure_image/Images/index.js +3 -10
  27. package/es/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialog.js +3 -0
  28. package/es/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ResourceLinkContentItem.js +3 -1
  29. package/es/rce/plugins/instructure_record/AudioOptionsTray/TrayController.js +26 -1
  30. package/es/rce/plugins/instructure_record/AudioOptionsTray/index.js +9 -3
  31. package/es/rce/plugins/instructure_record/MediaPanel/index.js +3 -9
  32. package/es/rce/plugins/instructure_record/VideoOptionsTray/TrayController.js +27 -2
  33. package/es/rce/plugins/instructure_record/VideoOptionsTray/index.js +35 -6
  34. package/es/rce/plugins/shared/fileShape.js +81 -9
  35. package/es/rce/plugins/shared/fileTypeUtils.js +6 -0
  36. package/es/rce/tinymce.oxide.content.min.css.js +732 -0
  37. package/es/rce/tinymce.oxide.skin.min.css.js +7 -0
  38. package/es/rcs/api.js +6 -4
  39. package/es/sidebar/store/configureStore.js +2 -2
  40. package/{lib/translations/locales/tg.js → es/translations/locales/ab.js} +1 -1
  41. package/es/translations/locales/cs.js +27 -0
  42. package/es/translations/locales/cs_CZ.js +27 -0
  43. package/{lib/translations/locales/sv_SE.js → es/translations/locales/da_DK.js} +2 -2
  44. package/{lib/translations/locales/se.js → es/translations/locales/en_NZ.js} +2 -2
  45. package/es/translations/locales/en_SE.js +26 -0
  46. package/es/translations/locales/en_US.js +26 -0
  47. package/es/translations/locales/hu_HU.js +27 -0
  48. package/{lib/translations/locales/ms.js → es/translations/locales/id.js} +632 -632
  49. package/{lib/translations/locales/th.js → es/translations/locales/id_ID.js} +1 -2
  50. package/{lib/translations/locales/vi_VN.js → es/translations/locales/ko_KR.js} +2 -2
  51. package/es/translations/locales/lt.js +26 -0
  52. package/es/translations/locales/lt_LT.js +26 -0
  53. package/es/translations/locales/mn_MN.js +26 -0
  54. package/es/translations/locales/nl_NL.js +27 -0
  55. package/{lib/translations/locales/es_GT.js → es/translations/locales/ro.js} +3 -3
  56. package/es/translations/locales/ru.js +2375 -32
  57. package/es/translations/locales/sv.js +2379 -30
  58. package/es/translations/locales/th.js +2401 -1
  59. package/es/translations/locales/tl_PH.js +26 -0
  60. package/es/translations/locales/tr.js +3 -0
  61. package/es/translations/locales/vi.js +2396 -8
  62. package/es/translations/locales/zh_TW.Big5.js +27 -0
  63. package/{lib/translations/locales/th_TH.js → es/translations/locales/zh_TW.js} +2 -2
  64. package/jest.config.js +0 -7
  65. package/package.json +9 -11
  66. package/scripts/build.js +1 -7
  67. package/scripts/publish_to_npm.sh +26 -0
  68. package/canvas/README.md +0 -84
  69. package/canvas/locales/en.json +0 -934
  70. package/canvas/package.json +0 -189
  71. package/es/common/scroll.js +0 -45
  72. package/es/types/inst-ui.d.js +0 -18
  73. package/es/types/ts-migration.js +0 -1
  74. package/lib/bridge/Bridge.js +0 -287
  75. package/lib/bridge/index.js +0 -21
  76. package/lib/canvasFileBrowser/FileBrowser.js +0 -452
  77. package/lib/canvasFileBrowser/en-US.js +0 -234
  78. package/lib/common/FlashAlert.js +0 -263
  79. package/lib/common/browser.js +0 -40
  80. package/lib/common/components/FileTree/File.js +0 -64
  81. package/lib/common/components/FileTree/Folder.js +0 -110
  82. package/lib/common/components/FileTree/index.js +0 -84
  83. package/lib/common/components/FileTree/styles.js +0 -72
  84. package/lib/common/components/Loading.js +0 -83
  85. package/lib/common/fileUrl.js +0 -153
  86. package/lib/common/getCookie.js +0 -32
  87. package/lib/common/incremental-loading/LoadMoreButton.js +0 -40
  88. package/lib/common/incremental-loading/LoadingIndicator.js +0 -36
  89. package/lib/common/incremental-loading/LoadingStatus.js +0 -47
  90. package/lib/common/incremental-loading/index.js +0 -21
  91. package/lib/common/incremental-loading/useIncrementalLoading.js +0 -58
  92. package/lib/common/indicate.js +0 -75
  93. package/lib/common/mimeClass.js +0 -120
  94. package/lib/common/natcompare.js +0 -47
  95. package/lib/common/scroll.js +0 -45
  96. package/lib/defaultTinymceConfig.js +0 -160
  97. package/lib/enhance-user-content/doc_previews.js +0 -233
  98. package/lib/enhance-user-content/enhance_user_content.js +0 -396
  99. package/lib/enhance-user-content/index.js +0 -21
  100. package/lib/enhance-user-content/instructure_helper.js +0 -207
  101. package/lib/enhance-user-content/jqueryish_funcs.js +0 -88
  102. package/lib/enhance-user-content/mathml.js +0 -397
  103. package/lib/enhance-user-content/media_comment_thumbnail.js +0 -130
  104. package/lib/format-message.js +0 -30
  105. package/lib/getThemeVars.js +0 -45
  106. package/lib/getTranslations.js +0 -264
  107. package/lib/index.js +0 -51
  108. package/lib/rce/AlertMessageArea.js +0 -47
  109. package/lib/rce/DraggingBlocker.js +0 -43
  110. package/lib/rce/KeyboardShortcutModal.js +0 -88
  111. package/lib/rce/RCE.js +0 -150
  112. package/lib/rce/RCEGlobals.js +0 -62
  113. package/lib/rce/RCEWrapper.js +0 -4278
  114. package/lib/rce/RCEWrapperProps.js +0 -130
  115. package/lib/rce/RceHtmlEditor.js +0 -142
  116. package/lib/rce/ResizeHandle.js +0 -102
  117. package/lib/rce/RestoreAutoSaveModal.js +0 -82
  118. package/lib/rce/ShowOnFocusButton/index.js +0 -93
  119. package/lib/rce/StatusBar.js +0 -380
  120. package/lib/rce/__mocks__/_mockCryptoEs.js +0 -124
  121. package/lib/rce/__mocks__/styleMock.js +0 -18
  122. package/lib/rce/__mocks__/tinymceReact.js +0 -55
  123. package/lib/rce/alertHandler.js +0 -46
  124. package/lib/rce/contentInsertion.js +0 -322
  125. package/lib/rce/contentInsertionUtils.js +0 -85
  126. package/lib/rce/contentRendering.js +0 -145
  127. package/lib/rce/customEvents.js +0 -18
  128. package/lib/rce/editorLanguage.js +0 -101
  129. package/lib/rce/indicatorRegion.js +0 -49
  130. package/lib/rce/normalizeLocale.js +0 -50
  131. package/lib/rce/normalizeProps.js +0 -29
  132. package/lib/rce/plugins/instructure-ui-icons/plugin.js +0 -122
  133. package/lib/rce/plugins/instructure_condensed_buttons/core/ListUtils.js +0 -24
  134. package/lib/rce/plugins/instructure_condensed_buttons/plugin.js +0 -27
  135. package/lib/rce/plugins/instructure_condensed_buttons/ui/alignment-button.js +0 -63
  136. package/lib/rce/plugins/instructure_condensed_buttons/ui/directionality-button.js +0 -48
  137. package/lib/rce/plugins/instructure_condensed_buttons/ui/indent-outdent-button.js +0 -41
  138. package/lib/rce/plugins/instructure_condensed_buttons/ui/list-button.js +0 -145
  139. package/lib/rce/plugins/instructure_condensed_buttons/ui/subscript-superscript-button.js +0 -56
  140. package/lib/rce/plugins/instructure_documents/clickCallback.js +0 -23
  141. package/lib/rce/plugins/instructure_documents/components/DocumentsPanel.js +0 -126
  142. package/lib/rce/plugins/instructure_documents/components/Link.js +0 -219
  143. package/lib/rce/plugins/instructure_documents/plugin.js +0 -123
  144. package/lib/rce/plugins/instructure_equation/EquationEditorModal/advancedOnlySyntax.js +0 -25
  145. package/lib/rce/plugins/instructure_equation/EquationEditorModal/advancedPreference.js +0 -51
  146. package/lib/rce/plugins/instructure_equation/EquationEditorModal/index.js +0 -321
  147. package/lib/rce/plugins/instructure_equation/EquationEditorModal/latexTextareaUtil.js +0 -116
  148. package/lib/rce/plugins/instructure_equation/EquationEditorModal/parseLatex.js +0 -91
  149. package/lib/rce/plugins/instructure_equation/EquationEditorModal/styles.js +0 -46
  150. package/lib/rce/plugins/instructure_equation/EquationEditorToolbar/buttons.js +0 -728
  151. package/lib/rce/plugins/instructure_equation/EquationEditorToolbar/index.js +0 -84
  152. package/lib/rce/plugins/instructure_equation/MathIcon/index.js +0 -41
  153. package/lib/rce/plugins/instructure_equation/MathIcon/svgs.js +0 -236
  154. package/lib/rce/plugins/instructure_equation/clickCallback.js +0 -53
  155. package/lib/rce/plugins/instructure_equation/mathlive/index.js +0 -36
  156. package/lib/rce/plugins/instructure_equation/plugin.js +0 -69
  157. package/lib/rce/plugins/instructure_fullscreen/plugin.js +0 -50
  158. package/lib/rce/plugins/instructure_html_view/clickCallback.js +0 -21
  159. package/lib/rce/plugins/instructure_html_view/plugin.js +0 -37
  160. package/lib/rce/plugins/instructure_icon_maker/clickCallback.js +0 -57
  161. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ColorSection.js +0 -82
  162. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/CreateIconMakerForm.js +0 -56
  163. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Footer.js +0 -78
  164. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Group.js +0 -36
  165. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Header.js +0 -110
  166. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/Course.js +0 -169
  167. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ImageOptions.js +0 -186
  168. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ImageSection.js +0 -243
  169. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ModeSelect.js +0 -64
  170. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/MultiColor/index.js +0 -73
  171. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/MultiColor/svg.js +0 -298
  172. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SVGList.js +0 -86
  173. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SVGThumbnail.js +0 -55
  174. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SingleColor/index.js +0 -70
  175. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SingleColor/svg.js +0 -317
  176. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/Upload.js +0 -149
  177. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/index.js +0 -18
  178. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/propTypes.js +0 -32
  179. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/utils.js +0 -25
  180. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Preview.js +0 -60
  181. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ShapeSection.js +0 -87
  182. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/TextSection.js +0 -139
  183. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/index.js +0 -18
  184. package/lib/rce/plugins/instructure_icon_maker/components/IconMakerTray.js +0 -323
  185. package/lib/rce/plugins/instructure_icon_maker/components/SavedIconMakerList.js +0 -90
  186. package/lib/rce/plugins/instructure_icon_maker/plugin.js +0 -110
  187. package/lib/rce/plugins/instructure_icon_maker/reducers/imageSection.js +0 -194
  188. package/lib/rce/plugins/instructure_icon_maker/reducers/svgSettings.js +0 -98
  189. package/lib/rce/plugins/instructure_icon_maker/registerEditToolbar.js +0 -56
  190. package/lib/rce/plugins/instructure_icon_maker/svg/clipPath.js +0 -25
  191. package/lib/rce/plugins/instructure_icon_maker/svg/constants.js +0 -100
  192. package/lib/rce/plugins/instructure_icon_maker/svg/font.js +0 -25
  193. package/lib/rce/plugins/instructure_icon_maker/svg/image.js +0 -354
  194. package/lib/rce/plugins/instructure_icon_maker/svg/index.js +0 -122
  195. package/lib/rce/plugins/instructure_icon_maker/svg/metadata.js +0 -48
  196. package/lib/rce/plugins/instructure_icon_maker/svg/settings.js +0 -179
  197. package/lib/rce/plugins/instructure_icon_maker/svg/shape.js +0 -316
  198. package/lib/rce/plugins/instructure_icon_maker/svg/text.js +0 -468
  199. package/lib/rce/plugins/instructure_icon_maker/svg/utils.js +0 -70
  200. package/lib/rce/plugins/instructure_icon_maker/utils/IconMakerClose.js +0 -45
  201. package/lib/rce/plugins/instructure_icon_maker/utils/IconMakerFormHasChanges.js +0 -83
  202. package/lib/rce/plugins/instructure_icon_maker/utils/addIconMakerAttributes.js +0 -28
  203. package/lib/rce/plugins/instructure_icon_maker/utils/iconValidation.js +0 -35
  204. package/lib/rce/plugins/instructure_icon_maker/utils/iconsLabels.js +0 -375
  205. package/lib/rce/plugins/instructure_icon_maker/utils/useDebouncedValue.js +0 -59
  206. package/lib/rce/plugins/instructure_image/ImageEmbedOptions.js +0 -202
  207. package/lib/rce/plugins/instructure_image/ImageList/Image.js +0 -106
  208. package/lib/rce/plugins/instructure_image/ImageList/index.js +0 -69
  209. package/lib/rce/plugins/instructure_image/ImageOptionsTray/TrayController.js +0 -166
  210. package/lib/rce/plugins/instructure_image/ImageOptionsTray/index.js +0 -246
  211. package/lib/rce/plugins/instructure_image/Images/index.js +0 -129
  212. package/lib/rce/plugins/instructure_image/clickCallback.js +0 -24
  213. package/lib/rce/plugins/instructure_image/plugin.js +0 -157
  214. package/lib/rce/plugins/instructure_links/clickCallback.js +0 -22
  215. package/lib/rce/plugins/instructure_links/components/AccordionSection.js +0 -60
  216. package/lib/rce/plugins/instructure_links/components/CollectionPanel.js +0 -84
  217. package/lib/rce/plugins/instructure_links/components/Link.js +0 -213
  218. package/lib/rce/plugins/instructure_links/components/LinkOptionsDialog/LinkOptionsDialogController.js +0 -127
  219. package/lib/rce/plugins/instructure_links/components/LinkOptionsDialog/index.js +0 -141
  220. package/lib/rce/plugins/instructure_links/components/LinkOptionsTray/LinkOptionsTrayController.js +0 -125
  221. package/lib/rce/plugins/instructure_links/components/LinkOptionsTray/index.js +0 -245
  222. package/lib/rce/plugins/instructure_links/components/LinkSet.js +0 -195
  223. package/lib/rce/plugins/instructure_links/components/LinksPanel.js +0 -100
  224. package/lib/rce/plugins/instructure_links/components/NavigationPanel.js +0 -141
  225. package/lib/rce/plugins/instructure_links/components/NoResults.js +0 -87
  226. package/lib/rce/plugins/instructure_links/components/propTypes.js +0 -41
  227. package/lib/rce/plugins/instructure_links/plugin.js +0 -294
  228. package/lib/rce/plugins/instructure_links/validateURL.js +0 -70
  229. package/lib/rce/plugins/instructure_media_embed/clickCallback.js +0 -48
  230. package/lib/rce/plugins/instructure_media_embed/components/Embed.js +0 -68
  231. package/lib/rce/plugins/instructure_media_embed/plugin.js +0 -36
  232. package/lib/rce/plugins/instructure_paste/pasteMenuCommand.js +0 -117
  233. package/lib/rce/plugins/instructure_paste/plugin.js +0 -174
  234. package/lib/rce/plugins/instructure_rce_external_tools/ExternalToolsEnv.js +0 -169
  235. package/lib/rce/plugins/instructure_rce_external_tools/RceToolWrapper.js +0 -225
  236. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialog.js +0 -294
  237. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialogModal.js +0 -46
  238. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialogTray.js +0 -79
  239. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolSelectionDialog/ExternalToolSelectionDialog.js +0 -153
  240. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolSelectionDialog/ExternalToolSelectionItem.js +0 -94
  241. package/lib/rce/plugins/instructure_rce_external_tools/components/util/ExpandoText.js +0 -90
  242. package/lib/rce/plugins/instructure_rce_external_tools/components/util/ToolLaunchIframe.js +0 -35
  243. package/lib/rce/plugins/instructure_rce_external_tools/dialog-helper.js +0 -29
  244. package/lib/rce/plugins/instructure_rce_external_tools/helpers/tags.js +0 -55
  245. package/lib/rce/plugins/instructure_rce_external_tools/jquery/jquery.dropdownList.js +0 -172
  246. package/lib/rce/plugins/instructure_rce_external_tools/lti11-content-items/RceLti11ContentItem.js +0 -203
  247. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/RceLti13ContentItem.js +0 -111
  248. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/BaseLinkContentItem.js +0 -79
  249. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/HtmlFragmentContentItem.js +0 -47
  250. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ImageContentItem.js +0 -57
  251. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/LinkContentItem.js +0 -26
  252. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ResourceLinkContentItem.js +0 -45
  253. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/processEditorContentItems.js +0 -67
  254. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/rceLti13ContentItemFromJson.js +0 -48
  255. package/lib/rce/plugins/instructure_rce_external_tools/plugin.js +0 -112
  256. package/lib/rce/plugins/instructure_rce_external_tools/util/addParentFrameContextToUrl.js +0 -27
  257. package/lib/rce/plugins/instructure_record/AudioOptionsTray/TrayController.js +0 -127
  258. package/lib/rce/plugins/instructure_record/AudioOptionsTray/index.js +0 -148
  259. package/lib/rce/plugins/instructure_record/MediaPanel/index.js +0 -129
  260. package/lib/rce/plugins/instructure_record/VideoOptionsTray/TrayController.js +0 -215
  261. package/lib/rce/plugins/instructure_record/VideoOptionsTray/index.js +0 -321
  262. package/lib/rce/plugins/instructure_record/clickCallback.js +0 -105
  263. package/lib/rce/plugins/instructure_record/mediaTranslations.js +0 -94
  264. package/lib/rce/plugins/instructure_record/plugin.js +0 -173
  265. package/lib/rce/plugins/instructure_studio_media_options/plugin.js +0 -42
  266. package/lib/rce/plugins/instructure_wordcount/clickCallback.js +0 -49
  267. package/lib/rce/plugins/instructure_wordcount/components/WordCountModal.js +0 -88
  268. package/lib/rce/plugins/instructure_wordcount/plugin.js +0 -30
  269. package/lib/rce/plugins/instructure_wordcount/utils/countContent.js +0 -78
  270. package/lib/rce/plugins/instructure_wordcount/utils/tableContent.js +0 -40
  271. package/lib/rce/plugins/shared/CanvasContentTray.js +0 -580
  272. package/lib/rce/plugins/shared/CheckerboardStyling.js +0 -25
  273. package/lib/rce/plugins/shared/ColorInput.js +0 -233
  274. package/lib/rce/plugins/shared/ConditionalTooltip.js +0 -32
  275. package/lib/rce/plugins/shared/ContentSelection.js +0 -269
  276. package/lib/rce/plugins/shared/DimensionUtils.js +0 -66
  277. package/lib/rce/plugins/shared/DimensionsInput/DimensionInput.js +0 -62
  278. package/lib/rce/plugins/shared/DimensionsInput/index.js +0 -161
  279. package/lib/rce/plugins/shared/DimensionsInput/useDimensionsState.js +0 -220
  280. package/lib/rce/plugins/shared/ErrorBoundary.js +0 -54
  281. package/lib/rce/plugins/shared/EventUtils.js +0 -39
  282. package/lib/rce/plugins/shared/Filter.js +0 -353
  283. package/lib/rce/plugins/shared/FixedContentTray.js +0 -115
  284. package/lib/rce/plugins/shared/ImageCropper/DirectionRegion.js +0 -67
  285. package/lib/rce/plugins/shared/ImageCropper/Modal.js +0 -153
  286. package/lib/rce/plugins/shared/ImageCropper/Preview.js +0 -148
  287. package/lib/rce/plugins/shared/ImageCropper/constants.js +0 -39
  288. package/lib/rce/plugins/shared/ImageCropper/controls/CustomNumberInput.js +0 -83
  289. package/lib/rce/plugins/shared/ImageCropper/controls/ResetControls.js +0 -38
  290. package/lib/rce/plugins/shared/ImageCropper/controls/RotationControls.js +0 -89
  291. package/lib/rce/plugins/shared/ImageCropper/controls/ShapeControls.js +0 -82
  292. package/lib/rce/plugins/shared/ImageCropper/controls/ZoomControls.js +0 -111
  293. package/lib/rce/plugins/shared/ImageCropper/controls/index.js +0 -61
  294. package/lib/rce/plugins/shared/ImageCropper/controls/useDebouncedNumericValue.js +0 -94
  295. package/lib/rce/plugins/shared/ImageCropper/controls/utils.js +0 -41
  296. package/lib/rce/plugins/shared/ImageCropper/imageCropUtils.js +0 -149
  297. package/lib/rce/plugins/shared/ImageCropper/index.js +0 -18
  298. package/lib/rce/plugins/shared/ImageCropper/propTypes.js +0 -26
  299. package/lib/rce/plugins/shared/ImageCropper/reducers/imageCropper.js +0 -72
  300. package/lib/rce/plugins/shared/ImageCropper/shape.js +0 -27
  301. package/lib/rce/plugins/shared/ImageCropper/svg/index.js +0 -89
  302. package/lib/rce/plugins/shared/ImageCropper/svg/shape.js +0 -125
  303. package/lib/rce/plugins/shared/ImageCropper/svg/utils.js +0 -26
  304. package/lib/rce/plugins/shared/ImageCropper/useKeyMouseEvents.js +0 -233
  305. package/lib/rce/plugins/shared/ImageCropper/useMouseWheel.js +0 -66
  306. package/lib/rce/plugins/shared/ImageOptionsForm.js +0 -140
  307. package/lib/rce/plugins/shared/LinkDisplay.js +0 -96
  308. package/lib/rce/plugins/shared/PreviewIcon.js +0 -112
  309. package/lib/rce/plugins/shared/Previewable.js +0 -22
  310. package/lib/rce/plugins/shared/RceFileBrowser.js +0 -106
  311. package/lib/rce/plugins/shared/StoreContext.js +0 -57
  312. package/lib/rce/plugins/shared/StudioLtiSupportUtils.js +0 -71
  313. package/lib/rce/plugins/shared/UnknownFileTypePanel.js +0 -29
  314. package/lib/rce/plugins/shared/Upload/CategoryProcessor.js +0 -27
  315. package/lib/rce/plugins/shared/Upload/ComputerPanel.js +0 -334
  316. package/lib/rce/plugins/shared/Upload/SvgCategoryProcessor.js +0 -35
  317. package/lib/rce/plugins/shared/Upload/UploadFile.js +0 -171
  318. package/lib/rce/plugins/shared/Upload/UploadFileModal.js +0 -273
  319. package/lib/rce/plugins/shared/Upload/UrlPanel.js +0 -38
  320. package/lib/rce/plugins/shared/Upload/UsageRightsSelectBox.js +0 -172
  321. package/lib/rce/plugins/shared/Upload/doFileUpload.js +0 -77
  322. package/lib/rce/plugins/shared/__mocks__/screenfull.js +0 -24
  323. package/lib/rce/plugins/shared/buildDownloadUrl.js +0 -31
  324. package/lib/rce/plugins/shared/compressionUtils.js +0 -98
  325. package/lib/rce/plugins/shared/dateUtils.js +0 -28
  326. package/lib/rce/plugins/shared/fileShape.js +0 -57
  327. package/lib/rce/plugins/shared/fileTypeUtils.js +0 -133
  328. package/lib/rce/plugins/shared/fileUtils.js +0 -25
  329. package/lib/rce/plugins/shared/linkUtils.js +0 -89
  330. package/lib/rce/plugins/shared/round.js +0 -25
  331. package/lib/rce/plugins/shared/trayUtils.js +0 -34
  332. package/lib/rce/plugins/shared/useDataUrl.js +0 -76
  333. package/lib/rce/plugins/tinymce-a11y-checker/components/ColorField.js +0 -86
  334. package/lib/rce/plugins/tinymce-a11y-checker/components/checker.js +0 -558
  335. package/lib/rce/plugins/tinymce-a11y-checker/components/color-picker.js +0 -59
  336. package/lib/rce/plugins/tinymce-a11y-checker/components/placeholder-svg.js +0 -90
  337. package/lib/rce/plugins/tinymce-a11y-checker/components/pointer.js +0 -32
  338. package/lib/rce/plugins/tinymce-a11y-checker/node-checker.js +0 -54
  339. package/lib/rce/plugins/tinymce-a11y-checker/plugin.js +0 -90
  340. package/lib/rce/plugins/tinymce-a11y-checker/rules/__mocks__/index.js +0 -53
  341. package/lib/rce/plugins/tinymce-a11y-checker/rules/adjacent-links.js +0 -129
  342. package/lib/rce/plugins/tinymce-a11y-checker/rules/headings-sequence.js +0 -200
  343. package/lib/rce/plugins/tinymce-a11y-checker/rules/headings-start-at-h2.js +0 -67
  344. package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt-filename.js +0 -63
  345. package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt-length.js +0 -49
  346. package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt.js +0 -61
  347. package/lib/rce/plugins/tinymce-a11y-checker/rules/index.js +0 -31
  348. package/lib/rce/plugins/tinymce-a11y-checker/rules/large-text-contrast.js +0 -51
  349. package/lib/rce/plugins/tinymce-a11y-checker/rules/list-structure.js +0 -144
  350. package/lib/rce/plugins/tinymce-a11y-checker/rules/paragraphs-for-headings.js +0 -61
  351. package/lib/rce/plugins/tinymce-a11y-checker/rules/small-text-contrast.js +0 -75
  352. package/lib/rce/plugins/tinymce-a11y-checker/rules/table-caption.js +0 -54
  353. package/lib/rce/plugins/tinymce-a11y-checker/rules/table-header-scope.js +0 -52
  354. package/lib/rce/plugins/tinymce-a11y-checker/rules/table-header.js +0 -81
  355. package/lib/rce/plugins/tinymce-a11y-checker/utils/colors.js +0 -43
  356. package/lib/rce/plugins/tinymce-a11y-checker/utils/describe.js +0 -66
  357. package/lib/rce/plugins/tinymce-a11y-checker/utils/dom.js +0 -160
  358. package/lib/rce/plugins/tinymce-a11y-checker/utils/indicate.js +0 -83
  359. package/lib/rce/plugins/tinymce-a11y-checker/utils/rgb-hex.js +0 -57
  360. package/lib/rce/plugins/tinymce-a11y-checker/utils/strings.js +0 -40
  361. package/lib/rce/root.js +0 -58
  362. package/lib/rce/sanitizePlugins.js +0 -32
  363. package/lib/rce/style.js +0 -843
  364. package/lib/rce/tinyRCE.js +0 -66
  365. package/lib/rce/transformContent.js +0 -73
  366. package/lib/rce/userOS.js +0 -31
  367. package/lib/rce/wrapInitCb.js +0 -78
  368. package/lib/rcs/api.js +0 -670
  369. package/lib/rcs/buildError.js +0 -98
  370. package/lib/rcs/fake.js +0 -621
  371. package/lib/sidebar/actions/all_files.js +0 -29
  372. package/lib/sidebar/actions/data.js +0 -105
  373. package/lib/sidebar/actions/documents.js +0 -107
  374. package/lib/sidebar/actions/files.js +0 -167
  375. package/lib/sidebar/actions/filter.js +0 -63
  376. package/lib/sidebar/actions/flickr.js +0 -60
  377. package/lib/sidebar/actions/images.js +0 -153
  378. package/lib/sidebar/actions/links.js +0 -23
  379. package/lib/sidebar/actions/media.js +0 -142
  380. package/lib/sidebar/actions/session.js +0 -34
  381. package/lib/sidebar/actions/ui.js +0 -49
  382. package/lib/sidebar/actions/upload.js +0 -550
  383. package/lib/sidebar/containers/Sidebar.js +0 -67
  384. package/lib/sidebar/containers/sidebarHandlers.js +0 -73
  385. package/lib/sidebar/dragHtml.js +0 -49
  386. package/lib/sidebar/reducers/all_files.js +0 -35
  387. package/lib/sidebar/reducers/collection.js +0 -72
  388. package/lib/sidebar/reducers/collections.js +0 -52
  389. package/lib/sidebar/reducers/documents.js +0 -89
  390. package/lib/sidebar/reducers/files.js +0 -38
  391. package/lib/sidebar/reducers/filter.js +0 -61
  392. package/lib/sidebar/reducers/flickr.js +0 -51
  393. package/lib/sidebar/reducers/folder.js +0 -92
  394. package/lib/sidebar/reducers/folders.js +0 -39
  395. package/lib/sidebar/reducers/images.js +0 -115
  396. package/lib/sidebar/reducers/index.js +0 -57
  397. package/lib/sidebar/reducers/media.js +0 -84
  398. package/lib/sidebar/reducers/newPageLinkExpanded.js +0 -30
  399. package/lib/sidebar/reducers/noop.js +0 -21
  400. package/lib/sidebar/reducers/rootFolderId.js +0 -30
  401. package/lib/sidebar/reducers/session.js +0 -33
  402. package/lib/sidebar/reducers/ui.js +0 -87
  403. package/lib/sidebar/reducers/upload.js +0 -206
  404. package/lib/sidebar/store/configureStore.js +0 -26
  405. package/lib/sidebar/store/initialState.js +0 -173
  406. package/lib/translations/locales/ar.js +0 -2427
  407. package/lib/translations/locales/ca.js +0 -2427
  408. package/lib/translations/locales/cy.js +0 -2427
  409. package/lib/translations/locales/da-x-k12.js +0 -2427
  410. package/lib/translations/locales/da.js +0 -2427
  411. package/lib/translations/locales/de.js +0 -2427
  412. package/lib/translations/locales/el.js +0 -459
  413. package/lib/translations/locales/en-AU-x-unimelb.js +0 -2427
  414. package/lib/translations/locales/en-GB-x-ukhe.js +0 -2427
  415. package/lib/translations/locales/en.js +0 -2427
  416. package/lib/translations/locales/en_AU.js +0 -2427
  417. package/lib/translations/locales/en_CA.js +0 -2426
  418. package/lib/translations/locales/en_CY.js +0 -2426
  419. package/lib/translations/locales/en_GB.js +0 -2427
  420. package/lib/translations/locales/es.js +0 -2427
  421. package/lib/translations/locales/es_ES.js +0 -2427
  422. package/lib/translations/locales/fa_IR.js +0 -615
  423. package/lib/translations/locales/fi.js +0 -2427
  424. package/lib/translations/locales/fr.js +0 -2427
  425. package/lib/translations/locales/fr_CA.js +0 -2427
  426. package/lib/translations/locales/he.js +0 -486
  427. package/lib/translations/locales/ht.js +0 -2426
  428. package/lib/translations/locales/hu.js +0 -2007
  429. package/lib/translations/locales/hy.js +0 -444
  430. package/lib/translations/locales/is.js +0 -2426
  431. package/lib/translations/locales/it.js +0 -2427
  432. package/lib/translations/locales/ja.js +0 -2427
  433. package/lib/translations/locales/ko.js +0 -342
  434. package/lib/translations/locales/mi.js +0 -2426
  435. package/lib/translations/locales/nb-x-k12.js +0 -2427
  436. package/lib/translations/locales/nb.js +0 -2427
  437. package/lib/translations/locales/nl.js +0 -2427
  438. package/lib/translations/locales/nn.js +0 -2247
  439. package/lib/translations/locales/pl.js +0 -2427
  440. package/lib/translations/locales/pt.js +0 -2427
  441. package/lib/translations/locales/pt_BR.js +0 -2427
  442. package/lib/translations/locales/ru.js +0 -84
  443. package/lib/translations/locales/sl.js +0 -2427
  444. package/lib/translations/locales/sv-x-k12.js +0 -2427
  445. package/lib/translations/locales/sv.js +0 -78
  446. package/lib/translations/locales/tr.js +0 -684
  447. package/lib/translations/locales/uk_UA.js +0 -519
  448. package/lib/translations/locales/vi.js +0 -39
  449. package/lib/translations/locales/zh-Hans.js +0 -2427
  450. package/lib/translations/locales/zh-Hant.js +0 -2427
  451. package/lib/translations/locales/zh.js +0 -2427
  452. package/lib/translations/locales/zh_HK.js +0 -2427
  453. package/lib/translations/tinymce/ar_SA.js +0 -211
  454. package/lib/translations/tinymce/bg_BG.js +0 -419
  455. package/lib/translations/tinymce/ca.js +0 -419
  456. package/lib/translations/tinymce/cs.js +0 -419
  457. package/lib/translations/tinymce/cy.js +0 -418
  458. package/lib/translations/tinymce/da.js +0 -419
  459. package/lib/translations/tinymce/de.js +0 -419
  460. package/lib/translations/tinymce/el.js +0 -261
  461. package/lib/translations/tinymce/en_GB.js +0 -230
  462. package/lib/translations/tinymce/es.js +0 -419
  463. package/lib/translations/tinymce/fa_IR.js +0 -390
  464. package/lib/translations/tinymce/fi.js +0 -19
  465. package/lib/translations/tinymce/fr_FR.js +0 -419
  466. package/lib/translations/tinymce/he_IL.js +0 -420
  467. package/lib/translations/tinymce/hu_HU.js +0 -419
  468. package/lib/translations/tinymce/hy.js +0 -419
  469. package/lib/translations/tinymce/it.js +0 -419
  470. package/lib/translations/tinymce/ja.js +0 -419
  471. package/lib/translations/tinymce/ko_KR.js +0 -419
  472. package/lib/translations/tinymce/nb_NO.js +0 -419
  473. package/lib/translations/tinymce/nl.js +0 -419
  474. package/lib/translations/tinymce/pl.js +0 -419
  475. package/lib/translations/tinymce/pt_BR.js +0 -419
  476. package/lib/translations/tinymce/pt_PT.js +0 -419
  477. package/lib/translations/tinymce/ro.js +0 -418
  478. package/lib/translations/tinymce/ru.js +0 -436
  479. package/lib/translations/tinymce/ru_RU.js +0 -71
  480. package/lib/translations/tinymce/sl.js +0 -462
  481. package/lib/translations/tinymce/sr.js +0 -278
  482. package/lib/translations/tinymce/sv_SE.js +0 -419
  483. package/lib/translations/tinymce/th.js +0 -479
  484. package/lib/translations/tinymce/tr_TR.js +0 -389
  485. package/lib/translations/tinymce/uk_UA.js +0 -278
  486. package/lib/translations/tinymce/vi_VN.js +0 -277
  487. package/lib/translations/tinymce/zh_CN.js +0 -419
  488. package/lib/translations/tinymce/zh_TW.js +0 -419
  489. package/lib/types/inst-ui.d.js +0 -18
  490. package/lib/types/ts-migration.js +0 -1
  491. package/lib/util/DeepPartialNullable.js +0 -1
  492. package/lib/util/ExtractRequired.js +0 -1
  493. package/lib/util/TypedDict.js +0 -131
  494. package/lib/util/assertNever.js +0 -44
  495. package/lib/util/elem-util.js +0 -26
  496. package/lib/util/encrypted-storage.js +0 -84
  497. package/lib/util/file-url-util.js +0 -44
  498. package/lib/util/fullscreenHelpers.js +0 -27
  499. package/lib/util/instui-icon-helper.js +0 -31
  500. package/lib/util/loadingPlaceholder.js +0 -436
  501. package/lib/util/simpleCache.js +0 -41
  502. package/lib/util/string-util.js +0 -48
  503. package/lib/util/textarea-editing-util.js +0 -87
  504. package/lib/util/tinymce-plugin-util.js +0 -52
  505. package/lib/util/url-util.js +0 -138
@@ -1,47 +0,0 @@
1
- //
2
- // Copyright (C) 2014 - present Instructure, Inc.
3
- //
4
- // This file is part of Canvas.
5
- //
6
- // Canvas is free software: you can redistribute it and/or modify it under
7
- // the terms of the GNU Affero General Public License as published by the Free
8
- // Software Foundation, version 3 of the License.
9
- //
10
- // Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
11
- // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12
- // A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
13
- // details.
14
- //
15
- // You should have received a copy of the GNU Affero General Public License along
16
- // with this program. If not, see <http://www.gnu.org/licenses/>.
17
- let activeLocale = 'en-US';
18
- export const setLocale = locale => {
19
- const locale_map = {
20
- zh_Hant: 'zh-Hant'
21
- };
22
- activeLocale = locale_map[locale] || locale;
23
- };
24
- export default {
25
- strings(x, y) {
26
- // if you change these settings, also match the settings in best_unicode_collation_key
27
- // and Canvas::ICU.collator
28
- return x.localeCompare(y, activeLocale, {
29
- sensitivity: 'variant',
30
- ignorePunctuation: false,
31
- numeric: true
32
- });
33
- },
34
-
35
- by(f) {
36
- return (x, y) => this.strings(f(x), f(y));
37
- },
38
-
39
- byKey(key) {
40
- return this.by(x => x[key]);
41
- },
42
-
43
- byGet(key) {
44
- return this.by(x => x.get(key));
45
- }
46
-
47
- };
@@ -1,45 +0,0 @@
1
- /*
2
- * Copyright (C) 2018 - present Instructure, Inc.
3
- *
4
- * This file is part of Canvas.
5
- *
6
- * Canvas is free software: you can redistribute it and/or modify it under
7
- * the terms of the GNU Affero General Public License as published by the Free
8
- * Software Foundation, version 3 of the License.
9
- *
10
- * Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
11
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12
- * A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
13
- * details.
14
- *
15
- * You should have received a copy of the GNU Affero General Public License along
16
- * with this program. If not, see <http://www.gnu.org/licenses/>.
17
- */
18
- import scrollIntoView from 'scroll-into-view';
19
- export default {
20
- // scrolling in react is kinda messed up. it would
21
- // make sense to scroll after getting "componentDidUpdate'
22
- // after exposing new DOM objects, but "componentDidUpdate"
23
- // get's called after the virtual DOM flushes it's updates
24
- // to the real DOM. it doesn't get called after the real
25
- // DOM has actually updated the page, so getting accurate
26
- // scroll and window size information in "componenetDidUpdate"
27
- // is not reliable, so we need a delay.
28
- // there also is no uniform event in javascript yet that will
29
- // notify of scoll window changes. firefox has "overflow",
30
- // chrome has "overflowchanged", and ie has nothing.
31
- // so i need to introduce a delay to give the DOM time to render.
32
- // the underlying scrollIntoView module will also perform a
33
- // requestAnimationFrame() (through module raf), but that delay
34
- // wasn't enough for what we needed here.
35
- // see the below stackoverflow for more info
36
- // http://stackoverflow.com/questions/26556436/react-after-render-code
37
- INTERIM_DELAY: 100,
38
-
39
- scrollIntoViewWDelay(target, config) {
40
- setTimeout(() => {
41
- scrollIntoView.scrollIntoView(target, config);
42
- }, this.INTERIM_DELAY);
43
- }
44
-
45
- };
@@ -1,160 +0,0 @@
1
- /*
2
- * Copyright (C) 2021 - present Instructure, Inc.
3
- *
4
- * This file is part of Canvas.
5
- *
6
- * Canvas is free software: you can redistribute it and/or modify it under
7
- * the terms of the GNU Affero General Public License as published by the Free
8
- * Software Foundation, version 3 of the License.
9
- *
10
- * Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
11
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12
- * A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
13
- * details.
14
- *
15
- * You should have received a copy of the GNU Affero General Public License along
16
- * with this program. If not, see <http://www.gnu.org/licenses/>.
17
- */
18
- const defaultTinymceConfig = {
19
- // ============================================================================
20
- // Values in this section have acceptable defaults which you may want
21
- // to override (though you really should provide content_css)
22
- // ============================================================================
23
- auto_focus: false,
24
- // any values provided (in an array) will be merged into the standard then sorted
25
- // you provide the translations
26
- block_formats: undefined,
27
- // replace to provide your own
28
- body_class: 'default-theme',
29
- // urls to branding css go here
30
- content_css: [],
31
- // these are up to you
32
- directionality: 'ltr',
33
- height: undefined,
34
- // '400px' is s the standard height
35
- language: 'en',
36
- // any menubar entries here will be appended to the standard menubar
37
- menubar: undefined,
38
- // any menus here will be merged into the standard menubar menus
39
- menu: undefined,
40
- // any toolbar data here will be merged into the standard toolbars
41
- toolbar: undefined,
42
- // plugins included here will be added to the standard set
43
- plugins: undefined,
44
- // ==================================================================================
45
- // values below this line define standard behavior and probably shouldn't be changed
46
- // but will be used if you do
47
- // ==================================================================================
48
- branding: false,
49
- browser_spellcheck: true,
50
- content_style: undefined,
51
- // this will always be provided by the RCE
52
- convert_urls: false,
53
- font_formats: "Lato=lato,Helvetica Neue,Helvetica,Arial,sans-serif; Balsamiq Sans=Balsamiq Sans,lato,Helvetica Neue,Helvetica,Arial,sans-serif; Architect's Daughter=Architects Daughter,lato,Helvetica Neue,Helvetica,Arial,sans-serif; Andale Mono=andale mono,times; Arial=arial,helvetica,sans-serif; Arial Black=arial black,avant garde; Book Antiqua=book antiqua,palatino; Comic Sans MS=comic sans ms,sans-serif; Courier New=courier new,courier; Georgia=georgia,palatino; Helvetica=helvetica; Impact=impact,chicago; Symbol=symbol; Tahoma=tahoma,arial,helvetica,sans-serif; Terminal=terminal,monaco; Times New Roman=times new roman,times; Trebuchet MS=trebuchet ms,geneva; Verdana=verdana,geneva; Webdings=webdings; Wingdings=wingdings,zapf dingbats",
54
- language_load: false,
55
- language_url: 'none',
56
- toolbar_mode: 'floating',
57
- toolbar_ticky: true,
58
- mobile: {
59
- theme: 'silver'
60
- },
61
- preview_styles: 'font-family font-size font-weight font-style text-decoration text-transform border border-radius outline text-shadow',
62
- remove_script_host: true,
63
- resize: true,
64
- // will get set from textareaId
65
- // selector: '#textarea2',
66
- skin: false,
67
- statusbar: false,
68
- // part of unifying tinymce and canvas_sanitize's element whitelist
69
- // copied from
70
- // https://www.tiny.cloud/docs-3x/reference/configuration/Configuration3x@valid_elements/#defaultruleset
71
- // then edited.
72
- //
73
- // this list needs to be kept in sync with the list in gems/canvas_sanitize/lib/canvas_sanitize/canvas_sanitize.rb
74
- valid_elements: '@[id|class|style|title|dir<ltr?rtl|lang|xml::lang|role],a[rel|rev|charset|hreflang|tabindex|accesskey|type|name|href|target|title|class],strong/b,em/i,strike/s,u,#p,-ol[type|compact],-ul[type|compact],-li,br,img[longdesc|usemap|src|border|alt|title|hspace|vspace|width|height|align|role],-sub,-sup,-blockquote[cite],-table[border=0|cellspacing|cellpadding|width|frame|rules|height|align|summary|bgcolor|background|bordercolor],-tr[rowspan|width|height|align|valign|bgcolor|background|bordercolor],tbody,thead,tfoot,#td[colspan|rowspan|width|height|align|valign|bgcolor|background|bordercolor|scope],#th[colspan|rowspan|width|height|align|valign|scope],caption,-div,-span,-code,-pre,address,-h1,-h2,-h3,-h4,-h5,-h6,hr[size|noshade],-font[face|size|color],dd,dl,dt,cite,abbr,acronym,del[datetime|cite],ins[datetime|cite],object[classid|width|height|codebase|*],param[name|value|_value],embed[type|width|height|src|*],map[name],area[shape|coords|href|alt|target],bdo,col[align|char|charoff|span|valign|width],colgroup[align|char|charoff|span|valign|width],dfn,kbd,q[cite],samp,small,tt,var,big,figure,figcaption,source[media|sizes|src|srcset|type],track,mark,article,aside,details,footer,header,nav,section,summary,time',
75
- extended_valid_elements: '@[id|accesskey|class|dir|lang|style|tabindex|title|contenteditable|contextmenu|draggable|dropzone|hidden|longdesc|spellcheck|translate|align|role|aria-labelledby|aria-atomic|aria-busy|aria-controls|aria-describedby|aria-disabled|aria-dropeffect|aria-flowto|aria-grabbed|aria-haspopup|aria-hidden|aria-invalid|aria-label|aria-labelledby|aria-live|aria-owns|aria-relevant|aria-autocomplete|aria-checked|aria-disabled|aria-expanded|aria-haspopup|aria-hidden|aria-invalid|aria-label|aria-level|aria-multiline|aria-multiselectable|aria-orientation|aria-pressed|aria-readonly|aria-required|aria-selected|aria-sort|aria-valuemax|aria-valuemin|aria-valuenow|aria-valuetext],iframe[id|data-media-type|title|src|width|height|name|align|style|class|sandbox|allowfullscreen|webkitallowfullscreen|mozallowfullscreen|allow],i[iclass],a[hidden|href|target|rel|media|hreflang|type|charset|name|rev|shape|coords|download|alt],#p,li[value],-ol[reversed|start|type|compact],pre[width],table[border|summary|width|frame|rules|cellspacing|cellpadding|bgcolor],tbody[char|charoff|valign],td[colspan|rowspan|headers|abbr|axis|scope|align|char|charoff|valign|nowrap|bgcolor|width|height],tfoot[char|charoff|valign],th[colspan|rowspan|headers|scope|abbr|axis|align|char|charoff|valign|nowrap|bgcolor|width|height],thead[char|charoff|valign],tr[char|charoff|valign|bgcolor],-ul[compact],video[name|src|allowfullscreen|muted|poster|width|height|controls|playsinline],audio[name|src|muted|controls],annotation[href|xref|definitionURL|encoding|cd|name|src],annotation-xml[href|xref|definitionURL|encoding|cd|name|src],maction[href|xref|mathcolor|mathbackground|actiontype|selection],maligngroup[href|xref|mathcolor|mathbackground|groupalign],malignmark[href|xref|mathcolor|mathbackground|edge],math[xmlns|href|xref|display|maxwidth|overflow|altimg|altimg-width|altimg-height|altimg-valign|alttext|cdgroup|mathcolor|mathbackground|scriptlevel|displaystyle|scriptsizemultiplier|scriptminsize|infixlinebreakstyle|decimalpoint|mathvariant|mathsize|width|height|valign|form|fence|separator|lspace|rspace|stretchy|symmetric|maxsize|minsize|largeop|movablelimits|accent|linebreak|lineleading|linebreakstyle|linebreakmultchar|indentalign|indentshift|indenttarget|indentalignfirst|indentshiftfirst|indentalignlast|indentshiftlast|depth|lquote|rquote|linethickness|munalign|denomalign|bevelled|voffset|open|close|separators|notation|subscriptshift|superscriptshift|accentunder|align|rowalign|columnalign|groupalign|alignmentscope|columnwidth|rowspacing|columnspacing|rowlines|columnlines|frame|framespacing|equalrows|equalcolumns|side|minlabelspacing|rowspan|columnspan|edge|stackalign|charalign|charspacing|longdivstyle|position|shift|location|crossout|length|leftoverhang|rightoverhang|mslinethickness|selection],menclose[href|xref|mathcolor|mathbackground|notation],merror[href|xref|mathcolor|mathbackground],mfenced[href|xref|mathcolor|mathbackground|open|close|separators],mfrac[href|xref|mathcolor|mathbackground|linethickness|munalign|denomalign|bevelled],mglyph[href|xref|mathcolor|mathbackground|src|alt|width|height|valign],mi[href|xref|mathcolor|mathbackground|mathvariant|mathsize],mlabeledtr[href|xref|mathcolor|mathbackground],mlongdiv[href|xref|mathcolor|mathbackground|longdivstyle|align|stackalign|charalign|charspacing],mmultiscripts[href|xref|mathcolor|mathbackground|subscriptshift|superscriptshift],mn[href|xref|mathcolor|mathbackground|mathvariant|mathsize],mo[href|xref|mathcolor|mathbackground|mathvariant|mathsize|form|fence|separator|lspace|rspace|stretchy|symmetric|maxsize|minsize|largeop|movablelimits|accent|linebreak|lineleading|linebreakstyle|linebreakmultchar|indentalign|indentshift|indenttarget|indentalignfirst|indentshiftfirst|indentalignlast|indentshiftlast],mover[href|xref|mathcolor|mathbackground|accent|align],mpadded[href|xref|mathcolor|mathbackground|height|depth|width|lspace|voffset],mphantom[href|xref|mathcolor|mathbackground],mprescripts[href|xref|mathcolor|mathbackground],mroot[href|xref|mathcolor|mathbackground],mrow[href|xref|mathcolor|mathbackground],ms[href|xref|mathcolor|mathbackground|mathvariant|mathsize|lquote|rquote],mscarries[href|xref|mathcolor|mathbackground|position|location|crossout|scriptsizemultiplier],mscarry[href|xref|mathcolor|mathbackground|location|crossout],msgroup[href|xref|mathcolor|mathbackground|position|shift],msline[href|xref|mathcolor|mathbackground|position|length|leftoverhang|rightoverhang|mslinethickness],mspace[href|xref|mathcolor|mathbackground|mathvariant|mathsize],msqrt[href|xref|mathcolor|mathbackground],msrow[href|xref|mathcolor|mathbackground|position],mstack[href|xref|mathcolor|mathbackground|align|stackalign|charalign|charspacing],mstyle[href|xref|mathcolor|mathbackground|scriptlevel|displaystyle|scriptsizemultiplier|scriptminsize|infixlinebreakstyle|decimalpoint|mathvariant|mathsize|width|height|valign|form|fence|separator|lspace|rspace|stretchy|symmetric|maxsize|minsize|largeop|movablelimits|accent|linebreak|lineleading|linebreakstyle|linebreakmultchar|indentalign|indentshift|indenttarget|indentalignfirst|indentshiftfirst|indentalignlast|indentshiftlast|depth|lquote|rquote|linethickness|munalign|denomalign|bevelled|voffset|open|close|separators|notation|subscriptshift|superscriptshift|accentunder|align|rowalign|columnalign|groupalign|alignmentscope|columnwidth|rowspacing|columnspacing|rowlines|columnlines|frame|framespacing|equalrows|equalcolumns|side|minlabelspacing|rowspan|columnspan|edge|stackalign|charalign|charspacing|longdivstyle|position|shift|location|crossout|length|leftoverhang|rightoverhang|mslinethickness|selection],msub[href|xref|mathcolor|mathbackground|subscriptshift],msubsup[href|xref|mathcolor|mathbackground|subscriptshift|superscriptshift],msup[href|xref|mathcolor|mathbackground|superscriptshift],mtable[href|xref|mathcolor|mathbackground|align|rowalign|columnalign|groupalign|alignmentscope|columnwidth|width|rowspacing|columnspacing|rowlines|columnlines|frame|framespacing|equalrows|equalcolumns|displaystyle|side|minlabelspacing],mtd[href|xref|mathcolor|mathbackground|rowspan|columnspan|rowalign|columnalign|groupalign],mtext[href|xref|mathcolor|mathbackground|mathvariant|mathsize|width|height|depth|linebreak],mtr[href|xref|mathcolor|mathbackground|rowalign|columnalign|groupalign],munder[href|xref|mathcolor|mathbackground|accentunder|align],munderover[href|xref|mathcolor|mathbackground|accent|accentunder|align],none[href|xref|mathcolor|mathbackground],semantics[href|xref|definitionURL|encoding],picture,ruby,rp,rt,wbr' + // the svg necessary for the uploading placeholder's spinner
76
- 'svg[*],g[*],circle[*]',
77
- non_empty_elements: 'td th iframe video audio object script a i area base basefont br col frame hr img input isindex link meta param embed source wbr track ruby',
78
- // tiny's external link create/edit dialog config
79
- target_list: false,
80
- // don't show the target list when creating/editing links
81
- link_title: false,
82
- // don't show the title input when creating/editing links
83
- default_link_target: '_blank',
84
- // Remove the ability to add h1 tags (since there will already be an h1 on the page)
85
- // but preserve the default Formats menu config otherwise
86
- style_formats: [{
87
- title: 'Headings',
88
- items: [{
89
- title: 'Heading 2',
90
- format: 'h2'
91
- }, {
92
- title: 'Heading 3',
93
- format: 'h3'
94
- }, {
95
- title: 'Heading 4',
96
- format: 'h4'
97
- }, {
98
- title: 'Heading 5',
99
- format: 'h5'
100
- }, {
101
- title: 'Heading 6',
102
- format: 'h6'
103
- }]
104
- }, {
105
- title: 'Inline',
106
- items: [{
107
- title: 'Bold',
108
- format: 'bold'
109
- }, {
110
- title: 'Italic',
111
- format: 'italic'
112
- }, {
113
- title: 'Underline',
114
- format: 'underline'
115
- }, {
116
- title: 'Strikethrough',
117
- format: 'strikethrough'
118
- }, {
119
- title: 'Superscript',
120
- format: 'superscript'
121
- }, {
122
- title: 'Subscript',
123
- format: 'subscript'
124
- }, {
125
- title: 'Code',
126
- format: 'code'
127
- }]
128
- }, {
129
- title: 'Blocks',
130
- items: [{
131
- title: 'Paragraph',
132
- format: 'p'
133
- }, {
134
- title: 'Blockquote',
135
- format: 'blockquote'
136
- }, {
137
- title: 'Div',
138
- format: 'div'
139
- }, {
140
- title: 'Pre',
141
- format: 'pre'
142
- }]
143
- }, {
144
- title: 'Align',
145
- items: [{
146
- title: 'Left',
147
- format: 'alignleft'
148
- }, {
149
- title: 'Center',
150
- format: 'aligncenter'
151
- }, {
152
- title: 'Right',
153
- format: 'alignright'
154
- }, {
155
- title: 'Justify',
156
- format: 'alignjustify'
157
- }]
158
- }]
159
- };
160
- export default defaultTinymceConfig;
@@ -1,233 +0,0 @@
1
- /*
2
- * Copyright (C) 2022 - present Instructure, Inc.
3
- *
4
- * This file is part of Canvas.
5
- *
6
- * Canvas is free software: you can redistribute it and/or modify it under
7
- * the terms of the GNU Affero General Public License as published by the Free
8
- * Software Foundation, version 3 of the License.
9
- *
10
- * Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
11
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
12
- * A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
13
- * details.
14
- *
15
- * You should have received a copy of the GNU Affero General Public License along
16
- * with this program. If not, see <http://www.gnu.org/licenses/>.
17
- */
18
- import React from 'react';
19
- import ReactDOM from 'react-dom';
20
- import formatMessage from '../format-message';
21
- import { Spinner } from '@instructure/ui-spinner';
22
- import { getData, setData } from './jqueryish_funcs';
23
- export const previewableMimeTypes = ['application/vnd.openxmlformats-officedocument.wordprocessingml.template', 'application/vnd.oasis.opendocument.spreadsheet', 'application/vnd.sun.xml.writer', 'application/excel', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'text/rtf', 'application/vnd.openxmlformats-officedocument.spreadsheetml.template', 'application/vnd.sun.xml.impress', 'application/vnd.sun.xml.calc', 'application/vnd.ms-excel', 'application/msword', 'application/mspowerpoint', 'application/rtf', 'application/vnd.oasis.opendocument.presentation', 'application/vnd.oasis.opendocument.text', 'application/vnd.openxmlformats-officedocument.presentationml.template', 'application/vnd.openxmlformats-officedocument.presentationml.slideshow', 'text/plain', 'application/vnd.openxmlformats-officedocument.presentationml.presentation', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/postscript', 'application/pdf', 'application/vnd.ms-powerpoint']; // check to see if a file of a certan mimeType is previewable inline in the browser
24
- // ex: isPreviewable("application/mspowerpoint") -> true
25
-
26
- export function isPreviewable(mimeType) {
27
- return previewableMimeTypes.includes(mimeType);
28
- } // Show a loading spinner
29
- // The typical use is to show the spinner next to a canvas file link
30
- // while the inline preview is loading. It's also used when previewing
31
- // student submitted files in speedgrader, in which case $link is really
32
- // the div containing the preview iframe. We handle these 2 cases by
33
- // telling the function to put the spinner adjacent to $link,
34
- // or to put it in the center of the preview container.
35
- //
36
- // $link: the DOM node that serves as the reference for locating the spinner
37
- // position: one of 'adjacent' or 'centered'
38
-
39
- export function showLoadingImage($link) {
40
- let position = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'adjacent';
41
- const dir = $link && window.getComputedStyle($link).direction || 'ltr';
42
- const boundingBox = $link.getBoundingClientRect();
43
- const offsetLeft = boundingBox.left + (position === 'adjacent' ? dir === 'ltr' ? boundingBox.width : -24 : boundingBox.width / 2);
44
- $link.style.marginInlineEnd = '28px';
45
- const imageMarginInlineStart = position === 'adjacent' ? '5px' : '-12px';
46
- const imageMarginTop = position === 'adjacent' ? 0 : '-12px';
47
- const zIndex = parseInt($link.style.zIndex || 0, 10) + 1;
48
- const $imageHolder = document.createElement('div');
49
- $imageHolder.setAttribute('class', 'loading_image_holder');
50
- const list = getData($link, 'loading_images') || [];
51
- list.push($imageHolder);
52
- setData($link, 'loading_images', list);
53
-
54
- if (!$link.style.position || $link.style.position === 'static') {
55
- const top = `${boundingBox.top + window.scrollY + (position === 'adjacent' ? 0 : boundingBox.height / 2)}px`;
56
- const left = `${offsetLeft}px`;
57
- $imageHolder.setAttribute('style', `z-index: ${zIndex}; position: absolute; top: ${top}; left: ${left}; margin-inline-start: ${imageMarginInlineStart}; margin-top: ${imageMarginTop}`);
58
- document.body.appendChild($imageHolder);
59
- } else {
60
- const top = `${position === 'adjacent' ? 0 : boundingBox.height / 2}px`;
61
- const left = `${offsetLeft}px`;
62
- $imageHolder.setAttribute('style', `z-index:${zIndex}; position: absolute; top: ${top}; left: ${left}; margin-inline-start:${imageMarginInlineStart}; margin-top: ${imageMarginTop}`);
63
- $link.appendChild($imageHolder);
64
- }
65
-
66
- ReactDOM.render( /*#__PURE__*/React.createElement(Spinner, {
67
- size: "x-small",
68
- renderTitle: formatMessage('Loading')
69
- }), $imageHolder);
70
- return $link;
71
- }
72
- export function removeLoadingImage($link) {
73
- var _$link$querySelector;
74
-
75
- (_$link$querySelector = $link.querySelector('.loading_image')) === null || _$link$querySelector === void 0 ? void 0 : _$link$querySelector.remove();
76
- const list = getData($link, 'loading_images') || [];
77
- list.forEach(item => {
78
- if (item) {
79
- item.remove();
80
- }
81
- });
82
- setData($link, 'loading_images', null);
83
- $link.style.marginInlineEnd = '';
84
- return $link;
85
- }
86
- export function loadDocPreview($container, options) {
87
- let opts = {
88
- width: '100%',
89
- height: '400px',
90
- ...getData($container),
91
- ...options
92
- };
93
- if (!$container) return; // an issue in specs
94
-
95
- function tellAppIViewedThisInline() {
96
- // if I have a url to ping back to the app that I viewed this file inline, ping it.
97
- if (opts.attachment_view_inline_ping_url) {
98
- fetch(opts.attachment_view_inline_ping_url, {
99
- method: 'POST'
100
- });
101
- }
102
- }
103
-
104
- if (opts.crocodoc_session_url) {
105
- const sanitizedUrl = sanitizeUrl(opts.crocodoc_session_url);
106
- const iframe = document.createElement('iframe');
107
- iframe.setAttribute('src', sanitizedUrl);
108
- iframe.setAttribute('width', opts.width);
109
- iframe.setAttribute('height', opts.height);
110
- iframe.setAttribute('allowfullscreen', '1');
111
- iframe.id = opts.id;
112
- $container.appendChild(iframe);
113
- iframe.load(() => {
114
- tellAppIViewedThisInline('crocodoc');
115
- if (typeof opts.ready === 'function') opts.ready();
116
- });
117
- } else if (opts.canvadoc_session_url) {
118
- const canvadocWrapper = document.createElement('div');
119
- canvadocWrapper.setAttribute('style', 'overflow: auto; resize: vertical; border: 1px solid transparent; height: 100%;');
120
- $container.appendChild(canvadocWrapper);
121
- const minHeight = opts.iframe_min_height !== undefined ? opts.iframe_min_height : '800px';
122
- const sanitizedUrl = sanitizeUrl(opts.canvadoc_session_url);
123
- const iframe = document.createElement('iframe');
124
- iframe.addEventListener('load', () => {
125
- tellAppIViewedThisInline('canvadocs');
126
- if (typeof opts.ready === 'function') opts.ready();
127
- });
128
- iframe.setAttribute('src', sanitizedUrl);
129
- iframe.setAttribute('width', opts.width);
130
- iframe.setAttribute('allowfullscreen', '1');
131
- iframe.setAttribute('style', `border: 0; overflow: auto; height: 99%; min-height: ${minHeight}`);
132
- iframe.id = opts.id;
133
- canvadocWrapper.appendChild(iframe);
134
- } else if (!opts.disableGooglePreviews && (!opts.mimetype || isPreviewable(opts.mimetype)) && opts.attachment_id || opts.public_url) {
135
- // else if it's something google docs preview can handle and we can get a public url to this document.
136
- const loadGooglePreview = function () {
137
- // this handles both ssl and plain http.
138
- const googleDocPreviewUrl = `//docs.google.com/viewer?${new URLSearchParams({
139
- embedded: true,
140
- url: opts.public_url
141
- }).toString()}`;
142
-
143
- if (!opts.ajax_valid || opts.ajax_valid()) {
144
- const iframe = document.createElement('iframe');
145
- iframe.addEventListener('load', () => {
146
- tellAppIViewedThisInline('google');
147
-
148
- if (typeof opts.ready === 'function') {
149
- opts.ready();
150
- }
151
- });
152
- iframe.setAttribute('src', googleDocPreviewUrl);
153
- iframe.setAttribute('height', opts.height);
154
- iframe.setAttribute('width', '100%');
155
- $container.appendChild(iframe);
156
- }
157
- };
158
-
159
- if (opts.public_url) {
160
- loadGooglePreview();
161
- } else if (opts.attachment_id) {
162
- let url = `/api/v1/files/${opts.attachment_id}/public_url.json`;
163
-
164
- if (opts.submission_id) {
165
- url += '?' + new URLSearchParams({
166
- submission_id: opts.submission_id
167
- }).toString();
168
- }
169
-
170
- if (opts.verifier) {
171
- url += `${opts.submission_id ? '&' : '?'}verifier=${opts.verifier}`;
172
- } else {
173
- const match = window.location.search.match(/verifier=([^&]+)(?:&|$)/);
174
- const ver = match && match[1];
175
-
176
- if (ver) {
177
- url += `${opts.submission_id ? '&' : '?'}verifier=${ver}`;
178
- }
179
- }
180
-
181
- showLoadingImage($container, 'centered'); // eslint-disable-next-line promise/catch-or-return
182
-
183
- fetch(url).then(response => {
184
- if (!response.ok) throw new Error(`${response.status}: ${response.statusText}`);
185
- return response;
186
- }).then(response => response.json()).then(data => {
187
- if (data.public_url) {
188
- opts = { ...opts,
189
- ...data
190
- };
191
- loadGooglePreview();
192
- }
193
- }).catch(ex => {
194
- // eslint-disable-next-line no-console
195
- console.error(ex);
196
- }).finally(() => {
197
- removeLoadingImage($container);
198
- });
199
- }
200
- } else {
201
- // else fall back with a message that the document can't be viewed inline
202
- const paragraph = document.createElement('p');
203
-
204
- if (opts.attachment_preview_processing) {
205
- paragraph.textContent = formatMessage('The document preview is currently being processed. Please try again later.');
206
- } else {
207
- paragraph.textContent = formatMessage('This document cannot be displayed within Canvas.');
208
- }
209
-
210
- $container.empty().append(paragraph);
211
- }
212
- }
213
- /**
214
- * Replaces bad urls with harmless urls in cases where bad urls might cause harm
215
- * @param {string} url
216
- */
217
-
218
- export function sanitizeUrl(url) {
219
- const defaultUrl = 'about:blank';
220
-
221
- try {
222
- const parsedUrl = new URL(url, window.location.origin); // eslint-disable-next-line no-script-url
223
-
224
- if (parsedUrl.protocol === 'javascript:') {
225
- return defaultUrl;
226
- }
227
-
228
- return url;
229
- } catch (e) {
230
- // URL() throws TypeError if url is not a valid URL
231
- return defaultUrl;
232
- }
233
- }