@atlaskit/editor-plugin-media 0.2.0 → 0.3.1

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 (328) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/cjs/commands/captions.js +59 -0
  3. package/dist/cjs/commands/helpers.js +127 -0
  4. package/dist/cjs/commands/index.js +24 -0
  5. package/dist/cjs/commands/linking.js +181 -0
  6. package/dist/cjs/index.js +8 -1
  7. package/dist/cjs/media-plugin-options.js +5 -0
  8. package/dist/cjs/next-plugin-type.js +5 -0
  9. package/dist/cjs/nodeviews/mediaGroup.js +376 -0
  10. package/dist/cjs/nodeviews/mediaInline.js +288 -0
  11. package/dist/cjs/nodeviews/mediaNodeUpdater.js +739 -0
  12. package/dist/cjs/nodeviews/mediaNodeView/index.js +177 -0
  13. package/dist/cjs/nodeviews/mediaNodeView/media.js +242 -0
  14. package/dist/cjs/nodeviews/mediaSingle.js +629 -0
  15. package/dist/cjs/nodeviews/messages.js +14 -0
  16. package/dist/cjs/nodeviews/styles.js +46 -0
  17. package/dist/cjs/nodeviews/types.js +5 -0
  18. package/dist/cjs/picker-facade.js +192 -0
  19. package/dist/cjs/plugin.js +293 -0
  20. package/dist/cjs/pm-plugins/alt-text/actions.js +5 -0
  21. package/dist/cjs/pm-plugins/alt-text/commands.js +59 -0
  22. package/dist/cjs/pm-plugins/alt-text/index.js +36 -0
  23. package/dist/cjs/pm-plugins/alt-text/keymap.js +15 -0
  24. package/dist/cjs/pm-plugins/alt-text/messages.js +44 -0
  25. package/dist/cjs/pm-plugins/alt-text/reducer.js +32 -0
  26. package/dist/cjs/pm-plugins/alt-text/types.js +5 -0
  27. package/dist/cjs/pm-plugins/alt-text/ui/AltTextEdit.js +209 -0
  28. package/dist/cjs/pm-plugins/keymap-media-single.js +163 -0
  29. package/dist/cjs/pm-plugins/keymap.js +88 -0
  30. package/dist/cjs/pm-plugins/linking/actions.js +13 -0
  31. package/dist/cjs/pm-plugins/linking/index.js +65 -0
  32. package/dist/cjs/pm-plugins/linking/keymap.js +14 -0
  33. package/dist/cjs/pm-plugins/linking/reducer.js +43 -0
  34. package/dist/cjs/pm-plugins/linking/types.js +5 -0
  35. package/dist/cjs/pm-plugins/main.js +813 -0
  36. package/dist/cjs/pm-plugins/media-editor-plugin-factory.js +8 -0
  37. package/dist/cjs/pm-plugins/mediaTaskManager.js +101 -0
  38. package/dist/cjs/pm-plugins/plugin-key.js +8 -0
  39. package/dist/cjs/pm-plugins/types.js +5 -0
  40. package/dist/cjs/toolbar/alt-text.js +80 -0
  41. package/dist/cjs/toolbar/commands.js +236 -0
  42. package/dist/cjs/toolbar/filePreviewItem.js +66 -0
  43. package/dist/cjs/toolbar/imageBorder.js +20 -0
  44. package/dist/cjs/toolbar/index.js +523 -0
  45. package/dist/cjs/toolbar/linking-toolbar-appearance.js +100 -0
  46. package/dist/cjs/toolbar/linking.js +96 -0
  47. package/dist/cjs/toolbar/utils.js +110 -0
  48. package/dist/cjs/ui/CaptionPlaceholder/index.js +27 -0
  49. package/dist/cjs/ui/CaptionPlaceholder/messages.js +14 -0
  50. package/dist/cjs/ui/ImageBorder/index.js +226 -0
  51. package/dist/cjs/ui/ImageBorder/messages.js +49 -0
  52. package/dist/cjs/ui/ImageBorder/styles.js +52 -0
  53. package/dist/cjs/ui/Media/DropPlaceholder.js +38 -0
  54. package/dist/cjs/ui/Media/drop-placeholder-messages.js +14 -0
  55. package/dist/cjs/ui/MediaLinkingToolbar.js +196 -0
  56. package/dist/cjs/ui/MediaPicker/BrowserWrapper.js +40 -0
  57. package/dist/cjs/ui/MediaPicker/ClipboardWrapper.js +39 -0
  58. package/dist/cjs/ui/MediaPicker/DropzoneWrapper.js +51 -0
  59. package/dist/cjs/ui/MediaPicker/PickerFacadeProvider.js +151 -0
  60. package/dist/cjs/ui/MediaPicker/index.js +103 -0
  61. package/dist/cjs/ui/PixelEntry/constants.js +7 -0
  62. package/dist/cjs/ui/PixelEntry/index.js +185 -0
  63. package/dist/cjs/ui/PixelEntry/messages.js +54 -0
  64. package/dist/cjs/ui/PixelEntry/styles.js +19 -0
  65. package/dist/cjs/ui/PixelEntry/types.js +5 -0
  66. package/dist/cjs/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.js +16 -0
  67. package/dist/cjs/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +541 -0
  68. package/dist/cjs/ui/ResizableMediaSingle/index.js +422 -0
  69. package/dist/cjs/ui/ResizableMediaSingle/styled.js +14 -0
  70. package/dist/cjs/ui/ResizableMediaSingle/styles.js +17 -0
  71. package/dist/cjs/ui/ResizableMediaSingle/types.js +5 -0
  72. package/dist/cjs/ui/ToolbarMedia/index.js +42 -0
  73. package/dist/cjs/ui/ToolbarMedia/toolbar-media-messages.js +14 -0
  74. package/dist/cjs/ui/media-linking-toolbar-messages.js +14 -0
  75. package/dist/cjs/utils/analytics.js +53 -0
  76. package/dist/cjs/utils/check-media-type.js +56 -0
  77. package/dist/cjs/utils/current-media-node.js +41 -0
  78. package/dist/cjs/utils/is-image.js +9 -0
  79. package/dist/cjs/utils/media-common.js +181 -0
  80. package/dist/cjs/utils/media-files.js +297 -0
  81. package/dist/cjs/utils/media-single.js +181 -0
  82. package/dist/es2019/commands/captions.js +47 -0
  83. package/dist/es2019/commands/helpers.js +113 -0
  84. package/dist/es2019/commands/index.js +1 -0
  85. package/dist/es2019/commands/linking.js +169 -0
  86. package/dist/es2019/index.js +1 -1
  87. package/dist/es2019/media-plugin-options.js +1 -0
  88. package/dist/es2019/next-plugin-type.js +1 -0
  89. package/dist/es2019/nodeviews/mediaGroup.js +314 -0
  90. package/dist/es2019/nodeviews/mediaInline.js +201 -0
  91. package/dist/es2019/nodeviews/mediaNodeUpdater.js +384 -0
  92. package/dist/es2019/nodeviews/mediaNodeView/index.js +149 -0
  93. package/dist/es2019/nodeviews/mediaNodeView/media.js +182 -0
  94. package/dist/es2019/nodeviews/mediaSingle.js +511 -0
  95. package/dist/es2019/nodeviews/messages.js +8 -0
  96. package/dist/es2019/nodeviews/styles.js +46 -0
  97. package/dist/es2019/nodeviews/types.js +1 -0
  98. package/dist/es2019/picker-facade.js +146 -0
  99. package/dist/es2019/plugin.js +284 -0
  100. package/dist/es2019/pm-plugins/alt-text/actions.js +1 -0
  101. package/dist/es2019/pm-plugins/alt-text/commands.js +42 -0
  102. package/dist/es2019/pm-plugins/alt-text/index.js +33 -0
  103. package/dist/es2019/pm-plugins/alt-text/keymap.js +9 -0
  104. package/dist/es2019/pm-plugins/alt-text/messages.js +38 -0
  105. package/dist/es2019/pm-plugins/alt-text/reducer.js +26 -0
  106. package/dist/es2019/pm-plugins/alt-text/types.js +1 -0
  107. package/dist/es2019/pm-plugins/alt-text/ui/AltTextEdit.js +228 -0
  108. package/dist/es2019/pm-plugins/keymap-media-single.js +172 -0
  109. package/dist/es2019/pm-plugins/keymap.js +84 -0
  110. package/dist/es2019/pm-plugins/linking/actions.js +7 -0
  111. package/dist/es2019/pm-plugins/linking/index.js +56 -0
  112. package/dist/es2019/pm-plugins/linking/keymap.js +8 -0
  113. package/dist/es2019/pm-plugins/linking/reducer.js +37 -0
  114. package/dist/es2019/pm-plugins/linking/types.js +1 -0
  115. package/dist/es2019/pm-plugins/main.js +695 -0
  116. package/dist/es2019/pm-plugins/media-editor-plugin-factory.js +2 -0
  117. package/dist/es2019/pm-plugins/mediaTaskManager.js +64 -0
  118. package/dist/es2019/pm-plugins/plugin-key.js +2 -0
  119. package/dist/es2019/pm-plugins/types.js +1 -0
  120. package/dist/es2019/toolbar/alt-text.js +72 -0
  121. package/dist/es2019/toolbar/commands.js +212 -0
  122. package/dist/es2019/toolbar/filePreviewItem.js +54 -0
  123. package/dist/es2019/toolbar/imageBorder.js +15 -0
  124. package/dist/es2019/toolbar/index.js +538 -0
  125. package/dist/es2019/toolbar/linking-toolbar-appearance.js +90 -0
  126. package/dist/es2019/toolbar/linking.js +98 -0
  127. package/dist/es2019/toolbar/utils.js +86 -0
  128. package/dist/es2019/ui/CaptionPlaceholder/index.js +25 -0
  129. package/dist/es2019/ui/CaptionPlaceholder/messages.js +8 -0
  130. package/dist/es2019/ui/ImageBorder/index.js +213 -0
  131. package/dist/es2019/ui/ImageBorder/messages.js +43 -0
  132. package/dist/es2019/ui/ImageBorder/styles.js +126 -0
  133. package/dist/es2019/ui/Media/DropPlaceholder.js +47 -0
  134. package/dist/es2019/ui/Media/drop-placeholder-messages.js +8 -0
  135. package/dist/es2019/ui/MediaLinkingToolbar.js +190 -0
  136. package/dist/es2019/ui/MediaPicker/BrowserWrapper.js +31 -0
  137. package/dist/es2019/ui/MediaPicker/ClipboardWrapper.js +32 -0
  138. package/dist/es2019/ui/MediaPicker/DropzoneWrapper.js +42 -0
  139. package/dist/es2019/ui/MediaPicker/PickerFacadeProvider.js +85 -0
  140. package/dist/es2019/ui/MediaPicker/index.js +82 -0
  141. package/dist/es2019/ui/PixelEntry/constants.js +1 -0
  142. package/dist/es2019/ui/PixelEntry/index.js +170 -0
  143. package/dist/es2019/ui/PixelEntry/messages.js +48 -0
  144. package/dist/es2019/ui/PixelEntry/styles.js +51 -0
  145. package/dist/es2019/ui/PixelEntry/types.js +1 -0
  146. package/dist/es2019/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.js +9 -0
  147. package/dist/es2019/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +454 -0
  148. package/dist/es2019/ui/ResizableMediaSingle/index.js +344 -0
  149. package/dist/es2019/ui/ResizableMediaSingle/styled.js +9 -0
  150. package/dist/es2019/ui/ResizableMediaSingle/styles.js +14 -0
  151. package/dist/es2019/ui/ResizableMediaSingle/types.js +1 -0
  152. package/dist/es2019/ui/ToolbarMedia/index.js +37 -0
  153. package/dist/es2019/ui/ToolbarMedia/toolbar-media-messages.js +8 -0
  154. package/dist/es2019/ui/media-linking-toolbar-messages.js +8 -0
  155. package/dist/es2019/utils/analytics.js +51 -0
  156. package/dist/es2019/utils/check-media-type.js +19 -0
  157. package/dist/es2019/utils/current-media-node.js +35 -0
  158. package/dist/es2019/utils/is-image.js +3 -0
  159. package/dist/es2019/utils/media-common.js +189 -0
  160. package/dist/es2019/utils/media-files.js +321 -0
  161. package/dist/es2019/utils/media-single.js +176 -0
  162. package/dist/esm/commands/captions.js +53 -0
  163. package/dist/esm/commands/helpers.js +120 -0
  164. package/dist/esm/commands/index.js +1 -0
  165. package/dist/esm/commands/linking.js +174 -0
  166. package/dist/esm/index.js +1 -1
  167. package/dist/esm/media-plugin-options.js +1 -0
  168. package/dist/esm/next-plugin-type.js +1 -0
  169. package/dist/esm/nodeviews/mediaGroup.js +369 -0
  170. package/dist/esm/nodeviews/mediaInline.js +278 -0
  171. package/dist/esm/nodeviews/mediaNodeUpdater.js +732 -0
  172. package/dist/esm/nodeviews/mediaNodeView/index.js +170 -0
  173. package/dist/esm/nodeviews/mediaNodeView/media.js +233 -0
  174. package/dist/esm/nodeviews/mediaSingle.js +622 -0
  175. package/dist/esm/nodeviews/messages.js +8 -0
  176. package/dist/esm/nodeviews/styles.js +39 -0
  177. package/dist/esm/nodeviews/types.js +1 -0
  178. package/dist/esm/picker-facade.js +186 -0
  179. package/dist/esm/plugin.js +282 -0
  180. package/dist/esm/pm-plugins/alt-text/actions.js +1 -0
  181. package/dist/esm/pm-plugins/alt-text/commands.js +52 -0
  182. package/dist/esm/pm-plugins/alt-text/index.js +31 -0
  183. package/dist/esm/pm-plugins/alt-text/keymap.js +9 -0
  184. package/dist/esm/pm-plugins/alt-text/messages.js +38 -0
  185. package/dist/esm/pm-plugins/alt-text/reducer.js +25 -0
  186. package/dist/esm/pm-plugins/alt-text/types.js +1 -0
  187. package/dist/esm/pm-plugins/alt-text/ui/AltTextEdit.js +206 -0
  188. package/dist/esm/pm-plugins/keymap-media-single.js +158 -0
  189. package/dist/esm/pm-plugins/keymap.js +81 -0
  190. package/dist/esm/pm-plugins/linking/actions.js +7 -0
  191. package/dist/esm/pm-plugins/linking/index.js +59 -0
  192. package/dist/esm/pm-plugins/linking/keymap.js +8 -0
  193. package/dist/esm/pm-plugins/linking/reducer.js +36 -0
  194. package/dist/esm/pm-plugins/linking/types.js +1 -0
  195. package/dist/esm/pm-plugins/main.js +798 -0
  196. package/dist/esm/pm-plugins/media-editor-plugin-factory.js +2 -0
  197. package/dist/esm/pm-plugins/mediaTaskManager.js +94 -0
  198. package/dist/esm/pm-plugins/plugin-key.js +2 -0
  199. package/dist/esm/pm-plugins/types.js +1 -0
  200. package/dist/esm/toolbar/alt-text.js +70 -0
  201. package/dist/esm/toolbar/commands.js +229 -0
  202. package/dist/esm/toolbar/filePreviewItem.js +56 -0
  203. package/dist/esm/toolbar/imageBorder.js +14 -0
  204. package/dist/esm/toolbar/index.js +513 -0
  205. package/dist/esm/toolbar/linking-toolbar-appearance.js +91 -0
  206. package/dist/esm/toolbar/linking.js +88 -0
  207. package/dist/esm/toolbar/utils.js +103 -0
  208. package/dist/esm/ui/CaptionPlaceholder/index.js +20 -0
  209. package/dist/esm/ui/CaptionPlaceholder/messages.js +8 -0
  210. package/dist/esm/ui/ImageBorder/index.js +218 -0
  211. package/dist/esm/ui/ImageBorder/messages.js +43 -0
  212. package/dist/esm/ui/ImageBorder/styles.js +42 -0
  213. package/dist/esm/ui/Media/DropPlaceholder.js +31 -0
  214. package/dist/esm/ui/Media/drop-placeholder-messages.js +8 -0
  215. package/dist/esm/ui/MediaLinkingToolbar.js +188 -0
  216. package/dist/esm/ui/MediaPicker/BrowserWrapper.js +33 -0
  217. package/dist/esm/ui/MediaPicker/ClipboardWrapper.js +32 -0
  218. package/dist/esm/ui/MediaPicker/DropzoneWrapper.js +44 -0
  219. package/dist/esm/ui/MediaPicker/PickerFacadeProvider.js +145 -0
  220. package/dist/esm/ui/MediaPicker/index.js +96 -0
  221. package/dist/esm/ui/PixelEntry/constants.js +1 -0
  222. package/dist/esm/ui/PixelEntry/index.js +174 -0
  223. package/dist/esm/ui/PixelEntry/messages.js +48 -0
  224. package/dist/esm/ui/PixelEntry/styles.js +12 -0
  225. package/dist/esm/ui/PixelEntry/types.js +1 -0
  226. package/dist/esm/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.js +9 -0
  227. package/dist/esm/ui/ResizableMediaSingle/ResizableMediaSingleNext.js +535 -0
  228. package/dist/esm/ui/ResizableMediaSingle/index.js +417 -0
  229. package/dist/esm/ui/ResizableMediaSingle/styled.js +7 -0
  230. package/dist/esm/ui/ResizableMediaSingle/styles.js +7 -0
  231. package/dist/esm/ui/ResizableMediaSingle/types.js +1 -0
  232. package/dist/esm/ui/ToolbarMedia/index.js +35 -0
  233. package/dist/esm/ui/ToolbarMedia/toolbar-media-messages.js +8 -0
  234. package/dist/esm/ui/media-linking-toolbar-messages.js +8 -0
  235. package/dist/esm/utils/analytics.js +47 -0
  236. package/dist/esm/utils/check-media-type.js +49 -0
  237. package/dist/esm/utils/current-media-node.js +35 -0
  238. package/dist/esm/utils/is-image.js +3 -0
  239. package/dist/esm/utils/media-common.js +175 -0
  240. package/dist/esm/utils/media-files.js +291 -0
  241. package/dist/esm/utils/media-single.js +172 -0
  242. package/dist/types/commands/captions.d.ts +5 -0
  243. package/dist/types/commands/helpers.d.ts +15 -0
  244. package/dist/types/commands/index.d.ts +1 -0
  245. package/dist/types/commands/linking.d.ts +9 -0
  246. package/dist/types/index.d.ts +2 -1
  247. package/dist/types/media-plugin-options.d.ts +17 -0
  248. package/dist/types/next-plugin-type.d.ts +33 -0
  249. package/dist/types/nodeviews/__mocks__/mediaNodeUpdater.d.ts +24 -0
  250. package/dist/types/nodeviews/mediaGroup.d.ts +33 -0
  251. package/dist/types/nodeviews/mediaInline.d.ts +50 -0
  252. package/dist/types/nodeviews/mediaNodeUpdater.d.ts +45 -0
  253. package/dist/types/nodeviews/mediaNodeView/index.d.ts +28 -0
  254. package/dist/types/nodeviews/mediaNodeView/media.d.ts +44 -0
  255. package/dist/types/nodeviews/mediaSingle.d.ts +62 -0
  256. package/dist/types/nodeviews/messages.d.ts +7 -0
  257. package/dist/types/nodeviews/styles.d.ts +16 -0
  258. package/dist/types/nodeviews/types.d.ts +42 -0
  259. package/dist/types/picker-facade.d.ts +44 -0
  260. package/dist/types/plugin.d.ts +7 -0
  261. package/dist/types/pm-plugins/alt-text/actions.d.ts +10 -0
  262. package/dist/types/pm-plugins/alt-text/commands.d.ts +4 -0
  263. package/dist/types/pm-plugins/alt-text/index.d.ts +7 -0
  264. package/dist/types/pm-plugins/alt-text/keymap.d.ts +4 -0
  265. package/dist/types/pm-plugins/alt-text/messages.d.ts +37 -0
  266. package/dist/types/pm-plugins/alt-text/reducer.d.ts +4 -0
  267. package/dist/types/pm-plugins/alt-text/types.d.ts +3 -0
  268. package/dist/types/pm-plugins/alt-text/ui/AltTextEdit.d.ts +41 -0
  269. package/dist/types/pm-plugins/keymap-media-single.d.ts +3 -0
  270. package/dist/types/pm-plugins/keymap.d.ts +6 -0
  271. package/dist/types/pm-plugins/linking/actions.d.ts +20 -0
  272. package/dist/types/pm-plugins/linking/index.d.ts +10 -0
  273. package/dist/types/pm-plugins/linking/keymap.d.ts +3 -0
  274. package/dist/types/pm-plugins/linking/reducer.d.ts +4 -0
  275. package/dist/types/pm-plugins/linking/types.d.ts +12 -0
  276. package/dist/types/pm-plugins/main.d.ts +120 -0
  277. package/dist/types/pm-plugins/media-editor-plugin-factory.d.ts +3 -0
  278. package/dist/types/pm-plugins/mediaTaskManager.d.ts +9 -0
  279. package/dist/types/pm-plugins/plugin-key.d.ts +3 -0
  280. package/dist/types/pm-plugins/types.d.ts +65 -0
  281. package/dist/types/toolbar/alt-text.d.ts +13 -0
  282. package/dist/types/toolbar/commands.d.ts +12 -0
  283. package/dist/types/toolbar/filePreviewItem.d.ts +9 -0
  284. package/dist/types/toolbar/imageBorder.d.ts +2 -0
  285. package/dist/types/toolbar/index.d.ts +6 -0
  286. package/dist/types/toolbar/linking-toolbar-appearance.d.ts +14 -0
  287. package/dist/types/toolbar/linking.d.ts +10 -0
  288. package/dist/types/toolbar/utils.d.ts +11 -0
  289. package/dist/types/types.d.ts +2 -1
  290. package/dist/types/ui/CaptionPlaceholder/index.d.ts +6 -0
  291. package/dist/types/ui/CaptionPlaceholder/messages.d.ts +7 -0
  292. package/dist/types/ui/ImageBorder/index.d.ts +11 -0
  293. package/dist/types/ui/ImageBorder/messages.d.ts +42 -0
  294. package/dist/types/ui/ImageBorder/styles.d.ts +15 -0
  295. package/dist/types/ui/Media/DropPlaceholder.d.ts +8 -0
  296. package/dist/types/ui/Media/drop-placeholder-messages.d.ts +7 -0
  297. package/dist/types/ui/MediaLinkingToolbar.d.ts +35 -0
  298. package/dist/types/ui/MediaPicker/BrowserWrapper.d.ts +11 -0
  299. package/dist/types/ui/MediaPicker/ClipboardWrapper.d.ts +10 -0
  300. package/dist/types/ui/MediaPicker/DropzoneWrapper.d.ts +13 -0
  301. package/dist/types/ui/MediaPicker/PickerFacadeProvider.d.ts +28 -0
  302. package/dist/types/ui/MediaPicker/index.d.ts +23 -0
  303. package/dist/types/ui/PixelEntry/constants.d.ts +1 -0
  304. package/dist/types/ui/PixelEntry/index.d.ts +8 -0
  305. package/dist/types/ui/PixelEntry/messages.d.ts +47 -0
  306. package/dist/types/ui/PixelEntry/styles.d.ts +8 -0
  307. package/dist/types/ui/PixelEntry/types.d.ts +58 -0
  308. package/dist/types/ui/ResizableMediaSingle/ResizableMediaMigrationNotification.d.ts +3 -0
  309. package/dist/types/ui/ResizableMediaSingle/ResizableMediaSingleNext.d.ts +59 -0
  310. package/dist/types/ui/ResizableMediaSingle/index.d.ts +45 -0
  311. package/dist/types/ui/ResizableMediaSingle/styled.d.ts +2 -0
  312. package/dist/types/ui/ResizableMediaSingle/styles.d.ts +1 -0
  313. package/dist/types/ui/ResizableMediaSingle/types.d.ts +27 -0
  314. package/dist/types/ui/ToolbarMedia/index.d.ts +13 -0
  315. package/dist/types/ui/ToolbarMedia/toolbar-media-messages.d.ts +7 -0
  316. package/dist/types/ui/media-linking-toolbar-messages.d.ts +7 -0
  317. package/dist/types/utils/analytics.d.ts +3 -0
  318. package/dist/types/utils/check-media-type.d.ts +4 -0
  319. package/dist/types/utils/current-media-node.d.ts +9 -0
  320. package/dist/types/utils/is-image.d.ts +1 -0
  321. package/dist/types/utils/media-common.d.ts +20 -0
  322. package/dist/types/utils/media-files.d.ts +30 -0
  323. package/dist/types/utils/media-single.d.ts +20 -0
  324. package/package.json +32 -20
  325. package/report.api.md +430 -0
  326. package/dist/types-ts4.5/index.d.ts +0 -1
  327. package/dist/types-ts4.5/types.d.ts +0 -118
  328. package/tmp/api-report-tmp.d.ts +0 -9
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.pluginKey = void 0;
7
+ var _state = require("@atlaskit/editor-prosemirror/state");
8
+ var pluginKey = exports.pluginKey = new _state.PluginKey('mediaEditorPlugin');
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.MediaTaskManager = void 0;
8
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
9
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
+ var MediaTaskManager = exports.MediaTaskManager = /*#__PURE__*/(0, _createClass2.default)(function MediaTaskManager() {
14
+ var _this = this;
15
+ (0, _classCallCheck2.default)(this, MediaTaskManager);
16
+ (0, _defineProperty2.default)(this, "pendingTask", Promise.resolve(null));
17
+ (0, _defineProperty2.default)(this, "taskMap", new Map());
18
+ (0, _defineProperty2.default)(this, "cancelPendingTask", function (id) {
19
+ var task = _this.taskMap.get(id);
20
+ if (task && !task.cancelController.signal.aborted) {
21
+ task.cancelController.abort();
22
+ }
23
+ });
24
+ (0, _defineProperty2.default)(this, "waitForPendingTasks", /*#__PURE__*/function () {
25
+ var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(timeout, lastTask) {
26
+ var chainedPromise, rejectTimeout, timeoutPromise;
27
+ return _regenerator.default.wrap(function _callee$(_context) {
28
+ while (1) switch (_context.prev = _context.next) {
29
+ case 0:
30
+ if (!(lastTask && _this.pendingTask === lastTask)) {
31
+ _context.next = 2;
32
+ break;
33
+ }
34
+ return _context.abrupt("return", lastTask);
35
+ case 2:
36
+ chainedPromise = _this.pendingTask.then(function () {
37
+ return (
38
+ // Call ourselves to make sure that no new pending tasks have been
39
+ // added before the current promise has resolved.
40
+ _this.waitForPendingTasks(undefined, _this.pendingTask)
41
+ );
42
+ });
43
+ if (timeout) {
44
+ _context.next = 5;
45
+ break;
46
+ }
47
+ return _context.abrupt("return", chainedPromise);
48
+ case 5:
49
+ timeoutPromise = new Promise(function (_resolve, reject) {
50
+ rejectTimeout = window.setTimeout(function () {
51
+ return reject(new Error("Media operations did not finish in ".concat(timeout, " ms")));
52
+ }, timeout);
53
+ });
54
+ return _context.abrupt("return", Promise.race([timeoutPromise, chainedPromise.then(function (value) {
55
+ clearTimeout(rejectTimeout);
56
+ return value;
57
+ })]));
58
+ case 7:
59
+ case "end":
60
+ return _context.stop();
61
+ }
62
+ }, _callee);
63
+ }));
64
+ return function (_x, _x2) {
65
+ return _ref.apply(this, arguments);
66
+ };
67
+ }());
68
+ (0, _defineProperty2.default)(this, "resumePendingTask", function (id) {
69
+ var mediaTask = _this.taskMap.get(id);
70
+ if (mediaTask && mediaTask.cancelController.signal.aborted) {
71
+ _this.addPendingTask(mediaTask.task, id);
72
+ }
73
+ });
74
+ (0, _defineProperty2.default)(this, "addPendingTask", function (task, id) {
75
+ var currentTask = task;
76
+ if (id) {
77
+ var cancelController = new AbortController();
78
+ var signal = cancelController.signal;
79
+ _this.taskMap.set(id, {
80
+ task: task,
81
+ cancelController: cancelController
82
+ });
83
+ currentTask = new Promise(function (resolve) {
84
+ task.then(resolve, resolve).finally(function () {
85
+ _this.taskMap.delete(id);
86
+ });
87
+ signal.onabort = function () {
88
+ resolve(null);
89
+ };
90
+ });
91
+ }
92
+
93
+ // Chain the previous promise with a new one for this media item
94
+ var currentPendingTask = _this.pendingTask;
95
+ var pendingPromise = function pendingPromise() {
96
+ return currentPendingTask;
97
+ };
98
+ _this.pendingTask = currentTask.then(pendingPromise, pendingPromise);
99
+ return _this.pendingTask;
100
+ });
101
+ });
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.stateKey = void 0;
7
+ var _state = require("@atlaskit/editor-prosemirror/state");
8
+ var stateKey = exports.stateKey = new _state.PluginKey('mediaPlugin');
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.getAltTextToolbar = exports.altTextEditComponent = exports.altTextButton = void 0;
9
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _keymaps = require("@atlaskit/editor-common/keymaps");
12
+ var _styles = require("@atlaskit/editor-common/styles");
13
+ var _commands = require("../pm-plugins/alt-text/commands");
14
+ var _messages = require("../pm-plugins/alt-text/messages");
15
+ var _AltTextEdit = _interopRequireWildcard(require("../pm-plugins/alt-text/ui/AltTextEdit"));
16
+ var _mediaCommon = require("../utils/media-common");
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21
+ var testId = 'alt-text-edit-button';
22
+ var altTextButton = exports.altTextButton = function altTextButton(intl, state, editorAnalyticsAPI) {
23
+ var mediaNode = (0, _mediaCommon.getMediaNodeFromSelection)(state);
24
+ var message = mediaNode && mediaNode.attrs.alt ? _messages.messages.editAltText : _messages.messages.altText;
25
+ var title = intl.formatMessage(message);
26
+ return {
27
+ title: title,
28
+ id: 'editor.media.altText',
29
+ type: 'button',
30
+ onClick: (0, _commands.openMediaAltTextMenu)(editorAnalyticsAPI),
31
+ showTitle: true,
32
+ testId: testId,
33
+ tooltipContent: /*#__PURE__*/_react.default.createElement(_keymaps.ToolTipContent, {
34
+ description: title,
35
+ keymap: _keymaps.addAltText
36
+ })
37
+ };
38
+ };
39
+ var altTextEditComponent = exports.altTextEditComponent = function altTextEditComponent(options) {
40
+ return {
41
+ type: 'custom',
42
+ fallback: [],
43
+ disableArrowNavigation: true,
44
+ render: function render(view, idx) {
45
+ if (!view) {
46
+ return null;
47
+ }
48
+ var mediaNode = (0, _mediaCommon.getMediaNodeFromSelection)(view.state);
49
+ if (!mediaNode) {
50
+ return null;
51
+ }
52
+ /** Focus should move to the 'Alt text' button when the toolbar closes
53
+ * and not close the floating toolbar.
54
+ */
55
+ var handleEsc = function handleEsc() {
56
+ var _options$forceFocusSe;
57
+ var tr = view.state.tr,
58
+ dispatch = view.dispatch;
59
+ var newTr = options === null || options === void 0 || (_options$forceFocusSe = options.forceFocusSelector) === null || _options$forceFocusSe === void 0 ? void 0 : _options$forceFocusSe.call(options, "[data-testid=\"".concat(testId, "\"]"))(tr);
60
+ if (newTr) {
61
+ dispatch(newTr);
62
+ }
63
+ };
64
+ return /*#__PURE__*/_react.default.createElement(_AltTextEdit.default, {
65
+ view: view,
66
+ key: idx,
67
+ value: mediaNode.attrs.alt,
68
+ altTextValidator: options && options.altTextValidator,
69
+ onEscape: handleEsc
70
+ });
71
+ }
72
+ };
73
+ };
74
+ var getAltTextToolbar = exports.getAltTextToolbar = function getAltTextToolbar(toolbarBaseConfig, options) {
75
+ return _objectSpread(_objectSpread({}, toolbarBaseConfig), {}, {
76
+ width: _AltTextEdit.CONTAINER_WIDTH_IN_PX,
77
+ className: _styles.MediaSharedClassNames.FLOATING_TOOLBAR_COMPONENT,
78
+ items: [altTextEditComponent(options)]
79
+ });
80
+ };
@@ -0,0 +1,236 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.updateMediaSingleWidth = exports.toggleBorderMark = exports.setBorderMark = exports.removeInlineCard = exports.changeMediaCardToInline = exports.changeInlineToMediaCard = exports.DEFAULT_BORDER_SIZE = exports.DEFAULT_BORDER_COLOR = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _analytics = require("@atlaskit/editor-common/analytics");
10
+ var _model = require("@atlaskit/editor-prosemirror/model");
11
+ var _state = require("@atlaskit/editor-prosemirror/state");
12
+ var _utils = require("@atlaskit/editor-prosemirror/utils");
13
+ var _analytics2 = require("../utils/analytics");
14
+ var _currentMediaNode = require("../utils/current-media-node");
15
+ var _utils2 = require("./utils");
16
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
17
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
18
+ var DEFAULT_BORDER_COLOR = exports.DEFAULT_BORDER_COLOR = '#091e4224';
19
+ var DEFAULT_BORDER_SIZE = exports.DEFAULT_BORDER_SIZE = 2;
20
+ var changeInlineToMediaCard = exports.changeInlineToMediaCard = function changeInlineToMediaCard(editorAnalyticsAPI) {
21
+ return function (state, dispatch) {
22
+ var _state$schema$nodes = state.schema.nodes,
23
+ media = _state$schema$nodes.media,
24
+ mediaInline = _state$schema$nodes.mediaInline,
25
+ mediaGroup = _state$schema$nodes.mediaGroup;
26
+ var selectedNode = state.selection instanceof _state.NodeSelection && state.selection.node.type === mediaInline && state.selection.node;
27
+ if (!selectedNode) {
28
+ return false;
29
+ }
30
+ var _selectedNode$attrs = selectedNode.attrs,
31
+ id = _selectedNode$attrs.id,
32
+ type = _selectedNode$attrs.type,
33
+ collection = _selectedNode$attrs.collection;
34
+ var mediaNode = media.createChecked({
35
+ id: id,
36
+ type: type,
37
+ collection: collection
38
+ });
39
+ var group = mediaGroup.createChecked({}, mediaNode);
40
+ var nodePos = state.tr.doc.resolve(state.selection.from).end();
41
+ var tr = state.tr;
42
+ tr = (0, _utils.removeSelectedNode)(tr);
43
+ tr = (0, _utils.safeInsert)(group, nodePos, true)(tr);
44
+ if (dispatch) {
45
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent({
46
+ action: _analytics.ACTION.CHANGED_TYPE,
47
+ actionSubject: _analytics.ACTION_SUBJECT.MEDIA,
48
+ eventType: _analytics.EVENT_TYPE.TRACK,
49
+ attributes: {
50
+ newType: _analytics.ACTION_SUBJECT_ID.MEDIA_GROUP,
51
+ previousType: _analytics.ACTION_SUBJECT_ID.MEDIA_INLINE
52
+ }
53
+ })(tr);
54
+ dispatch(tr);
55
+ }
56
+ return true;
57
+ };
58
+ };
59
+ var changeMediaCardToInline = exports.changeMediaCardToInline = function changeMediaCardToInline(editorAnalyticsAPI) {
60
+ return function (state, dispatch) {
61
+ var _state$schema$nodes2 = state.schema.nodes,
62
+ media = _state$schema$nodes2.media,
63
+ mediaInline = _state$schema$nodes2.mediaInline,
64
+ paragraph = _state$schema$nodes2.paragraph;
65
+ var selectedNode = state.selection instanceof _state.NodeSelection && state.selection.node;
66
+
67
+ // @ts-ignore - [unblock prosemirror bump] redundant check comparing boolean to media
68
+ if (!selectedNode || !selectedNode.type === media) {
69
+ return false;
70
+ }
71
+ var mediaInlineNode = mediaInline.create({
72
+ id: selectedNode.attrs.id,
73
+ collection: selectedNode.attrs.collection
74
+ });
75
+ var space = state.schema.text(' ');
76
+ var content = _model.Fragment.from([mediaInlineNode, space]);
77
+ var node = paragraph.createChecked({}, content);
78
+ var nodePos = state.tr.doc.resolve(state.selection.from).start() - 1;
79
+ var tr = (0, _utils2.removeMediaGroupNode)(state);
80
+ tr = (0, _utils.safeInsert)(node, nodePos, false)(tr);
81
+ if (dispatch) {
82
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent({
83
+ action: _analytics.ACTION.CHANGED_TYPE,
84
+ actionSubject: _analytics.ACTION_SUBJECT.MEDIA,
85
+ eventType: _analytics.EVENT_TYPE.TRACK,
86
+ attributes: {
87
+ newType: _analytics.ACTION_SUBJECT_ID.MEDIA_INLINE,
88
+ previousType: _analytics.ACTION_SUBJECT_ID.MEDIA_GROUP
89
+ }
90
+ })(tr);
91
+ dispatch(tr);
92
+ }
93
+ return true;
94
+ };
95
+ };
96
+ var removeInlineCard = exports.removeInlineCard = function removeInlineCard(state, dispatch) {
97
+ if ((0, _utils.isNodeSelection)(state.selection)) {
98
+ if (dispatch) {
99
+ dispatch((0, _utils.removeSelectedNode)(state.tr));
100
+ }
101
+ return true;
102
+ }
103
+ return false;
104
+ };
105
+ var toggleBorderMark = exports.toggleBorderMark = function toggleBorderMark(editorAnalyticsAPI) {
106
+ return function (state, dispatch) {
107
+ var nodeWithPos = (0, _currentMediaNode.currentMediaNodeWithPos)(state);
108
+ if (!nodeWithPos) {
109
+ return false;
110
+ }
111
+ var node = nodeWithPos.node,
112
+ pos = nodeWithPos.pos;
113
+ var borderMark = node.marks.find(function (m) {
114
+ return m.type.name === 'border';
115
+ });
116
+ var marks = node.marks.filter(function (m) {
117
+ return m.type.name !== 'border';
118
+ }).concat(borderMark ? [] : state.schema.marks.border.create({
119
+ color: DEFAULT_BORDER_COLOR,
120
+ size: DEFAULT_BORDER_SIZE
121
+ }));
122
+ var tr = state.tr.setNodeMarkup(pos, node.type, node.attrs, marks);
123
+ tr.setMeta('scrollIntoView', false);
124
+ if (state.selection instanceof _state.NodeSelection) {
125
+ if (state.selection.$anchor.pos === state.selection.from) {
126
+ tr.setSelection(_state.NodeSelection.create(tr.doc, state.selection.from));
127
+ }
128
+ }
129
+ if (dispatch) {
130
+ if (borderMark !== null && borderMark !== void 0 && borderMark.attrs) {
131
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent({
132
+ action: _analytics.ACTION.DELETED,
133
+ actionSubject: _analytics.ACTION_SUBJECT.MEDIA,
134
+ actionSubjectId: _analytics.ACTION_SUBJECT_ID.BORDER,
135
+ eventType: _analytics.EVENT_TYPE.TRACK,
136
+ attributes: {
137
+ previousColor: borderMark.attrs.color,
138
+ previousSize: borderMark.attrs.size
139
+ }
140
+ })(tr);
141
+ } else {
142
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent({
143
+ action: _analytics.ACTION.ADDED,
144
+ actionSubject: _analytics.ACTION_SUBJECT.MEDIA,
145
+ actionSubjectId: _analytics.ACTION_SUBJECT_ID.BORDER,
146
+ eventType: _analytics.EVENT_TYPE.TRACK,
147
+ attributes: {
148
+ color: DEFAULT_BORDER_COLOR,
149
+ size: DEFAULT_BORDER_SIZE
150
+ }
151
+ })(tr);
152
+ }
153
+ dispatch(tr);
154
+ }
155
+ return true;
156
+ };
157
+ };
158
+ var setBorderMark = exports.setBorderMark = function setBorderMark(editorAnalyticsAPI) {
159
+ return function (attrs) {
160
+ return function (state, dispatch) {
161
+ var _node$marks$find, _ref, _attrs$color, _ref2, _attrs$size;
162
+ var nodeWithPos = (0, _currentMediaNode.currentMediaNodeWithPos)(state);
163
+ if (!nodeWithPos) {
164
+ return false;
165
+ }
166
+ var node = nodeWithPos.node,
167
+ pos = nodeWithPos.pos;
168
+ var borderMark = (_node$marks$find = node.marks.find(function (m) {
169
+ return m.type.name === 'border';
170
+ })) === null || _node$marks$find === void 0 ? void 0 : _node$marks$find.attrs;
171
+ var color = (_ref = (_attrs$color = attrs.color) !== null && _attrs$color !== void 0 ? _attrs$color : borderMark === null || borderMark === void 0 ? void 0 : borderMark.color) !== null && _ref !== void 0 ? _ref : DEFAULT_BORDER_COLOR;
172
+ var size = (_ref2 = (_attrs$size = attrs.size) !== null && _attrs$size !== void 0 ? _attrs$size : borderMark === null || borderMark === void 0 ? void 0 : borderMark.size) !== null && _ref2 !== void 0 ? _ref2 : DEFAULT_BORDER_SIZE;
173
+ var marks = node.marks.filter(function (m) {
174
+ return m.type.name !== 'border';
175
+ }).concat(state.schema.marks.border.create({
176
+ color: color,
177
+ size: size
178
+ }));
179
+ var tr = state.tr.setNodeMarkup(pos, node.type, node.attrs, marks);
180
+ tr.setMeta('scrollIntoView', false);
181
+ if (state.selection instanceof _state.NodeSelection) {
182
+ if (state.selection.$anchor.pos === state.selection.from) {
183
+ tr.setSelection(_state.NodeSelection.create(tr.doc, state.selection.from));
184
+ }
185
+ }
186
+ if (dispatch) {
187
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent({
188
+ action: _analytics.ACTION.UPDATED,
189
+ actionSubject: _analytics.ACTION_SUBJECT.MEDIA,
190
+ actionSubjectId: _analytics.ACTION_SUBJECT_ID.BORDER,
191
+ eventType: _analytics.EVENT_TYPE.TRACK,
192
+ attributes: {
193
+ previousColor: borderMark === null || borderMark === void 0 ? void 0 : borderMark.color,
194
+ previousSize: borderMark === null || borderMark === void 0 ? void 0 : borderMark.size,
195
+ newColor: color,
196
+ newSize: size
197
+ }
198
+ })(tr);
199
+ dispatch(tr);
200
+ }
201
+ return true;
202
+ };
203
+ };
204
+ };
205
+ var updateMediaSingleWidth = exports.updateMediaSingleWidth = function updateMediaSingleWidth(editorAnalyticsAPI) {
206
+ return function (width, validation, layout) {
207
+ return function (state, dispatch) {
208
+ var selectedMediaSingleNode = (0, _utils2.getSelectedMediaSingle)(state);
209
+ if (!selectedMediaSingleNode) {
210
+ return false;
211
+ }
212
+ var tr = state.tr.setNodeMarkup(selectedMediaSingleNode.pos, undefined, _objectSpread(_objectSpread({}, selectedMediaSingleNode.node.attrs), {}, {
213
+ width: width,
214
+ widthType: 'pixel',
215
+ layout: layout
216
+ }));
217
+ tr.setMeta('scrollIntoView', false);
218
+ tr.setSelection(_state.NodeSelection.create(tr.doc, selectedMediaSingleNode.pos));
219
+ var $pos = state.doc.resolve(selectedMediaSingleNode.pos);
220
+ var parentNodeType = $pos ? $pos.parent.type.name : undefined;
221
+ var payload = (0, _analytics2.getMediaInputResizeAnalyticsEvent)('mediaSingle', {
222
+ width: width,
223
+ layout: layout,
224
+ validation: validation,
225
+ parentNode: parentNodeType
226
+ });
227
+ if (payload) {
228
+ editorAnalyticsAPI === null || editorAnalyticsAPI === void 0 || editorAnalyticsAPI.attachAnalyticsEvent(payload)(tr);
229
+ }
230
+ if (dispatch) {
231
+ dispatch(tr);
232
+ }
233
+ return true;
234
+ };
235
+ };
236
+ };
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ var _typeof = require("@babel/runtime/helpers/typeof");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.FilePreviewItem = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
+ var _react = _interopRequireWildcard(require("react"));
11
+ var _reactDom = _interopRequireDefault(require("react-dom"));
12
+ var _ui = require("@atlaskit/editor-common/ui");
13
+ var _filePreview = _interopRequireDefault(require("@atlaskit/icon/glyph/editor/file-preview"));
14
+ var _mediaUi = require("@atlaskit/media-ui");
15
+ var _mediaViewer = require("@atlaskit/media-viewer");
16
+ var _utils = require("./utils");
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+ var FilePreviewItem = exports.FilePreviewItem = function FilePreviewItem(_ref) {
20
+ var mediaPluginState = _ref.mediaPluginState,
21
+ intl = _ref.intl;
22
+ var _useState = (0, _react.useState)(false),
23
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
24
+ isMediaViewerVisible = _useState2[0],
25
+ setMediaViewerVisible = _useState2[1];
26
+ var openMediaViewer = function openMediaViewer() {
27
+ setMediaViewerVisible(true);
28
+ };
29
+ var onMediaViewerClose = function onMediaViewerClose() {
30
+ setMediaViewerVisible(false);
31
+ };
32
+ var renderMediaViewer = function renderMediaViewer() {
33
+ if (isMediaViewerVisible) {
34
+ var selectedNodeAttrs = (0, _utils.getSelectedMediaContainerNodeAttrs)(mediaPluginState);
35
+ if (selectedNodeAttrs && mediaPluginState.mediaClientConfig) {
36
+ var id = selectedNodeAttrs.id,
37
+ _selectedNodeAttrs$co = selectedNodeAttrs.collection,
38
+ collection = _selectedNodeAttrs$co === void 0 ? '' : _selectedNodeAttrs$co;
39
+ var identifier = {
40
+ id: id,
41
+ mediaItemType: 'file',
42
+ collectionName: collection
43
+ };
44
+ return /*#__PURE__*/_reactDom.default.createPortal( /*#__PURE__*/_react.default.createElement(_mediaViewer.MediaViewer, {
45
+ collectionName: collection,
46
+ items: [],
47
+ mediaClientConfig: mediaPluginState.mediaClientConfig,
48
+ selectedItem: identifier,
49
+ onClose: onMediaViewerClose
50
+ }), document.body);
51
+ }
52
+ }
53
+ return null;
54
+ };
55
+ var mediaViewer = renderMediaViewer();
56
+ var tooltipContent = intl.formatMessage(_mediaUi.messages.preview);
57
+ return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement(_ui.FloatingToolbarButton, {
58
+ testId: "file-preview-toolbar-button",
59
+ key: "editor.media.card.preview",
60
+ onClick: openMediaViewer,
61
+ icon: /*#__PURE__*/_react.default.createElement(_filePreview.default, {
62
+ label: "file preview"
63
+ }),
64
+ tooltipContent: tooltipContent
65
+ }), mediaViewer);
66
+ };
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.shouldShowImageBorder = shouldShowImageBorder;
7
+ var _currentMediaNode = require("../utils/current-media-node");
8
+ function shouldShowImageBorder(editorState) {
9
+ var border = editorState.schema.marks.border;
10
+ if (!border) {
11
+ return false;
12
+ }
13
+ var nodeWithPos = (0, _currentMediaNode.currentMediaNodeWithPos)(editorState);
14
+ if (!nodeWithPos) {
15
+ return false;
16
+ }
17
+ var _editorState$doc$reso = editorState.doc.resolve(nodeWithPos.pos),
18
+ parent = _editorState$doc$reso.parent;
19
+ return parent && parent.type.allowsMarkType(border);
20
+ }