@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,83 +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 PropTypes from 'prop-types';
|
|
19
|
-
import React, { Component } from 'react';
|
|
20
|
-
import formatMessage from '../../format-message';
|
|
21
|
-
import { ScreenReaderContent } from '@instructure/ui-a11y-content';
|
|
22
|
-
import { StyleSheet, css } from 'aphrodite';
|
|
23
|
-
|
|
24
|
-
function Loading(props) {
|
|
25
|
-
const className = (css(styles.loading) + ' ' + props.className).trim();
|
|
26
|
-
return /*#__PURE__*/React.createElement("span", {
|
|
27
|
-
className: className
|
|
28
|
-
}, /*#__PURE__*/React.createElement(ScreenReaderContent, null, formatMessage('Loading...')), /*#__PURE__*/React.createElement("span", {
|
|
29
|
-
className: css(styles.dot, styles.dot0)
|
|
30
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
31
|
-
className: css(styles.dot, styles.dot1)
|
|
32
|
-
}), /*#__PURE__*/React.createElement("span", {
|
|
33
|
-
className: css(styles.dot, styles.dot2)
|
|
34
|
-
}));
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
Loading.propTypes = {
|
|
38
|
-
className: PropTypes.string
|
|
39
|
-
};
|
|
40
|
-
Loading.defaultProps = {
|
|
41
|
-
className: ''
|
|
42
|
-
};
|
|
43
|
-
const opacityKeyframes = {
|
|
44
|
-
'0%': {
|
|
45
|
-
opacity: 0
|
|
46
|
-
},
|
|
47
|
-
'50%': {
|
|
48
|
-
opacity: 1
|
|
49
|
-
},
|
|
50
|
-
'100%': {
|
|
51
|
-
opacity: 0
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
const styles = StyleSheet.create({
|
|
55
|
-
loading: {
|
|
56
|
-
display: 'inline-flex',
|
|
57
|
-
alignItems: 'center',
|
|
58
|
-
justifyContent: 'space-around',
|
|
59
|
-
width: '48px',
|
|
60
|
-
height: '10px'
|
|
61
|
-
},
|
|
62
|
-
dot: {
|
|
63
|
-
animationName: [opacityKeyframes],
|
|
64
|
-
animationDuration: '1.95s',
|
|
65
|
-
animationIterationCount: 'infinite',
|
|
66
|
-
animationDirection: 'linear',
|
|
67
|
-
background: '#666',
|
|
68
|
-
borderRadius: '8px',
|
|
69
|
-
width: '10px',
|
|
70
|
-
height: '10px',
|
|
71
|
-
flex: 'none'
|
|
72
|
-
},
|
|
73
|
-
dot0: {
|
|
74
|
-
animationDelay: '-1.8s'
|
|
75
|
-
},
|
|
76
|
-
dot1: {
|
|
77
|
-
animationDelay: '-1.6s'
|
|
78
|
-
},
|
|
79
|
-
dot2: {
|
|
80
|
-
animationDelay: '-1.4s'
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
export default Loading;
|
package/lib/common/fileUrl.js
DELETED
|
@@ -1,152 +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
|
-
// I really want to use the native URL api, but it's requirement of an absolute URL
|
|
19
|
-
// or a base URL makes testing difficult, esp since window.location is "about:blank"
|
|
20
|
-
// in mocha tests.
|
|
21
|
-
import { parse, format } from 'url';
|
|
22
|
-
|
|
23
|
-
function parseCanvasUrl(url) {
|
|
24
|
-
let canvasOrigin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.location.origin;
|
|
25
|
-
|
|
26
|
-
if (!url) {
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
const parsed = parse(url, true);
|
|
31
|
-
const canvasHost = parse(canvasOrigin, true).host;
|
|
32
|
-
|
|
33
|
-
if (parsed.host && canvasHost !== parsed.host) {
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return parsed;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
export function absoluteToRelativeUrl(url, canvasOrigin) {
|
|
41
|
-
const parsed = parseCanvasUrl(url, canvasOrigin);
|
|
42
|
-
|
|
43
|
-
if (!parsed) {
|
|
44
|
-
return url;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
parsed.host = '';
|
|
48
|
-
parsed.hostname = '';
|
|
49
|
-
parsed.slashes = false;
|
|
50
|
-
parsed.protocol = '';
|
|
51
|
-
const newUrl = format(parsed);
|
|
52
|
-
return newUrl;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
function changeDownloadToWrapParams(parsedUrl) {
|
|
56
|
-
delete parsedUrl.search;
|
|
57
|
-
delete parsedUrl.query.download_frd;
|
|
58
|
-
parsedUrl.query.wrap = '1';
|
|
59
|
-
parsedUrl.pathname = parsedUrl.pathname.replace(/\/(?:download|preview)\/?$/, '');
|
|
60
|
-
return parsedUrl;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
function addContext(parsedUrl, contextType, contextId) {
|
|
64
|
-
// if this is a http://canvas/files... url. change it to be contextual
|
|
65
|
-
if (/^\/files/.test(parsedUrl.pathname)) {
|
|
66
|
-
const context = contextType.replace(/([^s])$/, '$1s'); // canvas contexts are plural
|
|
67
|
-
|
|
68
|
-
parsedUrl.pathname = `/${context}/${contextId}${parsedUrl.pathname}`;
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return parsedUrl;
|
|
72
|
-
} // simply replaces the download_frd url param with wrap
|
|
73
|
-
// wrap=1 will (often) cause the resource to be loaded
|
|
74
|
-
// in an iframe on canvas' files page
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
export function downloadToWrap(url) {
|
|
78
|
-
const parsed = parseCanvasUrl(url);
|
|
79
|
-
|
|
80
|
-
if (!parsed) {
|
|
81
|
-
return url;
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
return format(changeDownloadToWrapParams(parsed));
|
|
85
|
-
} // take a url to a file (e.g. /files/17), and convert it to
|
|
86
|
-
// it's in-context url (e.g. /courses/2/files/17).
|
|
87
|
-
// Add wrap=1 to the url so it previews, not downloads
|
|
88
|
-
// If it is a user file or being referenced from a different origin, add the verifier
|
|
89
|
-
// NOTE: this can be removed once canvas-rce-api is updated
|
|
90
|
-
// to normalize the file URLs it returns.
|
|
91
|
-
|
|
92
|
-
export function fixupFileUrl(contextType, contextId, fileInfo, canvasOrigin) {
|
|
93
|
-
// it's annoying, but depending on how we got here
|
|
94
|
-
// the file may have an href or a url
|
|
95
|
-
const key = fileInfo.href ? 'href' : 'url';
|
|
96
|
-
|
|
97
|
-
if (fileInfo[key]) {
|
|
98
|
-
let parsed = parseCanvasUrl(fileInfo[key], canvasOrigin);
|
|
99
|
-
|
|
100
|
-
if (!parsed) {
|
|
101
|
-
return fileInfo;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
parsed = changeDownloadToWrapParams(parsed);
|
|
105
|
-
parsed = addContext(parsed, contextType, contextId); // if this is a user file, add the verifier
|
|
106
|
-
|
|
107
|
-
if (fileInfo.uuid && contextType.includes('user')) {
|
|
108
|
-
delete parsed.search;
|
|
109
|
-
parsed.query.verifier = fileInfo.uuid;
|
|
110
|
-
} else {
|
|
111
|
-
delete parsed.query.verifier;
|
|
112
|
-
}
|
|
113
|
-
|
|
114
|
-
fileInfo[key] = format(parsed);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
return fileInfo;
|
|
118
|
-
} // embedded resources, like an <img src=url> with /preview
|
|
119
|
-
// in the url will not be logged as a view in canvas.
|
|
120
|
-
// This is appropriate for images in some rce content.
|
|
121
|
-
// Remove wrap=1 to indicate we want the file downloaded
|
|
122
|
-
// (which is necessary to show in an <img> tag), not viewed
|
|
123
|
-
|
|
124
|
-
export function prepEmbedSrc(url) {
|
|
125
|
-
let canvasOrigin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : window.location.origin;
|
|
126
|
-
const parsed = parseCanvasUrl(url, canvasOrigin);
|
|
127
|
-
|
|
128
|
-
if (!parsed) {
|
|
129
|
-
return url;
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
if (!/\/preview(?:\?|$)/.test(parsed.pathname)) {
|
|
133
|
-
parsed.pathname = parsed.pathname.replace(/(?:\/download)?\/?(\?|$)/, '/preview$1');
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
delete parsed.search;
|
|
137
|
-
delete parsed.query.wrap;
|
|
138
|
-
return format(parsed);
|
|
139
|
-
} // when the user opens a link to a resource, we want its view
|
|
140
|
-
// logged, so remove /preview
|
|
141
|
-
|
|
142
|
-
export function prepLinkedSrc(url) {
|
|
143
|
-
const parsed = parseCanvasUrl(url);
|
|
144
|
-
|
|
145
|
-
if (!parsed) {
|
|
146
|
-
return url;
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
delete parsed.search;
|
|
150
|
-
parsed.pathname = parsed.pathname.replace(/\/preview(\?|$)/, '$1');
|
|
151
|
-
return format(parsed);
|
|
152
|
-
}
|
package/lib/common/getCookie.js
DELETED
|
@@ -1,32 +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
|
-
|
|
19
|
-
/*
|
|
20
|
-
* This file is copied from canvas-lms/packages/get-cookie/index.js
|
|
21
|
-
*/
|
|
22
|
-
|
|
23
|
-
/**
|
|
24
|
-
* A faster alternative to $.cookie for getting a cookie from document.cookie by name
|
|
25
|
-
* see: https://stackoverflow.com/a/25490531/7159335
|
|
26
|
-
* @param {string} cookieName
|
|
27
|
-
* @returns {string} cookie value
|
|
28
|
-
*/
|
|
29
|
-
export default function getCookie(cookieName) {
|
|
30
|
-
const match = document.cookie.match('(^|[^;]+)\\s*' + cookieName + '\\s*=\\s*([^;]+)');
|
|
31
|
-
return match ? decodeURIComponent(match.pop()) : undefined;
|
|
32
|
-
}
|
|
@@ -1,40 +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 from 'react';
|
|
19
|
-
import { func, shape } from 'prop-types';
|
|
20
|
-
import { Button } from '@instructure/ui-buttons';
|
|
21
|
-
import { View } from '@instructure/ui-view';
|
|
22
|
-
import formatMessage from '../../format-message';
|
|
23
|
-
export default function LoadMoreButton(_ref) {
|
|
24
|
-
let {
|
|
25
|
-
loader
|
|
26
|
-
} = _ref;
|
|
27
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
28
|
-
as: "div",
|
|
29
|
-
padding: "small",
|
|
30
|
-
textAlign: "center"
|
|
31
|
-
}, /*#__PURE__*/React.createElement(Button, {
|
|
32
|
-
onClick: loader.onLoadMore,
|
|
33
|
-
variant: "default"
|
|
34
|
-
}, formatMessage('Load More')));
|
|
35
|
-
}
|
|
36
|
-
LoadMoreButton.propTypes = {
|
|
37
|
-
loader: shape({
|
|
38
|
-
onLoadMore: func.isRequired
|
|
39
|
-
}).isRequired
|
|
40
|
-
};
|
|
@@ -1,36 +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 from 'react';
|
|
19
|
-
import { Spinner } from '@instructure/ui-spinner';
|
|
20
|
-
import { View } from '@instructure/ui-view';
|
|
21
|
-
import formatMessage from '../../format-message';
|
|
22
|
-
|
|
23
|
-
function renderLoading() {
|
|
24
|
-
return formatMessage('Loading');
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
export default function LoadingIndicator() {
|
|
28
|
-
return /*#__PURE__*/React.createElement(View, {
|
|
29
|
-
as: "div",
|
|
30
|
-
margin: "medium none",
|
|
31
|
-
textAlign: "center"
|
|
32
|
-
}, /*#__PURE__*/React.createElement(Spinner, {
|
|
33
|
-
size: "small",
|
|
34
|
-
renderTitle: renderLoading
|
|
35
|
-
}));
|
|
36
|
-
}
|
|
@@ -1,47 +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 from 'react';
|
|
19
|
-
import { number, shape } from 'prop-types';
|
|
20
|
-
import { ScreenReaderContent } from '@instructure/ui-a11y-content';
|
|
21
|
-
import formatMessage from '../../format-message';
|
|
22
|
-
export default function LoadingStatus(_ref) {
|
|
23
|
-
let {
|
|
24
|
-
loader
|
|
25
|
-
} = _ref;
|
|
26
|
-
let itemsLoadedText = null;
|
|
27
|
-
|
|
28
|
-
if (loader.lastRecordsLoaded > 0) {
|
|
29
|
-
itemsLoadedText = formatMessage(`{
|
|
30
|
-
count, plural,
|
|
31
|
-
one {# item loaded}
|
|
32
|
-
other {# items loaded}
|
|
33
|
-
}`, {
|
|
34
|
-
count: loader.lastRecordsLoaded
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
return /*#__PURE__*/React.createElement(ScreenReaderContent, {
|
|
39
|
-
"aria-live": "polite",
|
|
40
|
-
"aria-relevant": "text additions"
|
|
41
|
-
}, itemsLoadedText);
|
|
42
|
-
}
|
|
43
|
-
LoadingStatus.propTypes = {
|
|
44
|
-
loader: shape({
|
|
45
|
-
lastRecordsLoaded: number.isRequired
|
|
46
|
-
}).isRequired
|
|
47
|
-
};
|
|
@@ -1,21 +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
|
-
export { default as LoadMoreButton } from './LoadMoreButton';
|
|
19
|
-
export { default as LoadingIndicator } from './LoadingIndicator';
|
|
20
|
-
export { default as LoadingStatus } from './LoadingStatus';
|
|
21
|
-
export { default as useIncrementalLoading } from './useIncrementalLoading';
|
|
@@ -1,58 +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 { useEffect, useMemo, useRef } from 'react';
|
|
19
|
-
export default function useIncrementalLoading(options) {
|
|
20
|
-
const {
|
|
21
|
-
contextType,
|
|
22
|
-
hasMore,
|
|
23
|
-
isLoading,
|
|
24
|
-
lastItemRef,
|
|
25
|
-
sortBy,
|
|
26
|
-
searchString,
|
|
27
|
-
onLoadInitial,
|
|
28
|
-
onLoadMore,
|
|
29
|
-
records
|
|
30
|
-
} = options;
|
|
31
|
-
const recordCountRef = useRef(records.length);
|
|
32
|
-
useEffect(() => {
|
|
33
|
-
onLoadInitial();
|
|
34
|
-
}, [sortBy.sort, sortBy.order, searchString, contextType]); // eslint-disable-line react-hooks/exhaustive-deps
|
|
35
|
-
|
|
36
|
-
return useMemo(() => {
|
|
37
|
-
const loader = {
|
|
38
|
-
hasMore,
|
|
39
|
-
isLoading,
|
|
40
|
-
lastRecordsLoaded: records.length - recordCountRef.current,
|
|
41
|
-
onLoadInitial,
|
|
42
|
-
sortBy,
|
|
43
|
-
searchString,
|
|
44
|
-
contextType,
|
|
45
|
-
|
|
46
|
-
onLoadMore() {
|
|
47
|
-
if (lastItemRef.current) {
|
|
48
|
-
lastItemRef.current.focus();
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
onLoadMore();
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
};
|
|
55
|
-
recordCountRef.current = records.length;
|
|
56
|
-
return loader;
|
|
57
|
-
}, [sortBy, searchString, contextType, hasMore, isLoading, records.length, lastItemRef, onLoadInitial, onLoadMore]);
|
|
58
|
-
}
|
package/lib/common/indicate.js
DELETED
|
@@ -1,75 +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 { StyleSheet, css } from 'aphrodite'; // margin can be overridden, but default is 3px
|
|
19
|
-
|
|
20
|
-
const MARGIN = 3; // show the indicator over the target with specified margin
|
|
21
|
-
|
|
22
|
-
export default function indicate(region) {
|
|
23
|
-
let margin = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : MARGIN;
|
|
24
|
-
const el = document.createElement('div'); // add margin to region and lift it in front
|
|
25
|
-
|
|
26
|
-
Object.assign(el.style, {
|
|
27
|
-
width: region.width + 2 * margin + 'px',
|
|
28
|
-
height: region.height + 2 * margin + 'px',
|
|
29
|
-
left: region.left - margin + 'px',
|
|
30
|
-
top: region.top - margin + 'px',
|
|
31
|
-
pointerEvents: 'none' // so clicking in the indicator doesn't blur the RCE
|
|
32
|
-
|
|
33
|
-
}); // start hidden and animate a fade in
|
|
34
|
-
|
|
35
|
-
el.className = css(styles.indicator, styles.enter);
|
|
36
|
-
document.body.appendChild(el);
|
|
37
|
-
el.className = css(styles.indicator, styles.enter, styles.active); // fades out slowly after a half second
|
|
38
|
-
|
|
39
|
-
const to = setTimeout(() => {
|
|
40
|
-
el.className = css(styles.indicator, styles.leave);
|
|
41
|
-
}, 900); // when moused over dismiss with quick fade
|
|
42
|
-
|
|
43
|
-
el.addEventListener('mouseover', () => {
|
|
44
|
-
clearTimeout(to);
|
|
45
|
-
el.className = css(styles.indicator, styles.leaveFast);
|
|
46
|
-
}); // destroy element
|
|
47
|
-
|
|
48
|
-
setTimeout(() => document.body.removeChild(el), 2000);
|
|
49
|
-
return el;
|
|
50
|
-
}
|
|
51
|
-
const styles = StyleSheet.create({
|
|
52
|
-
indicator: {
|
|
53
|
-
border: '2px solid #870',
|
|
54
|
-
backgroundColor: '#fd0',
|
|
55
|
-
position: 'absolute',
|
|
56
|
-
display: 'block',
|
|
57
|
-
borderRadius: '5px',
|
|
58
|
-
zIndex: 999999
|
|
59
|
-
},
|
|
60
|
-
enter: {
|
|
61
|
-
opacity: 0
|
|
62
|
-
},
|
|
63
|
-
active: {
|
|
64
|
-
transition: 'opacity 0.4s',
|
|
65
|
-
opacity: 0.8
|
|
66
|
-
},
|
|
67
|
-
leave: {
|
|
68
|
-
transition: 'opacity 0.6s',
|
|
69
|
-
opacity: 0
|
|
70
|
-
},
|
|
71
|
-
leaveFast: {
|
|
72
|
-
transition: 'opacity 0.2s',
|
|
73
|
-
opacity: 0
|
|
74
|
-
}
|
|
75
|
-
});
|
package/lib/common/mimeClass.js
DELETED
|
@@ -1,120 +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
|
-
export function fileEmbed(file) {
|
|
19
|
-
const fileMimeClass = mimeClass(file);
|
|
20
|
-
|
|
21
|
-
if (fileMimeClass === 'image') {
|
|
22
|
-
return {
|
|
23
|
-
type: 'image'
|
|
24
|
-
};
|
|
25
|
-
} else if (fileMimeClass === 'video' || fileMimeClass === 'audio') {
|
|
26
|
-
return {
|
|
27
|
-
type: fileMimeClass
|
|
28
|
-
};
|
|
29
|
-
} else if (file.preview_url) {
|
|
30
|
-
return {
|
|
31
|
-
type: 'scribd'
|
|
32
|
-
};
|
|
33
|
-
} else {
|
|
34
|
-
return {
|
|
35
|
-
type: 'file'
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
export function mimeClass(file) {
|
|
40
|
-
if (file.mime_class) {
|
|
41
|
-
return file.mime_class;
|
|
42
|
-
} else {
|
|
43
|
-
const contentType = getContentType(file); // NOTE: Keep this list in sync with what's in canvas-lms/app/models/attachment.rb
|
|
44
|
-
|
|
45
|
-
return contentMapping(contentType) || file.mime_class || 'file';
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
export function contentMapping(contentType) {
|
|
49
|
-
return {
|
|
50
|
-
'text/html': 'html',
|
|
51
|
-
'text/x-csharp': 'code',
|
|
52
|
-
'text/xml': 'code',
|
|
53
|
-
'text/css': 'code',
|
|
54
|
-
text: 'text',
|
|
55
|
-
'text/plain': 'text',
|
|
56
|
-
'application/rtf': 'doc',
|
|
57
|
-
'text/rtf': 'doc',
|
|
58
|
-
'application/vnd.oasis.opendocument.text': 'doc',
|
|
59
|
-
'application/pdf': 'pdf',
|
|
60
|
-
'application/vnd.openxmlformats-officedocument.wordprocessingml.document': 'doc',
|
|
61
|
-
'application/vnd.apple.pages': 'doc',
|
|
62
|
-
'application/x-docx': 'doc',
|
|
63
|
-
'application/msword': 'doc',
|
|
64
|
-
'application/vnd.ms-powerpoint': 'ppt',
|
|
65
|
-
'application/vnd.openxmlformats-officedocument.presentationml.presentation': 'ppt',
|
|
66
|
-
'applicatoin/vnd.apple.key': 'ppt',
|
|
67
|
-
'application/vnd.ms-excel': 'xls',
|
|
68
|
-
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet': 'xls',
|
|
69
|
-
'application/vnd.apple.numbers': 'xls',
|
|
70
|
-
'application/vnd.oasis.opendocument.spreadsheet': 'xls',
|
|
71
|
-
'image/jpeg': 'image',
|
|
72
|
-
'image/pjpeg': 'image',
|
|
73
|
-
'image/png': 'image',
|
|
74
|
-
'image/gif': 'image',
|
|
75
|
-
'image/bmp': 'image',
|
|
76
|
-
'image/svg+xml': 'image',
|
|
77
|
-
'image/webp': 'image',
|
|
78
|
-
'application/x-rar': 'zip',
|
|
79
|
-
'application/x-rar-compressed': 'zip',
|
|
80
|
-
'application/x-zip': 'zip',
|
|
81
|
-
'application/x-zip-compressed': 'zip',
|
|
82
|
-
'application/xml': 'code',
|
|
83
|
-
'application/zip': 'zip',
|
|
84
|
-
'audio/mp3': 'audio',
|
|
85
|
-
'audio/mpeg': 'audio',
|
|
86
|
-
'audio/basic': 'audio',
|
|
87
|
-
'audio/mid': 'audio',
|
|
88
|
-
'audio/3gpp': 'audio',
|
|
89
|
-
'audio/x-aiff': 'audio',
|
|
90
|
-
'audio/x-m4a': 'audio',
|
|
91
|
-
'audio/x-mpegurl': 'audio',
|
|
92
|
-
'audio/x-ms-wma': 'audio',
|
|
93
|
-
'audio/x-pn-realaudio': 'audio',
|
|
94
|
-
'audio/x-wav': 'audio',
|
|
95
|
-
'audio/mp4': 'audio',
|
|
96
|
-
'audio/wav': 'audio',
|
|
97
|
-
'audio/webm': 'audio',
|
|
98
|
-
'audio/*': 'audio',
|
|
99
|
-
audio: 'audio',
|
|
100
|
-
'video/mpeg': 'video',
|
|
101
|
-
'video/quicktime': 'video',
|
|
102
|
-
'video/x-la-asf': 'video',
|
|
103
|
-
'video/x-ms-asf': 'video',
|
|
104
|
-
'video/x-ms-wma': 'audio',
|
|
105
|
-
'video/x-ms-wmv': 'video',
|
|
106
|
-
'video/x-msvideo': 'video',
|
|
107
|
-
'video/x-sgi-movie': 'video',
|
|
108
|
-
'video/3gpp': 'video',
|
|
109
|
-
'video/mp4': 'video',
|
|
110
|
-
'video/webm': 'video',
|
|
111
|
-
'video/avi': 'video',
|
|
112
|
-
'video/*': 'video',
|
|
113
|
-
video: 'video',
|
|
114
|
-
'application/x-shockwave-flash': 'flash'
|
|
115
|
-
}[contentType];
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
function getContentType(file) {
|
|
119
|
-
return file['content-type'] || file.content_type || file.type;
|
|
120
|
-
}
|