@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.
Files changed (476) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/babel-register.js +0 -7
  3. package/babel.config.cjs.js +0 -7
  4. package/babel.config.js +0 -9
  5. package/es/enhance-user-content/doc_previews.js +4 -0
  6. package/es/enhance-user-content/enhance_user_content.js +4 -59
  7. package/es/enhance-user-content/external_links.js +75 -0
  8. package/es/enhance-user-content/mathml.js +9 -7
  9. package/es/index.js +1 -1
  10. package/es/rce/RCEWrapper.js +3 -2322
  11. package/es/rce/plugins/instructure_equation/EquationEditorModal/index.js +1 -1
  12. package/es/rce/plugins/instructure_equation/EquationEditorModal/styles.js +3 -11
  13. package/es/rce/plugins/instructure_equation/mathlive/index.js +5 -13
  14. package/es/rce/tinymce.oxide.content.min.css.js +732 -0
  15. package/es/rce/tinymce.oxide.skin.min.css.js +7 -0
  16. package/jest.config.js +0 -7
  17. package/package.json +1 -5
  18. package/scripts/build.js +1 -7
  19. package/lib/bridge/Bridge.js +0 -287
  20. package/lib/bridge/index.js +0 -21
  21. package/lib/canvasFileBrowser/FileBrowser.js +0 -457
  22. package/lib/canvasFileBrowser/en-US.js +0 -234
  23. package/lib/common/FlashAlert.js +0 -263
  24. package/lib/common/browser.js +0 -40
  25. package/lib/common/components/FileTree/File.js +0 -64
  26. package/lib/common/components/FileTree/Folder.js +0 -110
  27. package/lib/common/components/FileTree/index.js +0 -84
  28. package/lib/common/components/FileTree/styles.js +0 -72
  29. package/lib/common/components/Loading.js +0 -83
  30. package/lib/common/fileUrl.js +0 -152
  31. package/lib/common/getCookie.js +0 -32
  32. package/lib/common/incremental-loading/LoadMoreButton.js +0 -40
  33. package/lib/common/incremental-loading/LoadingIndicator.js +0 -36
  34. package/lib/common/incremental-loading/LoadingStatus.js +0 -47
  35. package/lib/common/incremental-loading/index.js +0 -21
  36. package/lib/common/incremental-loading/useIncrementalLoading.js +0 -58
  37. package/lib/common/indicate.js +0 -75
  38. package/lib/common/mimeClass.js +0 -120
  39. package/lib/common/natcompare.js +0 -47
  40. package/lib/defaultTinymceConfig.js +0 -160
  41. package/lib/elementDenylist.js +0 -19
  42. package/lib/enhance-user-content/doc_previews.js +0 -233
  43. package/lib/enhance-user-content/enhance_user_content.js +0 -396
  44. package/lib/enhance-user-content/index.js +0 -21
  45. package/lib/enhance-user-content/instructure_helper.js +0 -207
  46. package/lib/enhance-user-content/jqueryish_funcs.js +0 -88
  47. package/lib/enhance-user-content/mathml.js +0 -397
  48. package/lib/enhance-user-content/media_comment_thumbnail.js +0 -130
  49. package/lib/format-message.js +0 -30
  50. package/lib/getThemeVars.js +0 -46
  51. package/lib/getTranslations.js +0 -340
  52. package/lib/index.js +0 -51
  53. package/lib/rce/AlertMessageArea.js +0 -47
  54. package/lib/rce/DraggingBlocker.js +0 -43
  55. package/lib/rce/KeyboardShortcutModal.js +0 -88
  56. package/lib/rce/RCE.js +0 -150
  57. package/lib/rce/RCEGlobals.js +0 -62
  58. package/lib/rce/RCEWrapper.js +0 -4274
  59. package/lib/rce/RCEWrapperProps.js +0 -130
  60. package/lib/rce/RceHtmlEditor.js +0 -142
  61. package/lib/rce/ResizeHandle.js +0 -102
  62. package/lib/rce/RestoreAutoSaveModal.js +0 -82
  63. package/lib/rce/ShowOnFocusButton/index.js +0 -93
  64. package/lib/rce/StatusBar.js +0 -386
  65. package/lib/rce/__mocks__/_mockCryptoEs.js +0 -124
  66. package/lib/rce/__mocks__/styleMock.js +0 -18
  67. package/lib/rce/__mocks__/tinymceReact.js +0 -55
  68. package/lib/rce/alertHandler.js +0 -46
  69. package/lib/rce/contentInsertion.js +0 -325
  70. package/lib/rce/contentInsertionUtils.js +0 -85
  71. package/lib/rce/contentRendering.js +0 -145
  72. package/lib/rce/customEvents.js +0 -18
  73. package/lib/rce/editorLanguage.js +0 -101
  74. package/lib/rce/indicatorRegion.js +0 -49
  75. package/lib/rce/normalizeLocale.js +0 -50
  76. package/lib/rce/normalizeProps.js +0 -29
  77. package/lib/rce/plugins/instructure-ui-icons/plugin.js +0 -122
  78. package/lib/rce/plugins/instructure_condensed_buttons/core/ListUtils.js +0 -24
  79. package/lib/rce/plugins/instructure_condensed_buttons/plugin.js +0 -27
  80. package/lib/rce/plugins/instructure_condensed_buttons/ui/alignment-button.js +0 -63
  81. package/lib/rce/plugins/instructure_condensed_buttons/ui/directionality-button.js +0 -48
  82. package/lib/rce/plugins/instructure_condensed_buttons/ui/indent-outdent-button.js +0 -41
  83. package/lib/rce/plugins/instructure_condensed_buttons/ui/list-button.js +0 -145
  84. package/lib/rce/plugins/instructure_condensed_buttons/ui/subscript-superscript-button.js +0 -56
  85. package/lib/rce/plugins/instructure_documents/clickCallback.js +0 -23
  86. package/lib/rce/plugins/instructure_documents/components/DocumentsPanel.js +0 -120
  87. package/lib/rce/plugins/instructure_documents/components/Link.js +0 -219
  88. package/lib/rce/plugins/instructure_documents/plugin.js +0 -123
  89. package/lib/rce/plugins/instructure_equation/EquationEditorModal/advancedOnlySyntax.js +0 -25
  90. package/lib/rce/plugins/instructure_equation/EquationEditorModal/advancedPreference.js +0 -51
  91. package/lib/rce/plugins/instructure_equation/EquationEditorModal/index.js +0 -321
  92. package/lib/rce/plugins/instructure_equation/EquationEditorModal/latexTextareaUtil.js +0 -116
  93. package/lib/rce/plugins/instructure_equation/EquationEditorModal/parseLatex.js +0 -91
  94. package/lib/rce/plugins/instructure_equation/EquationEditorModal/styles.js +0 -46
  95. package/lib/rce/plugins/instructure_equation/EquationEditorToolbar/buttons.js +0 -728
  96. package/lib/rce/plugins/instructure_equation/EquationEditorToolbar/index.js +0 -84
  97. package/lib/rce/plugins/instructure_equation/MathIcon/index.js +0 -41
  98. package/lib/rce/plugins/instructure_equation/MathIcon/svgs.js +0 -236
  99. package/lib/rce/plugins/instructure_equation/clickCallback.js +0 -53
  100. package/lib/rce/plugins/instructure_equation/mathlive/index.js +0 -36
  101. package/lib/rce/plugins/instructure_equation/plugin.js +0 -69
  102. package/lib/rce/plugins/instructure_fullscreen/plugin.js +0 -50
  103. package/lib/rce/plugins/instructure_html_view/clickCallback.js +0 -21
  104. package/lib/rce/plugins/instructure_html_view/plugin.js +0 -37
  105. package/lib/rce/plugins/instructure_icon_maker/clickCallback.js +0 -57
  106. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ColorSection.js +0 -82
  107. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/CreateIconMakerForm.js +0 -56
  108. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Footer.js +0 -78
  109. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Group.js +0 -36
  110. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Header.js +0 -110
  111. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/Course.js +0 -169
  112. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ImageOptions.js +0 -186
  113. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ImageSection.js +0 -243
  114. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/ModeSelect.js +0 -64
  115. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/MultiColor/index.js +0 -73
  116. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/MultiColor/svg.js +0 -298
  117. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SVGList.js +0 -86
  118. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SVGThumbnail.js +0 -55
  119. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SingleColor/index.js +0 -70
  120. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/SingleColor/svg.js +0 -317
  121. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/Upload.js +0 -149
  122. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/index.js +0 -18
  123. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/propTypes.js +0 -32
  124. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ImageSection/utils.js +0 -25
  125. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/Preview.js +0 -60
  126. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/ShapeSection.js +0 -87
  127. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/TextSection.js +0 -139
  128. package/lib/rce/plugins/instructure_icon_maker/components/CreateIconMakerForm/index.js +0 -18
  129. package/lib/rce/plugins/instructure_icon_maker/components/IconMakerTray.js +0 -323
  130. package/lib/rce/plugins/instructure_icon_maker/components/SavedIconMakerList.js +0 -91
  131. package/lib/rce/plugins/instructure_icon_maker/plugin.js +0 -110
  132. package/lib/rce/plugins/instructure_icon_maker/reducers/imageSection.js +0 -194
  133. package/lib/rce/plugins/instructure_icon_maker/reducers/svgSettings.js +0 -98
  134. package/lib/rce/plugins/instructure_icon_maker/registerEditToolbar.js +0 -56
  135. package/lib/rce/plugins/instructure_icon_maker/svg/clipPath.js +0 -25
  136. package/lib/rce/plugins/instructure_icon_maker/svg/constants.js +0 -100
  137. package/lib/rce/plugins/instructure_icon_maker/svg/font.js +0 -25
  138. package/lib/rce/plugins/instructure_icon_maker/svg/image.js +0 -354
  139. package/lib/rce/plugins/instructure_icon_maker/svg/index.js +0 -122
  140. package/lib/rce/plugins/instructure_icon_maker/svg/metadata.js +0 -48
  141. package/lib/rce/plugins/instructure_icon_maker/svg/settings.js +0 -179
  142. package/lib/rce/plugins/instructure_icon_maker/svg/shape.js +0 -316
  143. package/lib/rce/plugins/instructure_icon_maker/svg/text.js +0 -468
  144. package/lib/rce/plugins/instructure_icon_maker/svg/utils.js +0 -70
  145. package/lib/rce/plugins/instructure_icon_maker/utils/IconMakerClose.js +0 -45
  146. package/lib/rce/plugins/instructure_icon_maker/utils/IconMakerFormHasChanges.js +0 -83
  147. package/lib/rce/plugins/instructure_icon_maker/utils/addIconMakerAttributes.js +0 -28
  148. package/lib/rce/plugins/instructure_icon_maker/utils/iconValidation.js +0 -35
  149. package/lib/rce/plugins/instructure_icon_maker/utils/iconsLabels.js +0 -375
  150. package/lib/rce/plugins/instructure_icon_maker/utils/useDebouncedValue.js +0 -59
  151. package/lib/rce/plugins/instructure_image/ImageEmbedOptions.js +0 -202
  152. package/lib/rce/plugins/instructure_image/ImageList/Image.js +0 -106
  153. package/lib/rce/plugins/instructure_image/ImageList/index.js +0 -69
  154. package/lib/rce/plugins/instructure_image/ImageOptionsTray/TrayController.js +0 -166
  155. package/lib/rce/plugins/instructure_image/ImageOptionsTray/index.js +0 -246
  156. package/lib/rce/plugins/instructure_image/Images/index.js +0 -122
  157. package/lib/rce/plugins/instructure_image/clickCallback.js +0 -24
  158. package/lib/rce/plugins/instructure_image/plugin.js +0 -157
  159. package/lib/rce/plugins/instructure_links/clickCallback.js +0 -22
  160. package/lib/rce/plugins/instructure_links/components/AccordionSection.js +0 -60
  161. package/lib/rce/plugins/instructure_links/components/CollectionPanel.js +0 -84
  162. package/lib/rce/plugins/instructure_links/components/Link.js +0 -213
  163. package/lib/rce/plugins/instructure_links/components/LinkOptionsDialog/LinkOptionsDialogController.js +0 -127
  164. package/lib/rce/plugins/instructure_links/components/LinkOptionsDialog/index.js +0 -141
  165. package/lib/rce/plugins/instructure_links/components/LinkOptionsTray/LinkOptionsTrayController.js +0 -125
  166. package/lib/rce/plugins/instructure_links/components/LinkOptionsTray/index.js +0 -245
  167. package/lib/rce/plugins/instructure_links/components/LinkSet.js +0 -195
  168. package/lib/rce/plugins/instructure_links/components/LinksPanel.js +0 -100
  169. package/lib/rce/plugins/instructure_links/components/NavigationPanel.js +0 -141
  170. package/lib/rce/plugins/instructure_links/components/NoResults.js +0 -87
  171. package/lib/rce/plugins/instructure_links/components/propTypes.js +0 -41
  172. package/lib/rce/plugins/instructure_links/plugin.js +0 -294
  173. package/lib/rce/plugins/instructure_links/validateURL.js +0 -70
  174. package/lib/rce/plugins/instructure_media_embed/clickCallback.js +0 -48
  175. package/lib/rce/plugins/instructure_media_embed/components/Embed.js +0 -68
  176. package/lib/rce/plugins/instructure_media_embed/plugin.js +0 -36
  177. package/lib/rce/plugins/instructure_paste/pasteMenuCommand.js +0 -117
  178. package/lib/rce/plugins/instructure_paste/plugin.js +0 -174
  179. package/lib/rce/plugins/instructure_rce_external_tools/ExternalToolsEnv.js +0 -169
  180. package/lib/rce/plugins/instructure_rce_external_tools/RceToolWrapper.js +0 -225
  181. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialog.js +0 -297
  182. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialogModal.js +0 -46
  183. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolDialog/ExternalToolDialogTray.js +0 -79
  184. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolSelectionDialog/ExternalToolSelectionDialog.js +0 -153
  185. package/lib/rce/plugins/instructure_rce_external_tools/components/ExternalToolSelectionDialog/ExternalToolSelectionItem.js +0 -94
  186. package/lib/rce/plugins/instructure_rce_external_tools/components/util/ExpandoText.js +0 -90
  187. package/lib/rce/plugins/instructure_rce_external_tools/components/util/ToolLaunchIframe.js +0 -35
  188. package/lib/rce/plugins/instructure_rce_external_tools/dialog-helper.js +0 -29
  189. package/lib/rce/plugins/instructure_rce_external_tools/helpers/tags.js +0 -55
  190. package/lib/rce/plugins/instructure_rce_external_tools/jquery/jquery.dropdownList.js +0 -172
  191. package/lib/rce/plugins/instructure_rce_external_tools/lti11-content-items/RceLti11ContentItem.js +0 -203
  192. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/Lti13ContentItemJson.js +0 -23
  193. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/RceLti13ContentItem.js +0 -111
  194. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/BaseLinkContentItem.js +0 -79
  195. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/HtmlFragmentContentItem.js +0 -47
  196. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ImageContentItem.js +0 -57
  197. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/LinkContentItem.js +0 -26
  198. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/models/ResourceLinkContentItem.js +0 -47
  199. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/processEditorContentItems.js +0 -67
  200. package/lib/rce/plugins/instructure_rce_external_tools/lti13-content-items/rceLti13ContentItemFromJson.js +0 -48
  201. package/lib/rce/plugins/instructure_rce_external_tools/plugin.js +0 -112
  202. package/lib/rce/plugins/instructure_rce_external_tools/util/addParentFrameContextToUrl.js +0 -27
  203. package/lib/rce/plugins/instructure_record/AudioOptionsTray/TrayController.js +0 -152
  204. package/lib/rce/plugins/instructure_record/AudioOptionsTray/index.js +0 -154
  205. package/lib/rce/plugins/instructure_record/MediaPanel/index.js +0 -123
  206. package/lib/rce/plugins/instructure_record/VideoOptionsTray/TrayController.js +0 -240
  207. package/lib/rce/plugins/instructure_record/VideoOptionsTray/index.js +0 -350
  208. package/lib/rce/plugins/instructure_record/clickCallback.js +0 -105
  209. package/lib/rce/plugins/instructure_record/mediaTranslations.js +0 -94
  210. package/lib/rce/plugins/instructure_record/plugin.js +0 -173
  211. package/lib/rce/plugins/instructure_studio_media_options/plugin.js +0 -42
  212. package/lib/rce/plugins/instructure_wordcount/clickCallback.js +0 -49
  213. package/lib/rce/plugins/instructure_wordcount/components/WordCountModal.js +0 -88
  214. package/lib/rce/plugins/instructure_wordcount/plugin.js +0 -30
  215. package/lib/rce/plugins/instructure_wordcount/utils/countContent.js +0 -78
  216. package/lib/rce/plugins/instructure_wordcount/utils/tableContent.js +0 -40
  217. package/lib/rce/plugins/shared/CanvasContentTray.js +0 -580
  218. package/lib/rce/plugins/shared/CheckerboardStyling.js +0 -25
  219. package/lib/rce/plugins/shared/ColorInput.js +0 -233
  220. package/lib/rce/plugins/shared/ConditionalTooltip.js +0 -32
  221. package/lib/rce/plugins/shared/ContentSelection.js +0 -269
  222. package/lib/rce/plugins/shared/DimensionUtils.js +0 -66
  223. package/lib/rce/plugins/shared/DimensionsInput/DimensionInput.js +0 -62
  224. package/lib/rce/plugins/shared/DimensionsInput/index.js +0 -161
  225. package/lib/rce/plugins/shared/DimensionsInput/useDimensionsState.js +0 -220
  226. package/lib/rce/plugins/shared/ErrorBoundary.js +0 -54
  227. package/lib/rce/plugins/shared/EventUtils.js +0 -39
  228. package/lib/rce/plugins/shared/Filter.js +0 -353
  229. package/lib/rce/plugins/shared/FixedContentTray.js +0 -115
  230. package/lib/rce/plugins/shared/ImageCropper/DirectionRegion.js +0 -67
  231. package/lib/rce/plugins/shared/ImageCropper/Modal.js +0 -153
  232. package/lib/rce/plugins/shared/ImageCropper/Preview.js +0 -148
  233. package/lib/rce/plugins/shared/ImageCropper/constants.js +0 -39
  234. package/lib/rce/plugins/shared/ImageCropper/controls/CustomNumberInput.js +0 -83
  235. package/lib/rce/plugins/shared/ImageCropper/controls/ResetControls.js +0 -38
  236. package/lib/rce/plugins/shared/ImageCropper/controls/RotationControls.js +0 -89
  237. package/lib/rce/plugins/shared/ImageCropper/controls/ShapeControls.js +0 -82
  238. package/lib/rce/plugins/shared/ImageCropper/controls/ZoomControls.js +0 -111
  239. package/lib/rce/plugins/shared/ImageCropper/controls/index.js +0 -61
  240. package/lib/rce/plugins/shared/ImageCropper/controls/useDebouncedNumericValue.js +0 -94
  241. package/lib/rce/plugins/shared/ImageCropper/controls/utils.js +0 -41
  242. package/lib/rce/plugins/shared/ImageCropper/imageCropUtils.js +0 -149
  243. package/lib/rce/plugins/shared/ImageCropper/index.js +0 -18
  244. package/lib/rce/plugins/shared/ImageCropper/propTypes.js +0 -26
  245. package/lib/rce/plugins/shared/ImageCropper/reducers/imageCropper.js +0 -72
  246. package/lib/rce/plugins/shared/ImageCropper/shape.js +0 -27
  247. package/lib/rce/plugins/shared/ImageCropper/svg/index.js +0 -89
  248. package/lib/rce/plugins/shared/ImageCropper/svg/shape.js +0 -125
  249. package/lib/rce/plugins/shared/ImageCropper/svg/utils.js +0 -26
  250. package/lib/rce/plugins/shared/ImageCropper/useKeyMouseEvents.js +0 -233
  251. package/lib/rce/plugins/shared/ImageCropper/useMouseWheel.js +0 -66
  252. package/lib/rce/plugins/shared/ImageOptionsForm.js +0 -140
  253. package/lib/rce/plugins/shared/LinkDisplay.js +0 -96
  254. package/lib/rce/plugins/shared/PreviewIcon.js +0 -112
  255. package/lib/rce/plugins/shared/Previewable.js +0 -22
  256. package/lib/rce/plugins/shared/RceFileBrowser.js +0 -106
  257. package/lib/rce/plugins/shared/StoreContext.js +0 -57
  258. package/lib/rce/plugins/shared/StudioLtiSupportUtils.js +0 -71
  259. package/lib/rce/plugins/shared/UnknownFileTypePanel.js +0 -29
  260. package/lib/rce/plugins/shared/Upload/CategoryProcessor.js +0 -27
  261. package/lib/rce/plugins/shared/Upload/ComputerPanel.js +0 -334
  262. package/lib/rce/plugins/shared/Upload/SvgCategoryProcessor.js +0 -35
  263. package/lib/rce/plugins/shared/Upload/UploadFile.js +0 -171
  264. package/lib/rce/plugins/shared/Upload/UploadFileModal.js +0 -273
  265. package/lib/rce/plugins/shared/Upload/UrlPanel.js +0 -38
  266. package/lib/rce/plugins/shared/Upload/UsageRightsSelectBox.js +0 -172
  267. package/lib/rce/plugins/shared/Upload/doFileUpload.js +0 -77
  268. package/lib/rce/plugins/shared/__mocks__/screenfull.js +0 -24
  269. package/lib/rce/plugins/shared/buildDownloadUrl.js +0 -31
  270. package/lib/rce/plugins/shared/compressionUtils.js +0 -98
  271. package/lib/rce/plugins/shared/dateUtils.js +0 -28
  272. package/lib/rce/plugins/shared/fileShape.js +0 -129
  273. package/lib/rce/plugins/shared/fileTypeUtils.js +0 -139
  274. package/lib/rce/plugins/shared/fileUtils.js +0 -25
  275. package/lib/rce/plugins/shared/linkUtils.js +0 -89
  276. package/lib/rce/plugins/shared/round.js +0 -25
  277. package/lib/rce/plugins/shared/trayUtils.js +0 -34
  278. package/lib/rce/plugins/shared/useDataUrl.js +0 -76
  279. package/lib/rce/plugins/tinymce-a11y-checker/components/ColorField.js +0 -86
  280. package/lib/rce/plugins/tinymce-a11y-checker/components/checker.js +0 -558
  281. package/lib/rce/plugins/tinymce-a11y-checker/components/color-picker.js +0 -59
  282. package/lib/rce/plugins/tinymce-a11y-checker/components/placeholder-svg.js +0 -90
  283. package/lib/rce/plugins/tinymce-a11y-checker/components/pointer.js +0 -32
  284. package/lib/rce/plugins/tinymce-a11y-checker/node-checker.js +0 -54
  285. package/lib/rce/plugins/tinymce-a11y-checker/plugin.js +0 -90
  286. package/lib/rce/plugins/tinymce-a11y-checker/rules/__mocks__/index.js +0 -53
  287. package/lib/rce/plugins/tinymce-a11y-checker/rules/adjacent-links.js +0 -129
  288. package/lib/rce/plugins/tinymce-a11y-checker/rules/headings-sequence.js +0 -200
  289. package/lib/rce/plugins/tinymce-a11y-checker/rules/headings-start-at-h2.js +0 -67
  290. package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt-filename.js +0 -63
  291. package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt-length.js +0 -49
  292. package/lib/rce/plugins/tinymce-a11y-checker/rules/img-alt.js +0 -61
  293. package/lib/rce/plugins/tinymce-a11y-checker/rules/index.js +0 -31
  294. package/lib/rce/plugins/tinymce-a11y-checker/rules/large-text-contrast.js +0 -51
  295. package/lib/rce/plugins/tinymce-a11y-checker/rules/list-structure.js +0 -144
  296. package/lib/rce/plugins/tinymce-a11y-checker/rules/paragraphs-for-headings.js +0 -61
  297. package/lib/rce/plugins/tinymce-a11y-checker/rules/small-text-contrast.js +0 -75
  298. package/lib/rce/plugins/tinymce-a11y-checker/rules/table-caption.js +0 -54
  299. package/lib/rce/plugins/tinymce-a11y-checker/rules/table-header-scope.js +0 -52
  300. package/lib/rce/plugins/tinymce-a11y-checker/rules/table-header.js +0 -81
  301. package/lib/rce/plugins/tinymce-a11y-checker/utils/colors.js +0 -43
  302. package/lib/rce/plugins/tinymce-a11y-checker/utils/describe.js +0 -66
  303. package/lib/rce/plugins/tinymce-a11y-checker/utils/dom.js +0 -160
  304. package/lib/rce/plugins/tinymce-a11y-checker/utils/indicate.js +0 -83
  305. package/lib/rce/plugins/tinymce-a11y-checker/utils/rgb-hex.js +0 -57
  306. package/lib/rce/plugins/tinymce-a11y-checker/utils/strings.js +0 -40
  307. package/lib/rce/root.js +0 -58
  308. package/lib/rce/sanitizePlugins.js +0 -32
  309. package/lib/rce/style.js +0 -843
  310. package/lib/rce/tinyRCE.js +0 -66
  311. package/lib/rce/transformContent.js +0 -73
  312. package/lib/rce/userOS.js +0 -31
  313. package/lib/rce/wrapInitCb.js +0 -78
  314. package/lib/rcs/api.js +0 -672
  315. package/lib/rcs/buildError.js +0 -98
  316. package/lib/rcs/fake.js +0 -621
  317. package/lib/sidebar/actions/all_files.js +0 -29
  318. package/lib/sidebar/actions/data.js +0 -105
  319. package/lib/sidebar/actions/documents.js +0 -107
  320. package/lib/sidebar/actions/files.js +0 -167
  321. package/lib/sidebar/actions/filter.js +0 -63
  322. package/lib/sidebar/actions/flickr.js +0 -60
  323. package/lib/sidebar/actions/images.js +0 -153
  324. package/lib/sidebar/actions/links.js +0 -23
  325. package/lib/sidebar/actions/media.js +0 -142
  326. package/lib/sidebar/actions/session.js +0 -34
  327. package/lib/sidebar/actions/ui.js +0 -49
  328. package/lib/sidebar/actions/upload.js +0 -550
  329. package/lib/sidebar/containers/Sidebar.js +0 -67
  330. package/lib/sidebar/containers/sidebarHandlers.js +0 -73
  331. package/lib/sidebar/dragHtml.js +0 -49
  332. package/lib/sidebar/reducers/all_files.js +0 -35
  333. package/lib/sidebar/reducers/collection.js +0 -72
  334. package/lib/sidebar/reducers/collections.js +0 -52
  335. package/lib/sidebar/reducers/documents.js +0 -89
  336. package/lib/sidebar/reducers/files.js +0 -38
  337. package/lib/sidebar/reducers/filter.js +0 -61
  338. package/lib/sidebar/reducers/flickr.js +0 -51
  339. package/lib/sidebar/reducers/folder.js +0 -92
  340. package/lib/sidebar/reducers/folders.js +0 -39
  341. package/lib/sidebar/reducers/images.js +0 -115
  342. package/lib/sidebar/reducers/index.js +0 -57
  343. package/lib/sidebar/reducers/media.js +0 -84
  344. package/lib/sidebar/reducers/newPageLinkExpanded.js +0 -30
  345. package/lib/sidebar/reducers/noop.js +0 -21
  346. package/lib/sidebar/reducers/rootFolderId.js +0 -30
  347. package/lib/sidebar/reducers/session.js +0 -33
  348. package/lib/sidebar/reducers/ui.js +0 -87
  349. package/lib/sidebar/reducers/upload.js +0 -206
  350. package/lib/sidebar/store/configureStore.js +0 -26
  351. package/lib/sidebar/store/initialState.js +0 -173
  352. package/lib/translations/locales/ab.js +0 -26
  353. package/lib/translations/locales/ar.js +0 -2427
  354. package/lib/translations/locales/ca.js +0 -2427
  355. package/lib/translations/locales/cs.js +0 -27
  356. package/lib/translations/locales/cs_CZ.js +0 -27
  357. package/lib/translations/locales/cy.js +0 -2427
  358. package/lib/translations/locales/da-x-k12.js +0 -2427
  359. package/lib/translations/locales/da.js +0 -2427
  360. package/lib/translations/locales/da_DK.js +0 -27
  361. package/lib/translations/locales/de.js +0 -2427
  362. package/lib/translations/locales/el.js +0 -459
  363. package/lib/translations/locales/en-AU-x-unimelb.js +0 -2427
  364. package/lib/translations/locales/en-GB-x-ukhe.js +0 -2427
  365. package/lib/translations/locales/en.js +0 -2427
  366. package/lib/translations/locales/en_AU.js +0 -2427
  367. package/lib/translations/locales/en_CA.js +0 -2426
  368. package/lib/translations/locales/en_CY.js +0 -2426
  369. package/lib/translations/locales/en_GB.js +0 -2427
  370. package/lib/translations/locales/en_NZ.js +0 -26
  371. package/lib/translations/locales/en_SE.js +0 -26
  372. package/lib/translations/locales/en_US.js +0 -26
  373. package/lib/translations/locales/es.js +0 -2427
  374. package/lib/translations/locales/es_ES.js +0 -2427
  375. package/lib/translations/locales/es_GT.js +0 -27
  376. package/lib/translations/locales/fa_IR.js +0 -615
  377. package/lib/translations/locales/fi.js +0 -2427
  378. package/lib/translations/locales/fr.js +0 -2427
  379. package/lib/translations/locales/fr_CA.js +0 -2427
  380. package/lib/translations/locales/he.js +0 -486
  381. package/lib/translations/locales/ht.js +0 -2426
  382. package/lib/translations/locales/hu.js +0 -2007
  383. package/lib/translations/locales/hu_HU.js +0 -27
  384. package/lib/translations/locales/hy.js +0 -444
  385. package/lib/translations/locales/id.js +0 -2426
  386. package/lib/translations/locales/id_ID.js +0 -26
  387. package/lib/translations/locales/is.js +0 -2426
  388. package/lib/translations/locales/it.js +0 -2427
  389. package/lib/translations/locales/ja.js +0 -2427
  390. package/lib/translations/locales/ko.js +0 -342
  391. package/lib/translations/locales/ko_KR.js +0 -27
  392. package/lib/translations/locales/lt.js +0 -26
  393. package/lib/translations/locales/lt_LT.js +0 -26
  394. package/lib/translations/locales/mi.js +0 -2426
  395. package/lib/translations/locales/mn_MN.js +0 -26
  396. package/lib/translations/locales/ms.js +0 -2426
  397. package/lib/translations/locales/nb-x-k12.js +0 -2427
  398. package/lib/translations/locales/nb.js +0 -2427
  399. package/lib/translations/locales/nl.js +0 -2427
  400. package/lib/translations/locales/nl_NL.js +0 -27
  401. package/lib/translations/locales/nn.js +0 -2247
  402. package/lib/translations/locales/pl.js +0 -2427
  403. package/lib/translations/locales/pt.js +0 -2427
  404. package/lib/translations/locales/pt_BR.js +0 -2427
  405. package/lib/translations/locales/ro.js +0 -27
  406. package/lib/translations/locales/ru.js +0 -2427
  407. package/lib/translations/locales/se.js +0 -26
  408. package/lib/translations/locales/sl.js +0 -2427
  409. package/lib/translations/locales/sv-x-k12.js +0 -2427
  410. package/lib/translations/locales/sv.js +0 -2427
  411. package/lib/translations/locales/sv_SE.js +0 -27
  412. package/lib/translations/locales/tg.js +0 -26
  413. package/lib/translations/locales/th.js +0 -2427
  414. package/lib/translations/locales/th_TH.js +0 -27
  415. package/lib/translations/locales/tl_PH.js +0 -26
  416. package/lib/translations/locales/tr.js +0 -687
  417. package/lib/translations/locales/uk_UA.js +0 -519
  418. package/lib/translations/locales/vi.js +0 -2427
  419. package/lib/translations/locales/vi_VN.js +0 -27
  420. package/lib/translations/locales/zh-Hans.js +0 -2427
  421. package/lib/translations/locales/zh-Hant.js +0 -2427
  422. package/lib/translations/locales/zh.js +0 -2427
  423. package/lib/translations/locales/zh_HK.js +0 -2427
  424. package/lib/translations/locales/zh_TW.Big5.js +0 -27
  425. package/lib/translations/locales/zh_TW.js +0 -27
  426. package/lib/translations/tinymce/ar_SA.js +0 -211
  427. package/lib/translations/tinymce/bg_BG.js +0 -419
  428. package/lib/translations/tinymce/ca.js +0 -419
  429. package/lib/translations/tinymce/cs.js +0 -419
  430. package/lib/translations/tinymce/cy.js +0 -418
  431. package/lib/translations/tinymce/da.js +0 -419
  432. package/lib/translations/tinymce/de.js +0 -419
  433. package/lib/translations/tinymce/el.js +0 -261
  434. package/lib/translations/tinymce/en_GB.js +0 -230
  435. package/lib/translations/tinymce/es.js +0 -419
  436. package/lib/translations/tinymce/fa_IR.js +0 -390
  437. package/lib/translations/tinymce/fi.js +0 -19
  438. package/lib/translations/tinymce/fr_FR.js +0 -419
  439. package/lib/translations/tinymce/he_IL.js +0 -420
  440. package/lib/translations/tinymce/hu_HU.js +0 -419
  441. package/lib/translations/tinymce/hy.js +0 -419
  442. package/lib/translations/tinymce/it.js +0 -419
  443. package/lib/translations/tinymce/ja.js +0 -419
  444. package/lib/translations/tinymce/ko_KR.js +0 -419
  445. package/lib/translations/tinymce/nb_NO.js +0 -419
  446. package/lib/translations/tinymce/nl.js +0 -419
  447. package/lib/translations/tinymce/pl.js +0 -419
  448. package/lib/translations/tinymce/pt_BR.js +0 -419
  449. package/lib/translations/tinymce/pt_PT.js +0 -419
  450. package/lib/translations/tinymce/ro.js +0 -418
  451. package/lib/translations/tinymce/ru.js +0 -436
  452. package/lib/translations/tinymce/ru_RU.js +0 -71
  453. package/lib/translations/tinymce/sl.js +0 -462
  454. package/lib/translations/tinymce/sr.js +0 -278
  455. package/lib/translations/tinymce/sv_SE.js +0 -419
  456. package/lib/translations/tinymce/th.js +0 -479
  457. package/lib/translations/tinymce/tr_TR.js +0 -389
  458. package/lib/translations/tinymce/uk_UA.js +0 -278
  459. package/lib/translations/tinymce/vi_VN.js +0 -277
  460. package/lib/translations/tinymce/zh_CN.js +0 -419
  461. package/lib/translations/tinymce/zh_TW.js +0 -419
  462. package/lib/util/DeepPartialNullable.js +0 -1
  463. package/lib/util/ExtractRequired.js +0 -1
  464. package/lib/util/TypedDict.js +0 -131
  465. package/lib/util/assertNever.js +0 -44
  466. package/lib/util/elem-util.js +0 -26
  467. package/lib/util/encrypted-storage.js +0 -84
  468. package/lib/util/file-url-util.js +0 -44
  469. package/lib/util/fullscreenHelpers.js +0 -27
  470. package/lib/util/instui-icon-helper.js +0 -31
  471. package/lib/util/loadingPlaceholder.js +0 -436
  472. package/lib/util/simpleCache.js +0 -41
  473. package/lib/util/string-util.js +0 -48
  474. package/lib/util/textarea-editing-util.js +0 -87
  475. package/lib/util/tinymce-plugin-util.js +0 -52
  476. package/lib/util/url-util.js +0 -138
@@ -1,419 +0,0 @@
1
- tinymce.addI18n('zh_TW', {
2
- Redo: '\u91cd\u505a',
3
- Undo: '\u64a4\u92b7',
4
- Cut: '\u526a\u4e0b',
5
- Copy: '\u8907\u88fd',
6
- Paste: '\u8cbc\u4e0a',
7
- 'Select all': '\u5168\u9078',
8
- 'New document': '\u65b0\u6587\u4ef6',
9
- Ok: '\u78ba\u5b9a',
10
- Cancel: '\u53d6\u6d88',
11
- 'Visual aids': '\u5c0f\u5e6b\u624b',
12
- Bold: '\u7c97\u9ad4',
13
- Italic: '\u659c\u9ad4',
14
- Underline: '\u4e0b\u5283\u7dda',
15
- Strikethrough: '\u522a\u9664\u7dda',
16
- Superscript: '\u4e0a\u6a19',
17
- Subscript: '\u4e0b\u6a19',
18
- 'Clear formatting': '\u6e05\u9664\u683c\u5f0f',
19
- 'Align left': '\u5de6\u908a\u5c0d\u9f4a',
20
- 'Align center': '\u4e2d\u9593\u5c0d\u9f4a',
21
- 'Align right': '\u53f3\u908a\u5c0d\u9f4a',
22
- Justify: '\u5de6\u53f3\u5c0d\u9f4a',
23
- 'Bullet list': '\u9805\u76ee\u6e05\u55ae',
24
- 'Numbered list': '\u6578\u5b57\u6e05\u55ae',
25
- 'Decrease indent': '\u6e1b\u5c11\u7e2e\u6392',
26
- 'Increase indent': '\u589e\u52a0\u7e2e\u6392',
27
- Close: '\u95dc\u9589',
28
- Formats: '\u683c\u5f0f',
29
- "Your browser doesn't support direct access to the clipboard. Please use the Ctrl+X/C/V keyboard shortcuts instead.": '\u60a8\u7684\u700f\u89bd\u5668\u4e0d\u652f\u63f4\u5b58\u53d6\u526a\u8cbc\u7c3f\uff0c\u53ef\u4ee5\u4f7f\u7528\u5feb\u901f\u9375 Ctrl + X/C/V \u4ee3\u66ff\u526a\u4e0b\u3001\u8907\u88fd\u8207\u8cbc\u4e0a\u3002',
30
- Headers: '\u6a19\u984c',
31
- 'Header 1': '\u6a19\u984c 1',
32
- 'Header 2': '\u6a19\u984c 2',
33
- 'Header 3': '\u6a19\u984c 3',
34
- 'Header 4': '\u6a19\u984c 4',
35
- 'Header 5': '\u6a19\u984c 5',
36
- 'Header 6': '\u6a19\u984c 6',
37
- Headings: '\u6a19\u984c',
38
- 'Heading 1': '\u6a19\u984c1',
39
- 'Heading 2': '\u6a19\u984c2',
40
- 'Heading 3': '\u6a19\u984c3',
41
- 'Heading 4': '\u6a19\u984c4',
42
- 'Heading 5': '\u6a19\u984c5',
43
- 'Heading 6': '\u6a19\u984c6',
44
- Preformatted: '\u9810\u5148\u683c\u5f0f\u5316\u7684',
45
- Div: 'Div',
46
- Pre: 'Pre',
47
- Code: '\u4ee3\u78bc',
48
- Paragraph: '\u6bb5\u843d',
49
- Blockquote: '\u5f15\u6587\u5340\u584a',
50
- Inline: '\u5167\u806f',
51
- Blocks: '\u57fa\u584a',
52
- 'Paste is now in plain text mode. Contents will now be pasted as plain text until you toggle this option off.': '\u76ee\u524d\u5c07\u4ee5\u7d14\u6587\u5b57\u7684\u6a21\u5f0f\u8cbc\u4e0a\uff0c\u60a8\u53ef\u4ee5\u518d\u9ede\u9078\u4e00\u6b21\u53d6\u6d88\u3002',
53
- Fonts: '\u5b57\u578b',
54
- 'Font Sizes': '\u5b57\u578b\u5927\u5c0f',
55
- Class: '\u985e\u578b',
56
- 'Browse for an image': '\u5f9e\u5716\u7247\u4e2d\u700f\u89bd',
57
- OR: '\u6216',
58
- 'Drop an image here': '\u62d6\u66f3\u5716\u7247\u81f3\u6b64',
59
- Upload: '\u4e0a\u50b3',
60
- Block: '\u5340\u584a',
61
- Align: '\u5c0d\u9f4a',
62
- Default: '\u9810\u8a2d',
63
- Circle: '\u7a7a\u5fc3\u5713',
64
- Disc: '\u5be6\u5fc3\u5713',
65
- Square: '\u6b63\u65b9\u5f62',
66
- 'Lower Alpha': '\u5c0f\u5beb\u82f1\u6587\u5b57\u6bcd',
67
- 'Lower Greek': '\u5e0c\u81d8\u5b57\u6bcd',
68
- 'Lower Roman': '\u5c0f\u5beb\u7f85\u99ac\u6578\u5b57',
69
- 'Upper Alpha': '\u5927\u5beb\u82f1\u6587\u5b57\u6bcd',
70
- 'Upper Roman': '\u5927\u5beb\u7f85\u99ac\u6578\u5b57',
71
- 'Anchor...': '\u9328\u9ede...',
72
- Name: '\u540d\u7a31',
73
- Id: 'Id',
74
- 'Id should start with a letter, followed only by letters, numbers, dashes, dots, colons or underscores.': 'Id\u61c9\u4ee5\u5b57\u6bcd\u958b\u982d\uff0c\u5f8c\u9762\u63a5\u8457\u5b57\u6bcd\uff0c\u6578\u5b57\uff0c\u7834\u6298\u865f\uff0c\u9ede\u6578\uff0c\u5192\u865f\u6216\u4e0b\u5283\u7dda\u3002',
75
- 'You have unsaved changes are you sure you want to navigate away?': '\u7de8\u8f2f\u5c1a\u672a\u88ab\u5132\u5b58\uff0c\u4f60\u78ba\u5b9a\u8981\u96e2\u958b\uff1f',
76
- 'Restore last draft': '\u8f09\u5165\u4e0a\u4e00\u6b21\u7de8\u8f2f\u7684\u8349\u7a3f',
77
- 'Special character...': '\u7279\u6b8a\u5b57\u5143......',
78
- 'Source code': '\u539f\u59cb\u78bc',
79
- 'Insert/Edit code sample': '\u63d2\u5165/\u7de8\u8f2f \u7a0b\u5f0f\u78bc\u7bc4\u4f8b',
80
- Language: '\u8a9e\u8a00',
81
- 'Code sample...': '\u7a0b\u5f0f\u78bc\u7bc4\u4f8b...',
82
- 'Color Picker': '\u9078\u8272\u5668',
83
- R: '\u7d05',
84
- G: '\u7da0',
85
- B: '\u85cd',
86
- 'Left to right': '\u5f9e\u5de6\u5230\u53f3',
87
- 'Right to left': '\u5f9e\u53f3\u5230\u5de6',
88
- 'Emoticons...': '\u8868\u60c5\u7b26\u865f\u2026',
89
- 'Metadata and Document Properties': '\u5f8c\u8a2d\u8cc7\u6599\u8207\u6587\u4ef6\u5c6c\u6027',
90
- Title: '\u6a19\u984c',
91
- Keywords: '\u95dc\u9375\u5b57',
92
- Description: '\u63cf\u8ff0',
93
- Robots: '\u6a5f\u5668\u4eba',
94
- Author: '\u4f5c\u8005',
95
- Encoding: '\u7de8\u78bc',
96
- Fullscreen: '\u5168\u87a2\u5e55',
97
- Action: '\u52d5\u4f5c',
98
- Shortcut: '\u5feb\u901f\u9375',
99
- Help: '\u5e6b\u52a9',
100
- Address: '\u5730\u5740',
101
- 'Focus to menubar': '\u8df3\u81f3\u9078\u55ae\u5217',
102
- 'Focus to toolbar': '\u8df3\u81f3\u5de5\u5177\u5217',
103
- 'Focus to element path': '\u8df3\u81f3HTML\u5143\u7d20\u5217',
104
- 'Focus to contextual toolbar': '\u8df3\u81f3\u5feb\u6377\u9078\u55ae',
105
- 'Insert link (if link plugin activated)': '\u65b0\u589e\u6377\u5f91 (\u6377\u5f91\u5916\u639b\u555f\u7528\u6642)',
106
- 'Save (if save plugin activated)': '\u5132\u5b58 (\u5132\u5b58\u5916\u639b\u555f\u7528\u6642)',
107
- 'Find (if searchreplace plugin activated)': '\u5c0b\u627e (\u5c0b\u627e\u53d6\u4ee3\u5916\u639b\u555f\u7528\u6642)',
108
- 'Plugins installed ({0}):': '({0}) \u500b\u5916\u639b\u5df2\u5b89\u88dd\uff1a',
109
- 'Premium plugins:': '\u52a0\u503c\u5916\u639b\uff1a',
110
- 'Learn more...': '\u4e86\u89e3\u66f4\u591a...',
111
- 'You are using {0}': '\u60a8\u6b63\u5728\u4f7f\u7528 {0}',
112
- Plugins: '\u5916\u639b',
113
- 'Handy Shortcuts': '\u5feb\u901f\u9375',
114
- 'Horizontal line': '\u6c34\u5e73\u7dda',
115
- 'Insert/edit image': '\u63d2\u5165/\u7de8\u8f2f \u5716\u7247',
116
- 'Image description': '\u5716\u7247\u63cf\u8ff0',
117
- Source: '\u5716\u7247\u7db2\u5740',
118
- Dimensions: '\u5c3a\u5bf8',
119
- 'Constrain proportions': '\u7b49\u6bd4\u4f8b\u7e2e\u653e',
120
- General: '\u4e00\u822c',
121
- Advanced: '\u9032\u968e',
122
- Style: '\u6a23\u5f0f',
123
- 'Vertical space': '\u9ad8\u5ea6',
124
- 'Horizontal space': '\u5bec\u5ea6',
125
- Border: '\u908a\u6846',
126
- 'Insert image': '\u63d2\u5165\u5716\u7247',
127
- 'Image...': '\u5716\u7247......',
128
- 'Image list': '\u5716\u7247\u6e05\u55ae',
129
- 'Rotate counterclockwise': '\u9006\u6642\u91dd\u65cb\u8f49',
130
- 'Rotate clockwise': '\u9806\u6642\u91dd\u65cb\u8f49',
131
- 'Flip vertically': '\u5782\u76f4\u7ffb\u8f49',
132
- 'Flip horizontally': '\u6c34\u5e73\u7ffb\u8f49',
133
- 'Edit image': '\u7de8\u8f2f\u5716\u7247',
134
- 'Image options': '\u5716\u7247\u9078\u9805',
135
- 'Zoom in': '\u653e\u5927',
136
- 'Zoom out': '\u7e2e\u5c0f',
137
- Crop: '\u88c1\u526a',
138
- Resize: '\u8abf\u6574\u5927\u5c0f',
139
- Orientation: '\u65b9\u5411',
140
- Brightness: '\u4eae\u5ea6',
141
- Sharpen: '\u92b3\u5316',
142
- Contrast: '\u5c0d\u6bd4',
143
- 'Color levels': '\u984f\u8272\u5c64\u6b21',
144
- Gamma: '\u4f3d\u99ac\u503c',
145
- Invert: '\u53cd\u8f49',
146
- Apply: '\u61c9\u7528',
147
- Back: '\u5f8c\u9000',
148
- 'Insert date/time': '\u63d2\u5165 \u65e5\u671f/\u6642\u9593',
149
- 'Date/time': '\u65e5\u671f/\u6642\u9593',
150
- 'Insert/Edit Link': '\u63d2\u5165/\u7de8\u8f2f\u9023\u7d50',
151
- 'Insert/edit link': '\u63d2\u5165/\u7de8\u8f2f\u9023\u7d50',
152
- 'Text to display': '\u986f\u793a\u6587\u5b57',
153
- Url: '\u7db2\u5740',
154
- 'Open link in...': '\u958b\u555f\u9023\u7d50\u65bc...',
155
- 'Current window': '\u76ee\u524d\u8996\u7a97',
156
- None: '\u7121',
157
- 'New window': '\u53e6\u958b\u8996\u7a97',
158
- 'Remove link': '\u79fb\u9664\u9023\u7d50',
159
- Anchors: '\u52a0\u5165\u9328\u9ede',
160
- 'Link...': '\u9023\u7d50...',
161
- 'Paste or type a link': '\u8cbc\u4e0a\u6216\u8f38\u5165\u9023\u7d50',
162
- 'The URL you entered seems to be an email address. Do you want to add the required mailto: prefix?': '\u4f60\u6240\u586b\u5beb\u7684URL\u70ba\u96fb\u5b50\u90f5\u4ef6\uff0c\u9700\u8981\u52a0\u4e0amailto:\u524d\u7db4\u55ce\uff1f',
163
- 'The URL you entered seems to be an external link. Do you want to add the required http:// prefix?': '\u4f60\u6240\u586b\u5beb\u7684URL\u5c6c\u65bc\u5916\u90e8\u93c8\u63a5\uff0c\u9700\u8981\u52a0\u4e0ahttp://:\u524d\u7db4\u55ce\uff1f',
164
- 'Link list': '\u9023\u7d50\u6e05\u55ae',
165
- 'Insert video': '\u63d2\u5165\u5f71\u97f3',
166
- 'Insert/edit video': '\u63d2\u4ef6/\u7de8\u8f2f \u5f71\u97f3',
167
- 'Insert/edit media': '\u63d2\u5165/\u7de8\u8f2f \u5a92\u9ad4',
168
- 'Alternative source': '\u66ff\u4ee3\u5f71\u97f3',
169
- 'Alternative source URL': '\u66ff\u4ee3\u4f86\u6e90URL',
170
- 'Media poster (Image URL)': '\u5a92\u9ad4\u6d77\u5831\uff08\u5f71\u50cfImage URL\uff09',
171
- 'Paste your embed code below:': '\u8acb\u5c07\u60a8\u7684\u5d4c\u5165\u5f0f\u7a0b\u5f0f\u78bc\u8cbc\u5728\u4e0b\u9762:',
172
- Embed: '\u5d4c\u5165\u78bc',
173
- 'Media...': '\u5a92\u9ad4...',
174
- 'Nonbreaking space': '\u4e0d\u5206\u884c\u7684\u7a7a\u683c',
175
- 'Page break': '\u5206\u9801',
176
- 'Paste as text': '\u4ee5\u7d14\u6587\u5b57\u8cbc\u4e0a',
177
- Preview: '\u9810\u89bd',
178
- 'Print...': '\u5217\u5370...',
179
- Save: '\u5132\u5b58',
180
- Find: '\u641c\u5c0b',
181
- 'Replace with': '\u66f4\u63db',
182
- Replace: '\u66ff\u63db',
183
- 'Replace all': '\u66ff\u63db\u5168\u90e8',
184
- Previous: '\u4e0a\u4e00\u500b',
185
- Next: '\u4e0b\u4e00\u500b',
186
- 'Find and replace...': '\u5c0b\u627e\u53ca\u53d6\u4ee3...',
187
- 'Could not find the specified string.': '\u7121\u6cd5\u67e5\u8a62\u5230\u6b64\u7279\u5b9a\u5b57\u4e32',
188
- 'Match case': '\u76f8\u5339\u914d\u6848\u4ef6',
189
- 'Find whole words only': '\u50c5\u627e\u51fa\u5b8c\u6574\u5b57\u532f',
190
- 'Spell check': '\u62fc\u5beb\u6aa2\u67e5',
191
- Ignore: '\u5ffd\u7565',
192
- 'Ignore all': '\u5ffd\u7565\u6240\u6709',
193
- Finish: '\u5b8c\u6210',
194
- 'Add to Dictionary': '\u52a0\u5165\u5b57\u5178\u4e2d',
195
- 'Insert table': '\u63d2\u5165\u8868\u683c',
196
- 'Table properties': '\u8868\u683c\u5c6c\u6027',
197
- 'Delete table': '\u522a\u9664\u8868\u683c',
198
- Cell: '\u5132\u5b58\u683c',
199
- Row: '\u5217',
200
- Column: '\u884c',
201
- 'Cell properties': '\u5132\u5b58\u683c\u5c6c\u6027',
202
- 'Merge cells': '\u5408\u4f75\u5132\u5b58\u683c',
203
- 'Split cell': '\u5206\u5272\u5132\u5b58\u683c',
204
- 'Insert row before': '\u63d2\u5165\u5217\u5728...\u4e4b\u524d',
205
- 'Insert row after': '\u63d2\u5165\u5217\u5728...\u4e4b\u5f8c',
206
- 'Delete row': '\u522a\u9664\u5217',
207
- 'Row properties': '\u5217\u5c6c\u6027',
208
- 'Cut row': '\u526a\u4e0b\u5217',
209
- 'Copy row': '\u8907\u88fd\u5217',
210
- 'Paste row before': '\u8cbc\u4e0a\u5217\u5728...\u4e4b\u524d',
211
- 'Paste row after': '\u8cbc\u4e0a\u5217\u5728...\u4e4b\u5f8c',
212
- 'Insert column before': '\u63d2\u5165\u6b04\u4f4d\u5728...\u4e4b\u524d',
213
- 'Insert column after': '\u63d2\u5165\u6b04\u4f4d\u5728...\u4e4b\u5f8c',
214
- 'Delete column': '\u522a\u9664\u884c',
215
- Cols: '\u6b04\u4f4d\u6bb5',
216
- Rows: '\u5217',
217
- Width: '\u5bec\u5ea6',
218
- Height: '\u9ad8\u5ea6',
219
- 'Cell spacing': '\u5132\u5b58\u683c\u5f97\u9593\u8ddd',
220
- 'Cell padding': '\u5132\u5b58\u683c\u7684\u908a\u8ddd',
221
- 'Show caption': '\u986f\u793a\u6a19\u984c',
222
- Left: '\u5de6\u908a',
223
- Center: '\u4e2d\u9593',
224
- Right: '\u53f3\u908a',
225
- 'Cell type': '\u5132\u5b58\u683c\u7684\u985e\u578b',
226
- Scope: '\u7bc4\u570d',
227
- Alignment: '\u5c0d\u9f4a',
228
- 'H Align': '\u6c34\u5e73\u4f4d\u7f6e',
229
- 'V Align': '\u5782\u76f4\u4f4d\u7f6e',
230
- Top: '\u7f6e\u9802',
231
- Middle: '\u7f6e\u4e2d',
232
- Bottom: '\u7f6e\u5e95',
233
- 'Header cell': '\u6a19\u982d\u5132\u5b58\u683c',
234
- 'Row group': '\u5217\u7fa4\u7d44',
235
- 'Column group': '\u6b04\u4f4d\u7fa4\u7d44',
236
- 'Row type': '\u884c\u7684\u985e\u578b',
237
- Header: '\u6a19\u982d',
238
- Body: '\u4e3b\u9ad4',
239
- Footer: '\u9801\u5c3e',
240
- 'Border color': '\u908a\u6846\u984f\u8272',
241
- 'Insert template...': '\u63d2\u5165\u6a23\u7248...',
242
- Templates: '\u6a23\u7248',
243
- Template: '\u6a23\u677f',
244
- 'Text color': '\u6587\u5b57\u984f\u8272',
245
- 'Background color': '\u80cc\u666f\u984f\u8272',
246
- 'Custom...': '\u81ea\u8a02',
247
- 'Custom color': '\u81ea\u8a02\u984f\u8272',
248
- 'No color': 'No color',
249
- 'Remove color': '\u79fb\u9664\u984f\u8272',
250
- 'Table of Contents': '\u76ee\u9304',
251
- 'Show blocks': '\u986f\u793a\u5340\u584a\u8cc7\u8a0a',
252
- 'Show invisible characters': '\u986f\u793a\u96b1\u85cf\u5b57\u5143',
253
- 'Word count': '\u8a08\u7b97\u5b57\u6578',
254
- Count: '\u8a08\u7b97',
255
- Document: '\u6587\u4ef6',
256
- Selection: '\u9078\u9805',
257
- Words: '\u5b57\u6578',
258
- 'Words: {0}': '\u5b57\u6578\uff1a{0}',
259
- '{0} words': '{0} \u5b57\u5143',
260
- File: '\u6a94\u6848',
261
- Edit: '\u7de8\u8f2f',
262
- Insert: '\u63d2\u5165',
263
- View: '\u6aa2\u8996',
264
- Format: '\u683c\u5f0f',
265
- Table: '\u8868\u683c',
266
- Tools: '\u5de5\u5177',
267
- 'Powered by {0}': '\u7531 {0} \u63d0\u4f9b',
268
- 'Rich Text Area. Press ALT-F9 for menu. Press ALT-F10 for toolbar. Press ALT-0 for help': '\u8c50\u5bcc\u7684\u6587\u672c\u5340\u57df\u3002\u6309ALT-F9\u524d\u5f80\u4e3b\u9078\u55ae\u3002\u6309ALT-F10\u547c\u53eb\u5de5\u5177\u6b04\u3002\u6309ALT-0\u5c0b\u6c42\u5e6b\u52a9',
269
- 'Image title': '\u5716\u7247\u6a19\u984c',
270
- 'Border width': '\u6846\u7dda\u5bec\u5ea6',
271
- 'Border style': '\u6846\u7dda\u6a23\u5f0f',
272
- Error: '\u932f\u8aa4',
273
- Warn: '\u8b66\u544a',
274
- Valid: '\u6709\u6548',
275
- 'To open the popup, press Shift+Enter': '\u8981\u958b\u555f\u5f48\u51fa\u8996\u7a97\uff0c\u8acb\u6309Shift+Enter',
276
- 'Rich Text Area. Press ALT-0 for help.': '\u5bcc\u6587\u672c\u5340\u57df\u3002\u8acb\u6309ALT-0\u5c0b\u6c42\u5354\u52a9\u3002',
277
- 'System Font': '\u7cfb\u7d71\u5b57\u578b',
278
- 'Failed to upload image: {0}': '\u7121\u6cd5\u4e0a\u50b3\u5f71\u50cf\uff1a{0}',
279
- 'Failed to load plugin: {0} from url {1}': '\u7121\u6cd5\u4e0a\u50b3\u63d2\u4ef6\uff1a{0}\u81eaurl{1}',
280
- 'Failed to load plugin url: {0}': '\u7121\u6cd5\u4e0a\u50b3\u63d2\u4ef6\uff1a{0}',
281
- 'Failed to initialize plugin: {0}': '\u7121\u6cd5\u555f\u52d5\u63d2\u4ef6\uff1a{0}',
282
- example: '\u7bc4\u4f8b',
283
- Search: '\u641c\u7d22',
284
- All: '\u5168\u90e8',
285
- Currency: '\u8ca8\u5e63',
286
- Text: '\u6587\u672c',
287
- Quotations: '\u5f15\u7528',
288
- Mathematical: '\u6578\u5b78',
289
- 'Extended Latin': '\u62c9\u4e01\u5b57\u6bcd\u64f4\u5145',
290
- Symbols: '\u7b26\u865f',
291
- Arrows: '\u7bad\u982d',
292
- 'User Defined': '\u4f7f\u7528\u8005\u5df2\u5b9a\u7fa9',
293
- 'dollar sign': '\u7f8e\u5143\u7b26\u865f',
294
- 'currency sign': '\u8ca8\u5e63\u7b26\u865f',
295
- 'euro-currency sign': '\u6b50\u5143\u7b26\u865f',
296
- 'colon sign': '\u79d1\u6717\u7b26\u865f',
297
- 'cruzeiro sign': '\u514b\u9b6f\u8cfd\u7f85\u7b26\u865f',
298
- 'french franc sign': '\u6cd5\u6717\u7b26\u865f',
299
- 'lira sign': '\u91cc\u62c9\u7b26\u865f',
300
- 'mill sign': '\u6587\u7b26\u865f',
301
- 'naira sign': '\u5948\u62c9\u7b26\u865f',
302
- 'peseta sign': '\u6bd4\u585e\u5854\u7b26\u865f',
303
- 'rupee sign': '\u76e7\u6bd4\u7b26\u865f',
304
- 'won sign': '\u97d3\u571c\u7b26\u865f',
305
- 'new sheqel sign': '\u65b0\u8b1d\u514b\u723e\u7b26\u865f',
306
- 'dong sign': '\u8d8a\u5357\u76fe\u7b26\u865f',
307
- 'kip sign': '\u8001\u64be\u5e63\u7b26\u865f',
308
- 'tugrik sign': '\u8499\u53e4\u5e63\u7b26\u865f',
309
- 'drachma sign': '\u5fb7\u514b\u62c9\u99ac\u7b26\u865f',
310
- 'german penny symbol': '\u5fb7\u570b\u5206\u7b26\u865f',
311
- 'peso sign': '\u62ab\u7d22\u7b26\u865f',
312
- 'guarani sign': '\u5df4\u62c9\u572d\u5e63\u7b26\u865f',
313
- 'austral sign': '\u963f\u6839\u5ef7\u5e63\u7b26\u865f',
314
- 'hryvnia sign': '\u70cf\u514b\u862d\u5e63\u7b26\u865f',
315
- 'cedi sign': '\u8fe6\u7d0d\u5e63\u7b26\u865f',
316
- 'livre tournois sign': '\u91cc\u5f17\u723e\u7b26\u865f',
317
- 'spesmilo sign': '\u570b\u969b\u5e63\u7b26\u865f',
318
- 'tenge sign': '\u54c8\u85a9\u514b\u5e63\u7b26\u865f',
319
- 'indian rupee sign': '\u5370\u5ea6\u76e7\u6bd4\u7b26\u865f',
320
- 'turkish lira sign': '\u571f\u8033\u5176\u91cc\u62c9\u7b26\u865f',
321
- 'nordic mark sign': '\u5317\u6b50\u99ac\u514b\u7b26\u865f',
322
- 'manat sign': '\u4e9e\u585e\u62dc\u7136\u5e63\u7b26\u865f',
323
- 'ruble sign': '\u76e7\u5e03\u7b26\u865f',
324
- 'yen character': '\u65e5\u5713\u7b26\u865f',
325
- 'yuan character': '\u4eba\u6c11\u5e63\u7b26\u865f',
326
- 'yuan character, in hong kong and taiwan': '\u6e2f\u5143\u8207\u53f0\u5e63\u7b26\u865f',
327
- 'yen/yuan character variant one': '\u65e5\u5713/\u4eba\u6c11\u5e63\u7b26\u865f\u8b8a\u5316\u578b',
328
- 'Loading emoticons...': '\u8f09\u5165\u8868\u60c5\u7b26\u865f\u2026',
329
- 'Could not load emoticons': '\u7121\u6cd5\u8f09\u5165\u8868\u60c5\u7b26\u865f',
330
- People: '\u4eba',
331
- 'Animals and Nature': '\u52d5\u7269\u8207\u81ea\u7136',
332
- 'Food and Drink': '\u98f2\u98df',
333
- Activity: '\u6d3b\u52d5',
334
- 'Travel and Places': '\u65c5\u884c\u8207\u5730\u9ede',
335
- Objects: '\u7269\u4ef6',
336
- Flags: '\u65d7\u6a19',
337
- Characters: '\u5b57\u5143',
338
- 'Characters (no spaces)': '\u5b57\u5143\uff08\u7121\u7a7a\u683c\uff09',
339
- '{0} characters': '{0}\u5b57\u5143',
340
- 'Error: Form submit field collision.': '\u932f\u8aa4\uff1a\u8868\u683c\u905e\u4ea4\u6b04\u4f4d\u885d\u7a81\u3002',
341
- 'Error: No form element found.': '\u932f\u8aa4\uff1a\u627e\u4e0d\u5230\u8868\u683c\u5143\u7d20\u3002',
342
- Update: '\u66f4\u65b0',
343
- 'Color swatch': '\u8272\u5f69\u6a23\u672c',
344
- Turquoise: '\u571f\u8033\u5176\u85cd',
345
- Green: '\u7da0\u8272',
346
- Blue: '\u85cd\u8272',
347
- Purple: '\u7d2b\u8272',
348
- 'Navy Blue': '\u6df1\u85cd\u8272',
349
- 'Dark Turquoise': '\u6df1\u571f\u8033\u5176\u85cd',
350
- 'Dark Green': '\u6df1\u7da0\u8272',
351
- 'Medium Blue': '\u4e2d\u85cd\u8272',
352
- 'Medium Purple': '\u4e2d\u7d2b\u8272',
353
- 'Midnight Blue': '\u9ed1\u85cd\u8272',
354
- Yellow: '\u9ec3\u8272',
355
- Orange: '\u6a59\u8272',
356
- Red: '\u7d05\u8272',
357
- 'Light Gray': '\u6dfa\u7070\u8272',
358
- Gray: '\u7070\u8272',
359
- 'Dark Yellow': '\u6df1\u9ec3\u8272',
360
- 'Dark Orange': '\u6df1\u6a59\u8272',
361
- 'Dark Red': '\u6697\u7d05\u8272',
362
- 'Medium Gray': '\u4e2d\u7070\u8272',
363
- 'Dark Gray': '\u6df1\u7070\u8272',
364
- 'Light Green': '\u6de1\u7da0\u8272',
365
- 'Light Yellow': '\u6dfa\u9ec3\u8272',
366
- 'Light Red': '\u6dfa\u7d05\u8272',
367
- 'Light Purple': '\u6dfa\u7d2b\u8272',
368
- 'Light Blue': '\u6dfa\u85cd\u8272',
369
- 'Dark Purple': '\u6df1\u7d2b\u8272',
370
- 'Dark Blue': '\u6df1\u85cd\u8272',
371
- Black: '\u9ed1\u8272',
372
- White: '\u767d\u8272',
373
- 'Switch to or from fullscreen mode': '\u8f49\u63db\u81ea/\u81f3\u5168\u87a2\u5e55\u6a21\u5f0f',
374
- 'Open help dialog': '\u958b\u555f\u5354\u52a9\u5c0d\u8a71',
375
- history: '\u6b77\u53f2',
376
- styles: '\u6a23\u5f0f',
377
- formatting: '\u683c\u5f0f',
378
- alignment: '\u5c0d\u9f4a',
379
- indentation: '\u7e2e\u6392',
380
- 'permanent pen': '\u6c38\u4e45\u6027\u7b46',
381
- comments: '\u8a3b\u89e3',
382
- 'Format Painter': '\u8907\u88fd\u683c\u5f0f',
383
- 'Insert/edit iframe': '\u63d2\u5165/\u7de8\u8f2fiframe',
384
- Capitalization: '\u5927\u5beb',
385
- lowercase: '\u5c0f\u5beb',
386
- UPPERCASE: '\u5927\u5beb',
387
- 'Title Case': '\u5b57\u9996\u5927\u5beb',
388
- 'Permanent Pen Properties': '\u6c38\u4e45\u6a19\u8a18\u5c6c\u6027',
389
- 'Permanent pen properties...': '\u6c38\u4e45\u6a19\u8a18\u5c6c\u6027......',
390
- Font: '\u5b57\u578b',
391
- Size: '\u5b57\u5f62\u5927\u5c0f',
392
- 'More...': '\u66f4\u591a\u8cc7\u8a0a......',
393
- 'Spellcheck Language': '\u62fc\u5beb\u8a9e\u8a00',
394
- 'Select...': '\u9078\u64c7......',
395
- Preferences: '\u9996\u9078\u9805',
396
- Yes: '\u662f',
397
- No: '\u5426',
398
- 'Keyboard Navigation': '\u9375\u76e4\u5c0e\u822a',
399
- Version: '\u7248\u672c',
400
- Anchor: '\u52a0\u5165\u9328\u9ede',
401
- 'Special character': '\u7279\u6b8a\u5b57\u5143',
402
- 'Code sample': '\u7a0b\u5f0f\u78bc\u7bc4\u4f8b',
403
- Color: '\u984f\u8272',
404
- Emoticons: '\u8868\u60c5',
405
- 'Document properties': '\u6587\u4ef6\u7684\u5c6c\u6027',
406
- Image: '\u5716\u7247',
407
- 'Insert link': '\u63d2\u5165\u9023\u7d50',
408
- Target: '\u958b\u555f\u65b9\u5f0f',
409
- Link: '\u9023\u7d50',
410
- Poster: '\u9810\u89bd\u5716\u7247',
411
- Media: '\u5a92\u9ad4',
412
- Print: '\u5217\u5370',
413
- Prev: '\u4e0a\u4e00\u500b',
414
- 'Find and replace': '\u5c0b\u627e\u53ca\u53d6\u4ee3',
415
- 'Whole words': '\u6574\u500b\u55ae\u5b57',
416
- Spellcheck: '\u62fc\u5b57\u6aa2\u67e5',
417
- Caption: '\u8868\u683c\u6a19\u984c',
418
- 'Insert template': '\u63d2\u5165\u6a23\u7248'
419
- });
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,131 +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
-
19
- /**
20
- * Takes a dictionary with explicit keys and returns an object with three type-safe properties:
21
- *
22
- * - `byKey`: The original dictionary, but with the key of each value added to it as `[keyProp]`
23
- * - `values`: An array of the values in the original dictionary
24
- * - `keys`: An array of the keys in the original dictionary
25
- * - `TKey`: A placeholder value that holds the type of the keys
26
- * - `TValue`: A placeholder value that holds the type of the values
27
- *
28
- * This is useful to add explicit type checking to the pattern where a literal dictionary is used to define
29
- * a relationship between a known set of keys to some value type.
30
- *
31
- * For example:
32
- *
33
- * ```
34
- * const {
35
- * byKey: itemDict,
36
- * values: items,
37
- * keys: itemSlugs,
38
- * } = typedKeyDict(
39
- * {
40
- * undo: {
41
- * label: 'Undo',
42
- * description: 'Undo the last action',
43
- * performAction: () => {
44
- * // Do work
45
- * },
46
- * },
47
- * redo: {
48
- * label: 'Redo',
49
- * description: 'Redo the last undone action, or repeat the last action',
50
- * performAction: () => {
51
- * // Do work
52
- * },
53
- * },
54
- * },
55
- * 'slug'
56
- * )
57
- *
58
- * // Values of itemDict now have a `slug` property with type `'undo' | 'redo'`
59
- *
60
- * const slug: 'undo' | 'redo' = itemDict.undo.slug
61
- *
62
- * // Key and value iteration are now type safe:
63
- *
64
- * items.forEach(item => {
65
- * // item is the correct type, unlike what Object.values gives
66
- * })
67
- *
68
- * itemSlugs.forEach(slug => {
69
- * // slug is the correct type ('undo' | 'redo'), unlike what Object.values gives
70
- * })
71
- *
72
- * ```
73
- *
74
- * Additionally, explicit type arguments can be provided, ensuring that an interface is implemented, or that all keys
75
- * in a union type are implemented.
76
- *
77
- * For example:
78
- *
79
- * ```
80
- * type ItemSlug = 'undo' | 'redo'
81
- *
82
- * interface ActionItem {
83
- * label: string
84
- * description: string
85
- * performAction: () => void
86
- * }
87
- *
88
- * typedKeyDict<ItemSlug, ActionItem, 'slug'>(
89
- * {
90
- * undo: {
91
- * label: 'Undo',
92
- * description: 'Undo the last action',
93
- * performAction: () => {
94
- * // Do work
95
- * },
96
- * },
97
- * },
98
- * 'key'
99
- * )
100
- * ```
101
- *
102
- * Will not compile, because `redo` is not specified in the map, but is defined as a valid value for `ItemSlug`.
103
- * This can be very helpful if `ItemSlug` is defined in another file. Adding an additional key to it will force
104
- * you to fix anywhere it is used in this way.
105
- *
106
- * @param dict The input dictionary
107
- * @param keyProp The name of the property to add to the resulting objects containing the key for each value. Defaults to 'key'
108
- */
109
- export function typedKeyDict(dict, keyProp) {
110
- // Manually handle the default value of 'key'. TypeScript default values can't be used due to trickiness with the
111
- // type inference.
112
- const keyPropStr = keyProp === undefined ? 'key' : keyProp; // Add the key to the values in the map
113
-
114
- const entriesWithKey = Object.entries(dict).map(entry => {
115
- const key = entry[0];
116
- const value = entry[1];
117
- return [key, { ...value,
118
- [keyPropStr]: key
119
- }];
120
- });
121
- return {
122
- byKey: Object.fromEntries(entriesWithKey),
123
- keys: entriesWithKey.map(it => it[0]),
124
- values: entriesWithKey.map(it => it[1]),
125
- // Note: We're cheating here to assign an undefined value to a property with a type that doesn't include undefined.
126
- // This is done so that TKey and TValue can have the right type, making using them as easy as `typeof info.TKey`
127
- // The properties are not meant to be used in any other way
128
- TKey: undefined,
129
- TValue: undefined
130
- };
131
- }
@@ -1,44 +0,0 @@
1
- /*
2
- * Copyright (C) 2023 - 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
- * Used to ensure in a type safe way that some variable cannot ever be in a particular state.
21
- * Useful for exhaustive switch statements, where the compiler will ensure all possible cases are covered.
22
- *
23
- * For example:
24
- *
25
- * ```
26
- * const someValue: 'a' | 'b' = ...
27
- *
28
- * switch (someValue) {
29
- * case 'a': return whatever();
30
- * case 'b': return whatever();
31
- *
32
- * // If all possible values of someValue aren't handled above, this will fail to compile
33
- * default: assertNever(someValue);
34
- * }
35
- *
36
- * ```
37
- *
38
- * Inspired by https://stackoverflow.com/questions/39419170/how-do-i-check-that-a-switch-block-is-exhaustive-in-typescript
39
- *
40
- * @param input
41
- */
42
- export function assertNever(input) {
43
- throw new Error('Should not be reachable, something is wrong with types. Value given was: ' + input);
44
- }
@@ -1,26 +0,0 @@
1
- /*
2
- * Copyright (C) 2023 - 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
- * Utility function to check if a node is Text in a typesafe manner to allow TypeScript type narrowing.
21
- *
22
- * @param n
23
- */
24
- export function isTextNode(n) {
25
- return (n === null || n === void 0 ? void 0 : n.nodeType) === Node.TEXT_NODE;
26
- }