UNPKG

@instructure/canvas-rce

Version:

A component wrapping Canvas's usage of Tinymce

543 lines (347 loc) 13.6 kB
# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## 7.3.1 - 2025-11-11 ### Fixed - WordCountModal not closing with keyboard navigation - Accessibility issue for RCE's file preview - Assessment questions preview path - Formatting in Biome configuration for RCE package ### Changed - Updated TinyMCE shortcut link text ### Localization - Updated RCE translations ## 7.3.0 - 2025-10-16 ### Added - Block Content Editor (BCE) support and improvements - Media Embed by URL functionality - A11y checker for block editor - User choices to improved Studio toolbar options - Feature flag for upcoming Studio embed improvements ### Changed - Upgrade to InstUI 10.26.2 - Unify image upload buttons - Adjust the text block footer - Remove documents from RCE's toolbar for BCE ### Fixed - Prevent setState from TinyMCE events after unmount - Image upload modal for BCE - Revert Alert conditional rendering - Revert axios version upgrade ### Removed - Remove crocodoc from canvas ### Localization - Updated RCE translations for multiple locales ## 7.2.0 - 2025-08-21 ### Added - Block content editor RCE variant support - YouTube video overlay - Lightest colors and white included in color picker ### Fixed - Conditionally render screenReader-only Alert in RCEWrapper - Canvas-rce translation warnings prevented - Background color when RCE is fullscreen ### Changed - Upgraded to InstUI 10.24.2 - Upgraded crypto-es in canvas-rce package ### Localization - Updated RCE translations for multiple locales ## 7.1.1 - 2025-07-08 ### Changed - Change color_map to include tiny mce's default light colors and white ## 7.1.0 - 2025-06-06 ### Changed - Change color_map for more accessible default colors ## 7.0.0 - 2025-03-31 ### Fixed - Screen readers for RCE toolbar on mobile platform - Axios CSRF vulnerability - Mailto link insertion ### Changed - Upgraded Instui to v10 - Refactored deprecated plugins to prepare for tinymce upgrade - Removed media_links_use_attachment_id feature flag ## 6.0.0 - 2025-03-20 ### Changed - Upgraded to Node 20 LTS ### Fixed - Redirect focus on invalid save in Image Options tray - Whitelist the aria-description attribute - Flag external links when they have multi-part TLDs - Save changes to alt text when it is the only thing that changes - Screenreader reads out content inside raw HTML editor - Validations in Upload Media modal - Increased Link header size ## 5.15.8 - 2025-02-20 ### Fixed - Fixed invalid `querySelectorAll` selector (`:not(.not_external, .external)`) that caused errors in older Chrome versions (87 and below). Updated to `:not(.not_external):not(.external)` for improved browser compatibility - Improved external link handling logic in canvas-rce ### Added - Jest test to ensure the fix does not introduce regressions ## 5.15.0 - 2025-02-12 - Lazy load iframe and images by default - Improve TypeScript coverage - Use Biome for formatting - Upgrade ESLint - Remove jQuery dependency - Remove some node.js dependencies - Replace some ReactDOM.render usage with createRoot ## 5.14.2 - 2024-11-26 - Added an icon to find and replace tray error ## 5.14.1 - 2024-10-28 ### Changed - Forward along access token and inst_ui parameters from file URLs. ## 5.14.0 - 2024-10-18 ### Added - New optional media player for upload previews ### Fixed - Keyboard trap when switching to the HTML Editor ### Changed - Upgraded React to 18 ## 5.13.7 - 2024-10-28 ### Changed - Forward along access token and inst_ui parameters from file URLs. ## 5.13.6 - 2024-09-25 ### Fixed - File links with data-canvas-previewable='false' will no longer try to preview - Change backgroundless buttons to "primary" theme color to be more visible - Fix LTI tool scrolling issue on small iOS devices - Adding missing translation strings - Fixed some types of non-Canvas files from trying to preview like Canvas files ### Changed - Allow links with data-old-link to replace the existing src or href with the contents of the data-old-link attribute - Added IDs to multiple objects missing IDs - Add loading spinners to image uploads ## 5.13.5 - 2024-09-25 ### Fixed - File links with data-canvas-previewable='false' will no longer try to preview - Change backgroundless buttons to "primary" theme color to be more visible - Fix LTI tool scrolling issue on small iOS devices - Adding missing translation strings - Fixed some types of non-Canvas files from trying to preview like Canvas files ### Changed - Allow links with data-old-link to replace the existing src or href with the contents of the data-old-link attribute - Added IDs to multiple objects missing IDs - Add loading spinners to image uploads ## 5.13.5 - 2024-08-12 ### Fixed - RCE "Lato Extended" now properly uses the "Lato Extended" font ## 5.13.4 - 2024-08-12 ### Changed - Icon Maker tray now stays open until the user closes it with the close button ## 5.13.3 - 2024-07-22 ### Fixed - Icon Maker tray now stays open while an image upload modal is present ## 5.13.2 - 2024-06-26 ### Changed - Removed polyfill.io reference from README ## 5.13.1 - 2024-06-03 ### Changed - Re-added file verifiers as a stop gap to non-Canvas contexts to allow New Quiz item banks to properly share course files ### Fixed - A11y checker tray refusing to close in New Quizzes - Find and Replace Tray now translated correctly ## 5.13.0 - 2024-05-14 ### Added - Find and Replace Tray - Support for Bahasa Indonesia Language and Irish (Gaeilge) Language - Support for tools to always be present in toolbar - LTI enhancements ### Changed - Limited list of fonts to self-hosted and websafe - Preferred HTML editor stored in localstorage - Stopped adding aria-hidden to RCE’s parent label ### Fixed - Focus properly restored after closing a11y checker - Allow non relative video srcs when editing captions - Enhanced user content now translated correctly ## 5.12.2 - 2024-01-31 ### Changed - Moved RCE's makeAllExternalLinksExternalLinks - Removed doc-previews package - Removed CommonJS build of RCE ## 5.12.1 - 2024-01-26 ### Fixed - An issue where we were adding file verifiers unnecessarily to non-user files which were allowing students access to course files they should not have access to - An issue where type query parameter was duplicated. - Fix focus ring in RCE content - Stop adding wrap params to course links ### Changed - Bump redux-thunk to 3.1.0 - Show full name in hover in All Files tray - Remove "scroll-into-view" - jQuery changes - Upgrade moment to 0.5.43 - Upgrade babel-loader to 9.1.3 - Remove use of InferType - Show media captions in New Quizzes - Bump Instui to 8.49 ## 5.11.1 - 2023-10-12 ### Fixed - An issue where the RCE can't be built due to an extraneous dependency ## 5.11.0 - 2023-10-10 ### Fixed - Fix styling on a11y checker why IconButton - fix instui8 regression in course link tray (RCE) - focus close button on ECL tray launch - fix video media comment in speedgrader ### Changed - Bump instui to 8.45.0 - update dockerfiles for node 18 - InstUI 8 upgrade post-work: theme -> themeOverride - Allow other users to view media in discussions - Revert "Stop rendering title and CC panels on media tray for locked attachments" ### Added - respond to all postMessages in active RCE ## 5.10.0 - 2023-09-26 ### Fixed - An issue where media controls don't respond in Safari - An issue where embedded Studio videos cause unresponsiveness - A potential race condition in postMessage forwarding ### Changed - Ignore a11y check on elements with a background image or gradient - Remove math processing percentage indicator ## 5.9.0 - 2023-08-30 ### Fixed - An issue where LTI postMessages were not working inside active RCE ### Changed - Encrypt auto-saved RCE content - Remove dependency on `@instructure/filter-console-messages` ## 5.8.0 - 2023-08-15 ### Fixed - An issue where filenames are incorrectly recognized in the accessibility checker - An issue where the accessibility checker's color picker would not work with invalid RGBA values - An issue where the RCS is required to use the new external tools plugin ### Changed - Removed CJS build from package - Renamed .js files to .jsx - Upgraded react-aria-live dependency to v2.0.5 - Removed h1 option from the Headings menu dropdown - Only typeset math in user content - Reduced amount of console errors when running jest tests by providing missing props, fixing async issues, etc in tests ### Added - New translations - Improved messaging in the Add Course Link tray when there's no results - Explanations for inherited media captions ## 5.7.0 - 2023-07-18 ### Fixed - Some broken translations in the 'Edit Course Link' tray and the word count modal - Some Typescript errors - An issue where the a11y checker incorrectly shows the issues icon ### Changed - Removed the `rce_new_external_tool_dialog_in_canvas` feature flag - Removed the deprecated `instructure_external_tools` package code which was not in use - Replaced themeable with emotion ### Added - Selected link indicator alert for screenreaders in the 'Edit Course Link' tray ## 5.6.17 - 2023-06-27 ### Fixed - Added some missing media translations - Fixed some a11y/usability issues in the 'Edit Course Link' tray - Fixed an icon maker bug related to image compression - Fixed some issues related to pasting images in Firefox and embedding media ### Changed - Removed the `rce_improved_placeholders`, `rce_better_paste`, `rce_show_studio_media_options`, and `buttons_and_icons_cropper` feature flags - Improved the accessibility checker's performance ## 5.6.16 - 2023-05-17 ### Fixed - Fullscreen issues with several select components - A significant number of missing translations across various locales ### Changed - Restored previous mathjax delimiter config - Absorbed the `tinymce-a11y-checker` plugin - Updated the placeholders when inserting media, images, files, etc. - Adjusted toolbar overflow to slide rather than float - Moved MathML to one shared location ### Added - Studio Media Options plugin - Equilibrium button to the Equation Editor - Icon support for iWork files ## 5.6.15 - 2023-03-10 ### Changed - Fixed copy/paste from Microsoft Word into the RCE - Support enhanced copy/paste in a User (vs Course or Group) context - Fix double-pasting of plain text - Fix access permissions for links to course files in the RCE, primarily in support of inline preview within new quizzes - When the canvas JWT expires the RCE calls Canvas to refresh it. The refreshed JWT is now saved so we don't re-refrseh with every api request. - Updated keyboard shortcuts dialog and removed the Alt-0 shortcut that opens it - Limit mathjax delimiters to `\(...\)` and `$$...$$` ### Added - Moved code supporting LTI tools embedded in the RCE from Canvas to the canvas-rce repo ## 5.6.14 - 2023-02-03 ### Changed - Transpile the `??` null-coallescing operator for consumers that don't support it - Fix focus management when closing keyboard shortcut modal - Add additional translated strings ## 5.6.13 - 2023-01-30 ### Changed - Update the tinymce-a11y-checker dependency version to 4.1.3 (updated highlight on violations) - Fixed encoding bug related to quotations - Altered keyboard shortcuts - Updated keyboard shortcut modal appearance ## 5.6.12 - 2023-01-26 ### Changed - Update the CHANGELOG for changes that were published with v5.6.11 ## 5.6.11 - 2023-01-25 ### Changed - Removed Unsplash support - Fixed various bugs with fullscreen RCE - Enhance copy/paste and drag-and-drop into the RCE - Transform initial content to ensure Canvas URLs are relative and remove unnecessary data attributes ## 5.6.10 - 2022-12-09 ### Changed - Fixed inline preview in non-Canvas settings - Fixed video embeds in non-Canvas settings - Fixed fullscreen behavior in non-Canvas settings ### Added - Properties to disable specific plugins (e.g. word count) ## 5.6.9 - 2022-11-19 ### Changed - Fixed a bug causing errors when used outside of Canvas ## 5.6.8 - 2022-11-16 ### Added - User content enhancement option for opening Canvas links in a new tab ### Changed - Fixed word count to no longer include contents of @mentions dropdown - Word count modal can be opened from the status bar - Fixed a bug related to uploading files in external apps ## 5.6.3 - 2022-11-11 ### Changed - Fixes to handling of relative URLs in enhance user content - Fixes to document preview in iframe-embedded scenarios ## 5.6.2 - 2022-11-03 ### Added - User content enhancement function for rendering RCE-authored content ### Changed - RCE now embeds relative links, and uses provided `canvasOrigin` to resolve them - No longer need to provide the list of closed-caption languages - Unsplash now respects plugin settings - Misc bug fixes and enhancements ## 5.6.1 - 2022-09-14 ### Added - Icon Maker features - Cropper dragging support - Reset button for restoring initial values - Restriction on raster image size ### Changed - Stop throwing error when `timezone` or `features` props aren't provided ## 5.6 - 2022-08-17 ### Added - MacOS keyboard shortcut help - TypeScript support - Accessibility Checker rule to require `<h2>` as the highest heading ### Changed - Fixed dependency cycle between `@instructure/canvas-rce` and `@instructure/canvas-media` that caused build errors for external consumers ## 5.5 - 2022-08-04 ### Added - A changelog to make changes clear