@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,148 +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
|
-
import React, { useEffect, createRef } from 'react';
|
|
19
|
-
import PropTypes from 'prop-types';
|
|
20
|
-
import formatMessage from '../../../../format-message';
|
|
21
|
-
import { ImageCropperSettingsPropTypes } from './propTypes';
|
|
22
|
-
import { buildSvg } from './svg';
|
|
23
|
-
import { PREVIEW_WIDTH, PREVIEW_HEIGHT, BACKGROUND_SQUARE_SIZE } from './constants';
|
|
24
|
-
import { useMouseWheel } from './useMouseWheel';
|
|
25
|
-
import { useKeyMouseTouchEvents } from './useKeyMouseEvents';
|
|
26
|
-
import checkerboardStyle from '../CheckerboardStyling';
|
|
27
|
-
import { View } from '@instructure/ui-view';
|
|
28
|
-
/**
|
|
29
|
-
* Remove the node contents and append the svg element.
|
|
30
|
-
*/
|
|
31
|
-
|
|
32
|
-
function replaceSvg(svg, node) {
|
|
33
|
-
if (!node) return;
|
|
34
|
-
|
|
35
|
-
while (node.firstChild) {
|
|
36
|
-
node.removeChild(node.lastChild);
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
node.appendChild(svg);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
function getTransformValue(_ref) {
|
|
43
|
-
let {
|
|
44
|
-
translateX,
|
|
45
|
-
translateY,
|
|
46
|
-
rotation,
|
|
47
|
-
scaleRatio
|
|
48
|
-
} = _ref;
|
|
49
|
-
const values = [];
|
|
50
|
-
if (translateX !== 0) values.push(`translateX(${translateX}px)`);
|
|
51
|
-
if (translateY !== 0) values.push(`translateY(${translateY}px)`);
|
|
52
|
-
if (rotation && rotation % 360 !== 0) values.push(`rotate(${rotation}deg)`);
|
|
53
|
-
if (scaleRatio > 1) values.push(`scale(${scaleRatio})`);
|
|
54
|
-
return values.join(' ');
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
export const Preview = _ref2 => {
|
|
58
|
-
let {
|
|
59
|
-
image,
|
|
60
|
-
settings,
|
|
61
|
-
dispatch
|
|
62
|
-
} = _ref2;
|
|
63
|
-
const previewRef = /*#__PURE__*/createRef();
|
|
64
|
-
const shapeRef = /*#__PURE__*/createRef();
|
|
65
|
-
const imgRef = /*#__PURE__*/createRef();
|
|
66
|
-
const {
|
|
67
|
-
shape,
|
|
68
|
-
rotation,
|
|
69
|
-
scaleRatio,
|
|
70
|
-
translateX,
|
|
71
|
-
translateY
|
|
72
|
-
} = settings;
|
|
73
|
-
const [tempScaleRatio, onWheelCallback] = useMouseWheel(scaleRatio, dispatch);
|
|
74
|
-
const [tempTranslateX, tempTranslateY, onMouseDownCallback, onTouchStartCallback] = useKeyMouseTouchEvents(translateX, translateY, dispatch, imgRef);
|
|
75
|
-
useEffect(() => {
|
|
76
|
-
imgRef.current.ondragstart = () => false; // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
77
|
-
|
|
78
|
-
}, []);
|
|
79
|
-
useEffect(() => {
|
|
80
|
-
const svg = buildSvg(shape);
|
|
81
|
-
replaceSvg(svg, shapeRef.current);
|
|
82
|
-
});
|
|
83
|
-
const transformValue = getTransformValue({
|
|
84
|
-
translateX: tempTranslateX,
|
|
85
|
-
translateY: tempTranslateY,
|
|
86
|
-
rotation,
|
|
87
|
-
scaleRatio: tempScaleRatio
|
|
88
|
-
});
|
|
89
|
-
|
|
90
|
-
function isSafariVersion15OrLesser() {
|
|
91
|
-
const match = /Version\/(\d+).+Safari/.exec(navigator.userAgent);
|
|
92
|
-
return match ? parseInt(match[1], 10) < 16 : false;
|
|
93
|
-
} // Clip is not supported in Safari until v16.
|
|
94
|
-
// It's needed here to prevent a strange screenreader
|
|
95
|
-
// behavior that makes the cropper look bad. 'hidden'
|
|
96
|
-
// suffices when clip is not available, although it's not perfect
|
|
97
|
-
// TODO: remove when Safari versions >= 16 are more commonplace
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const overflow = isSafariVersion15OrLesser() ? 'hidden' : 'clip';
|
|
101
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
102
|
-
style: {
|
|
103
|
-
justifyContent: 'center',
|
|
104
|
-
overflow,
|
|
105
|
-
...checkerboardStyle(BACKGROUND_SQUARE_SIZE)
|
|
106
|
-
}
|
|
107
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
108
|
-
as: "div",
|
|
109
|
-
tabIndex: 0,
|
|
110
|
-
id: "cropper-preview",
|
|
111
|
-
ref: previewRef,
|
|
112
|
-
height: PREVIEW_HEIGHT,
|
|
113
|
-
width: PREVIEW_WIDTH,
|
|
114
|
-
position: "relative",
|
|
115
|
-
focusPosition: "inset",
|
|
116
|
-
insetInlineStart: "0",
|
|
117
|
-
insetBlockStart: "0",
|
|
118
|
-
textAlign: "center",
|
|
119
|
-
shouldAnimateFocus: false,
|
|
120
|
-
onWheel: onWheelCallback
|
|
121
|
-
}, /*#__PURE__*/React.createElement("img", {
|
|
122
|
-
src: image,
|
|
123
|
-
ref: imgRef,
|
|
124
|
-
alt: formatMessage('Image to crop'),
|
|
125
|
-
style: {
|
|
126
|
-
height: '100%',
|
|
127
|
-
objectFit: 'contain',
|
|
128
|
-
textAlign: 'center',
|
|
129
|
-
transform: transformValue
|
|
130
|
-
},
|
|
131
|
-
onMouseDown: onMouseDownCallback,
|
|
132
|
-
onTouchStart: onTouchStartCallback
|
|
133
|
-
}), /*#__PURE__*/React.createElement("div", {
|
|
134
|
-
id: "cropShapeContainer",
|
|
135
|
-
ref: shapeRef,
|
|
136
|
-
style: {
|
|
137
|
-
position: 'absolute',
|
|
138
|
-
top: 0,
|
|
139
|
-
left: 0,
|
|
140
|
-
pointerEvents: 'none'
|
|
141
|
-
}
|
|
142
|
-
})));
|
|
143
|
-
};
|
|
144
|
-
Preview.propTypes = {
|
|
145
|
-
image: PropTypes.string.isRequired,
|
|
146
|
-
settings: ImageCropperSettingsPropTypes.isRequired,
|
|
147
|
-
dispatch: PropTypes.func.isRequired
|
|
148
|
-
};
|
|
@@ -1,39 +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
|
-
export const PREVIEW_BACKGROUND_COLOR = '#394B58';
|
|
19
|
-
export const PREVIEW_WIDTH = 942;
|
|
20
|
-
export const PREVIEW_HEIGHT = 350;
|
|
21
|
-
export const SHAPE_CONTAINER_LENGTH = 350;
|
|
22
|
-
export const GLUE_WIDTH = 296;
|
|
23
|
-
export const MIN_SCALE_RATIO = 1.0;
|
|
24
|
-
export const MAX_SCALE_RATIO = 2.0;
|
|
25
|
-
export const BUTTON_SCALE_STEP = 0.1;
|
|
26
|
-
export const WHEEL_SCALE_STEP = 0.005;
|
|
27
|
-
export const WHEEL_EVENT_DELAY = 100;
|
|
28
|
-
export const KEY_EVENT_DELAY = 200;
|
|
29
|
-
export const KEY_EVENT_ACCELERATION = 3;
|
|
30
|
-
export const BUTTON_ROTATION_DEGREES = 90;
|
|
31
|
-
export const BACKGROUND_SQUARE_SIZE = 16;
|
|
32
|
-
export const DEFAULT_CROPPER_SETTINGS = {
|
|
33
|
-
shape: 'square',
|
|
34
|
-
rotation: 0,
|
|
35
|
-
scaleRatio: MIN_SCALE_RATIO,
|
|
36
|
-
translateX: 0,
|
|
37
|
-
translateY: 0,
|
|
38
|
-
direction: 0
|
|
39
|
-
};
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2022 - present Instructure, Inc.
|
|
3
|
-
*
|
|
4
|
-
* This file is part of Canvas.
|
|
5
|
-
*
|
|
6
|
-
* Canvas is free software: you can redistribute it and/or modify it under
|
|
7
|
-
* the terms of the GNU Affero General Public License as published by the Free
|
|
8
|
-
* Software Foundation, version 3 of the License.
|
|
9
|
-
*
|
|
10
|
-
* Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
11
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
12
|
-
* A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
13
|
-
* details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License along
|
|
16
|
-
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import React from 'react';
|
|
19
|
-
import PropTypes from 'prop-types';
|
|
20
|
-
import { NumberInput } from '@instructure/ui-number-input';
|
|
21
|
-
import { useDebouncedNumericValue } from './useDebouncedNumericValue';
|
|
22
|
-
import formatMessage from '../../../../../format-message';
|
|
23
|
-
import { ScreenReaderContent } from '@instructure/ui-a11y-content';
|
|
24
|
-
export const CustomNumberInput = _ref => {
|
|
25
|
-
let {
|
|
26
|
-
value,
|
|
27
|
-
parseValueCallback,
|
|
28
|
-
processValueCallback,
|
|
29
|
-
formatValueCallback,
|
|
30
|
-
placeholder,
|
|
31
|
-
onChange
|
|
32
|
-
} = _ref;
|
|
33
|
-
const [inputValue, digestCurrentValue, digestNewValue, hasError] = useDebouncedNumericValue({
|
|
34
|
-
value,
|
|
35
|
-
parseValueCallback,
|
|
36
|
-
processValueCallback,
|
|
37
|
-
formatValueCallback,
|
|
38
|
-
onChange
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
const handleChange = (event, newValue) => digestNewValue(newValue.trim());
|
|
42
|
-
|
|
43
|
-
const handleBlur = () => digestCurrentValue();
|
|
44
|
-
|
|
45
|
-
const handleIncrement = () => onChange(processValueCallback(value + 1));
|
|
46
|
-
|
|
47
|
-
const handleDecrement = () => onChange(processValueCallback(value - 1));
|
|
48
|
-
|
|
49
|
-
const messages = hasError ? [{
|
|
50
|
-
text: formatMessage('Invalid entry.'),
|
|
51
|
-
type: 'error'
|
|
52
|
-
}] : [];
|
|
53
|
-
return /*#__PURE__*/React.createElement(NumberInput, {
|
|
54
|
-
value: inputValue,
|
|
55
|
-
onChange: handleChange,
|
|
56
|
-
onBlur: handleBlur,
|
|
57
|
-
onIncrement: handleIncrement,
|
|
58
|
-
onDecrement: handleDecrement,
|
|
59
|
-
placeholder: placeholder,
|
|
60
|
-
showArrows: false,
|
|
61
|
-
messages: messages,
|
|
62
|
-
renderLabel: /*#__PURE__*/React.createElement(ScreenReaderContent, null, placeholder),
|
|
63
|
-
interaction: "enabled",
|
|
64
|
-
width: "4.5rem"
|
|
65
|
-
});
|
|
66
|
-
};
|
|
67
|
-
CustomNumberInput.propTypes = {
|
|
68
|
-
value: PropTypes.number.isRequired,
|
|
69
|
-
onChange: PropTypes.func.isRequired,
|
|
70
|
-
// Parses a raw string value and returns a number. Ex. "90º" -> 90
|
|
71
|
-
parseValueCallback: PropTypes.func,
|
|
72
|
-
// Processes a number and returns a handled number (for example thresholds). Ex. 370 -> 10
|
|
73
|
-
processValueCallback: PropTypes.func,
|
|
74
|
-
// Formats a number and returns a formatted string number. Ex. 90 -> "90º"
|
|
75
|
-
formatValueCallback: PropTypes.func,
|
|
76
|
-
placeholder: PropTypes.string
|
|
77
|
-
};
|
|
78
|
-
CustomNumberInput.defaultProps = {
|
|
79
|
-
parseValueCallback: value => value,
|
|
80
|
-
processValueCallback: value => value,
|
|
81
|
-
formatValueCallback: value => value,
|
|
82
|
-
placeholder: ''
|
|
83
|
-
};
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2022 - present Instructure, Inc.
|
|
3
|
-
*
|
|
4
|
-
* This file is part of Canvas.
|
|
5
|
-
*
|
|
6
|
-
* Canvas is free software: you can redistribute it and/or modify it under
|
|
7
|
-
* the terms of the GNU Affero General Public License as published by the Free
|
|
8
|
-
* Software Foundation, version 3 of the License.
|
|
9
|
-
*
|
|
10
|
-
* Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
11
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
12
|
-
* A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
13
|
-
* details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License along
|
|
16
|
-
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import React from 'react';
|
|
19
|
-
import PropTypes from 'prop-types';
|
|
20
|
-
import { Flex } from '@instructure/ui-flex';
|
|
21
|
-
import { Button } from '@instructure/ui-buttons';
|
|
22
|
-
import { IconResetLine } from '@instructure/ui-icons';
|
|
23
|
-
import formatMessage from '../../../../../format-message';
|
|
24
|
-
export const ResetControls = _ref => {
|
|
25
|
-
let {
|
|
26
|
-
onReset
|
|
27
|
-
} = _ref;
|
|
28
|
-
return /*#__PURE__*/React.createElement(Flex.Item, null, /*#__PURE__*/React.createElement(Button, {
|
|
29
|
-
renderIcon: IconResetLine,
|
|
30
|
-
onClick: onReset
|
|
31
|
-
}, formatMessage('Reset')));
|
|
32
|
-
};
|
|
33
|
-
ResetControls.propTypes = {
|
|
34
|
-
onReset: PropTypes.func
|
|
35
|
-
};
|
|
36
|
-
ResetControls.defaultProps = {
|
|
37
|
-
onReset: () => {}
|
|
38
|
-
};
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2022 - present Instructure, Inc.
|
|
3
|
-
*
|
|
4
|
-
* This file is part of Canvas.
|
|
5
|
-
*
|
|
6
|
-
* Canvas is free software: you can redistribute it and/or modify it under
|
|
7
|
-
* the terms of the GNU Affero General Public License as published by the Free
|
|
8
|
-
* Software Foundation, version 3 of the License.
|
|
9
|
-
*
|
|
10
|
-
* Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
11
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
12
|
-
* A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
13
|
-
* details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License along
|
|
16
|
-
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import React from 'react';
|
|
19
|
-
import PropTypes from 'prop-types';
|
|
20
|
-
import { IconButton } from '@instructure/ui-buttons';
|
|
21
|
-
import { IconRotateLeftLine, IconRotateRightLine } from '@instructure/ui-icons';
|
|
22
|
-
import { Flex } from '@instructure/ui-flex';
|
|
23
|
-
import { View } from '@instructure/ui-view';
|
|
24
|
-
import { CustomNumberInput } from './CustomNumberInput';
|
|
25
|
-
import { calculateRotation, getNearestRectAngle } from './utils';
|
|
26
|
-
import { BUTTON_ROTATION_DEGREES } from '../constants';
|
|
27
|
-
import formatMessage from '../../../../../format-message';
|
|
28
|
-
|
|
29
|
-
const parseRotationText = value => {
|
|
30
|
-
// Matches a positive/negative integer/decimal followed by "º" symbol
|
|
31
|
-
const matches = value.match(/([-|+]?\d+(?:\.\d+)?)º?/);
|
|
32
|
-
|
|
33
|
-
if (!matches) {
|
|
34
|
-
return null;
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
const result = parseInt(matches[1], 10);
|
|
38
|
-
|
|
39
|
-
if (Number.isNaN(result)) {
|
|
40
|
-
return null;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
return result;
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
const formatRotationText = value => `${value}º`;
|
|
47
|
-
|
|
48
|
-
export const RotationControls = _ref => {
|
|
49
|
-
let {
|
|
50
|
-
rotation,
|
|
51
|
-
onChange
|
|
52
|
-
} = _ref;
|
|
53
|
-
|
|
54
|
-
const rotateLeftCallback = () => onChange(calculateRotation(getNearestRectAngle(rotation, true) - BUTTON_ROTATION_DEGREES));
|
|
55
|
-
|
|
56
|
-
const rotateRightCallback = () => onChange(calculateRotation(getNearestRectAngle(rotation, false) + BUTTON_ROTATION_DEGREES));
|
|
57
|
-
|
|
58
|
-
return /*#__PURE__*/React.createElement(Flex.Item, {
|
|
59
|
-
margin: "0 medium 0 0",
|
|
60
|
-
title: formatMessage('Rotation'),
|
|
61
|
-
role: "toolbar",
|
|
62
|
-
tabindex: -1
|
|
63
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
64
|
-
display: "inline-block",
|
|
65
|
-
margin: "0 small 0 0"
|
|
66
|
-
}, /*#__PURE__*/React.createElement(CustomNumberInput, {
|
|
67
|
-
value: rotation,
|
|
68
|
-
parseValueCallback: parseRotationText,
|
|
69
|
-
formatValueCallback: formatRotationText,
|
|
70
|
-
processValueCallback: calculateRotation,
|
|
71
|
-
placeholder: formatMessage('Rotation'),
|
|
72
|
-
onChange: value => onChange(value)
|
|
73
|
-
})), /*#__PURE__*/React.createElement(IconButton, {
|
|
74
|
-
margin: "0 small 0 0",
|
|
75
|
-
onClick: rotateLeftCallback,
|
|
76
|
-
screenReaderLabel: formatMessage('Rotate image -90 degrees')
|
|
77
|
-
}, /*#__PURE__*/React.createElement(IconRotateLeftLine, null)), /*#__PURE__*/React.createElement(IconButton, {
|
|
78
|
-
onClick: rotateRightCallback,
|
|
79
|
-
screenReaderLabel: formatMessage('Rotate image 90 degrees')
|
|
80
|
-
}, /*#__PURE__*/React.createElement(IconRotateRightLine, null)));
|
|
81
|
-
};
|
|
82
|
-
RotationControls.propTypes = {
|
|
83
|
-
rotation: PropTypes.number,
|
|
84
|
-
onChange: PropTypes.func
|
|
85
|
-
};
|
|
86
|
-
RotationControls.defaultProps = {
|
|
87
|
-
rotation: 0,
|
|
88
|
-
onChange: () => {}
|
|
89
|
-
};
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2022 - present Instructure, Inc.
|
|
3
|
-
*
|
|
4
|
-
* This file is part of Canvas.
|
|
5
|
-
*
|
|
6
|
-
* Canvas is free software: you can redistribute it and/or modify it under
|
|
7
|
-
* the terms of the GNU Affero General Public License as published by the Free
|
|
8
|
-
* Software Foundation, version 3 of the License.
|
|
9
|
-
*
|
|
10
|
-
* Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
11
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
12
|
-
* A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
13
|
-
* details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License along
|
|
16
|
-
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import React from 'react';
|
|
19
|
-
import PropTypes from 'prop-types';
|
|
20
|
-
import { Flex } from '@instructure/ui-flex';
|
|
21
|
-
import formatMessage from '../../../../../format-message';
|
|
22
|
-
import { SimpleSelect } from '@instructure/ui-simple-select';
|
|
23
|
-
import { ZoomControls } from './ZoomControls';
|
|
24
|
-
import { Shape } from '../shape';
|
|
25
|
-
import { ScreenReaderContent } from '@instructure/ui-a11y-content';
|
|
26
|
-
const SHAPE_OPTIONS = [{
|
|
27
|
-
id: Shape.Square,
|
|
28
|
-
label: formatMessage('Square')
|
|
29
|
-
}, {
|
|
30
|
-
id: Shape.Circle,
|
|
31
|
-
label: formatMessage('Circle')
|
|
32
|
-
}, {
|
|
33
|
-
id: Shape.Triangle,
|
|
34
|
-
label: formatMessage('Triangle')
|
|
35
|
-
}, {
|
|
36
|
-
id: Shape.Diamond,
|
|
37
|
-
label: formatMessage('Diamond')
|
|
38
|
-
}, {
|
|
39
|
-
id: Shape.Pentagon,
|
|
40
|
-
label: formatMessage('Pentagon')
|
|
41
|
-
}, {
|
|
42
|
-
id: Shape.Hexagon,
|
|
43
|
-
label: formatMessage('Hexagon')
|
|
44
|
-
}, {
|
|
45
|
-
id: Shape.Octagon,
|
|
46
|
-
label: formatMessage('Octagon')
|
|
47
|
-
}, {
|
|
48
|
-
id: Shape.Star,
|
|
49
|
-
label: formatMessage('Star')
|
|
50
|
-
}];
|
|
51
|
-
export const ShapeControls = _ref => {
|
|
52
|
-
let {
|
|
53
|
-
shape,
|
|
54
|
-
onChange
|
|
55
|
-
} = _ref;
|
|
56
|
-
return /*#__PURE__*/React.createElement(Flex.Item, {
|
|
57
|
-
margin: "0 medium 0 0"
|
|
58
|
-
}, /*#__PURE__*/React.createElement(SimpleSelect, {
|
|
59
|
-
isInline: true,
|
|
60
|
-
value: shape,
|
|
61
|
-
onChange: (event, _ref2) => {
|
|
62
|
-
let {
|
|
63
|
-
id
|
|
64
|
-
} = _ref2;
|
|
65
|
-
return onChange(id);
|
|
66
|
-
},
|
|
67
|
-
renderLabel: /*#__PURE__*/React.createElement(ScreenReaderContent, null, formatMessage('Select crop shape')),
|
|
68
|
-
"data-testid": "shape-select-dropdown"
|
|
69
|
-
}, SHAPE_OPTIONS.map(option => /*#__PURE__*/React.createElement(SimpleSelect.Option, {
|
|
70
|
-
key: option.id,
|
|
71
|
-
id: option.id,
|
|
72
|
-
value: option.id
|
|
73
|
-
}, option.label))));
|
|
74
|
-
};
|
|
75
|
-
ShapeControls.propTypes = {
|
|
76
|
-
shape: PropTypes.string,
|
|
77
|
-
onChange: PropTypes.func
|
|
78
|
-
};
|
|
79
|
-
ZoomControls.defaultProps = {
|
|
80
|
-
shape: 'square',
|
|
81
|
-
onChange: () => {}
|
|
82
|
-
};
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2022 - present Instructure, Inc.
|
|
3
|
-
*
|
|
4
|
-
* This file is part of Canvas.
|
|
5
|
-
*
|
|
6
|
-
* Canvas is free software: you can redistribute it and/or modify it under
|
|
7
|
-
* the terms of the GNU Affero General Public License as published by the Free
|
|
8
|
-
* Software Foundation, version 3 of the License.
|
|
9
|
-
*
|
|
10
|
-
* Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
11
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
12
|
-
* A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
13
|
-
* details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License along
|
|
16
|
-
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import React from 'react';
|
|
19
|
-
import { IconButton } from '@instructure/ui-buttons';
|
|
20
|
-
import { IconZoomInLine, IconZoomOutLine } from '@instructure/ui-icons';
|
|
21
|
-
import { Flex } from '@instructure/ui-flex';
|
|
22
|
-
import { View } from '@instructure/ui-view';
|
|
23
|
-
import { calculateScaleRatio, calculateScalePercentage } from './utils';
|
|
24
|
-
import round from '../../round';
|
|
25
|
-
import { MAX_SCALE_RATIO, MIN_SCALE_RATIO, BUTTON_SCALE_STEP } from '../constants';
|
|
26
|
-
import formatMessage from '../../../../../format-message';
|
|
27
|
-
import PropTypes from 'prop-types';
|
|
28
|
-
import { CustomNumberInput } from './CustomNumberInput';
|
|
29
|
-
import { showFlashAlert } from '../../../../../common/FlashAlert';
|
|
30
|
-
import { debounce } from '@instructure/debounce';
|
|
31
|
-
|
|
32
|
-
const parseZoomText = value => {
|
|
33
|
-
// Matches a positive/negative integer/decimal followed by %" symbol
|
|
34
|
-
const matches = value.match(/([-|+]?\d+(?:\.\d+)?)%?/);
|
|
35
|
-
|
|
36
|
-
if (!matches) {
|
|
37
|
-
return null;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
const result = parseInt(matches[1], 10);
|
|
41
|
-
|
|
42
|
-
if (Number.isNaN(result)) {
|
|
43
|
-
return null;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
return result;
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
const formatZoomText = value => `${value}%`;
|
|
50
|
-
|
|
51
|
-
const debouncedAlert = debounce(showFlashAlert, 1000);
|
|
52
|
-
export const ZoomControls = _ref => {
|
|
53
|
-
let {
|
|
54
|
-
scaleRatio,
|
|
55
|
-
onChange
|
|
56
|
-
} = _ref;
|
|
57
|
-
|
|
58
|
-
const onZoomChange = value => {
|
|
59
|
-
const message = {
|
|
60
|
-
message: `${round(value * 100)}% Zoom`,
|
|
61
|
-
type: 'info',
|
|
62
|
-
srOnly: true
|
|
63
|
-
};
|
|
64
|
-
debouncedAlert(message);
|
|
65
|
-
onChange(value);
|
|
66
|
-
};
|
|
67
|
-
|
|
68
|
-
const zoomOutCallback = () => {
|
|
69
|
-
const newScaleRatio = calculateScaleRatio(scaleRatio - BUTTON_SCALE_STEP);
|
|
70
|
-
onZoomChange(newScaleRatio);
|
|
71
|
-
};
|
|
72
|
-
|
|
73
|
-
const zoomInCallback = () => {
|
|
74
|
-
const newScaleRatio = calculateScaleRatio(scaleRatio + BUTTON_SCALE_STEP);
|
|
75
|
-
onZoomChange(newScaleRatio);
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
return /*#__PURE__*/React.createElement(Flex.Item, {
|
|
79
|
-
title: formatMessage('Zoom'),
|
|
80
|
-
role: "toolbar",
|
|
81
|
-
tabindex: -1
|
|
82
|
-
}, /*#__PURE__*/React.createElement(View, {
|
|
83
|
-
display: "inline-block",
|
|
84
|
-
margin: "0 small 0 0"
|
|
85
|
-
}, /*#__PURE__*/React.createElement(CustomNumberInput, {
|
|
86
|
-
value: round(scaleRatio * 100),
|
|
87
|
-
parseValueCallback: parseZoomText,
|
|
88
|
-
formatValueCallback: formatZoomText,
|
|
89
|
-
processValueCallback: calculateScalePercentage,
|
|
90
|
-
placeholder: formatMessage('Zoom'),
|
|
91
|
-
onChange: value => onZoomChange(round(value / 100))
|
|
92
|
-
})), /*#__PURE__*/React.createElement(IconButton, {
|
|
93
|
-
margin: "0 small 0 0",
|
|
94
|
-
onClick: zoomOutCallback,
|
|
95
|
-
interaction: scaleRatio > MIN_SCALE_RATIO ? 'enabled' : 'disabled',
|
|
96
|
-
screenReaderLabel: formatMessage('Zoom out image')
|
|
97
|
-
}, /*#__PURE__*/React.createElement(IconZoomOutLine, null)), /*#__PURE__*/React.createElement(IconButton, {
|
|
98
|
-
"data-testid": "zoom-in-button",
|
|
99
|
-
onClick: zoomInCallback,
|
|
100
|
-
interaction: scaleRatio < MAX_SCALE_RATIO ? 'enabled' : 'disabled',
|
|
101
|
-
screenReaderLabel: formatMessage('Zoom in image')
|
|
102
|
-
}, /*#__PURE__*/React.createElement(IconZoomInLine, null)));
|
|
103
|
-
};
|
|
104
|
-
ZoomControls.propTypes = {
|
|
105
|
-
scaleRatio: PropTypes.number,
|
|
106
|
-
onChange: PropTypes.func
|
|
107
|
-
};
|
|
108
|
-
ZoomControls.defaultProps = {
|
|
109
|
-
scaleRatio: MIN_SCALE_RATIO,
|
|
110
|
-
onChange: () => {}
|
|
111
|
-
};
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (C) 2022 - present Instructure, Inc.
|
|
3
|
-
*
|
|
4
|
-
* This file is part of Canvas.
|
|
5
|
-
*
|
|
6
|
-
* Canvas is free software: you can redistribute it and/or modify it under
|
|
7
|
-
* the terms of the GNU Affero General Public License as published by the Free
|
|
8
|
-
* Software Foundation, version 3 of the License.
|
|
9
|
-
*
|
|
10
|
-
* Canvas is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
11
|
-
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
|
|
12
|
-
* A PARTICULAR PURPOSE. See the GNU Affero General Public License for more
|
|
13
|
-
* details.
|
|
14
|
-
*
|
|
15
|
-
* You should have received a copy of the GNU Affero General Public License along
|
|
16
|
-
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
-
*/
|
|
18
|
-
import React from 'react';
|
|
19
|
-
import { Flex } from '@instructure/ui-flex';
|
|
20
|
-
import { actions } from '../reducers/imageCropper';
|
|
21
|
-
import { ZoomControls } from './ZoomControls';
|
|
22
|
-
import { RotationControls } from './RotationControls';
|
|
23
|
-
import { ShapeControls } from './ShapeControls';
|
|
24
|
-
import { ResetControls } from './ResetControls';
|
|
25
|
-
export const Controls = _ref => {
|
|
26
|
-
let {
|
|
27
|
-
settings,
|
|
28
|
-
dispatch
|
|
29
|
-
} = _ref;
|
|
30
|
-
return /*#__PURE__*/React.createElement(Flex, {
|
|
31
|
-
id: "imageCropperControls",
|
|
32
|
-
direction: "row",
|
|
33
|
-
margin: "x-small",
|
|
34
|
-
alignItems: "start",
|
|
35
|
-
role: "group"
|
|
36
|
-
}, /*#__PURE__*/React.createElement(ShapeControls, {
|
|
37
|
-
shape: settings.shape,
|
|
38
|
-
onChange: shape => dispatch({
|
|
39
|
-
type: actions.SET_SHAPE,
|
|
40
|
-
payload: shape
|
|
41
|
-
})
|
|
42
|
-
}), /*#__PURE__*/React.createElement(RotationControls, {
|
|
43
|
-
rotation: settings.rotation,
|
|
44
|
-
onChange: rotation => dispatch({
|
|
45
|
-
type: actions.SET_ROTATION,
|
|
46
|
-
payload: rotation
|
|
47
|
-
})
|
|
48
|
-
}), /*#__PURE__*/React.createElement(ZoomControls, {
|
|
49
|
-
scaleRatio: settings.scaleRatio,
|
|
50
|
-
onChange: scaleRatio => dispatch({
|
|
51
|
-
type: actions.SET_SCALE_RATIO,
|
|
52
|
-
payload: scaleRatio
|
|
53
|
-
})
|
|
54
|
-
}), /*#__PURE__*/React.createElement(Flex.Item, {
|
|
55
|
-
shouldGrow: true
|
|
56
|
-
}), /*#__PURE__*/React.createElement(ResetControls, {
|
|
57
|
-
onReset: () => dispatch({
|
|
58
|
-
type: actions.RESET_SETTINGS
|
|
59
|
-
})
|
|
60
|
-
}));
|
|
61
|
-
};
|