@instructure/canvas-rce 5.12.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.
- package/CHANGELOG.md +8 -0
- package/babel-register.js +0 -7
- package/babel.config.cjs.js +0 -7
- package/babel.config.js +0 -9
- package/es/enhance-user-content/doc_previews.js +4 -0
- package/es/enhance-user-content/enhance_user_content.js +4 -59
- package/es/enhance-user-content/external_links.js +75 -0
- package/es/enhance-user-content/mathml.js +9 -7
- package/es/index.js +1 -1
- package/es/rce/RCEWrapper.js +3 -2322
- package/es/rce/plugins/instructure_equation/EquationEditorModal/index.js +1 -1
- package/es/rce/plugins/instructure_equation/EquationEditorModal/styles.js +3 -11
- package/es/rce/plugins/instructure_equation/mathlive/index.js +5 -13
- package/es/rce/tinymce.oxide.content.min.css.js +732 -0
- package/es/rce/tinymce.oxide.skin.min.css.js +7 -0
- package/jest.config.js +0 -7
- package/package.json +1 -5
- package/scripts/build.js +1 -7
- package/lib/bridge/Bridge.js +0 -287
- package/lib/bridge/index.js +0 -21
- package/lib/canvasFileBrowser/FileBrowser.js +0 -457
- package/lib/canvasFileBrowser/en-US.js +0 -234
- package/lib/common/FlashAlert.js +0 -263
- package/lib/common/browser.js +0 -40
- package/lib/common/components/FileTree/File.js +0 -64
- package/lib/common/components/FileTree/Folder.js +0 -110
- package/lib/common/components/FileTree/index.js +0 -84
- package/lib/common/components/FileTree/styles.js +0 -72
- package/lib/common/components/Loading.js +0 -83
- package/lib/common/fileUrl.js +0 -152
- package/lib/common/getCookie.js +0 -32
- package/lib/common/incremental-loading/LoadMoreButton.js +0 -40
- package/lib/common/incremental-loading/LoadingIndicator.js +0 -36
- package/lib/common/incremental-loading/LoadingStatus.js +0 -47
- package/lib/common/incremental-loading/index.js +0 -21
- package/lib/common/incremental-loading/useIncrementalLoading.js +0 -58
- package/lib/common/indicate.js +0 -75
- package/lib/common/mimeClass.js +0 -120
- package/lib/common/natcompare.js +0 -47
- package/lib/defaultTinymceConfig.js +0 -160
- package/lib/elementDenylist.js +0 -19
- package/lib/enhance-user-content/doc_previews.js +0 -233
- package/lib/enhance-user-content/enhance_user_content.js +0 -396
- package/lib/enhance-user-content/index.js +0 -21
- package/lib/enhance-user-content/instructure_helper.js +0 -207
- package/lib/enhance-user-content/jqueryish_funcs.js +0 -88
- package/lib/enhance-user-content/mathml.js +0 -397
- package/lib/enhance-user-content/media_comment_thumbnail.js +0 -130
- package/lib/format-message.js +0 -30
- package/lib/getThemeVars.js +0 -46
- package/lib/getTranslations.js +0 -340
- package/lib/index.js +0 -51
- package/lib/rce/AlertMessageArea.js +0 -47
- package/lib/rce/DraggingBlocker.js +0 -43
- package/lib/rce/KeyboardShortcutModal.js +0 -88
- package/lib/rce/RCE.js +0 -150
- package/lib/rce/RCEGlobals.js +0 -62
- package/lib/rce/RCEWrapper.js +0 -4274
- package/lib/rce/RCEWrapperProps.js +0 -130
- package/lib/rce/RceHtmlEditor.js +0 -142
- package/lib/rce/ResizeHandle.js +0 -102
- package/lib/rce/RestoreAutoSaveModal.js +0 -82
- package/lib/rce/ShowOnFocusButton/index.js +0 -93
- package/lib/rce/StatusBar.js +0 -386
- package/lib/rce/__mocks__/_mockCryptoEs.js +0 -124
- package/lib/rce/__mocks__/styleMock.js +0 -18
- package/lib/rce/__mocks__/tinymceReact.js +0 -55
- package/lib/rce/alertHandler.js +0 -46
- package/lib/rce/contentInsertion.js +0 -325
- package/lib/rce/contentInsertionUtils.js +0 -85
- package/lib/rce/contentRendering.js +0 -145
- package/lib/rce/customEvents.js +0 -18
- package/lib/rce/editorLanguage.js +0 -101
- package/lib/rce/indicatorRegion.js +0 -49
- package/lib/rce/normalizeLocale.js +0 -50
- package/lib/rce/normalizeProps.js +0 -29
- package/lib/rce/plugins/instructure-ui-icons/plugin.js +0 -122
- package/lib/rce/plugins/instructure_condensed_buttons/core/ListUtils.js +0 -24
- package/lib/rce/plugins/instructure_condensed_buttons/plugin.js +0 -27
- package/lib/rce/plugins/instructure_condensed_buttons/ui/alignment-button.js +0 -63
- package/lib/rce/plugins/instructure_condensed_buttons/ui/directionality-button.js +0 -48
- package/lib/rce/plugins/instructure_condensed_buttons/ui/indent-outdent-button.js +0 -41
- package/lib/rce/plugins/instructure_condensed_buttons/ui/list-button.js +0 -145
- package/lib/rce/plugins/instructure_condensed_buttons/ui/subscript-superscript-button.js +0 -56
- package/lib/rce/plugins/instructure_documents/clickCallback.js +0 -23
- package/lib/rce/plugins/instructure_documents/components/DocumentsPanel.js +0 -120
- package/lib/rce/plugins/instructure_documents/components/Link.js +0 -219
- package/lib/rce/plugins/instructure_documents/plugin.js +0 -123
- package/lib/rce/plugins/instructure_equation/EquationEditorModal/advancedOnlySyntax.js +0 -25
- package/lib/rce/plugins/instructure_equation/EquationEditorModal/advancedPreference.js +0 -51
- package/lib/rce/plugins/instructure_equation/EquationEditorModal/index.js +0 -321
- package/lib/rce/plugins/instructure_equation/EquationEditorModal/latexTextareaUtil.js +0 -116
- package/lib/rce/plugins/instructure_equation/EquationEditorModal/parseLatex.js +0 -91
- package/lib/rce/plugins/instructure_equation/EquationEditorModal/styles.js +0 -46
- package/lib/rce/plugins/instructure_equation/EquationEditorToolbar/buttons.js +0 -728
- package/lib/rce/plugins/instructure_equation/EquationEditorToolbar/index.js +0 -84
- package/lib/rce/plugins/instructure_equation/MathIcon/index.js +0 -41
- package/lib/rce/plugins/instructure_equation/MathIcon/svgs.js +0 -236
- package/lib/rce/plugins/instructure_equation/clickCallback.js +0 -53
- package/lib/rce/plugins/instructure_equation/mathlive/index.js +0 -36
- package/lib/rce/plugins/instructure_equation/plugin.js +0 -69
- package/lib/rce/plugins/instructure_fullscreen/plugin.js +0 -50
- package/lib/rce/plugins/instructure_html_view/clickCallback.js +0 -21
- package/lib/rce/plugins/instructure_html_view/plugin.js +0 -37
- package/lib/rce/plugins/instructure_icon_maker/clickCallback.js +0 -57
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ColorSection.js +0 -82
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/CreateIconMakerForm.js +0 -56
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Footer.js +0 -78
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Group.js +0 -36
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Header.js +0 -110
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/Course.js +0 -169
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ImageOptions.js +0 -186
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ImageSection.js +0 -243
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ModeSelect.js +0 -64
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/MultiColor/index.js +0 -73
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/MultiColor/svg.js +0 -298
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SVGList.js +0 -86
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SVGThumbnail.js +0 -55
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SingleColor/index.js +0 -70
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SingleColor/svg.js +0 -317
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/Upload.js +0 -149
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/index.js +0 -18
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/propTypes.js +0 -32
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/utils.js +0 -25
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Preview.js +0 -60
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ShapeSection.js +0 -87
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/TextSection.js +0 -139
- package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/index.js +0 -18
- package/lib/rce/plugins/instructure_icon_maker/components/IconMakerTray.js +0 -323
- package/lib/rce/plugins/instructure_icon_maker/components/SavedIconMakerList.js +0 -91
- package/lib/rce/plugins/instructure_icon_maker/plugin.js +0 -110
- package/lib/rce/plugins/instructure_icon_maker/reducers/imageSection.js +0 -194
- package/lib/rce/plugins/instructure_icon_maker/reducers/svgSettings.js +0 -98
- package/lib/rce/plugins/instructure_icon_maker/registerEditToolbar.js +0 -56
- package/lib/rce/plugins/instructure_icon_maker/svg/clipPath.js +0 -25
- package/lib/rce/plugins/instructure_icon_maker/svg/constants.js +0 -100
- package/lib/rce/plugins/instructure_icon_maker/svg/font.js +0 -25
- package/lib/rce/plugins/instructure_icon_maker/svg/image.js +0 -354
- package/lib/rce/plugins/instructure_icon_maker/svg/index.js +0 -122
- package/lib/rce/plugins/instructure_icon_maker/svg/metadata.js +0 -48
- package/lib/rce/plugins/instructure_icon_maker/svg/settings.js +0 -179
- package/lib/rce/plugins/instructure_icon_maker/svg/shape.js +0 -316
- package/lib/rce/plugins/instructure_icon_maker/svg/text.js +0 -468
- package/lib/rce/plugins/instructure_icon_maker/svg/utils.js +0 -70
- package/lib/rce/plugins/instructure_icon_maker/utils/IconMakerClose.js +0 -45
- package/lib/rce/plugins/instructure_icon_maker/utils/IconMakerFormHasChanges.js +0 -83
- package/lib/rce/plugins/instructure_icon_maker/utils/addIconMakerAttributes.js +0 -28
- package/lib/rce/plugins/instructure_icon_maker/utils/iconValidation.js +0 -35
- package/lib/rce/plugins/instructure_icon_maker/utils/iconsLabels.js +0 -375
- package/lib/rce/plugins/instructure_icon_maker/utils/useDebouncedValue.js +0 -59
- package/lib/rce/plugins/instructure_image/ImageEmbedOptions.js +0 -202
- package/lib/rce/plugins/instructure_image/ImageList/Image.js +0 -106
- package/lib/rce/plugins/instructure_image/ImageList/index.js +0 -69
- package/lib/rce/plugins/instructure_image/ImageOptionsTray/TrayController.js +0 -166
- package/lib/rce/plugins/instructure_image/ImageOptionsTray/index.js +0 -246
- package/lib/rce/plugins/instructure_image/Images/index.js +0 -122
- package/lib/rce/plugins/instructure_image/clickCallback.js +0 -24
- package/lib/rce/plugins/instructure_image/plugin.js +0 -157
- package/lib/rce/plugins/instructure_links/clickCallback.js +0 -22
- package/lib/rce/plugins/instructure_links/components/AccordionSection.js +0 -60
- package/lib/rce/plugins/instructure_links/components/CollectionPanel.js +0 -84
- package/lib/rce/plugins/instructure_links/components/Link.js +0 -213
- package/lib/rce/plugins/instructure_links/components/LinkOptionsDialog/LinkOptionsDialogController.js +0 -127
- package/lib/rce/plugins/instructure_links/components/LinkOptionsDialog/index.js +0 -141
- package/lib/rce/plugins/instructure_links/components/LinkOptionsTray/LinkOptionsTrayController.js +0 -125
- package/lib/rce/plugins/instructure_links/components/LinkOptionsTray/index.js +0 -245
- package/lib/rce/plugins/instructure_links/components/LinkSet.js +0 -195
- package/lib/rce/plugins/instructure_links/components/LinksPanel.js +0 -100
- package/lib/rce/plugins/instructure_links/components/NavigationPanel.js +0 -141
- package/lib/rce/plugins/instructure_links/components/NoResults.js +0 -87
- package/lib/rce/plugins/instructure_links/components/propTypes.js +0 -41
- package/lib/rce/plugins/instructure_links/plugin.js +0 -294
- package/lib/rce/plugins/instructure_links/validateURL.js +0 -70
- package/lib/rce/plugins/instructure_media_embed/clickCallback.js +0 -48
- package/lib/rce/plugins/instructure_media_embed/components/Embed.js +0 -68
- package/lib/rce/plugins/instructure_media_embed/plugin.js +0 -36
- package/lib/rce/plugins/instructure_paste/pasteMenuCommand.js +0 -117
- package/lib/rce/plugins/instructure_paste/plugin.js +0 -174
- package/lib/rce/plugins/instructure_rce_external_tools/ExternalToolsEnv.js +0 -169
- package/lib/rce/plugins/instructure_rce_external_tools/RceToolWrapper.js +0 -225
- package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialog.js +0 -297
- package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialogModal.js +0 -46
- package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialogTray.js +0 -79
- package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolSelectionDialog/ExternalToolSelectionDialog.js +0 -153
- package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolSelectionDialog/ExternalToolSelectionItem.js +0 -94
- package/lib/rce/plugins/instructure_rce_external_tools/components/util/ExpandoText.js +0 -90
- package/lib/rce/plugins/instructure_rce_external_tools/components/util/ToolLaunchIframe.js +0 -35
- package/lib/rce/plugins/instructure_rce_external_tools/dialog-helper.js +0 -29
- package/lib/rce/plugins/instructure_rce_external_tools/helpers/tags.js +0 -55
- package/lib/rce/plugins/instructure_rce_external_tools/jquery/jquery.dropdownList.js +0 -172
- package/lib/rce/plugins/instructure_rce_external_tools/lti11-content-items/RceLti11ContentItem.js +0 -203
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/Lti13ContentItemJson.js +0 -23
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/RceLti13ContentItem.js +0 -111
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/BaseLinkContentItem.js +0 -79
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/HtmlFragmentContentItem.js +0 -47
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ImageContentItem.js +0 -57
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/LinkContentItem.js +0 -26
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ResourceLinkContentItem.js +0 -47
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/processEditorContentItems.js +0 -67
- package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/rceLti13ContentItemFromJson.js +0 -48
- package/lib/rce/plugins/instructure_rce_external_tools/plugin.js +0 -112
- package/lib/rce/plugins/instructure_rce_external_tools/util/addParentFrameContextToUrl.js +0 -27
- package/lib/rce/plugins/instructure_record/AudioOptionsTray/TrayController.js +0 -152
- package/lib/rce/plugins/instructure_record/AudioOptionsTray/index.js +0 -154
- package/lib/rce/plugins/instructure_record/MediaPanel/index.js +0 -123
- package/lib/rce/plugins/instructure_record/VideoOptionsTray/TrayController.js +0 -240
- package/lib/rce/plugins/instructure_record/VideoOptionsTray/index.js +0 -350
- package/lib/rce/plugins/instructure_record/clickCallback.js +0 -105
- package/lib/rce/plugins/instructure_record/mediaTranslations.js +0 -94
- package/lib/rce/plugins/instructure_record/plugin.js +0 -173
- package/lib/rce/plugins/instructure_studio_media_options/plugin.js +0 -42
- package/lib/rce/plugins/instructure_wordcount/clickCallback.js +0 -49
- package/lib/rce/plugins/instructure_wordcount/components/WordCountModal.js +0 -88
- package/lib/rce/plugins/instructure_wordcount/plugin.js +0 -30
- package/lib/rce/plugins/instructure_wordcount/utils/countContent.js +0 -78
- package/lib/rce/plugins/instructure_wordcount/utils/tableContent.js +0 -40
- package/lib/rce/plugins/shared/CanvasContentTray.js +0 -580
- package/lib/rce/plugins/shared/CheckerboardStyling.js +0 -25
- package/lib/rce/plugins/shared/ColorInput.js +0 -233
- package/lib/rce/plugins/shared/ConditionalTooltip.js +0 -32
- package/lib/rce/plugins/shared/ContentSelection.js +0 -269
- package/lib/rce/plugins/shared/DimensionUtils.js +0 -66
- package/lib/rce/plugins/shared/DimensionsInput/DimensionInput.js +0 -62
- package/lib/rce/plugins/shared/DimensionsInput/index.js +0 -161
- package/lib/rce/plugins/shared/DimensionsInput/useDimensionsState.js +0 -220
- package/lib/rce/plugins/shared/ErrorBoundary.js +0 -54
- package/lib/rce/plugins/shared/EventUtils.js +0 -39
- package/lib/rce/plugins/shared/Filter.js +0 -353
- package/lib/rce/plugins/shared/FixedContentTray.js +0 -115
- package/lib/rce/plugins/shared/ImageCropper/DirectionRegion.js +0 -67
- package/lib/rce/plugins/shared/ImageCropper/Modal.js +0 -153
- package/lib/rce/plugins/shared/ImageCropper/Preview.js +0 -148
- package/lib/rce/plugins/shared/ImageCropper/constants.js +0 -39
- package/lib/rce/plugins/shared/ImageCropper/controls/CustomNumberInput.js +0 -83
- package/lib/rce/plugins/shared/ImageCropper/controls/ResetControls.js +0 -38
- package/lib/rce/plugins/shared/ImageCropper/controls/RotationControls.js +0 -89
- package/lib/rce/plugins/shared/ImageCropper/controls/ShapeControls.js +0 -82
- package/lib/rce/plugins/shared/ImageCropper/controls/ZoomControls.js +0 -111
- package/lib/rce/plugins/shared/ImageCropper/controls/index.js +0 -61
- package/lib/rce/plugins/shared/ImageCropper/controls/useDebouncedNumericValue.js +0 -94
- package/lib/rce/plugins/shared/ImageCropper/controls/utils.js +0 -41
- package/lib/rce/plugins/shared/ImageCropper/imageCropUtils.js +0 -149
- package/lib/rce/plugins/shared/ImageCropper/index.js +0 -18
- package/lib/rce/plugins/shared/ImageCropper/propTypes.js +0 -26
- package/lib/rce/plugins/shared/ImageCropper/reducers/imageCropper.js +0 -72
- package/lib/rce/plugins/shared/ImageCropper/shape.js +0 -27
- package/lib/rce/plugins/shared/ImageCropper/svg/index.js +0 -89
- package/lib/rce/plugins/shared/ImageCropper/svg/shape.js +0 -125
- package/lib/rce/plugins/shared/ImageCropper/svg/utils.js +0 -26
- package/lib/rce/plugins/shared/ImageCropper/useKeyMouseEvents.js +0 -233
- package/lib/rce/plugins/shared/ImageCropper/useMouseWheel.js +0 -66
- package/lib/rce/plugins/shared/ImageOptionsForm.js +0 -140
- package/lib/rce/plugins/shared/LinkDisplay.js +0 -96
- package/lib/rce/plugins/shared/PreviewIcon.js +0 -112
- package/lib/rce/plugins/shared/Previewable.js +0 -22
- package/lib/rce/plugins/shared/RceFileBrowser.js +0 -106
- package/lib/rce/plugins/shared/StoreContext.js +0 -57
- package/lib/rce/plugins/shared/StudioLtiSupportUtils.js +0 -71
- package/lib/rce/plugins/shared/UnknownFileTypePanel.js +0 -29
- package/lib/rce/plugins/shared/Upload/CategoryProcessor.js +0 -27
- package/lib/rce/plugins/shared/Upload/ComputerPanel.js +0 -334
- package/lib/rce/plugins/shared/Upload/SvgCategoryProcessor.js +0 -35
- package/lib/rce/plugins/shared/Upload/UploadFile.js +0 -171
- package/lib/rce/plugins/shared/Upload/UploadFileModal.js +0 -273
- package/lib/rce/plugins/shared/Upload/UrlPanel.js +0 -38
- package/lib/rce/plugins/shared/Upload/UsageRightsSelectBox.js +0 -172
- package/lib/rce/plugins/shared/Upload/doFileUpload.js +0 -77
- package/lib/rce/plugins/shared/__mocks__/screenfull.js +0 -24
- package/lib/rce/plugins/shared/buildDownloadUrl.js +0 -31
- package/lib/rce/plugins/shared/compressionUtils.js +0 -98
- package/lib/rce/plugins/shared/dateUtils.js +0 -28
- package/lib/rce/plugins/shared/fileShape.js +0 -129
- package/lib/rce/plugins/shared/fileTypeUtils.js +0 -139
- package/lib/rce/plugins/shared/fileUtils.js +0 -25
- package/lib/rce/plugins/shared/linkUtils.js +0 -89
- package/lib/rce/plugins/shared/round.js +0 -25
- package/lib/rce/plugins/shared/trayUtils.js +0 -34
- package/lib/rce/plugins/shared/useDataUrl.js +0 -76
- package/lib/rce/plugins/tinymce-a11y-checker/components/ColorField.js +0 -86
- package/lib/rce/plugins/tinymce-a11y-checker/components/checker.js +0 -558
- package/lib/rce/plugins/tinymce-a11y-checker/components/color-picker.js +0 -59
- package/lib/rce/plugins/tinymce-a11y-checker/components/placeholder-svg.js +0 -90
- package/lib/rce/plugins/tinymce-a11y-checker/components/pointer.js +0 -32
- package/lib/rce/plugins/tinymce-a11y-checker/node-checker.js +0 -54
- package/lib/rce/plugins/tinymce-a11y-checker/plugin.js +0 -90
- package/lib/rce/plugins/tinymce-a11y-checker/rules/__mocks__/index.js +0 -53
- package/lib/rce/plugins/tinymce-a11y-checker/rules/adjacent-links.js +0 -129
- package/lib/rce/plugins/tinymce-a11y-checker/rules/headings-sequence.js +0 -200
- package/lib/rce/plugins/tinymce-a11y-checker/rules/headings-start-at-h2.js +0 -67
- package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt-filename.js +0 -63
- package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt-length.js +0 -49
- package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt.js +0 -61
- package/lib/rce/plugins/tinymce-a11y-checker/rules/index.js +0 -31
- package/lib/rce/plugins/tinymce-a11y-checker/rules/large-text-contrast.js +0 -51
- package/lib/rce/plugins/tinymce-a11y-checker/rules/list-structure.js +0 -144
- package/lib/rce/plugins/tinymce-a11y-checker/rules/paragraphs-for-headings.js +0 -61
- package/lib/rce/plugins/tinymce-a11y-checker/rules/small-text-contrast.js +0 -75
- package/lib/rce/plugins/tinymce-a11y-checker/rules/table-caption.js +0 -54
- package/lib/rce/plugins/tinymce-a11y-checker/rules/table-header-scope.js +0 -52
- package/lib/rce/plugins/tinymce-a11y-checker/rules/table-header.js +0 -81
- package/lib/rce/plugins/tinymce-a11y-checker/utils/colors.js +0 -43
- package/lib/rce/plugins/tinymce-a11y-checker/utils/describe.js +0 -66
- package/lib/rce/plugins/tinymce-a11y-checker/utils/dom.js +0 -160
- package/lib/rce/plugins/tinymce-a11y-checker/utils/indicate.js +0 -83
- package/lib/rce/plugins/tinymce-a11y-checker/utils/rgb-hex.js +0 -57
- package/lib/rce/plugins/tinymce-a11y-checker/utils/strings.js +0 -40
- package/lib/rce/root.js +0 -58
- package/lib/rce/sanitizePlugins.js +0 -32
- package/lib/rce/style.js +0 -843
- package/lib/rce/tinyRCE.js +0 -66
- package/lib/rce/transformContent.js +0 -73
- package/lib/rce/userOS.js +0 -31
- package/lib/rce/wrapInitCb.js +0 -78
- package/lib/rcs/api.js +0 -672
- package/lib/rcs/buildError.js +0 -98
- package/lib/rcs/fake.js +0 -621
- package/lib/sidebar/actions/all_files.js +0 -29
- package/lib/sidebar/actions/data.js +0 -105
- package/lib/sidebar/actions/documents.js +0 -107
- package/lib/sidebar/actions/files.js +0 -167
- package/lib/sidebar/actions/filter.js +0 -63
- package/lib/sidebar/actions/flickr.js +0 -60
- package/lib/sidebar/actions/images.js +0 -153
- package/lib/sidebar/actions/links.js +0 -23
- package/lib/sidebar/actions/media.js +0 -142
- package/lib/sidebar/actions/session.js +0 -34
- package/lib/sidebar/actions/ui.js +0 -49
- package/lib/sidebar/actions/upload.js +0 -550
- package/lib/sidebar/containers/Sidebar.js +0 -67
- package/lib/sidebar/containers/sidebarHandlers.js +0 -73
- package/lib/sidebar/dragHtml.js +0 -49
- package/lib/sidebar/reducers/all_files.js +0 -35
- package/lib/sidebar/reducers/collection.js +0 -72
- package/lib/sidebar/reducers/collections.js +0 -52
- package/lib/sidebar/reducers/documents.js +0 -89
- package/lib/sidebar/reducers/files.js +0 -38
- package/lib/sidebar/reducers/filter.js +0 -61
- package/lib/sidebar/reducers/flickr.js +0 -51
- package/lib/sidebar/reducers/folder.js +0 -92
- package/lib/sidebar/reducers/folders.js +0 -39
- package/lib/sidebar/reducers/images.js +0 -115
- package/lib/sidebar/reducers/index.js +0 -57
- package/lib/sidebar/reducers/media.js +0 -84
- package/lib/sidebar/reducers/newPageLinkExpanded.js +0 -30
- package/lib/sidebar/reducers/noop.js +0 -21
- package/lib/sidebar/reducers/rootFolderId.js +0 -30
- package/lib/sidebar/reducers/session.js +0 -33
- package/lib/sidebar/reducers/ui.js +0 -87
- package/lib/sidebar/reducers/upload.js +0 -206
- package/lib/sidebar/store/configureStore.js +0 -26
- package/lib/sidebar/store/initialState.js +0 -173
- package/lib/translations/locales/ab.js +0 -26
- package/lib/translations/locales/ar.js +0 -2427
- package/lib/translations/locales/ca.js +0 -2427
- package/lib/translations/locales/cs.js +0 -27
- package/lib/translations/locales/cs_CZ.js +0 -27
- package/lib/translations/locales/cy.js +0 -2427
- package/lib/translations/locales/da-x-k12.js +0 -2427
- package/lib/translations/locales/da.js +0 -2427
- package/lib/translations/locales/da_DK.js +0 -27
- package/lib/translations/locales/de.js +0 -2427
- package/lib/translations/locales/el.js +0 -459
- package/lib/translations/locales/en-AU-x-unimelb.js +0 -2427
- package/lib/translations/locales/en-GB-x-ukhe.js +0 -2427
- package/lib/translations/locales/en.js +0 -2427
- package/lib/translations/locales/en_AU.js +0 -2427
- package/lib/translations/locales/en_CA.js +0 -2426
- package/lib/translations/locales/en_CY.js +0 -2426
- package/lib/translations/locales/en_GB.js +0 -2427
- package/lib/translations/locales/en_NZ.js +0 -26
- package/lib/translations/locales/en_SE.js +0 -26
- package/lib/translations/locales/en_US.js +0 -26
- package/lib/translations/locales/es.js +0 -2427
- package/lib/translations/locales/es_ES.js +0 -2427
- package/lib/translations/locales/es_GT.js +0 -27
- package/lib/translations/locales/fa_IR.js +0 -615
- package/lib/translations/locales/fi.js +0 -2427
- package/lib/translations/locales/fr.js +0 -2427
- package/lib/translations/locales/fr_CA.js +0 -2427
- package/lib/translations/locales/he.js +0 -486
- package/lib/translations/locales/ht.js +0 -2426
- package/lib/translations/locales/hu.js +0 -2007
- package/lib/translations/locales/hu_HU.js +0 -27
- package/lib/translations/locales/hy.js +0 -444
- package/lib/translations/locales/id.js +0 -2426
- package/lib/translations/locales/id_ID.js +0 -26
- package/lib/translations/locales/is.js +0 -2426
- package/lib/translations/locales/it.js +0 -2427
- package/lib/translations/locales/ja.js +0 -2427
- package/lib/translations/locales/ko.js +0 -342
- package/lib/translations/locales/ko_KR.js +0 -27
- package/lib/translations/locales/lt.js +0 -26
- package/lib/translations/locales/lt_LT.js +0 -26
- package/lib/translations/locales/mi.js +0 -2426
- package/lib/translations/locales/mn_MN.js +0 -26
- package/lib/translations/locales/ms.js +0 -2426
- package/lib/translations/locales/nb-x-k12.js +0 -2427
- package/lib/translations/locales/nb.js +0 -2427
- package/lib/translations/locales/nl.js +0 -2427
- package/lib/translations/locales/nl_NL.js +0 -27
- package/lib/translations/locales/nn.js +0 -2247
- package/lib/translations/locales/pl.js +0 -2427
- package/lib/translations/locales/pt.js +0 -2427
- package/lib/translations/locales/pt_BR.js +0 -2427
- package/lib/translations/locales/ro.js +0 -27
- package/lib/translations/locales/ru.js +0 -2427
- package/lib/translations/locales/se.js +0 -26
- package/lib/translations/locales/sl.js +0 -2427
- package/lib/translations/locales/sv-x-k12.js +0 -2427
- package/lib/translations/locales/sv.js +0 -2427
- package/lib/translations/locales/sv_SE.js +0 -27
- package/lib/translations/locales/tg.js +0 -26
- package/lib/translations/locales/th.js +0 -2427
- package/lib/translations/locales/th_TH.js +0 -27
- package/lib/translations/locales/tl_PH.js +0 -26
- package/lib/translations/locales/tr.js +0 -687
- package/lib/translations/locales/uk_UA.js +0 -519
- package/lib/translations/locales/vi.js +0 -2427
- package/lib/translations/locales/vi_VN.js +0 -27
- package/lib/translations/locales/zh-Hans.js +0 -2427
- package/lib/translations/locales/zh-Hant.js +0 -2427
- package/lib/translations/locales/zh.js +0 -2427
- package/lib/translations/locales/zh_HK.js +0 -2427
- package/lib/translations/locales/zh_TW.Big5.js +0 -27
- package/lib/translations/locales/zh_TW.js +0 -27
- package/lib/translations/tinymce/ar_SA.js +0 -211
- package/lib/translations/tinymce/bg_BG.js +0 -419
- package/lib/translations/tinymce/ca.js +0 -419
- package/lib/translations/tinymce/cs.js +0 -419
- package/lib/translations/tinymce/cy.js +0 -418
- package/lib/translations/tinymce/da.js +0 -419
- package/lib/translations/tinymce/de.js +0 -419
- package/lib/translations/tinymce/el.js +0 -261
- package/lib/translations/tinymce/en_GB.js +0 -230
- package/lib/translations/tinymce/es.js +0 -419
- package/lib/translations/tinymce/fa_IR.js +0 -390
- package/lib/translations/tinymce/fi.js +0 -19
- package/lib/translations/tinymce/fr_FR.js +0 -419
- package/lib/translations/tinymce/he_IL.js +0 -420
- package/lib/translations/tinymce/hu_HU.js +0 -419
- package/lib/translations/tinymce/hy.js +0 -419
- package/lib/translations/tinymce/it.js +0 -419
- package/lib/translations/tinymce/ja.js +0 -419
- package/lib/translations/tinymce/ko_KR.js +0 -419
- package/lib/translations/tinymce/nb_NO.js +0 -419
- package/lib/translations/tinymce/nl.js +0 -419
- package/lib/translations/tinymce/pl.js +0 -419
- package/lib/translations/tinymce/pt_BR.js +0 -419
- package/lib/translations/tinymce/pt_PT.js +0 -419
- package/lib/translations/tinymce/ro.js +0 -418
- package/lib/translations/tinymce/ru.js +0 -436
- package/lib/translations/tinymce/ru_RU.js +0 -71
- package/lib/translations/tinymce/sl.js +0 -462
- package/lib/translations/tinymce/sr.js +0 -278
- package/lib/translations/tinymce/sv_SE.js +0 -419
- package/lib/translations/tinymce/th.js +0 -479
- package/lib/translations/tinymce/tr_TR.js +0 -389
- package/lib/translations/tinymce/uk_UA.js +0 -278
- package/lib/translations/tinymce/vi_VN.js +0 -277
- package/lib/translations/tinymce/zh_CN.js +0 -419
- package/lib/translations/tinymce/zh_TW.js +0 -419
- package/lib/util/DeepPartialNullable.js +0 -1
- package/lib/util/ExtractRequired.js +0 -1
- package/lib/util/TypedDict.js +0 -131
- package/lib/util/assertNever.js +0 -44
- package/lib/util/elem-util.js +0 -26
- package/lib/util/encrypted-storage.js +0 -84
- package/lib/util/file-url-util.js +0 -44
- package/lib/util/fullscreenHelpers.js +0 -27
- package/lib/util/instui-icon-helper.js +0 -31
- package/lib/util/loadingPlaceholder.js +0 -436
- package/lib/util/simpleCache.js +0 -41
- package/lib/util/string-util.js +0 -48
- package/lib/util/textarea-editing-util.js +0 -87
- package/lib/util/tinymce-plugin-util.js +0 -52
- package/lib/util/url-util.js +0 -138
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2019 - 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 doFileUpload from '../shared/Upload/doFileUpload';
|
|
19
|
-
export default function (ed, document) {
|
|
20
|
-
return doFileUpload(ed, document, {
|
|
21
|
-
panels: ['COMPUTER']
|
|
22
|
-
}).shownPromise;
|
|
23
|
-
}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2019 - 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, { useRef } from 'react';
|
|
19
|
-
import { func, shape, string, oneOf } from 'prop-types';
|
|
20
|
-
import { contentTrayDocumentShape } from '../../shared/fileShape';
|
|
21
|
-
import formatMessage from '../../../../format-message';
|
|
22
|
-
import { Text } from '@instructure/ui-text';
|
|
23
|
-
import { View } from '@instructure/ui-view';
|
|
24
|
-
import Link from './Link';
|
|
25
|
-
import { LoadMoreButton, LoadingIndicator, LoadingStatus, useIncrementalLoading } from '../../../../common/incremental-loading';
|
|
26
|
-
|
|
27
|
-
function hasFiles(documents) {
|
|
28
|
-
return documents.files.length > 0;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
function isEmpty(documents) {
|
|
32
|
-
return !hasFiles(documents) && !documents.hasMore && !documents.isLoading;
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
function renderLinks(files, handleClick, lastItemRef) {
|
|
36
|
-
return files.map((f, index) => {
|
|
37
|
-
let focusRef = null;
|
|
38
|
-
|
|
39
|
-
if (index === files.length - 1) {
|
|
40
|
-
focusRef = lastItemRef;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
return /*#__PURE__*/React.createElement(Link, Object.assign({
|
|
44
|
-
key: f.id
|
|
45
|
-
}, f, {
|
|
46
|
-
onClick: handleClick,
|
|
47
|
-
focusRef: focusRef
|
|
48
|
-
}));
|
|
49
|
-
});
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
function renderLoadingError(_error) {
|
|
53
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
54
|
-
as: "div",
|
|
55
|
-
role: "alert",
|
|
56
|
-
margin: "medium"
|
|
57
|
-
}, /*#__PURE__*/React.createElement(Text, {
|
|
58
|
-
color: "danger"
|
|
59
|
-
}, formatMessage('Loading failed.')));
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
export default function DocumentsPanel(props) {
|
|
63
|
-
const {
|
|
64
|
-
fetchInitialDocs,
|
|
65
|
-
fetchNextDocs,
|
|
66
|
-
contextType,
|
|
67
|
-
sortBy,
|
|
68
|
-
searchString
|
|
69
|
-
} = props;
|
|
70
|
-
const documents = props.documents[contextType];
|
|
71
|
-
const {
|
|
72
|
-
hasMore,
|
|
73
|
-
isLoading,
|
|
74
|
-
error,
|
|
75
|
-
files
|
|
76
|
-
} = documents;
|
|
77
|
-
const lastItemRef = useRef(null);
|
|
78
|
-
const loader = useIncrementalLoading({
|
|
79
|
-
hasMore,
|
|
80
|
-
isLoading,
|
|
81
|
-
lastItemRef,
|
|
82
|
-
onLoadInitial: fetchInitialDocs,
|
|
83
|
-
onLoadMore: fetchNextDocs,
|
|
84
|
-
records: files,
|
|
85
|
-
contextType,
|
|
86
|
-
sortBy,
|
|
87
|
-
searchString
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
const handleDocClick = file => {
|
|
91
|
-
props.onLinkClick(file);
|
|
92
|
-
};
|
|
93
|
-
|
|
94
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
95
|
-
as: "div",
|
|
96
|
-
"data-testid": "instructure_links-DocumentsPanel"
|
|
97
|
-
}, renderLinks(files, handleDocClick, lastItemRef), loader.isLoading && /*#__PURE__*/React.createElement(LoadingIndicator, {
|
|
98
|
-
loader: loader
|
|
99
|
-
}), !loader.isLoading && loader.hasMore && /*#__PURE__*/React.createElement(LoadMoreButton, {
|
|
100
|
-
loader: loader
|
|
101
|
-
}), /*#__PURE__*/React.createElement(LoadingStatus, {
|
|
102
|
-
loader: loader
|
|
103
|
-
}), error && renderLoadingError(error), isEmpty(documents) && /*#__PURE__*/React.createElement(View, {
|
|
104
|
-
as: "div",
|
|
105
|
-
role: "alert",
|
|
106
|
-
padding: "medium"
|
|
107
|
-
}, formatMessage('No results.')));
|
|
108
|
-
}
|
|
109
|
-
DocumentsPanel.propTypes = {
|
|
110
|
-
contextType: string.isRequired,
|
|
111
|
-
fetchInitialDocs: func.isRequired,
|
|
112
|
-
fetchNextDocs: func.isRequired,
|
|
113
|
-
onLinkClick: func.isRequired,
|
|
114
|
-
documents: contentTrayDocumentShape.isRequired,
|
|
115
|
-
sortBy: shape({
|
|
116
|
-
sort: oneOf(['date_added', 'alphabetical']).isRequired,
|
|
117
|
-
order: oneOf(['asc', 'desc']).isRequired
|
|
118
|
-
}).isRequired,
|
|
119
|
-
searchString: string
|
|
120
|
-
};
|
|
@@ -1,219 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2019 - 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, { useState } from 'react';
|
|
19
|
-
import { func, instanceOf, shape } from 'prop-types';
|
|
20
|
-
import { fileOrMediaObjectShape } from '../../shared/fileShape';
|
|
21
|
-
import classnames from 'classnames';
|
|
22
|
-
import { AccessibleContent } from '@instructure/ui-a11y-content';
|
|
23
|
-
import { Flex } from '@instructure/ui-flex';
|
|
24
|
-
import { View } from '@instructure/ui-view';
|
|
25
|
-
import { Text } from '@instructure/ui-text';
|
|
26
|
-
import { IconDragHandleLine, IconPublishSolid, IconUnpublishedSolid } from '@instructure/ui-icons';
|
|
27
|
-
import formatMessage from '../../../../format-message';
|
|
28
|
-
import { renderLink as renderLinkHtml } from '../../../contentRendering';
|
|
29
|
-
import dragHtml from '../../../../sidebar/dragHtml';
|
|
30
|
-
import { getIconFromType } from '../../shared/fileTypeUtils';
|
|
31
|
-
import { isPreviewable } from '../../shared/Previewable';
|
|
32
|
-
import { applyTimezoneOffsetToDate } from '../../shared/dateUtils';
|
|
33
|
-
import RCEGlobals from '../../../RCEGlobals';
|
|
34
|
-
export default function Link(props) {
|
|
35
|
-
var _RCEGlobals$getConfig;
|
|
36
|
-
|
|
37
|
-
const [isHovering, setIsHovering] = useState(false);
|
|
38
|
-
const {
|
|
39
|
-
filename,
|
|
40
|
-
display_name,
|
|
41
|
-
title,
|
|
42
|
-
content_type,
|
|
43
|
-
published,
|
|
44
|
-
date,
|
|
45
|
-
disabled,
|
|
46
|
-
disabledMessage
|
|
47
|
-
} = props;
|
|
48
|
-
const Icon = getIconFromType(content_type);
|
|
49
|
-
const color = published ? 'success' : 'primary'; // Uses user locale and timezone
|
|
50
|
-
|
|
51
|
-
const configuredTimezone = (_RCEGlobals$getConfig = RCEGlobals.getConfig()) === null || _RCEGlobals$getConfig === void 0 ? void 0 : _RCEGlobals$getConfig.timezone;
|
|
52
|
-
const dateString = formatMessage.date(applyTimezoneOffsetToDate(date, configuredTimezone), 'long');
|
|
53
|
-
const publishedMsg = published ? formatMessage('published') : formatMessage('unpublished');
|
|
54
|
-
|
|
55
|
-
function linkAttrsFromDoc() {
|
|
56
|
-
const canPreview = isPreviewable(props.content_type);
|
|
57
|
-
const clazz = classnames('instructure_file_link', {
|
|
58
|
-
instructure_scribd_file: canPreview,
|
|
59
|
-
inline_disabled: true
|
|
60
|
-
});
|
|
61
|
-
const attrs = {
|
|
62
|
-
id: props.id,
|
|
63
|
-
href: props.href,
|
|
64
|
-
target: '_blank',
|
|
65
|
-
class: clazz,
|
|
66
|
-
text: props.display_name || props.filename,
|
|
67
|
-
// because onClick only takes a single object
|
|
68
|
-
content_type: props.content_type,
|
|
69
|
-
// files have this
|
|
70
|
-
// media_objects have these
|
|
71
|
-
title: props.title,
|
|
72
|
-
type: props.type,
|
|
73
|
-
embedded_iframe_url: props.embedded_iframe_url,
|
|
74
|
-
media_entry_id: props.media_entry_id
|
|
75
|
-
};
|
|
76
|
-
|
|
77
|
-
if (canPreview) {
|
|
78
|
-
attrs['data-canvas-previewable'] = true;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
return attrs;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
function handleLinkClick(e) {
|
|
85
|
-
e.preventDefault();
|
|
86
|
-
props.onClick(linkAttrsFromDoc());
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
function handleLinkKey(e) {
|
|
90
|
-
// press the button on enter or space
|
|
91
|
-
if (e.keyCode === 13 || e.keyCode === 32) {
|
|
92
|
-
handleLinkClick(e);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
function handleDragStart(e) {
|
|
97
|
-
const linkAttrs = linkAttrsFromDoc();
|
|
98
|
-
dragHtml(e, renderLinkHtml(linkAttrs, linkAttrs.text));
|
|
99
|
-
}
|
|
100
|
-
|
|
101
|
-
function handleDragEnd(_e) {
|
|
102
|
-
document.body.click();
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
function handleHover(e) {
|
|
106
|
-
setIsHovering(e.type === 'mouseenter');
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
function buildCallback(callback) {
|
|
110
|
-
if (disabled) return;
|
|
111
|
-
return callback;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
function dateOrMessage(str) {
|
|
115
|
-
if (disabled && disabledMessage) {
|
|
116
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
117
|
-
display: "block"
|
|
118
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
119
|
-
style: textStyles()
|
|
120
|
-
}, /*#__PURE__*/React.createElement(Text, {
|
|
121
|
-
fontStyle: "italic"
|
|
122
|
-
}, disabledMessage)));
|
|
123
|
-
}
|
|
124
|
-
|
|
125
|
-
if (str) {
|
|
126
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
127
|
-
as: "div"
|
|
128
|
-
}, str);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
function textStyles() {
|
|
133
|
-
if (disabled) return {
|
|
134
|
-
color: 'gray'
|
|
135
|
-
};
|
|
136
|
-
return {};
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
let elementRef = null;
|
|
140
|
-
|
|
141
|
-
if (props.focusRef) {
|
|
142
|
-
elementRef = ref => props.focusRef.current = ref;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
146
|
-
"data-testid": "instructure_links-Link",
|
|
147
|
-
draggable: true,
|
|
148
|
-
onDragStart: buildCallback(handleDragStart),
|
|
149
|
-
onDragEnd: buildCallback(handleDragEnd),
|
|
150
|
-
onMouseEnter: buildCallback(handleHover),
|
|
151
|
-
onMouseLeave: buildCallback(handleHover),
|
|
152
|
-
style: {
|
|
153
|
-
position: 'relative'
|
|
154
|
-
}
|
|
155
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
156
|
-
as: "div",
|
|
157
|
-
role: "button",
|
|
158
|
-
position: "relative",
|
|
159
|
-
focusPosition: "inset",
|
|
160
|
-
focusColor: "info",
|
|
161
|
-
tabIndex: 0,
|
|
162
|
-
"aria-describedby": props.describedByID,
|
|
163
|
-
elementRef: elementRef,
|
|
164
|
-
background: "primary",
|
|
165
|
-
borderWidth: "0 0 small 0",
|
|
166
|
-
padding: "x-small",
|
|
167
|
-
width: "100%",
|
|
168
|
-
onClick: buildCallback(handleLinkClick),
|
|
169
|
-
onKeyDown: buildCallback(handleLinkKey),
|
|
170
|
-
"aria-disabled": disabled
|
|
171
|
-
}, /*#__PURE__*/React.createElement("div", {
|
|
172
|
-
style: {
|
|
173
|
-
pointerEvents: 'none'
|
|
174
|
-
}
|
|
175
|
-
}, /*#__PURE__*/React.createElement(Flex, null, /*#__PURE__*/React.createElement(Flex.Item, {
|
|
176
|
-
margin: "0 xx-small 0 0",
|
|
177
|
-
size: "1.125rem"
|
|
178
|
-
}, isHovering ? /*#__PURE__*/React.createElement(IconDragHandleLine, {
|
|
179
|
-
size: "x-small",
|
|
180
|
-
inline: false
|
|
181
|
-
}) : null), /*#__PURE__*/React.createElement(Flex.Item, {
|
|
182
|
-
shouldGrow: true,
|
|
183
|
-
shouldShrink: true
|
|
184
|
-
}, /*#__PURE__*/React.createElement(Flex, null, /*#__PURE__*/React.createElement(Flex.Item, {
|
|
185
|
-
padding: "0 x-small 0 0"
|
|
186
|
-
}, /*#__PURE__*/React.createElement(Text, {
|
|
187
|
-
color: color
|
|
188
|
-
}, /*#__PURE__*/React.createElement(Icon, {
|
|
189
|
-
size: "x-small"
|
|
190
|
-
}))), /*#__PURE__*/React.createElement(Flex.Item, {
|
|
191
|
-
padding: "0 x-small 0 0",
|
|
192
|
-
shouldGrow: true,
|
|
193
|
-
shouldShrink: true,
|
|
194
|
-
textAlign: "start"
|
|
195
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
196
|
-
as: "div",
|
|
197
|
-
margin: "0"
|
|
198
|
-
}, /*#__PURE__*/React.createElement("span", {
|
|
199
|
-
style: textStyles()
|
|
200
|
-
}, display_name || title || filename)), dateOrMessage(dateString)), /*#__PURE__*/React.createElement(Flex.Item, null, /*#__PURE__*/React.createElement(AccessibleContent, {
|
|
201
|
-
alt: publishedMsg
|
|
202
|
-
}, /*#__PURE__*/React.createElement(Text, {
|
|
203
|
-
color: color
|
|
204
|
-
}, published ? /*#__PURE__*/React.createElement(IconPublishSolid, {
|
|
205
|
-
inline: false
|
|
206
|
-
}) : /*#__PURE__*/React.createElement(IconUnpublishedSolid, {
|
|
207
|
-
inline: false
|
|
208
|
-
}))))))))));
|
|
209
|
-
}
|
|
210
|
-
Link.propTypes = {
|
|
211
|
-
focusRef: shape({
|
|
212
|
-
current: instanceOf(Element)
|
|
213
|
-
}),
|
|
214
|
-
...fileOrMediaObjectShape,
|
|
215
|
-
onClick: func.isRequired
|
|
216
|
-
};
|
|
217
|
-
Link.defaultProps = {
|
|
218
|
-
focusRef: null
|
|
219
|
-
};
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2019 - 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 formatMessage from '../../../format-message';
|
|
19
|
-
import clickCallback from './clickCallback';
|
|
20
|
-
import bridge from '../../../bridge';
|
|
21
|
-
import { isOKToLink } from '../../contentInsertionUtils';
|
|
22
|
-
import tinymce from 'tinymce';
|
|
23
|
-
const COURSE_PLUGIN_KEY = 'course_documents';
|
|
24
|
-
const USER_PLUGIN_KEY = 'user_documents';
|
|
25
|
-
const GROUP_PLUGIN_KEY = 'group_documents';
|
|
26
|
-
|
|
27
|
-
function getMenuItems(ed) {
|
|
28
|
-
const contextType = ed.settings.canvas_rce_user_context.type;
|
|
29
|
-
const items = [{
|
|
30
|
-
text: formatMessage('Upload Document'),
|
|
31
|
-
value: 'instructure_upload_document'
|
|
32
|
-
}];
|
|
33
|
-
|
|
34
|
-
if (contextType === 'course') {
|
|
35
|
-
items.push({
|
|
36
|
-
text: formatMessage('Course Documents'),
|
|
37
|
-
value: 'instructure_course_document'
|
|
38
|
-
});
|
|
39
|
-
} else if (contextType === 'group') {
|
|
40
|
-
items.push({
|
|
41
|
-
text: formatMessage('Group Documents'),
|
|
42
|
-
value: 'instructure_group_document'
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
items.push({
|
|
47
|
-
text: formatMessage('User Documents'),
|
|
48
|
-
value: 'instructure_user_document'
|
|
49
|
-
});
|
|
50
|
-
return items;
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
function doMenuItem(ed, value) {
|
|
54
|
-
switch (value) {
|
|
55
|
-
case 'instructure_upload_document':
|
|
56
|
-
ed.execCommand('mceInstructureDocuments');
|
|
57
|
-
break;
|
|
58
|
-
|
|
59
|
-
case 'instructure_course_document':
|
|
60
|
-
ed.focus(true);
|
|
61
|
-
ed.execCommand('instructureTrayForDocuments', false, COURSE_PLUGIN_KEY);
|
|
62
|
-
break;
|
|
63
|
-
|
|
64
|
-
case 'instructure_user_document':
|
|
65
|
-
ed.focus(true);
|
|
66
|
-
ed.execCommand('instructureTrayForDocuments', false, USER_PLUGIN_KEY);
|
|
67
|
-
break;
|
|
68
|
-
|
|
69
|
-
case 'instructure_group_document':
|
|
70
|
-
ed.focus(true);
|
|
71
|
-
ed.execCommand('instructureTrayForDocuments', false, GROUP_PLUGIN_KEY);
|
|
72
|
-
break;
|
|
73
|
-
}
|
|
74
|
-
} // Register plugin
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
tinymce.PluginManager.add('instructure_documents', function (ed) {
|
|
78
|
-
// Register commands
|
|
79
|
-
ed.addCommand('mceInstructureDocuments', () => clickCallback(ed, document));
|
|
80
|
-
ed.addCommand('instructureTrayForDocuments', (ui, plugin_key) => {
|
|
81
|
-
bridge.showTrayForPlugin(plugin_key, ed.id);
|
|
82
|
-
}); // Register menu items
|
|
83
|
-
|
|
84
|
-
ed.ui.registry.addNestedMenuItem('instructure_document', {
|
|
85
|
-
text: formatMessage('Document'),
|
|
86
|
-
icon: 'document',
|
|
87
|
-
getSubmenuItems: () => getMenuItems(ed).map(item => {
|
|
88
|
-
return {
|
|
89
|
-
type: 'menuitem',
|
|
90
|
-
text: item.text,
|
|
91
|
-
onAction: () => doMenuItem(ed, item.value),
|
|
92
|
-
onSetup: api => {
|
|
93
|
-
api.setDisabled(!isOKToLink(ed.selection.getContent()));
|
|
94
|
-
return () => {};
|
|
95
|
-
}
|
|
96
|
-
};
|
|
97
|
-
})
|
|
98
|
-
}); // Register toolbar button
|
|
99
|
-
|
|
100
|
-
ed.ui.registry.addMenuButton('instructure_documents', {
|
|
101
|
-
tooltip: formatMessage('Documents'),
|
|
102
|
-
icon: 'document',
|
|
103
|
-
fetch: callback => callback(getMenuItems(ed).map(item => ({
|
|
104
|
-
type: 'menuitem',
|
|
105
|
-
text: item.text,
|
|
106
|
-
value: item.value,
|
|
107
|
-
onAction: () => doMenuItem(ed, item.value)
|
|
108
|
-
}))),
|
|
109
|
-
|
|
110
|
-
onSetup(api) {
|
|
111
|
-
function handleNodeChange() {
|
|
112
|
-
api.setDisabled(!isOKToLink(ed.selection.getContent()));
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
setTimeout(handleNodeChange);
|
|
116
|
-
ed.on('NodeChange', handleNodeChange);
|
|
117
|
-
return () => {
|
|
118
|
-
ed.off('NodeChange', handleNodeChange);
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
});
|
|
123
|
-
});
|
|
@@ -1,25 +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 { memoize } from 'lodash'; // These commands all work fine with MathJax but either don't work, don't work well
|
|
19
|
-
// (bad UX for editing), or look strange when rendered by Mathlive. Add new ones
|
|
20
|
-
// here if you discover anything else or customers report unexpected experiences.
|
|
21
|
-
|
|
22
|
-
const advancedOnlyCommands = ['begin', 'end', 'cases', 'cr', 'rm', 'text', 'hbox', 'mbox', 'unicode', 'cal', 'frak', 'it', 'scr', 'sf', '#', 'def', 'newcommand', 'operatorname', 'DeclareMathOperator', 'displaystyle', 'textstyle', 'scriptstyle', 'scriptscriptstyle', 'displaylines', 'abovewithdelims', 'array', 'bmatrix', 'buildrel', 'ddddot', 'dddot', 'eqalign', 'eqalignno', 'gcd', 'genfrac', 'hdashline', 'hfil', 'hfill', 'hfilll', 'hline', 'idotsint', 'iiiint', 'injlim', 'kern', 'label', 'LaTeX', 'leftroot', 'lgroup', 'lower', 'mathchoice', 'mathfrak', 'matrix', 'mit', 'mkern', 'mspace', 'negmedspace', 'negthickspace', 'negthinspace', 'newline', 'nobreakspace', 'oldstyle', 'overset', 'pmatrix', 'raise', 'rgroup', 'rule', 'Rule', 'skew', 'space', 'tag', 'TeX', 'underbrace', 'uproot', 'varinjlim', 'varliminf', 'varlimsup', 'varprojlim', 'vcenter', 'vmatrix'];
|
|
23
|
-
const advancedOnlyRegex = new RegExp(advancedOnlyCommands.join('|'), 'm');
|
|
24
|
-
const containsAdvancedSyntax = memoize(latex => advancedOnlyRegex.test(latex));
|
|
25
|
-
export { advancedOnlyCommands, containsAdvancedSyntax };
|
|
@@ -1,51 +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
|
-
export const STORAGE_KEY = 'NEE_should_reopen_advanced';
|
|
19
|
-
|
|
20
|
-
function wrapInErrorHandling(func) {
|
|
21
|
-
try {
|
|
22
|
-
return {
|
|
23
|
-
state: 'success',
|
|
24
|
-
returnValue: func()
|
|
25
|
-
};
|
|
26
|
-
} catch (exception) {
|
|
27
|
-
// eslint-disable-next-line no-console
|
|
28
|
-
console.warn('Store interaction failed: ', exception);
|
|
29
|
-
return {
|
|
30
|
-
state: 'failure'
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
export const isSet = () => {
|
|
36
|
-
const result = wrapInErrorHandling(() => {
|
|
37
|
-
const value = window.sessionStorage.getItem(STORAGE_KEY) || 'null';
|
|
38
|
-
return !!JSON.parse(value);
|
|
39
|
-
});
|
|
40
|
-
return result.state === 'success' ? result.returnValue : false;
|
|
41
|
-
};
|
|
42
|
-
export const set = () => {
|
|
43
|
-
wrapInErrorHandling(() => {
|
|
44
|
-
window.sessionStorage.setItem(STORAGE_KEY, 'true');
|
|
45
|
-
});
|
|
46
|
-
};
|
|
47
|
-
export const remove = () => {
|
|
48
|
-
wrapInErrorHandling(() => {
|
|
49
|
-
window.sessionStorage.removeItem(STORAGE_KEY);
|
|
50
|
-
});
|
|
51
|
-
};
|