@webiny/app-admin 0.0.0-mt-2 → 0.0.0-unstable.085ff6572f

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 (464) hide show
  1. package/assets/icons/add-18px.svg +1 -1
  2. package/assets/icons/arrow_drop_down-24px.svg +1 -1
  3. package/assets/icons/filter-24px.svg +1 -1
  4. package/assets/icons/highlight-24px.svg +1 -1
  5. package/assets/icons/info.svg +1 -1
  6. package/assets/icons/insert_drive_file-24px.svg +1 -1
  7. package/assets/icons/insert_photo-24px.svg +1 -1
  8. package/assets/icons/label-24px.svg +1 -1
  9. package/assets/icons/round-account_circle-24px.svg +1 -1
  10. package/assets/icons/round-arrow_drop_down-24px.svg +1 -1
  11. package/assets/icons/round-help-24px.svg +1 -1
  12. package/assets/icons/round-settings-24px.svg +1 -1
  13. package/assets/icons/slack-logo.svg +1 -1
  14. package/assets/icons/today-24px.svg +1 -1
  15. package/assets/icons/touch_app.svg +1 -1
  16. package/base/Admin.d.ts +7 -0
  17. package/base/Admin.js +42 -0
  18. package/base/Admin.js.map +1 -0
  19. package/base/Base.d.ts +2 -0
  20. package/base/Base.js +75 -0
  21. package/base/Base.js.map +1 -0
  22. package/base/plugins/AddGraphQLQuerySelection.d.ts +9 -0
  23. package/base/plugins/AddGraphQLQuerySelection.js +27 -0
  24. package/base/plugins/AddGraphQLQuerySelection.js.map +1 -0
  25. package/base/providers/ApolloProvider.d.ts +10 -0
  26. package/base/providers/ApolloProvider.js +21 -0
  27. package/base/providers/ApolloProvider.js.map +1 -0
  28. package/base/providers/TelemetryProvider.d.ts +2 -0
  29. package/base/providers/TelemetryProvider.js +31 -0
  30. package/base/providers/TelemetryProvider.js.map +1 -0
  31. package/base/providers/UiStateProvider.d.ts +2 -0
  32. package/base/providers/UiStateProvider.js +18 -0
  33. package/base/providers/UiStateProvider.js.map +1 -0
  34. package/base/providers/ViewCompositionProvider.d.ts +17 -0
  35. package/base/providers/ViewCompositionProvider.js +57 -0
  36. package/base/providers/ViewCompositionProvider.js.map +1 -0
  37. package/base/ui/Brand.d.ts +2 -0
  38. package/base/ui/Brand.js +15 -0
  39. package/base/ui/Brand.js.map +1 -0
  40. package/base/ui/CenteredView.d.ts +4 -0
  41. package/base/ui/CenteredView.js +35 -0
  42. package/base/ui/CenteredView.js.map +1 -0
  43. package/base/ui/Dashboard.d.ts +2 -0
  44. package/base/ui/Dashboard.js +15 -0
  45. package/base/ui/Dashboard.js.map +1 -0
  46. package/base/ui/FileManager.d.ts +68 -0
  47. package/base/ui/FileManager.js +62 -0
  48. package/base/ui/FileManager.js.map +1 -0
  49. package/base/ui/Layout.d.ts +7 -0
  50. package/base/ui/Layout.js +19 -0
  51. package/base/ui/Layout.js.map +1 -0
  52. package/base/ui/LocaleSelector.d.ts +2 -0
  53. package/base/ui/LocaleSelector.js +15 -0
  54. package/base/ui/LocaleSelector.js.map +1 -0
  55. package/base/ui/LoginScreen.d.ts +6 -0
  56. package/base/ui/LoginScreen.js +21 -0
  57. package/base/ui/LoginScreen.js.map +1 -0
  58. package/base/ui/Logo.d.ts +8 -0
  59. package/base/ui/Logo.js +30 -0
  60. package/base/ui/Logo.js.map +1 -0
  61. package/base/ui/Menu.d.ts +31 -0
  62. package/base/ui/Menu.js +137 -0
  63. package/base/ui/Menu.js.map +1 -0
  64. package/base/ui/Navigation.d.ts +24 -0
  65. package/base/ui/Navigation.js +151 -0
  66. package/base/ui/Navigation.js.map +1 -0
  67. package/base/ui/NotFound.d.ts +2 -0
  68. package/base/ui/NotFound.js +15 -0
  69. package/base/ui/NotFound.js.map +1 -0
  70. package/base/ui/Search.d.ts +19 -0
  71. package/base/ui/Search.js +63 -0
  72. package/base/ui/Search.js.map +1 -0
  73. package/base/ui/Tags.d.ts +10 -0
  74. package/base/ui/Tags.js +22 -0
  75. package/base/ui/Tags.js.map +1 -0
  76. package/base/ui/UserMenu.d.ts +30 -0
  77. package/base/ui/UserMenu.js +113 -0
  78. package/base/ui/UserMenu.js.map +1 -0
  79. package/components/AdminLayout.d.ts +1 -2
  80. package/components/AdminLayout.js +16 -34
  81. package/components/AdminLayout.js.map +1 -0
  82. package/components/AppInstaller/AppInstaller.d.ts +7 -0
  83. package/components/AppInstaller/AppInstaller.js +117 -0
  84. package/components/AppInstaller/AppInstaller.js.map +1 -0
  85. package/components/AppInstaller/Sidebar.d.ts +8 -6
  86. package/components/AppInstaller/Sidebar.js +53 -66
  87. package/components/AppInstaller/Sidebar.js.map +1 -0
  88. package/components/AppInstaller/index.d.ts +1 -4
  89. package/components/AppInstaller/index.js +21 -133
  90. package/components/AppInstaller/index.js.map +1 -0
  91. package/components/AppInstaller/styled.d.ts +18 -4
  92. package/components/AppInstaller/styled.js +27 -13
  93. package/components/AppInstaller/styled.js.map +1 -0
  94. package/components/AppInstaller/useInstaller.d.ts +23 -9
  95. package/components/AppInstaller/useInstaller.js +124 -193
  96. package/components/AppInstaller/useInstaller.js.map +1 -0
  97. package/components/EmptyView.d.ts +5 -5
  98. package/components/EmptyView.js +21 -15
  99. package/components/EmptyView.js.map +1 -0
  100. package/components/FloatingActionButton.d.ts +2 -2
  101. package/components/FloatingActionButton.js +13 -7
  102. package/components/FloatingActionButton.js.map +1 -0
  103. package/components/MultiImageUpload.d.ts +13 -4
  104. package/components/MultiImageUpload.js +25 -11
  105. package/components/MultiImageUpload.js.map +1 -0
  106. package/components/OverlayLayout/OverlayLayout.d.ts +11 -13
  107. package/components/OverlayLayout/OverlayLayout.js +54 -58
  108. package/components/OverlayLayout/OverlayLayout.js.map +1 -0
  109. package/components/OverlayLayout/index.d.ts +1 -1
  110. package/components/OverlayLayout/index.js +16 -1
  111. package/components/OverlayLayout/index.js.map +1 -0
  112. package/components/Permissions/CannotUseAaclAlert.d.ts +2 -0
  113. package/components/Permissions/CannotUseAaclAlert.js +20 -0
  114. package/components/Permissions/CannotUseAaclAlert.js.map +1 -0
  115. package/components/Permissions/Permissions.d.ts +6 -4
  116. package/components/Permissions/Permissions.js +43 -28
  117. package/components/Permissions/Permissions.js.map +1 -0
  118. package/components/Permissions/StyledComponents.d.ts +6 -4
  119. package/components/Permissions/StyledComponents.js +20 -10
  120. package/components/Permissions/StyledComponents.js.map +1 -0
  121. package/components/Permissions/index.d.ts +1 -0
  122. package/components/Permissions/index.js +35 -2
  123. package/components/Permissions/index.js.map +1 -0
  124. package/components/RichTextEditor/RichTextEditor.d.ts +2 -2
  125. package/components/RichTextEditor/RichTextEditor.js +17 -9
  126. package/components/RichTextEditor/RichTextEditor.js.map +1 -0
  127. package/components/RichTextEditor/index.js +19 -2
  128. package/components/RichTextEditor/index.js.map +1 -0
  129. package/components/RichTextEditor/styles.scss +39 -7
  130. package/components/RichTextEditor/tools/header/index.d.ts +35 -34
  131. package/components/RichTextEditor/tools/header/index.js +93 -133
  132. package/components/RichTextEditor/tools/header/index.js.map +1 -0
  133. package/components/RichTextEditor/tools/image/index.d.ts +40 -13
  134. package/components/RichTextEditor/tools/image/index.js +45 -58
  135. package/components/RichTextEditor/tools/image/index.js.map +1 -0
  136. package/components/RichTextEditor/tools/image/svgs.js +9 -2
  137. package/components/RichTextEditor/tools/image/svgs.js.map +1 -0
  138. package/components/RichTextEditor/tools/image/tunes.d.ts +14 -15
  139. package/components/RichTextEditor/tools/image/tunes.js +35 -40
  140. package/components/RichTextEditor/tools/image/tunes.js.map +1 -0
  141. package/components/RichTextEditor/tools/image/types.d.ts +29 -0
  142. package/components/RichTextEditor/tools/image/types.js +5 -0
  143. package/components/RichTextEditor/tools/image/types.js.map +1 -0
  144. package/components/RichTextEditor/tools/image/ui.d.ts +38 -27
  145. package/components/RichTextEditor/tools/image/ui.js +61 -64
  146. package/components/RichTextEditor/tools/image/ui.js.map +1 -0
  147. package/components/RichTextEditor/tools/paragraph/index.d.ts +34 -36
  148. package/components/RichTextEditor/tools/paragraph/index.js +101 -133
  149. package/components/RichTextEditor/tools/paragraph/index.js.map +1 -0
  150. package/components/RichTextEditor/tools/textColor/index.d.ts +33 -27
  151. package/components/RichTextEditor/tools/textColor/index.js +73 -60
  152. package/components/RichTextEditor/tools/textColor/index.js.map +1 -0
  153. package/components/RichTextEditor/tools/utils.js +13 -6
  154. package/components/RichTextEditor/tools/utils.js.map +1 -0
  155. package/components/Routes.d.ts +6 -0
  156. package/components/Routes.js +42 -0
  157. package/components/Routes.js.map +1 -0
  158. package/components/SearchUI.d.ts +5 -4
  159. package/components/SearchUI.js +28 -14
  160. package/components/SearchUI.js.map +1 -0
  161. package/components/SimpleForm/SimpleForm.d.ts +11 -11
  162. package/components/SimpleForm/SimpleForm.js +41 -39
  163. package/components/SimpleForm/SimpleForm.js.map +1 -0
  164. package/components/SimpleForm/index.js +30 -1
  165. package/components/SimpleForm/index.js.map +1 -0
  166. package/components/SimpleUI/InputField.d.ts +6 -3
  167. package/components/SimpleUI/InputField.js +51 -46
  168. package/components/SimpleUI/InputField.js.map +1 -0
  169. package/components/SingleImageUpload.d.ts +43 -13
  170. package/components/SingleImageUpload.js +79 -83
  171. package/components/SingleImageUpload.js.map +1 -0
  172. package/components/SplitView/SplitView.d.ts +6 -5
  173. package/components/SplitView/SplitView.js +34 -34
  174. package/components/SplitView/SplitView.js.map +1 -0
  175. package/components/SplitView/index.js +24 -1
  176. package/components/SplitView/index.js.map +1 -0
  177. package/components/index.d.ts +1 -1
  178. package/components/index.js +12 -1
  179. package/components/index.js.map +1 -0
  180. package/hooks/useConfirmationDialog.d.ts +10 -5
  181. package/hooks/useConfirmationDialog.js +35 -25
  182. package/hooks/useConfirmationDialog.js.map +1 -0
  183. package/hooks/useDialog.d.ts +8 -3
  184. package/hooks/useDialog.js +12 -7
  185. package/hooks/useDialog.js.map +1 -0
  186. package/hooks/useSnackbar.d.ts +6 -3
  187. package/hooks/useSnackbar.js +15 -7
  188. package/hooks/useSnackbar.js.map +1 -0
  189. package/index.d.ts +35 -0
  190. package/index.js +321 -0
  191. package/index.js.map +1 -0
  192. package/package.json +46 -54
  193. package/plugins/MenuPlugin.d.ts +22 -5
  194. package/plugins/MenuPlugin.js +26 -24
  195. package/plugins/MenuPlugin.js.map +1 -0
  196. package/plugins/PermissionRendererPlugin.d.ts +4 -4
  197. package/plugins/PermissionRendererPlugin.js +26 -24
  198. package/plugins/PermissionRendererPlugin.js.map +1 -0
  199. package/plugins/globalSearch/SearchBar.d.ts +15 -3
  200. package/plugins/globalSearch/SearchBar.js +69 -85
  201. package/plugins/globalSearch/SearchBar.js.map +1 -0
  202. package/plugins/globalSearch/SearchBarDropdown.d.ts +19 -1
  203. package/plugins/globalSearch/SearchBarDropdown.js +45 -44
  204. package/plugins/globalSearch/SearchBarDropdown.js.map +1 -0
  205. package/plugins/globalSearch/index.d.ts +3 -4
  206. package/plugins/globalSearch/index.js +8 -22
  207. package/plugins/globalSearch/index.js.map +1 -0
  208. package/plugins/globalSearch/styled.d.ts +14 -3
  209. package/plugins/globalSearch/styled.js +29 -13
  210. package/plugins/globalSearch/styled.js.map +1 -0
  211. package/plugins/uiLayoutRenderer/index.d.ts +1 -2
  212. package/plugins/uiLayoutRenderer/index.js +23 -25
  213. package/plugins/uiLayoutRenderer/index.js.map +1 -0
  214. package/styles/material-theme-assignments.scss +84 -67
  215. package/styles/material.scss +4 -35
  216. package/styles/theme.scss +34 -1
  217. package/types.d.ts +45 -45
  218. package/types.js +5 -1
  219. package/types.js.map +1 -0
  220. package/ui/UIElement.d.ts +1 -1
  221. package/ui/UIElement.js +18 -1
  222. package/ui/UIElement.js.map +1 -0
  223. package/ui/UILayout.js +18 -1
  224. package/ui/UILayout.js.map +1 -0
  225. package/ui/UIRenderer.js +12 -1
  226. package/ui/UIRenderer.js.map +1 -0
  227. package/ui/UIView.d.ts +1 -1
  228. package/ui/UIView.js +24 -1
  229. package/ui/UIView.js.map +1 -0
  230. package/ui/elements/AccordionElement.d.ts +5 -5
  231. package/ui/elements/AccordionElement.js +41 -43
  232. package/ui/elements/AccordionElement.js.map +1 -0
  233. package/ui/elements/ButtonElement.d.ts +3 -3
  234. package/ui/elements/ButtonElement.js +35 -27
  235. package/ui/elements/ButtonElement.js.map +1 -0
  236. package/ui/elements/ButtonGroupElement.d.ts +2 -2
  237. package/ui/elements/ButtonGroupElement.js +25 -25
  238. package/ui/elements/ButtonGroupElement.js.map +1 -0
  239. package/ui/elements/GenericElement.js +16 -1
  240. package/ui/elements/GenericElement.js.map +1 -0
  241. package/ui/elements/LabelElement.js +19 -20
  242. package/ui/elements/LabelElement.js.map +1 -0
  243. package/ui/elements/NavigationMenuElement.d.ts +2 -1
  244. package/ui/elements/NavigationMenuElement.js +39 -53
  245. package/ui/elements/NavigationMenuElement.js.map +1 -0
  246. package/ui/elements/PanelElement.js +18 -13
  247. package/ui/elements/PanelElement.js.map +1 -0
  248. package/ui/elements/PlaceholderElement.d.ts +2 -1
  249. package/ui/elements/PlaceholderElement.js +18 -15
  250. package/ui/elements/PlaceholderElement.js.map +1 -0
  251. package/ui/elements/SmallButtonElement.d.ts +1 -1
  252. package/ui/elements/SmallButtonElement.js +25 -27
  253. package/ui/elements/SmallButtonElement.js.map +1 -0
  254. package/ui/elements/TypographyElement.d.ts +1 -1
  255. package/ui/elements/TypographyElement.js +25 -26
  256. package/ui/elements/TypographyElement.js.map +1 -0
  257. package/ui/elements/ViewElement.js +16 -1
  258. package/ui/elements/ViewElement.js.map +1 -0
  259. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.d.ts +2 -2
  260. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +32 -32
  261. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +1 -0
  262. package/ui/elements/form/DynamicFieldsetElement.d.ts +19 -18
  263. package/ui/elements/form/DynamicFieldsetElement.js +47 -39
  264. package/ui/elements/form/DynamicFieldsetElement.js.map +1 -0
  265. package/ui/elements/form/FileManagerElement/EmptyStateElement.js +20 -18
  266. package/ui/elements/form/FileManagerElement/EmptyStateElement.js.map +1 -0
  267. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +33 -32
  268. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -0
  269. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +53 -44
  270. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -0
  271. package/ui/elements/form/FileManagerElement/styled.d.ts +26 -13
  272. package/ui/elements/form/FileManagerElement/styled.js +22 -13
  273. package/ui/elements/form/FileManagerElement/styled.js.map +1 -0
  274. package/ui/elements/form/FileManagerElement.d.ts +6 -6
  275. package/ui/elements/form/FileManagerElement.js +25 -28
  276. package/ui/elements/form/FileManagerElement.js.map +1 -0
  277. package/ui/elements/form/FormElement.d.ts +5 -5
  278. package/ui/elements/form/FormElement.js +27 -27
  279. package/ui/elements/form/FormElement.js.map +1 -0
  280. package/ui/elements/form/FormFieldElement.d.ts +9 -8
  281. package/ui/elements/form/FormFieldElement.js +39 -49
  282. package/ui/elements/form/FormFieldElement.js.map +1 -0
  283. package/ui/elements/form/HiddenElement.js +21 -23
  284. package/ui/elements/form/HiddenElement.js.map +1 -0
  285. package/ui/elements/form/InputElement.d.ts +1 -0
  286. package/ui/elements/form/InputElement.js +24 -25
  287. package/ui/elements/form/InputElement.js.map +1 -0
  288. package/ui/elements/form/PasswordElement.js +22 -21
  289. package/ui/elements/form/PasswordElement.js.map +1 -0
  290. package/ui/elements/form/SelectElement.d.ts +1 -1
  291. package/ui/elements/form/SelectElement.js +25 -27
  292. package/ui/elements/form/SelectElement.js.map +1 -0
  293. package/ui/elements/form/TextareaElement.js +23 -24
  294. package/ui/elements/form/TextareaElement.js.map +1 -0
  295. package/ui/views/AdminView/ContentElement.js +30 -38
  296. package/ui/views/AdminView/ContentElement.js.map +1 -0
  297. package/ui/views/AdminView/HeaderElement.js +51 -58
  298. package/ui/views/AdminView/HeaderElement.js.map +1 -0
  299. package/ui/views/AdminView/HeaderSectionCenterElement.d.ts +2 -2
  300. package/ui/views/AdminView/HeaderSectionCenterElement.js +27 -27
  301. package/ui/views/AdminView/HeaderSectionCenterElement.js.map +1 -0
  302. package/ui/views/AdminView/HeaderSectionLeftElement.d.ts +2 -2
  303. package/ui/views/AdminView/HeaderSectionLeftElement.js +27 -27
  304. package/ui/views/AdminView/HeaderSectionLeftElement.js.map +1 -0
  305. package/ui/views/AdminView/HeaderSectionRightElement.d.ts +2 -2
  306. package/ui/views/AdminView/HeaderSectionRightElement.js +27 -27
  307. package/ui/views/AdminView/HeaderSectionRightElement.js.map +1 -0
  308. package/ui/views/AdminView/components/Dialog.js +33 -27
  309. package/ui/views/AdminView/components/Dialog.js.map +1 -0
  310. package/ui/views/AdminView/components/Hamburger.d.ts +2 -2
  311. package/ui/views/AdminView/components/Hamburger.js +18 -12
  312. package/ui/views/AdminView/components/Hamburger.js.map +1 -0
  313. package/ui/views/AdminView/components/Snackbar.d.ts +2 -2
  314. package/ui/views/AdminView/components/Snackbar.js +20 -16
  315. package/ui/views/AdminView/components/Snackbar.js.map +1 -0
  316. package/ui/views/FormView/FormContainerElement.d.ts +2 -2
  317. package/ui/views/FormView/FormContainerElement.js +30 -31
  318. package/ui/views/FormView/FormContainerElement.js.map +1 -0
  319. package/ui/views/FormView/FormContentElement.js +18 -13
  320. package/ui/views/FormView/FormContentElement.js.map +1 -0
  321. package/ui/views/FormView/FormFooterElement.d.ts +3 -3
  322. package/ui/views/FormView/FormFooterElement.js +25 -25
  323. package/ui/views/FormView/FormFooterElement.js.map +1 -0
  324. package/ui/views/FormView/FormHeaderElement.d.ts +2 -2
  325. package/ui/views/FormView/FormHeaderElement.js +38 -38
  326. package/ui/views/FormView/FormHeaderElement.js.map +1 -0
  327. package/ui/views/FormView.d.ts +1 -1
  328. package/ui/views/FormView.js +58 -51
  329. package/ui/views/FormView.js.map +1 -0
  330. package/ui/views/OverlayView/ContentElement.d.ts +2 -2
  331. package/ui/views/OverlayView/ContentElement.js +25 -25
  332. package/ui/views/OverlayView/ContentElement.js.map +1 -0
  333. package/ui/views/OverlayView/HeaderElement.d.ts +5 -5
  334. package/ui/views/OverlayView/HeaderElement.js +42 -45
  335. package/ui/views/OverlayView/HeaderElement.js.map +1 -0
  336. package/ui/views/OverlayView/HeaderTitleElement.d.ts +1 -1
  337. package/ui/views/OverlayView/HeaderTitleElement.js +30 -33
  338. package/ui/views/OverlayView/HeaderTitleElement.js.map +1 -0
  339. package/ui/views/OverlayView/useOverlayView.d.ts +4 -5
  340. package/ui/views/OverlayView/useOverlayView.js +26 -20
  341. package/ui/views/OverlayView/useOverlayView.js.map +1 -0
  342. package/ui/views/OverlayView.d.ts +4 -6
  343. package/ui/views/OverlayView.js +48 -59
  344. package/ui/views/OverlayView.js.map +1 -0
  345. package/ui/views/SplitView/SplitViewPanelElement.d.ts +3 -3
  346. package/ui/views/SplitView/SplitViewPanelElement.js +32 -33
  347. package/ui/views/SplitView/SplitViewPanelElement.js.map +1 -0
  348. package/ui/views/SplitView.d.ts +3 -3
  349. package/ui/views/SplitView.js +39 -59
  350. package/ui/views/SplitView.js.map +1 -0
  351. package/assets/images/icons.png +0 -0
  352. package/assets/images/icons_retina.png +0 -0
  353. package/assets/images/swich.png +0 -0
  354. package/components/FileManager/BottomInfoBar/SupportedFileTypes.d.ts +0 -5
  355. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +0 -35
  356. package/components/FileManager/BottomInfoBar/UploadStatus.d.ts +0 -5
  357. package/components/FileManager/BottomInfoBar/UploadStatus.js +0 -47
  358. package/components/FileManager/BottomInfoBar.d.ts +0 -3
  359. package/components/FileManager/BottomInfoBar.js +0 -42
  360. package/components/FileManager/DropFilesHere.d.ts +0 -8
  361. package/components/FileManager/DropFilesHere.js +0 -58
  362. package/components/FileManager/File.d.ts +0 -18
  363. package/components/FileManager/File.js +0 -129
  364. package/components/FileManager/FileDetails/Name.d.ts +0 -6
  365. package/components/FileManager/FileDetails/Name.js +0 -113
  366. package/components/FileManager/FileDetails/Tags.d.ts +0 -6
  367. package/components/FileManager/FileDetails/Tags.js +0 -241
  368. package/components/FileManager/FileDetails.d.ts +0 -23
  369. package/components/FileManager/FileDetails.js +0 -392
  370. package/components/FileManager/FileManagerContext.d.ts +0 -23
  371. package/components/FileManager/FileManagerContext.js +0 -174
  372. package/components/FileManager/FileManagerView.d.ts +0 -23
  373. package/components/FileManager/FileManagerView.js +0 -632
  374. package/components/FileManager/LeftSidebar.d.ts +0 -8
  375. package/components/FileManager/LeftSidebar.js +0 -95
  376. package/components/FileManager/NoPermissionView.d.ts +0 -3
  377. package/components/FileManager/NoPermissionView.js +0 -70
  378. package/components/FileManager/NoResults.d.ts +0 -2
  379. package/components/FileManager/NoResults.js +0 -13
  380. package/components/FileManager/getFileTypePlugin.d.ts +0 -1
  381. package/components/FileManager/getFileTypePlugin.js +0 -27
  382. package/components/FileManager/getFileUploader.d.ts +0 -2
  383. package/components/FileManager/getFileUploader.js +0 -10
  384. package/components/FileManager/graphql.d.ts +0 -6
  385. package/components/FileManager/graphql.js +0 -17
  386. package/components/FileManager/icons/content_copy-black-24px.svg +0 -1
  387. package/components/FileManager/icons/delete.svg +0 -12
  388. package/components/FileManager/icons/privacy_tip-24px.svg +0 -10
  389. package/components/FileManager/icons/round-check_box-24px.svg +0 -4
  390. package/components/FileManager/icons/round-check_box_outline_blank-24px.svg +0 -4
  391. package/components/FileManager/icons/round-cloud_download-24px.svg +0 -4
  392. package/components/FileManager/icons/round-cloud_upload-24px.svg +0 -4
  393. package/components/FileManager/icons/round-description-24px.svg +0 -4
  394. package/components/FileManager/icons/round-edit-24px.svg +0 -4
  395. package/components/FileManager/icons/round-info-24px.svg +0 -4
  396. package/components/FileManager/icons/round-label-24px.svg +0 -4
  397. package/components/FileManager/icons/round-more_vert-24px.svg +0 -4
  398. package/components/FileManager/icons/round-search-24px.svg +0 -20
  399. package/components/FileManager/outputFileSelectionError.d.ts +0 -2
  400. package/components/FileManager/outputFileSelectionError.js +0 -39
  401. package/components/FileManager.d.ts +0 -18
  402. package/components/FileManager.js +0 -133
  403. package/plugins/FileManagerFileTypePlugin.d.ts +0 -33
  404. package/plugins/FileManagerFileTypePlugin.js +0 -46
  405. package/plugins/fileManager/fileDefault.d.ts +0 -3
  406. package/plugins/fileManager/fileDefault.js +0 -20
  407. package/plugins/fileManager/fileImage/DeleteAction.d.ts +0 -3
  408. package/plugins/fileManager/fileImage/DeleteAction.js +0 -62
  409. package/plugins/fileManager/fileImage/EditAction.d.ts +0 -9
  410. package/plugins/fileManager/fileImage/EditAction.js +0 -143
  411. package/plugins/fileManager/fileImage/index.d.ts +0 -3
  412. package/plugins/fileManager/fileImage/index.js +0 -29
  413. package/plugins/fileManager/icons/edit.svg +0 -17
  414. package/plugins/fileManager/icons/round-description-24px.svg +0 -1
  415. package/plugins/fileManager/index.d.ts +0 -2
  416. package/plugins/fileManager/index.js +0 -3
  417. package/plugins/index.d.ts +0 -6
  418. package/plugins/index.js +0 -8
  419. package/plugins/logo/Logo.d.ts +0 -22
  420. package/plugins/logo/Logo.js +0 -108
  421. package/plugins/logo/index.d.ts +0 -5
  422. package/plugins/logo/index.js +0 -32
  423. package/plugins/menu/documentation.d.ts +0 -4
  424. package/plugins/menu/documentation.js +0 -16
  425. package/plugins/menu/fileManager.d.ts +0 -4
  426. package/plugins/menu/fileManager.js +0 -64
  427. package/plugins/menu/index.d.ts +0 -6
  428. package/plugins/menu/index.js +0 -24
  429. package/plugins/menu/renderers/MenuGroupRenderer.d.ts +0 -7
  430. package/plugins/menu/renderers/MenuGroupRenderer.js +0 -126
  431. package/plugins/menu/renderers/MenuLinkRenderer.d.ts +0 -7
  432. package/plugins/menu/renderers/MenuLinkRenderer.js +0 -52
  433. package/plugins/menu/renderers/MenuSectionItemRenderer.d.ts +0 -7
  434. package/plugins/menu/renderers/MenuSectionItemRenderer.js +0 -77
  435. package/plugins/menu/renderers/MenuSectionRenderer.d.ts +0 -7
  436. package/plugins/menu/renderers/MenuSectionRenderer.js +0 -51
  437. package/plugins/menu/slack.d.ts +0 -4
  438. package/plugins/menu/slack.js +0 -16
  439. package/plugins/menu/source.d.ts +0 -4
  440. package/plugins/menu/source.js +0 -16
  441. package/plugins/userMenu/UserMenuElement.d.ts +0 -7
  442. package/plugins/userMenu/UserMenuElement.js +0 -43
  443. package/plugins/userMenu/UserMenuRenderer.d.ts +0 -6
  444. package/plugins/userMenu/UserMenuRenderer.js +0 -47
  445. package/plugins/userMenu/index.d.ts +0 -4
  446. package/plugins/userMenu/index.js +0 -16
  447. package/ui/views/AdminView.d.ts +0 -12
  448. package/ui/views/AdminView.js +0 -90
  449. package/ui/views/NavigationView/ContentElement.d.ts +0 -10
  450. package/ui/views/NavigationView/ContentElement.js +0 -86
  451. package/ui/views/NavigationView/FooterElement.d.ts +0 -13
  452. package/ui/views/NavigationView/FooterElement.js +0 -57
  453. package/ui/views/NavigationView/HeaderElement.d.ts +0 -16
  454. package/ui/views/NavigationView/HeaderElement.js +0 -66
  455. package/ui/views/NavigationView/NavigationViewRenderer.d.ts +0 -6
  456. package/ui/views/NavigationView/NavigationViewRenderer.js +0 -38
  457. package/ui/views/NavigationView/Styled.d.ts +0 -7
  458. package/ui/views/NavigationView/Styled.js +0 -47
  459. package/ui/views/NavigationView/legacyMenu.d.ts +0 -22
  460. package/ui/views/NavigationView/legacyMenu.js +0 -1
  461. package/ui/views/NavigationView/useNavigation.d.ts +0 -6
  462. package/ui/views/NavigationView/useNavigation.js +0 -22
  463. package/ui/views/NavigationView.d.ts +0 -26
  464. package/ui/views/NavigationView.js +0 -204
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Header","data","config","api","readOnly","alignments","ALIGNMENTS","typography","_CSS","block","styles","settingsButton","settingsButtonActive","wrapper","_settings","_data","normalizeData","settingsButtons","_element","getTag","newData","text","level","parseInt","defaultLevel","number","textAlign","TextAlign","START","holder","document","createElement","levels","length","forEach","selectTypeButton","classList","add","currentLevel","innerHTML","svg","dataset","addEventListener","setLevel","appendChild","push","alignment","currentAlignment","name","setAlignment","button","toggle","blockData","trim","toolsContent","getTextAlign","className","includes","undefined","parentNode","newHeader","replaceChild","tag","component","toLowerCase","typographyConfig","textAlignClass","remove","contentEditable","i18n","t","placeholder","find","levelItem","ALIGNMENT_ICONS","start","userSpecified","console","warn","availableLevels","filter","l","event","content","detail","tagName","reduce","prevLevel","currLevel","Math","abs","export","import","tags","icon","title"],"sources":["index.ts"],"sourcesContent":["import { API, HTMLPasteEvent } from \"@editorjs/editorjs\";\nimport { ALIGNMENTS, ALIGNMENT_ICONS, TextAlign, Alignment } from \"../utils\";\n\ninterface Typography {\n [key: string]: {\n label: string;\n component: string;\n className: string;\n };\n}\n\nexport interface HeaderData {\n text: string;\n level: number;\n textAlign?: TextAlign;\n alignment?: Alignment;\n className?: string;\n}\n\ninterface HeaderConfig {\n levels: number[];\n typography: Typography;\n placeholder?: string;\n defaultLevel?: number;\n}\n\ninterface HeaderArgs {\n data: HeaderData;\n config: HeaderConfig;\n api: any;\n readOnly: boolean;\n}\n\nclass Header {\n private readonly api: API;\n private readonly readOnly: boolean;\n private readonly settingsButtons: any[];\n private readonly _CSS: any;\n private readonly _settings: HeaderConfig;\n private _data: HeaderData;\n private _element: any;\n private readonly alignments: Alignment[];\n private readonly typography: Typography;\n /**\n * Render plugin`s main Element and fill it with saved data\n *\n * @param {{data: HeaderData, config: HeaderConfig, api: object}}\n * data — previously saved data\n * config - user config for Tool\n * api - Editor.js API\n * readOnly - read only mode flag\n */\n constructor({ data, config, api, readOnly }: HeaderArgs) {\n this.api = api;\n this.readOnly = readOnly;\n\n this.alignments = ALIGNMENTS;\n /**\n * Import typography from theme\n */\n this.typography = config.typography || null;\n\n /**\n * Styles\n *\n * @type {object}\n */\n this._CSS = {\n block: this.api.styles.block,\n settingsButton: this.api.styles.settingsButton,\n settingsButtonActive: this.api.styles.settingsButtonActive,\n wrapper: \"ce-header\"\n };\n\n /**\n * Tool's settings passed from Editor\n *\n * @type {HeaderConfig}\n * @private\n */\n this._settings = config;\n\n /**\n * Block's data\n *\n * @type {HeaderData}\n * @private\n */\n this._data = this.normalizeData(data);\n\n /**\n * List of settings buttons\n *\n * @type {HTMLElement[]}\n */\n this.settingsButtons = [];\n\n /**\n * Main Block wrapper\n *\n * @type {HTMLElement}\n * @private\n */\n this._element = this.getTag();\n }\n\n /**\n * Normalize input data\n *\n * @param {HeaderData} data - saved data to process\n *\n * @returns {HeaderData}\n * @private\n */\n normalizeData(data: Partial<HeaderData>): HeaderData {\n const newData: Partial<HeaderData> = {};\n\n if (typeof data !== \"object\") {\n data = {};\n }\n\n newData.text = data.text || \"\";\n newData.level = parseInt(data.level as unknown as string) || this.defaultLevel.number;\n newData.textAlign = data.textAlign || TextAlign.START;\n\n return newData as HeaderData;\n }\n\n /**\n * Return Tool's view\n *\n * @returns {HTMLHeadingElement}\n * @public\n */\n render() {\n return this._element;\n }\n\n /**\n * Create Block's settings block\n *\n * @returns {HTMLElement}\n */\n renderSettings() {\n const holder = document.createElement(\"DIV\");\n\n // do not add settings button, when only one level is configured\n if (this.levels.length <= 1) {\n return holder;\n }\n\n /** Add type selectors */\n this.levels.forEach(level => {\n const selectTypeButton = document.createElement(\"SPAN\");\n\n selectTypeButton.classList.add(this._CSS.settingsButton);\n\n /**\n * Highlight current level button\n */\n if (this.currentLevel.number === level.number) {\n selectTypeButton.classList.add(this._CSS.settingsButtonActive);\n }\n\n /**\n * Add SVG icon\n */\n selectTypeButton.innerHTML = level.svg;\n\n /**\n * Save level to its button\n */\n selectTypeButton.dataset[\"level\"] = level.number + \"\";\n\n /**\n * Set up click handler\n */\n selectTypeButton.addEventListener(\"click\", () => {\n this.setLevel(level.number);\n });\n\n /**\n * Append settings button to holder\n */\n holder.appendChild(selectTypeButton);\n\n /**\n * Save settings buttons\n */\n this.settingsButtons.push(selectTypeButton);\n });\n\n /**\n * Add alignment selectors\n * */\n this.alignments.forEach(alignment => {\n const selectTypeButton = document.createElement(\"SPAN\");\n\n selectTypeButton.classList.add(this._CSS.settingsButton);\n\n /**\n * Highlight current level button\n */\n if (this.currentAlignment.name === alignment.name) {\n selectTypeButton.classList.add(this._CSS.settingsButtonActive);\n }\n\n /**\n * Add SVG icon\n */\n selectTypeButton.innerHTML = alignment.svg;\n\n /**\n * Save alignment to its button\n */\n selectTypeButton.dataset[\"textAlign\"] = alignment.name;\n\n /**\n * Set up click handler\n */\n selectTypeButton.addEventListener(\"click\", () => {\n this.setAlignment(alignment);\n });\n\n /**\n * Append settings button to holder\n */\n holder.appendChild(selectTypeButton);\n\n /**\n * Save settings buttons\n */\n this.settingsButtons.push(selectTypeButton);\n });\n\n return holder;\n }\n\n /**\n * Callback for Block's settings buttons\n *\n * @param {number} level - level to set\n */\n setLevel(level: number): void {\n this.data = {\n level: level,\n text: this.data.text\n };\n\n /**\n * Highlight button by selected level\n */\n this.settingsButtons.forEach(button => {\n button.classList.toggle(\n this._CSS.settingsButtonActive,\n parseInt(button.dataset.level) === level\n );\n });\n }\n\n /**\n * Callback for Block's settings buttons\n *\n * @param {number} alignment - level to set\n */\n setAlignment(alignment: Alignment) {\n this.data = {\n textAlign: alignment.name,\n text: this.data.text,\n level: this.data.level\n };\n\n /**\n * Highlight button by selected level\n */\n this.settingsButtons.forEach(button => {\n button.classList.toggle(\n this._CSS.settingsButtonActive,\n button.dataset.textAlign === alignment.name\n );\n });\n }\n\n /**\n * Method that specified how to merge two Text blocks.\n * Called by Editor.js by backspace at the beginning of the Block\n *\n * @param {HeaderData} data - saved data to merger with current block\n * @public\n */\n merge(data: HeaderData): void {\n this.data = {\n text: this.data.text + data.text,\n level: this.data.level,\n alignment: this.data.alignment\n };\n }\n\n /**\n * Validate Text block data:\n * - check for emptiness\n *\n * @param {HeaderData} blockData — data received after saving\n * @returns {boolean} false if saved data is not correct, otherwise true\n * @public\n */\n validate(blockData: HeaderData): boolean {\n return blockData.text.trim() !== \"\";\n }\n\n /**\n * Extract Tool's data from the view\n *\n * @param {HTMLHeadingElement} toolsContent - Text tools rendered view\n * @returns {HeaderData} - saved data\n * @public\n */\n save(toolsContent: HTMLHeadingElement): HeaderData {\n return {\n text: toolsContent.innerHTML,\n level: this.currentLevel.number,\n textAlign: this.getTextAlign(toolsContent.className),\n className: toolsContent.className\n };\n }\n\n /**\n * Extract textAlign from className\n *\n * @param {string} className - heading element className\n * @returns {TextAlign} textAlign\n */\n getTextAlign(className: string): TextAlign {\n let textAlign = TextAlign.START;\n // Match className with alignment\n this.alignments.forEach(alignment => {\n if (className.includes(`ce-header-text--${alignment.name}`)) {\n textAlign = alignment.name;\n }\n });\n return textAlign;\n }\n\n /**\n * Allow Header to be converted to/from other blocks\n */\n static get conversionConfig() {\n return {\n export: \"text\", // use 'text' property for other blocks\n import: \"text\" // fill 'text' property from other block's export string\n };\n }\n\n /**\n * Sanitizer Rules\n */\n static get sanitize() {\n return {\n level: false,\n text: {}\n };\n }\n\n /**\n * Returns true to notify core that read-only is supported\n *\n * @returns {boolean}\n */\n static get isReadOnlySupported() {\n return true;\n }\n\n /**\n * Get current Tools`s data\n *\n * @returns {HeaderData} Current data\n * @private\n */\n get data(): HeaderData {\n this._data.text = this._element.innerHTML;\n this._data.level = this.currentLevel.number;\n this._data.textAlign = this.currentAlignment.name;\n\n return this._data;\n }\n\n /**\n * Store data in plugin:\n * - at the this._data property\n * - at the HTML\n *\n * @param {HeaderData} data — data to set\n * @private\n */\n set data(data: HeaderData) {\n this._data = this.normalizeData(data);\n\n /**\n * If level is set and block in DOM\n * then replace it to a new block\n */\n if (data.level !== undefined && this._element.parentNode) {\n /**\n * Create a new tag\n *\n * @type {HTMLHeadingElement}\n */\n const newHeader = this.getTag();\n\n /**\n * Save Block's content\n */\n newHeader.innerHTML = this._element.innerHTML;\n\n /**\n * Replace blocks\n */\n this._element.parentNode.replaceChild(newHeader, this._element);\n\n /**\n * Save new block to private variable\n *\n * @type {HTMLHeadingElement}\n * @private\n */\n this._element = newHeader;\n }\n\n /**\n * If data.text was passed then update block's content\n */\n if (data.text !== undefined) {\n this._element.innerHTML = this._data.text || \"\";\n }\n }\n\n /**\n * Get tag for target level\n * By default returns second-leveled header\n *\n * @returns {HTMLElement}\n */\n getTag() {\n /**\n * Create element for current Block's level\n */\n const tag = document.createElement(this.currentLevel.tag);\n\n /**\n * Add text to block\n */\n tag.innerHTML = this._data.text || \"\";\n\n /**\n * Add styles class from typography\n */\n if (this.typography) {\n const component = this.currentLevel.tag.toLowerCase();\n const typographyConfig = this.typography[component];\n tag.classList.add(typographyConfig.className);\n } else {\n /**\n * Add styles class\n */\n tag.classList.add(this._CSS.wrapper);\n }\n\n /**\n * Add Alignment class\n */\n this.alignments.forEach(alignment => {\n const textAlignClass = `ce-header-text--${alignment.name}`;\n if (alignment.name === this._data.textAlign) {\n tag.classList.add(textAlignClass);\n } else {\n tag.classList.remove(textAlignClass);\n }\n });\n\n /**\n * Make tag editable\n */\n tag.contentEditable = this.readOnly ? \"false\" : \"true\";\n\n /**\n * Add Placeholder\n */\n tag.dataset[\"placeholder\"] = this.api.i18n.t(this._settings.placeholder || \"\");\n\n return tag;\n }\n\n /**\n * Get current level\n *\n * @returns {level}\n */\n get currentLevel() {\n let level = this.levels.find(levelItem => levelItem.number === this._data.level);\n\n if (!level) {\n level = this.defaultLevel;\n }\n\n return level;\n }\n\n /**\n * Get current alignment\n *\n * @returns {alignment}\n */\n get currentAlignment() {\n let alignment = this.alignments.find(alignment => alignment.name === this._data.textAlign);\n\n if (!alignment) {\n alignment = { name: TextAlign.START, svg: ALIGNMENT_ICONS.start };\n }\n\n return alignment;\n }\n\n /**\n * Return default level\n *\n * @returns {level}\n */\n get defaultLevel() {\n /**\n * User can specify own default level value\n */\n if (this._settings.defaultLevel) {\n const userSpecified = this.levels.find(levelItem => {\n return levelItem.number === this._settings.defaultLevel;\n });\n\n if (userSpecified) {\n return userSpecified;\n } else {\n console.warn(\n \"(ง'̀-'́)ง Heading Tool: the default level specified was not found in available levels\"\n );\n }\n }\n\n /**\n * With no additional options, there will be H2 by default\n *\n * @type {level}\n */\n return this.levels[1];\n }\n\n /**\n * @typedef {object} level\n * @property {number} number - level number\n * @property {string} tag - tag corresponds with level number\n * @property {string} svg - icon\n */\n\n /**\n * Available header levels\n *\n * @returns {level[]}\n */\n get levels() {\n const availableLevels = [\n {\n number: 1,\n tag: \"H1\",\n svg: '<svg width=\"16\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.14 1.494V4.98h4.62V1.494c0-.498.098-.871.293-1.12A.927.927 0 0 1 7.82 0c.322 0 .583.123.782.37.2.246.3.62.3 1.124v9.588c0 .503-.101.88-.303 1.128a.957.957 0 0 1-.779.374.921.921 0 0 1-.77-.378c-.193-.251-.29-.626-.29-1.124V6.989H2.14v4.093c0 .503-.1.88-.302 1.128a.957.957 0 0 1-.778.374.921.921 0 0 1-.772-.378C.096 11.955 0 11.58 0 11.082V1.494C0 .996.095.623.285.374A.922.922 0 0 1 1.06 0c.321 0 .582.123.782.37.199.246.299.62.299 1.124zm11.653 9.985V5.27c-1.279.887-2.14 1.33-2.583 1.33a.802.802 0 0 1-.563-.228.703.703 0 0 1-.245-.529c0-.232.08-.402.241-.511.161-.11.446-.25.854-.424.61-.259 1.096-.532 1.462-.818a5.84 5.84 0 0 0 .97-.962c.282-.355.466-.573.552-.655.085-.082.246-.123.483-.123.267 0 .481.093.642.28.161.186.242.443.242.77v7.813c0 .914-.345 1.371-1.035 1.371-.307 0-.554-.093-.74-.28-.187-.186-.28-.461-.28-.825z\"/></svg>'\n },\n {\n number: 2,\n tag: \"H2\",\n svg: '<svg width=\"18\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.152 1.494V4.98h4.646V1.494c0-.498.097-.871.293-1.12A.934.934 0 0 1 7.863 0c.324 0 .586.123.786.37.2.246.301.62.301 1.124v9.588c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378c-.194-.251-.29-.626-.29-1.124V6.989H2.152v4.093c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378C.097 11.955 0 11.58 0 11.082V1.494C0 .996.095.623.286.374A.929.929 0 0 1 1.066 0c.323 0 .585.123.786.37.2.246.3.62.3 1.124zm10.99 9.288h3.527c.351 0 .62.072.804.216.185.144.277.34.277.588 0 .22-.073.408-.22.56-.146.154-.368.23-.665.23h-4.972c-.338 0-.601-.093-.79-.28a.896.896 0 0 1-.284-.659c0-.162.06-.377.182-.645s.255-.478.399-.631a38.617 38.617 0 0 1 1.621-1.598c.482-.444.827-.735 1.034-.875.369-.261.676-.523.922-.787.245-.263.432-.534.56-.81.129-.278.193-.549.193-.815 0-.288-.069-.546-.206-.773a1.428 1.428 0 0 0-.56-.53 1.618 1.618 0 0 0-.774-.19c-.59 0-1.054.26-1.392.777-.045.068-.12.252-.226.554-.106.302-.225.534-.358.696-.133.162-.328.243-.585.243a.76.76 0 0 1-.56-.223c-.149-.148-.223-.351-.223-.608 0-.31.07-.635.21-.972.139-.338.347-.645.624-.92a3.093 3.093 0 0 1 1.054-.665c.426-.169.924-.253 1.496-.253.69 0 1.277.108 1.764.324.315.144.592.343.83.595.24.252.425.544.558.875.133.33.2.674.2 1.03 0 .558-.14 1.066-.416 1.523-.277.457-.56.815-.848 1.074-.288.26-.771.666-1.45 1.22-.677.554-1.142.984-1.394 1.29a3.836 3.836 0 0 0-.331.44z\"/></svg>'\n },\n {\n number: 3,\n tag: \"H3\",\n svg: '<svg width=\"18\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.152 1.494V4.98h4.646V1.494c0-.498.097-.871.293-1.12A.934.934 0 0 1 7.863 0c.324 0 .586.123.786.37.2.246.301.62.301 1.124v9.588c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378c-.194-.251-.29-.626-.29-1.124V6.989H2.152v4.093c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378C.097 11.955 0 11.58 0 11.082V1.494C0 .996.095.623.286.374A.929.929 0 0 1 1.066 0c.323 0 .585.123.786.37.2.246.3.62.3 1.124zm11.61 4.919c.418 0 .778-.123 1.08-.368.301-.245.452-.597.452-1.055 0-.35-.12-.65-.36-.902-.241-.252-.566-.378-.974-.378-.277 0-.505.038-.684.116a1.1 1.1 0 0 0-.426.306 2.31 2.31 0 0 0-.296.49c-.093.2-.178.388-.255.565a.479.479 0 0 1-.245.225.965.965 0 0 1-.409.081.706.706 0 0 1-.5-.22c-.152-.148-.228-.345-.228-.59 0-.236.071-.484.214-.745a2.72 2.72 0 0 1 .627-.746 3.149 3.149 0 0 1 1.024-.568 4.122 4.122 0 0 1 1.368-.214c.44 0 .842.06 1.205.18.364.12.679.294.947.52.267.228.47.49.606.79.136.3.204.622.204.967 0 .454-.099.843-.296 1.168-.198.324-.48.64-.848.95.354.19.653.408.895.653.243.245.426.516.548.813.123.298.184.619.184.964 0 .413-.083.812-.248 1.198-.166.386-.41.73-.732 1.031a3.49 3.49 0 0 1-1.147.708c-.443.17-.932.256-1.467.256a3.512 3.512 0 0 1-1.464-.293 3.332 3.332 0 0 1-1.699-1.64c-.142-.314-.214-.573-.214-.777 0-.263.085-.475.255-.636a.89.89 0 0 1 .637-.242c.127 0 .25.037.367.112a.53.53 0 0 1 .232.27c.236.63.489 1.099.759 1.405.27.306.65.46 1.14.46a1.714 1.714 0 0 0 1.46-.824c.17-.273.256-.588.256-.947 0-.53-.145-.947-.436-1.249-.29-.302-.694-.453-1.212-.453-.09 0-.231.01-.422.028-.19.018-.313.027-.367.027-.25 0-.443-.062-.579-.187-.136-.125-.204-.299-.204-.521 0-.218.081-.394.245-.528.163-.134.406-.2.728-.2h.28z\"/></svg>'\n },\n {\n number: 4,\n tag: \"H4\",\n svg: '<svg width=\"20\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.152 1.494V4.98h4.646V1.494c0-.498.097-.871.293-1.12A.934.934 0 0 1 7.863 0c.324 0 .586.123.786.37.2.246.301.62.301 1.124v9.588c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378c-.194-.251-.29-.626-.29-1.124V6.989H2.152v4.093c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378C.097 11.955 0 11.58 0 11.082V1.494C0 .996.095.623.286.374A.929.929 0 0 1 1.066 0c.323 0 .585.123.786.37.2.246.3.62.3 1.124zm13.003 10.09v-1.252h-3.38c-.427 0-.746-.097-.96-.29-.213-.193-.32-.456-.32-.788 0-.085.016-.171.048-.259.031-.088.078-.18.141-.276.063-.097.128-.19.195-.28.068-.09.15-.2.25-.33l3.568-4.774a5.44 5.44 0 0 1 .576-.683.763.763 0 0 1 .542-.212c.682 0 1.023.39 1.023 1.171v5.212h.29c.346 0 .623.047.832.142.208.094.313.3.313.62 0 .26-.086.45-.256.568-.17.12-.427.179-.768.179h-.41v1.252c0 .346-.077.603-.23.771-.152.168-.356.253-.612.253a.78.78 0 0 1-.61-.26c-.154-.173-.232-.427-.232-.764zm-2.895-2.76h2.895V4.91L12.26 8.823z\"/></svg>'\n },\n {\n number: 5,\n tag: \"H5\",\n svg: '<svg width=\"18\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.152 1.494V4.98h4.646V1.494c0-.498.097-.871.293-1.12A.934.934 0 0 1 7.863 0c.324 0 .586.123.786.37.2.246.301.62.301 1.124v9.588c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378c-.194-.251-.29-.626-.29-1.124V6.989H2.152v4.093c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378C.097 11.955 0 11.58 0 11.082V1.494C0 .996.095.623.286.374A.929.929 0 0 1 1.066 0c.323 0 .585.123.786.37.2.246.3.62.3 1.124zm14.16 2.645h-3.234l-.388 2.205c.644-.344 1.239-.517 1.783-.517.436 0 .843.082 1.222.245.38.164.712.39.998.677.286.289.51.63.674 1.025.163.395.245.82.245 1.273 0 .658-.148 1.257-.443 1.797-.295.54-.72.97-1.276 1.287-.556.318-1.197.477-1.923.477-.813 0-1.472-.15-1.978-.45-.506-.3-.865-.643-1.076-1.031-.21-.388-.316-.727-.316-1.018 0-.177.073-.345.22-.504a.725.725 0 0 1 .556-.238c.381 0 .665.22.85.66.182.404.427.719.736.943.309.225.654.337 1.035.337.35 0 .656-.09.919-.272.263-.182.466-.431.61-.749.142-.318.214-.678.214-1.082 0-.436-.078-.808-.232-1.117a1.607 1.607 0 0 0-.62-.69 1.674 1.674 0 0 0-.864-.229c-.39 0-.67.048-.837.143-.168.095-.41.262-.725.5-.316.239-.576.358-.78.358a.843.843 0 0 1-.592-.242c-.173-.16-.259-.344-.259-.548 0-.022.025-.177.075-.463l.572-3.26c.063-.39.181-.675.354-.852.172-.177.454-.265.844-.265h3.595c.708 0 1.062.27 1.062.81a.711.711 0 0 1-.26.572c-.172.145-.426.218-.762.218z\"/></svg>'\n },\n {\n number: 6,\n tag: \"H6\",\n svg: '<svg width=\"18\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.152 1.494V4.98h4.646V1.494c0-.498.097-.871.293-1.12A.934.934 0 0 1 7.863 0c.324 0 .586.123.786.37.2.246.301.62.301 1.124v9.588c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378c-.194-.251-.29-.626-.29-1.124V6.989H2.152v4.093c0 .503-.101.88-.304 1.128a.964.964 0 0 1-.783.374.928.928 0 0 1-.775-.378C.097 11.955 0 11.58 0 11.082V1.494C0 .996.095.623.286.374A.929.929 0 0 1 1.066 0c.323 0 .585.123.786.37.2.246.3.62.3 1.124zM12.53 7.058a3.093 3.093 0 0 1 1.004-.814 2.734 2.734 0 0 1 1.214-.264c.43 0 .827.08 1.19.24.365.161.684.39.957.686.274.296.485.645.635 1.048a3.6 3.6 0 0 1 .223 1.262c0 .637-.145 1.216-.437 1.736-.292.52-.699.926-1.221 1.218-.522.292-1.114.438-1.774.438-.76 0-1.416-.186-1.967-.557-.552-.37-.974-.919-1.265-1.645-.292-.726-.438-1.613-.438-2.662 0-.855.088-1.62.265-2.293.176-.674.43-1.233.76-1.676.33-.443.73-.778 1.2-1.004.47-.226 1.006-.339 1.608-.339.579 0 1.089.113 1.53.34.44.225.773.506.997.84.224.335.335.656.335.964 0 .185-.07.354-.21.505a.698.698 0 0 1-.536.227.874.874 0 0 1-.529-.18 1.039 1.039 0 0 1-.36-.498 1.42 1.42 0 0 0-.495-.655 1.3 1.3 0 0 0-.786-.247c-.24 0-.479.069-.716.207a1.863 1.863 0 0 0-.6.56c-.33.479-.525 1.333-.584 2.563zm1.832 4.213c.456 0 .834-.186 1.133-.56.298-.373.447-.862.447-1.468 0-.412-.07-.766-.21-1.062a1.584 1.584 0 0 0-.577-.678 1.47 1.47 0 0 0-.807-.234c-.28 0-.548.074-.804.224-.255.149-.461.365-.617.647a2.024 2.024 0 0 0-.234.994c0 .61.158 1.12.475 1.527.316.407.714.61 1.194.61z\"/></svg>'\n }\n ];\n\n return this._settings.levels\n ? availableLevels.filter(l => this._settings.levels.includes(l.number))\n : availableLevels;\n }\n\n /**\n * Handle H1-H6 tags on paste to substitute it with header Tool\n *\n * @param {HTMLPasteEvent} event - event with pasted content\n */\n onPaste(event: HTMLPasteEvent) {\n const content = event.detail.data;\n\n /**\n * Define default level value\n *\n * @type {number}\n */\n let level = this.defaultLevel.number;\n\n switch (content.tagName) {\n case \"H1\":\n level = 1;\n break;\n case \"H2\":\n level = 2;\n break;\n case \"H3\":\n level = 3;\n break;\n case \"H4\":\n level = 4;\n break;\n case \"H5\":\n level = 5;\n break;\n case \"H6\":\n level = 6;\n break;\n }\n\n if (this._settings.levels) {\n // Fallback to nearest level when specified not available\n level = this._settings.levels.reduce((prevLevel, currLevel) => {\n return Math.abs(currLevel - level) < Math.abs(prevLevel - level)\n ? currLevel\n : prevLevel;\n });\n }\n\n this.data = {\n level,\n text: content.innerHTML\n };\n }\n\n /**\n * Used by Editor.js paste handling API.\n * Provides configuration to handle H1-H6 tags.\n *\n * @returns {{handler: (function(HTMLElement): {text: string}), tags: string[]}}\n */\n static get pasteConfig() {\n return {\n tags: [\"H1\", \"H2\", \"H3\", \"H4\", \"H5\", \"H6\"]\n };\n }\n\n /**\n * Get Tool toolbox settings\n * icon - Tool icon's SVG\n * title - title to show in toolbox\n *\n * @returns {{icon: string, title: string}}\n */\n static get toolbox() {\n return {\n icon:\n '<svg width=\"10\" height=\"14\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 10 14\">\\n' +\n ' <path d=\"M7.6 8.15H2.25v4.525a1.125 1.125 0 0 1-2.25 0V1.125a1.125 1.125 0 1 1 2.25 0V5.9H7.6V1.125a1.125 1.125 0 0 1 2.25 0v11.55a1.125 1.125 0 0 1-2.25 0V8.15z\"/>\\n' +\n \"</svg>\",\n title: \"Heading\"\n };\n }\n}\n\nexport default Header;\n"],"mappings":";;;;;;;;;;AACA;AAA6E,IAgCvEA,MAAM;EAUR;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACI,sBAAyD;IAAA,IAA3CC,IAAI,QAAJA,IAAI;MAAEC,MAAM,QAANA,MAAM;MAAEC,GAAG,QAAHA,GAAG;MAAEC,QAAQ,QAARA,QAAQ;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IAAA;IACrC,IAAI,CAACD,GAAG,GAAGA,GAAG;IACd,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IAExB,IAAI,CAACC,UAAU,GAAGC,iBAAU;IAC5B;AACR;AACA;IACQ,IAAI,CAACC,UAAU,GAAGL,MAAM,CAACK,UAAU,IAAI,IAAI;;IAE3C;AACR;AACA;AACA;AACA;IACQ,IAAI,CAACC,IAAI,GAAG;MACRC,KAAK,EAAE,IAAI,CAACN,GAAG,CAACO,MAAM,CAACD,KAAK;MAC5BE,cAAc,EAAE,IAAI,CAACR,GAAG,CAACO,MAAM,CAACC,cAAc;MAC9CC,oBAAoB,EAAE,IAAI,CAACT,GAAG,CAACO,MAAM,CAACE,oBAAoB;MAC1DC,OAAO,EAAE;IACb,CAAC;;IAED;AACR;AACA;AACA;AACA;AACA;IACQ,IAAI,CAACC,SAAS,GAAGZ,MAAM;;IAEvB;AACR;AACA;AACA;AACA;AACA;IACQ,IAAI,CAACa,KAAK,GAAG,IAAI,CAACC,aAAa,CAACf,IAAI,CAAC;;IAErC;AACR;AACA;AACA;AACA;IACQ,IAAI,CAACgB,eAAe,GAAG,EAAE;;IAEzB;AACR;AACA;AACA;AACA;AACA;IACQ,IAAI,CAACC,QAAQ,GAAG,IAAI,CAACC,MAAM,EAAE;EACjC;;EAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;EAPI;IAAA;IAAA,OAQA,uBAAclB,IAAyB,EAAc;MACjD,IAAMmB,OAA4B,GAAG,CAAC,CAAC;MAEvC,IAAI,OAAOnB,IAAI,KAAK,QAAQ,EAAE;QAC1BA,IAAI,GAAG,CAAC,CAAC;MACb;MAEAmB,OAAO,CAACC,IAAI,GAAGpB,IAAI,CAACoB,IAAI,IAAI,EAAE;MAC9BD,OAAO,CAACE,KAAK,GAAGC,QAAQ,CAACtB,IAAI,CAACqB,KAAK,CAAsB,IAAI,IAAI,CAACE,YAAY,CAACC,MAAM;MACrFL,OAAO,CAACM,SAAS,GAAGzB,IAAI,CAACyB,SAAS,IAAIC,gBAAS,CAACC,KAAK;MAErD,OAAOR,OAAO;IAClB;;IAEA;AACJ;AACA;AACA;AACA;AACA;EALI;IAAA;IAAA,OAMA,kBAAS;MACL,OAAO,IAAI,CAACF,QAAQ;IACxB;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,OAKA,0BAAiB;MAAA;MACb,IAAMW,MAAM,GAAGC,QAAQ,CAACC,aAAa,CAAC,KAAK,CAAC;;MAE5C;MACA,IAAI,IAAI,CAACC,MAAM,CAACC,MAAM,IAAI,CAAC,EAAE;QACzB,OAAOJ,MAAM;MACjB;;MAEA;MACA,IAAI,CAACG,MAAM,CAACE,OAAO,CAAC,UAAAZ,KAAK,EAAI;QACzB,IAAMa,gBAAgB,GAAGL,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC;QAEvDI,gBAAgB,CAACC,SAAS,CAACC,GAAG,CAAC,KAAI,CAAC7B,IAAI,CAACG,cAAc,CAAC;;QAExD;AACZ;AACA;QACY,IAAI,KAAI,CAAC2B,YAAY,CAACb,MAAM,KAAKH,KAAK,CAACG,MAAM,EAAE;UAC3CU,gBAAgB,CAACC,SAAS,CAACC,GAAG,CAAC,KAAI,CAAC7B,IAAI,CAACI,oBAAoB,CAAC;QAClE;;QAEA;AACZ;AACA;QACYuB,gBAAgB,CAACI,SAAS,GAAGjB,KAAK,CAACkB,GAAG;;QAEtC;AACZ;AACA;QACYL,gBAAgB,CAACM,OAAO,CAAC,OAAO,CAAC,GAAGnB,KAAK,CAACG,MAAM,GAAG,EAAE;;QAErD;AACZ;AACA;QACYU,gBAAgB,CAACO,gBAAgB,CAAC,OAAO,EAAE,YAAM;UAC7C,KAAI,CAACC,QAAQ,CAACrB,KAAK,CAACG,MAAM,CAAC;QAC/B,CAAC,CAAC;;QAEF;AACZ;AACA;QACYI,MAAM,CAACe,WAAW,CAACT,gBAAgB,CAAC;;QAEpC;AACZ;AACA;QACY,KAAI,CAAClB,eAAe,CAAC4B,IAAI,CAACV,gBAAgB,CAAC;MAC/C,CAAC,CAAC;;MAEF;AACR;AACA;MACQ,IAAI,CAAC9B,UAAU,CAAC6B,OAAO,CAAC,UAAAY,SAAS,EAAI;QACjC,IAAMX,gBAAgB,GAAGL,QAAQ,CAACC,aAAa,CAAC,MAAM,CAAC;QAEvDI,gBAAgB,CAACC,SAAS,CAACC,GAAG,CAAC,KAAI,CAAC7B,IAAI,CAACG,cAAc,CAAC;;QAExD;AACZ;AACA;QACY,IAAI,KAAI,CAACoC,gBAAgB,CAACC,IAAI,KAAKF,SAAS,CAACE,IAAI,EAAE;UAC/Cb,gBAAgB,CAACC,SAAS,CAACC,GAAG,CAAC,KAAI,CAAC7B,IAAI,CAACI,oBAAoB,CAAC;QAClE;;QAEA;AACZ;AACA;QACYuB,gBAAgB,CAACI,SAAS,GAAGO,SAAS,CAACN,GAAG;;QAE1C;AACZ;AACA;QACYL,gBAAgB,CAACM,OAAO,CAAC,WAAW,CAAC,GAAGK,SAAS,CAACE,IAAI;;QAEtD;AACZ;AACA;QACYb,gBAAgB,CAACO,gBAAgB,CAAC,OAAO,EAAE,YAAM;UAC7C,KAAI,CAACO,YAAY,CAACH,SAAS,CAAC;QAChC,CAAC,CAAC;;QAEF;AACZ;AACA;QACYjB,MAAM,CAACe,WAAW,CAACT,gBAAgB,CAAC;;QAEpC;AACZ;AACA;QACY,KAAI,CAAClB,eAAe,CAAC4B,IAAI,CAACV,gBAAgB,CAAC;MAC/C,CAAC,CAAC;MAEF,OAAON,MAAM;IACjB;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,OAKA,kBAASP,KAAa,EAAQ;MAAA;MAC1B,IAAI,CAACrB,IAAI,GAAG;QACRqB,KAAK,EAAEA,KAAK;QACZD,IAAI,EAAE,IAAI,CAACpB,IAAI,CAACoB;MACpB,CAAC;;MAED;AACR;AACA;MACQ,IAAI,CAACJ,eAAe,CAACiB,OAAO,CAAC,UAAAgB,MAAM,EAAI;QACnCA,MAAM,CAACd,SAAS,CAACe,MAAM,CACnB,MAAI,CAAC3C,IAAI,CAACI,oBAAoB,EAC9BW,QAAQ,CAAC2B,MAAM,CAACT,OAAO,CAACnB,KAAK,CAAC,KAAKA,KAAK,CAC3C;MACL,CAAC,CAAC;IACN;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,OAKA,sBAAawB,SAAoB,EAAE;MAAA;MAC/B,IAAI,CAAC7C,IAAI,GAAG;QACRyB,SAAS,EAAEoB,SAAS,CAACE,IAAI;QACzB3B,IAAI,EAAE,IAAI,CAACpB,IAAI,CAACoB,IAAI;QACpBC,KAAK,EAAE,IAAI,CAACrB,IAAI,CAACqB;MACrB,CAAC;;MAED;AACR;AACA;MACQ,IAAI,CAACL,eAAe,CAACiB,OAAO,CAAC,UAAAgB,MAAM,EAAI;QACnCA,MAAM,CAACd,SAAS,CAACe,MAAM,CACnB,MAAI,CAAC3C,IAAI,CAACI,oBAAoB,EAC9BsC,MAAM,CAACT,OAAO,CAACf,SAAS,KAAKoB,SAAS,CAACE,IAAI,CAC9C;MACL,CAAC,CAAC;IACN;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;EANI;IAAA;IAAA,OAOA,eAAM/C,IAAgB,EAAQ;MAC1B,IAAI,CAACA,IAAI,GAAG;QACRoB,IAAI,EAAE,IAAI,CAACpB,IAAI,CAACoB,IAAI,GAAGpB,IAAI,CAACoB,IAAI;QAChCC,KAAK,EAAE,IAAI,CAACrB,IAAI,CAACqB,KAAK;QACtBwB,SAAS,EAAE,IAAI,CAAC7C,IAAI,CAAC6C;MACzB,CAAC;IACL;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;EAPI;IAAA;IAAA,OAQA,kBAASM,SAAqB,EAAW;MACrC,OAAOA,SAAS,CAAC/B,IAAI,CAACgC,IAAI,EAAE,KAAK,EAAE;IACvC;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;EANI;IAAA;IAAA,OAOA,cAAKC,YAAgC,EAAc;MAC/C,OAAO;QACHjC,IAAI,EAAEiC,YAAY,CAACf,SAAS;QAC5BjB,KAAK,EAAE,IAAI,CAACgB,YAAY,CAACb,MAAM;QAC/BC,SAAS,EAAE,IAAI,CAAC6B,YAAY,CAACD,YAAY,CAACE,SAAS,CAAC;QACpDA,SAAS,EAAEF,YAAY,CAACE;MAC5B,CAAC;IACL;;IAEA;AACJ;AACA;AACA;AACA;AACA;EALI;IAAA;IAAA,OAMA,sBAAaA,SAAiB,EAAa;MACvC,IAAI9B,SAAS,GAAGC,gBAAS,CAACC,KAAK;MAC/B;MACA,IAAI,CAACvB,UAAU,CAAC6B,OAAO,CAAC,UAAAY,SAAS,EAAI;QACjC,IAAIU,SAAS,CAACC,QAAQ,2BAAoBX,SAAS,CAACE,IAAI,EAAG,EAAE;UACzDtB,SAAS,GAAGoB,SAAS,CAACE,IAAI;QAC9B;MACJ,CAAC,CAAC;MACF,OAAOtB,SAAS;IACpB;;IAEA;AACJ;AACA;EAFI;IAAA;IAAA;IA6BA;AACJ;AACA;AACA;AACA;AACA;IACI,eAAuB;MACnB,IAAI,CAACX,KAAK,CAACM,IAAI,GAAG,IAAI,CAACH,QAAQ,CAACqB,SAAS;MACzC,IAAI,CAACxB,KAAK,CAACO,KAAK,GAAG,IAAI,CAACgB,YAAY,CAACb,MAAM;MAC3C,IAAI,CAACV,KAAK,CAACW,SAAS,GAAG,IAAI,CAACqB,gBAAgB,CAACC,IAAI;MAEjD,OAAO,IAAI,CAACjC,KAAK;IACrB;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;AACA,OAPI;IAAA,KAQA,aAASd,IAAgB,EAAE;MACvB,IAAI,CAACc,KAAK,GAAG,IAAI,CAACC,aAAa,CAACf,IAAI,CAAC;;MAErC;AACR;AACA;AACA;MACQ,IAAIA,IAAI,CAACqB,KAAK,KAAKoC,SAAS,IAAI,IAAI,CAACxC,QAAQ,CAACyC,UAAU,EAAE;QACtD;AACZ;AACA;AACA;AACA;QACY,IAAMC,SAAS,GAAG,IAAI,CAACzC,MAAM,EAAE;;QAE/B;AACZ;AACA;QACYyC,SAAS,CAACrB,SAAS,GAAG,IAAI,CAACrB,QAAQ,CAACqB,SAAS;;QAE7C;AACZ;AACA;QACY,IAAI,CAACrB,QAAQ,CAACyC,UAAU,CAACE,YAAY,CAACD,SAAS,EAAE,IAAI,CAAC1C,QAAQ,CAAC;;QAE/D;AACZ;AACA;AACA;AACA;AACA;QACY,IAAI,CAACA,QAAQ,GAAG0C,SAAS;MAC7B;;MAEA;AACR;AACA;MACQ,IAAI3D,IAAI,CAACoB,IAAI,KAAKqC,SAAS,EAAE;QACzB,IAAI,CAACxC,QAAQ,CAACqB,SAAS,GAAG,IAAI,CAACxB,KAAK,CAACM,IAAI,IAAI,EAAE;MACnD;IACJ;;IAEA;AACJ;AACA;AACA;AACA;AACA;EALI;IAAA;IAAA,OAMA,kBAAS;MAAA;MACL;AACR;AACA;MACQ,IAAMyC,GAAG,GAAGhC,QAAQ,CAACC,aAAa,CAAC,IAAI,CAACO,YAAY,CAACwB,GAAG,CAAC;;MAEzD;AACR;AACA;MACQA,GAAG,CAACvB,SAAS,GAAG,IAAI,CAACxB,KAAK,CAACM,IAAI,IAAI,EAAE;;MAErC;AACR;AACA;MACQ,IAAI,IAAI,CAACd,UAAU,EAAE;QACjB,IAAMwD,SAAS,GAAG,IAAI,CAACzB,YAAY,CAACwB,GAAG,CAACE,WAAW,EAAE;QACrD,IAAMC,gBAAgB,GAAG,IAAI,CAAC1D,UAAU,CAACwD,SAAS,CAAC;QACnDD,GAAG,CAAC1B,SAAS,CAACC,GAAG,CAAC4B,gBAAgB,CAACT,SAAS,CAAC;MACjD,CAAC,MAAM;QACH;AACZ;AACA;QACYM,GAAG,CAAC1B,SAAS,CAACC,GAAG,CAAC,IAAI,CAAC7B,IAAI,CAACK,OAAO,CAAC;MACxC;;MAEA;AACR;AACA;MACQ,IAAI,CAACR,UAAU,CAAC6B,OAAO,CAAC,UAAAY,SAAS,EAAI;QACjC,IAAMoB,cAAc,6BAAsBpB,SAAS,CAACE,IAAI,CAAE;QAC1D,IAAIF,SAAS,CAACE,IAAI,KAAK,MAAI,CAACjC,KAAK,CAACW,SAAS,EAAE;UACzCoC,GAAG,CAAC1B,SAAS,CAACC,GAAG,CAAC6B,cAAc,CAAC;QACrC,CAAC,MAAM;UACHJ,GAAG,CAAC1B,SAAS,CAAC+B,MAAM,CAACD,cAAc,CAAC;QACxC;MACJ,CAAC,CAAC;;MAEF;AACR;AACA;MACQJ,GAAG,CAACM,eAAe,GAAG,IAAI,CAAChE,QAAQ,GAAG,OAAO,GAAG,MAAM;;MAEtD;AACR;AACA;MACQ0D,GAAG,CAACrB,OAAO,CAAC,aAAa,CAAC,GAAG,IAAI,CAACtC,GAAG,CAACkE,IAAI,CAACC,CAAC,CAAC,IAAI,CAACxD,SAAS,CAACyD,WAAW,IAAI,EAAE,CAAC;MAE9E,OAAOT,GAAG;IACd;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,KAKA,eAAmB;MAAA;MACf,IAAIxC,KAAK,GAAG,IAAI,CAACU,MAAM,CAACwC,IAAI,CAAC,UAAAC,SAAS;QAAA,OAAIA,SAAS,CAAChD,MAAM,KAAK,MAAI,CAACV,KAAK,CAACO,KAAK;MAAA,EAAC;MAEhF,IAAI,CAACA,KAAK,EAAE;QACRA,KAAK,GAAG,IAAI,CAACE,YAAY;MAC7B;MAEA,OAAOF,KAAK;IAChB;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,KAKA,eAAuB;MAAA;MACnB,IAAIwB,SAAS,GAAG,IAAI,CAACzC,UAAU,CAACmE,IAAI,CAAC,UAAA1B,SAAS;QAAA,OAAIA,SAAS,CAACE,IAAI,KAAK,MAAI,CAACjC,KAAK,CAACW,SAAS;MAAA,EAAC;MAE1F,IAAI,CAACoB,SAAS,EAAE;QACZA,SAAS,GAAG;UAAEE,IAAI,EAAErB,gBAAS,CAACC,KAAK;UAAEY,GAAG,EAAEkC,sBAAe,CAACC;QAAM,CAAC;MACrE;MAEA,OAAO7B,SAAS;IACpB;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,KAKA,eAAmB;MAAA;MACf;AACR;AACA;MACQ,IAAI,IAAI,CAAChC,SAAS,CAACU,YAAY,EAAE;QAC7B,IAAMoD,aAAa,GAAG,IAAI,CAAC5C,MAAM,CAACwC,IAAI,CAAC,UAAAC,SAAS,EAAI;UAChD,OAAOA,SAAS,CAAChD,MAAM,KAAK,MAAI,CAACX,SAAS,CAACU,YAAY;QAC3D,CAAC,CAAC;QAEF,IAAIoD,aAAa,EAAE;UACf,OAAOA,aAAa;QACxB,CAAC,MAAM;UACHC,OAAO,CAACC,IAAI,CACR,uFAAuF,CAC1F;QACL;MACJ;;MAEA;AACR;AACA;AACA;AACA;MACQ,OAAO,IAAI,CAAC9C,MAAM,CAAC,CAAC,CAAC;IACzB;;IAEA;AACJ;AACA;AACA;AACA;AACA;;IAEI;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,KAKA,eAAa;MAAA;MACT,IAAM+C,eAAe,GAAG,CACpB;QACItD,MAAM,EAAE,CAAC;QACTqC,GAAG,EAAE,IAAI;QACTtB,GAAG,EAAE;MACT,CAAC,EACD;QACIf,MAAM,EAAE,CAAC;QACTqC,GAAG,EAAE,IAAI;QACTtB,GAAG,EAAE;MACT,CAAC,EACD;QACIf,MAAM,EAAE,CAAC;QACTqC,GAAG,EAAE,IAAI;QACTtB,GAAG,EAAE;MACT,CAAC,EACD;QACIf,MAAM,EAAE,CAAC;QACTqC,GAAG,EAAE,IAAI;QACTtB,GAAG,EAAE;MACT,CAAC,EACD;QACIf,MAAM,EAAE,CAAC;QACTqC,GAAG,EAAE,IAAI;QACTtB,GAAG,EAAE;MACT,CAAC,EACD;QACIf,MAAM,EAAE,CAAC;QACTqC,GAAG,EAAE,IAAI;QACTtB,GAAG,EAAE;MACT,CAAC,CACJ;MAED,OAAO,IAAI,CAAC1B,SAAS,CAACkB,MAAM,GACtB+C,eAAe,CAACC,MAAM,CAAC,UAAAC,CAAC;QAAA,OAAI,MAAI,CAACnE,SAAS,CAACkB,MAAM,CAACyB,QAAQ,CAACwB,CAAC,CAACxD,MAAM,CAAC;MAAA,EAAC,GACrEsD,eAAe;IACzB;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,OAKA,iBAAQG,KAAqB,EAAE;MAC3B,IAAMC,OAAO,GAAGD,KAAK,CAACE,MAAM,CAACnF,IAAI;;MAEjC;AACR;AACA;AACA;AACA;MACQ,IAAIqB,KAAK,GAAG,IAAI,CAACE,YAAY,CAACC,MAAM;MAEpC,QAAQ0D,OAAO,CAACE,OAAO;QACnB,KAAK,IAAI;UACL/D,KAAK,GAAG,CAAC;UACT;QACJ,KAAK,IAAI;UACLA,KAAK,GAAG,CAAC;UACT;QACJ,KAAK,IAAI;UACLA,KAAK,GAAG,CAAC;UACT;QACJ,KAAK,IAAI;UACLA,KAAK,GAAG,CAAC;UACT;QACJ,KAAK,IAAI;UACLA,KAAK,GAAG,CAAC;UACT;QACJ,KAAK,IAAI;UACLA,KAAK,GAAG,CAAC;UACT;MAAM;MAGd,IAAI,IAAI,CAACR,SAAS,CAACkB,MAAM,EAAE;QACvB;QACAV,KAAK,GAAG,IAAI,CAACR,SAAS,CAACkB,MAAM,CAACsD,MAAM,CAAC,UAACC,SAAS,EAAEC,SAAS,EAAK;UAC3D,OAAOC,IAAI,CAACC,GAAG,CAACF,SAAS,GAAGlE,KAAK,CAAC,GAAGmE,IAAI,CAACC,GAAG,CAACH,SAAS,GAAGjE,KAAK,CAAC,GAC1DkE,SAAS,GACTD,SAAS;QACnB,CAAC,CAAC;MACN;MAEA,IAAI,CAACtF,IAAI,GAAG;QACRqB,KAAK,EAALA,KAAK;QACLD,IAAI,EAAE8D,OAAO,CAAC5C;MAClB,CAAC;IACL;;IAEA;AACJ;AACA;AACA;AACA;AACA;EALI;IAAA;IAAA,KArTA,eAA8B;MAC1B,OAAO;QACHoD,MAAM,EAAE,MAAM;QAAE;QAChBC,MAAM,EAAE,MAAM,CAAC;MACnB,CAAC;IACL;;IAEA;AACJ;AACA;EAFI;IAAA;IAAA,KAGA,eAAsB;MAClB,OAAO;QACHtE,KAAK,EAAE,KAAK;QACZD,IAAI,EAAE,CAAC;MACX,CAAC;IACL;;IAEA;AACJ;AACA;AACA;AACA;EAJI;IAAA;IAAA,KAKA,eAAiC;MAC7B,OAAO,IAAI;IACf;EAAC;IAAA;IAAA,KAmSD,eAAyB;MACrB,OAAO;QACHwE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;MAC7C,CAAC;IACL;;IAEA;AACJ;AACA;AACA;AACA;AACA;AACA;EANI;IAAA;IAAA,KAOA,eAAqB;MACjB,OAAO;QACHC,IAAI,EACA,uFAAuF,GACvF,0KAA0K,GAC1K,QAAQ;QACZC,KAAK,EAAE;MACX,CAAC;IACL;EAAC;EAAA;AAAA;AAAA,eAGU/F,MAAM;AAAA"}
@@ -1,3 +1,34 @@
1
+ /// <reference types="react" />
2
+ /// <reference types="web" />
3
+ import { API } from "@editorjs/editorjs";
4
+ import { Tune } from "./types";
5
+ interface File {
6
+ src: string;
7
+ }
8
+ interface GetFileSourceCallable {
9
+ (file: File | string): string;
10
+ }
11
+ interface OnSelectFileCallable {
12
+ (file: File): string;
13
+ }
14
+ interface ImageToolData {
15
+ caption: string;
16
+ file: string;
17
+ }
18
+ interface ImageToolParams {
19
+ data: ImageToolData;
20
+ config: Config;
21
+ api: API;
22
+ readOnly: boolean;
23
+ }
24
+ interface Config {
25
+ getFileSrc: GetFileSourceCallable;
26
+ onSelectFile: OnSelectFileCallable;
27
+ actions: Tune[];
28
+ context: {
29
+ showFileManager: (cb: (file: File) => void) => void;
30
+ };
31
+ }
1
32
  export default class ImageTool {
2
33
  private readonly api;
3
34
  private readonly readOnly;
@@ -22,12 +53,7 @@ export default class ImageTool {
22
53
  icon: string;
23
54
  title: string;
24
55
  };
25
- constructor({ data, config, api, readOnly }: {
26
- data: any;
27
- config: any;
28
- api: any;
29
- readOnly: any;
30
- });
56
+ constructor({ data, config, api, readOnly }: ImageToolParams);
31
57
  /**
32
58
  * Renders Block content
33
59
  *
@@ -43,7 +69,7 @@ export default class ImageTool {
43
69
  *
44
70
  * @returns {ImageToolData}
45
71
  */
46
- save(): any;
72
+ save(): ImageToolData;
47
73
  /**
48
74
  * Makes buttons with tunes: stretch image
49
75
  *
@@ -51,7 +77,7 @@ export default class ImageTool {
51
77
  *
52
78
  * @returns {Element}
53
79
  */
54
- renderSettings(): any;
80
+ renderSettings(): HTMLElement;
55
81
  /**
56
82
  * Stores all Tool's data
57
83
  *
@@ -59,7 +85,7 @@ export default class ImageTool {
59
85
  *
60
86
  * @param {ImageToolData} data - data in Image Tool format
61
87
  */
62
- set data(data: any);
88
+ set data(data: ImageToolData);
63
89
  /**
64
90
  * Return Tool data
65
91
  *
@@ -67,7 +93,7 @@ export default class ImageTool {
67
93
  *
68
94
  * @returns {ImageToolData}
69
95
  */
70
- get data(): any;
96
+ get data(): ImageToolData;
71
97
  /**
72
98
  * Set new image file
73
99
  *
@@ -75,7 +101,7 @@ export default class ImageTool {
75
101
  *
76
102
  * @param {object} file - uploaded file data
77
103
  */
78
- set image(file: any);
104
+ set image(file: File | string);
79
105
  /**
80
106
  * Callback fired when Block Tune is activated
81
107
  *
@@ -84,7 +110,7 @@ export default class ImageTool {
84
110
  * @param {string} tuneName - tune that has been clicked
85
111
  * @returns {void}
86
112
  */
87
- tuneToggled(tuneName: any): void;
113
+ tuneToggled(tuneName: string): void;
88
114
  /**
89
115
  * Set one tune
90
116
  *
@@ -92,6 +118,7 @@ export default class ImageTool {
92
118
  * @param {boolean} value - tune state
93
119
  * @returns {void}
94
120
  */
95
- setTune(tuneName: any, value: any): void;
121
+ setTune(tuneName: string, value: boolean): void;
96
122
  isReadOnly(): boolean;
97
123
  }
124
+ export {};
@@ -1,45 +1,39 @@
1
- import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
2
- import _createClass from "@babel/runtime/helpers/createClass";
3
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
- import Ui from "./ui";
5
- import Tunes from "./tunes";
6
- import svgs from "./svgs";
7
-
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
9
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _ui = _interopRequireDefault(require("./ui"));
12
+ var _tunes = _interopRequireDefault(require("./tunes"));
13
+ var _svgs = _interopRequireDefault(require("./svgs"));
8
14
  var defaultGetFileSrc = function defaultGetFileSrc(file) {
9
15
  if (typeof file === "string") {
10
16
  return file;
11
17
  }
12
-
13
18
  return file.src;
14
19
  };
15
-
16
20
  var defaultOnSelectFile = function defaultOnSelectFile(file) {
17
21
  return file.src;
18
22
  };
19
-
20
23
  var ImageTool = /*#__PURE__*/function () {
21
24
  function ImageTool(_ref) {
22
25
  var _this = this;
23
-
24
26
  var data = _ref.data,
25
- config = _ref.config,
26
- api = _ref.api,
27
- readOnly = _ref.readOnly;
28
-
29
- _classCallCheck(this, ImageTool);
30
-
31
- _defineProperty(this, "api", void 0);
32
-
33
- _defineProperty(this, "readOnly", void 0);
34
-
35
- _defineProperty(this, "config", void 0);
36
-
37
- _defineProperty(this, "tunes", void 0);
38
-
39
- _defineProperty(this, "ui", void 0);
40
-
41
- _defineProperty(this, "_data", void 0);
42
-
27
+ config = _ref.config,
28
+ api = _ref.api,
29
+ readOnly = _ref.readOnly;
30
+ (0, _classCallCheck2.default)(this, ImageTool);
31
+ (0, _defineProperty2.default)(this, "api", void 0);
32
+ (0, _defineProperty2.default)(this, "readOnly", void 0);
33
+ (0, _defineProperty2.default)(this, "config", void 0);
34
+ (0, _defineProperty2.default)(this, "tunes", void 0);
35
+ (0, _defineProperty2.default)(this, "ui", void 0);
36
+ (0, _defineProperty2.default)(this, "_data", void 0);
43
37
  this.api = api;
44
38
  this.readOnly = readOnly;
45
39
  this.config = {
@@ -48,11 +42,11 @@ var ImageTool = /*#__PURE__*/function () {
48
42
  actions: config.actions || [],
49
43
  context: config.context
50
44
  };
45
+
51
46
  /**
52
47
  * Module for working with UI
53
48
  */
54
-
55
- this.ui = new Ui({
49
+ this.ui = new _ui.default({
56
50
  api: api,
57
51
  config: this.config,
58
52
  onSelectFile: function onSelectFile() {
@@ -62,24 +56,25 @@ var ImageTool = /*#__PURE__*/function () {
62
56
  },
63
57
  readOnly: readOnly
64
58
  });
59
+
65
60
  /**
66
61
  * Module for working with tunes
67
62
  */
68
-
69
- this.tunes = new Tunes({
63
+ this.tunes = new _tunes.default({
70
64
  api: api,
71
65
  actions: this.config.actions,
72
66
  onChange: function onChange(tuneName) {
73
67
  return _this.tuneToggled(tuneName);
74
68
  }
75
69
  });
70
+
76
71
  /**
77
72
  * Set saved state
78
73
  */
79
-
80
74
  this._data = {};
81
75
  this.data = data;
82
76
  }
77
+
83
78
  /**
84
79
  * Renders Block content
85
80
  *
@@ -87,13 +82,12 @@ var ImageTool = /*#__PURE__*/function () {
87
82
  *
88
83
  * @returns {HTMLDivElement}
89
84
  */
90
-
91
-
92
- _createClass(ImageTool, [{
85
+ (0, _createClass2.default)(ImageTool, [{
93
86
  key: "render",
94
87
  value: function render() {
95
88
  return this.ui.render(this.data);
96
89
  }
90
+
97
91
  /**
98
92
  * Return Block data
99
93
  *
@@ -101,7 +95,6 @@ var ImageTool = /*#__PURE__*/function () {
101
95
  *
102
96
  * @returns {ImageToolData}
103
97
  */
104
-
105
98
  }, {
106
99
  key: "save",
107
100
  value: function save() {
@@ -109,6 +102,7 @@ var ImageTool = /*#__PURE__*/function () {
109
102
  this._data.caption = caption.innerHTML;
110
103
  return this.data;
111
104
  }
105
+
112
106
  /**
113
107
  * Makes buttons with tunes: stretch image
114
108
  *
@@ -116,12 +110,12 @@ var ImageTool = /*#__PURE__*/function () {
116
110
  *
117
111
  * @returns {Element}
118
112
  */
119
-
120
113
  }, {
121
114
  key: "renderSettings",
122
115
  value: function renderSettings() {
123
116
  return this.tunes.render(this.data);
124
117
  }
118
+
125
119
  /**
126
120
  * Stores all Tool's data
127
121
  *
@@ -129,7 +123,6 @@ var ImageTool = /*#__PURE__*/function () {
129
123
  *
130
124
  * @param {ImageToolData} data - data in Image Tool format
131
125
  */
132
-
133
126
  }, {
134
127
  key: "data",
135
128
  get:
@@ -143,24 +136,24 @@ var ImageTool = /*#__PURE__*/function () {
143
136
  function get() {
144
137
  return this._data;
145
138
  }
139
+
146
140
  /**
147
141
  * Set new image file
148
142
  *
149
143
  * @private
150
144
  *
151
145
  * @param {object} file - uploaded file data
152
- */
153
- ,
146
+ */,
154
147
  set: function set(data) {
155
148
  var _this2 = this;
156
-
157
149
  this.image = data.file;
158
150
  this._data.caption = data.caption || "";
159
151
  this.ui.fillCaption(this._data.caption);
160
- Tunes.tunes.forEach(function (_ref2) {
161
- var tune = _ref2.name;
162
- var value = typeof data[tune] !== "undefined" ? data[tune] === true || data[tune] === "true" : false;
163
-
152
+ _tunes.default.tunes.forEach(function (_ref2) {
153
+ var name = _ref2.name;
154
+ var tune = name;
155
+ var initialValue = data[tune];
156
+ var value = initialValue === true || initialValue === "true";
164
157
  _this2.setTune(tune, value);
165
158
  });
166
159
  }
@@ -168,11 +161,11 @@ var ImageTool = /*#__PURE__*/function () {
168
161
  key: "image",
169
162
  set: function set(file) {
170
163
  this._data.file = file || {};
171
-
172
164
  if (file) {
173
165
  this.ui.fillImage(this.config.getFileSrc(file));
174
166
  }
175
167
  }
168
+
176
169
  /**
177
170
  * Callback fired when Block Tune is activated
178
171
  *
@@ -181,13 +174,13 @@ var ImageTool = /*#__PURE__*/function () {
181
174
  * @param {string} tuneName - tune that has been clicked
182
175
  * @returns {void}
183
176
  */
184
-
185
177
  }, {
186
178
  key: "tuneToggled",
187
179
  value: function tuneToggled(tuneName) {
188
180
  // inverse tune state
189
181
  this.setTune(tuneName, !this._data[tuneName]);
190
182
  }
183
+
191
184
  /**
192
185
  * Set one tune
193
186
  *
@@ -195,22 +188,18 @@ var ImageTool = /*#__PURE__*/function () {
195
188
  * @param {boolean} value - tune state
196
189
  * @returns {void}
197
190
  */
198
-
199
191
  }, {
200
192
  key: "setTune",
201
193
  value: function setTune(tuneName, value) {
202
194
  var _this3 = this;
203
-
204
195
  this._data[tuneName] = value;
205
196
  this.ui.applyTune(tuneName, value);
206
-
207
197
  if (tuneName === "stretched") {
208
198
  /**
209
199
  * Wait until the API is ready
210
200
  */
211
201
  Promise.resolve().then(function () {
212
202
  var blockId = _this3.api.blocks.getCurrentBlockIndex();
213
-
214
203
  _this3.api.blocks.stretchBlock(blockId, value);
215
204
  }).catch(function (err) {
216
205
  console.error(err);
@@ -233,6 +222,7 @@ var ImageTool = /*#__PURE__*/function () {
233
222
  function get() {
234
223
  return true;
235
224
  }
225
+
236
226
  /**
237
227
  * Get Tool toolbox settings
238
228
  * icon - Tool icon's SVG
@@ -240,18 +230,15 @@ var ImageTool = /*#__PURE__*/function () {
240
230
  *
241
231
  * @returns {{icon: string, title: string}}
242
232
  */
243
-
244
233
  }, {
245
234
  key: "toolbox",
246
235
  get: function get() {
247
236
  return {
248
- icon: svgs.toolbox,
237
+ icon: _svgs.default.toolbox,
249
238
  title: "Image"
250
239
  };
251
240
  }
252
241
  }]);
253
-
254
242
  return ImageTool;
255
243
  }();
256
-
257
- export { ImageTool as default };
244
+ exports.default = ImageTool;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultGetFileSrc","file","src","defaultOnSelectFile","ImageTool","data","config","api","readOnly","getFileSrc","onSelectFile","actions","context","ui","Ui","showFileManager","image","tunes","Tunes","onChange","tuneName","tuneToggled","_data","render","caption","nodes","innerHTML","fillCaption","forEach","name","tune","initialValue","value","setTune","fillImage","applyTune","Promise","resolve","then","blockId","blocks","getCurrentBlockIndex","stretchBlock","catch","err","console","error","icon","svgs","toolbox","title"],"sources":["index.ts"],"sourcesContent":["import { API } from \"@editorjs/editorjs\";\nimport Ui from \"./ui\";\nimport Tunes from \"./tunes\";\nimport svgs from \"./svgs\";\nimport { Tune } from \"./types\";\n\ninterface File {\n src: string;\n}\ninterface GetFileSourceCallable {\n (file: File | string): string;\n}\nconst defaultGetFileSrc: GetFileSourceCallable = file => {\n if (typeof file === \"string\") {\n return file;\n }\n\n return file.src;\n};\ninterface OnSelectFileCallable {\n (file: File): string;\n}\nconst defaultOnSelectFile: OnSelectFileCallable = file => {\n return file.src;\n};\n\ninterface ImageToolData {\n caption: string;\n file: string;\n}\ninterface ImageToolParams {\n data: ImageToolData;\n config: Config;\n api: API;\n readOnly: boolean;\n}\ninterface Config {\n getFileSrc: GetFileSourceCallable;\n onSelectFile: OnSelectFileCallable;\n actions: Tune[];\n context: {\n showFileManager: (cb: (file: File) => void) => void;\n };\n}\nexport default class ImageTool {\n private readonly api: API;\n private readonly readOnly: boolean;\n private readonly config: Config;\n private readonly tunes: Tunes;\n private readonly ui: Ui;\n private readonly _data: any;\n\n /**\n * Notify core that read-only mode is supported\n *\n * @returns {boolean}\n */\n static get isReadOnlySupported() {\n return true;\n }\n\n /**\n * Get Tool toolbox settings\n * icon - Tool icon's SVG\n * title - title to show in toolbox\n *\n * @returns {{icon: string, title: string}}\n */\n static get toolbox() {\n return {\n icon: svgs.toolbox,\n title: \"Image\"\n };\n }\n\n constructor({ data, config, api, readOnly }: ImageToolParams) {\n this.api = api;\n this.readOnly = readOnly;\n\n this.config = {\n getFileSrc: config.getFileSrc || defaultGetFileSrc,\n onSelectFile: config.onSelectFile || defaultOnSelectFile,\n actions: config.actions || [],\n context: config.context\n };\n\n /**\n * Module for working with UI\n */\n this.ui = new Ui({\n api,\n config: this.config,\n onSelectFile: () => {\n this.config.context.showFileManager((file: File) => {\n this.image = this.config.onSelectFile(file);\n });\n },\n readOnly\n });\n\n /**\n * Module for working with tunes\n */\n this.tunes = new Tunes({\n api,\n actions: this.config.actions,\n onChange: (tuneName: string) => this.tuneToggled(tuneName)\n });\n\n /**\n * Set saved state\n */\n this._data = {};\n this.data = data;\n }\n\n /**\n * Renders Block content\n *\n * @public\n *\n * @returns {HTMLDivElement}\n */\n render() {\n return this.ui.render(this.data);\n }\n\n /**\n * Return Block data\n *\n * @public\n *\n * @returns {ImageToolData}\n */\n save() {\n const caption = this.ui.nodes.caption;\n\n this._data.caption = caption.innerHTML;\n\n return this.data;\n }\n\n /**\n * Makes buttons with tunes: stretch image\n *\n * @public\n *\n * @returns {Element}\n */\n renderSettings() {\n return this.tunes.render(this.data);\n }\n\n /**\n * Stores all Tool's data\n *\n * @private\n *\n * @param {ImageToolData} data - data in Image Tool format\n */\n set data(data) {\n this.image = data.file;\n\n this._data.caption = data.caption || \"\";\n this.ui.fillCaption(this._data.caption);\n\n Tunes.tunes.forEach(({ name }) => {\n const tune = name as keyof ImageToolData;\n\n const initialValue = data[tune] as unknown as string | boolean;\n\n const value = initialValue === true || initialValue === \"true\";\n\n this.setTune(tune, value);\n });\n }\n\n /**\n * Return Tool data\n *\n * @private\n *\n * @returns {ImageToolData}\n */\n get data(): ImageToolData {\n return this._data;\n }\n\n /**\n * Set new image file\n *\n * @private\n *\n * @param {object} file - uploaded file data\n */\n set image(file: File | string) {\n this._data.file = file || {};\n\n if (file) {\n this.ui.fillImage(this.config.getFileSrc(file));\n }\n }\n\n /**\n * Callback fired when Block Tune is activated\n *\n * @private\n *\n * @param {string} tuneName - tune that has been clicked\n * @returns {void}\n */\n public tuneToggled(tuneName: string): void {\n // inverse tune state\n this.setTune(tuneName, !this._data[tuneName]);\n }\n\n /**\n * Set one tune\n *\n * @param {string} tuneName - {@link Tunes.tunes}\n * @param {boolean} value - tune state\n * @returns {void}\n */\n public setTune(tuneName: string, value: boolean): void {\n this._data[tuneName] = value;\n\n this.ui.applyTune(tuneName, value);\n\n if (tuneName === \"stretched\") {\n /**\n * Wait until the API is ready\n */\n Promise.resolve()\n .then(() => {\n const blockId = this.api.blocks.getCurrentBlockIndex();\n\n this.api.blocks.stretchBlock(blockId, value);\n })\n .catch(err => {\n console.error(err);\n });\n }\n }\n\n public isReadOnly(): boolean {\n return this.readOnly;\n }\n}\n"],"mappings":"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"}
@@ -1,5 +1,12 @@
1
- export default {
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _default = {
2
8
  buttonIcon: "<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.15 13.628A7.749 7.749 0 0 0 10 17.75a7.74 7.74 0 0 0 6.305-3.242l-2.387-2.127-2.765 2.244-4.389-4.496-3.614 3.5zm-.787-2.303l4.446-4.371 4.52 4.63 2.534-2.057 3.533 2.797c.23-.734.354-1.514.354-2.324a7.75 7.75 0 1 0-15.387 1.325zM10 20C4.477 20 0 15.523 0 10S4.477 0 10 0s10 4.477 10 10-4.477 10-10 10z\"/>",
3
9
  stretched: "<svg width=\"17\" height=\"10\" viewBox=\"0 0 17 10\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M13.568 5.925H4.056l1.703 1.703a1.125 1.125 0 0 1-1.59 1.591L.962 6.014A1.069 1.069 0 0 1 .588 4.26L4.38.469a1.069 1.069 0 0 1 1.512 1.511L4.084 3.787h9.606l-1.85-1.85a1.069 1.069 0 1 1 1.512-1.51l3.792 3.791a1.069 1.069 0 0 1-.475 1.788L13.514 9.16a1.125 1.125 0 0 1-1.59-1.591l1.644-1.644z\"/></svg>",
4
10
  toolbox: "<svg width=\"17\" height=\"15\" viewBox=\"0 0 336 276\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M291 150.242V79c0-18.778-15.222-34-34-34H79c-18.778 0-34 15.222-34 34v42.264l67.179-44.192 80.398 71.614 56.686-29.14L291 150.242zm-.345 51.622l-42.3-30.246-56.3 29.884-80.773-66.925L45 174.187V197c0 18.778 15.222 34 34 34h178c17.126 0 31.295-12.663 33.655-29.136zM79 0h178c43.63 0 79 35.37 79 79v118c0 43.63-35.37 79-79 79H79c-43.63 0-79-35.37-79-79V79C0 35.37 35.37 0 79 0z\"/></svg>"
5
- };
11
+ };
12
+ exports.default = _default;
@@ -0,0 +1 @@
1
+ {"version":3,"names":["buttonIcon","stretched","toolbox"],"sources":["svgs.ts"],"sourcesContent":["export default {\n buttonIcon: `<svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M3.15 13.628A7.749 7.749 0 0 0 10 17.75a7.74 7.74 0 0 0 6.305-3.242l-2.387-2.127-2.765 2.244-4.389-4.496-3.614 3.5zm-.787-2.303l4.446-4.371 4.52 4.63 2.534-2.057 3.533 2.797c.23-.734.354-1.514.354-2.324a7.75 7.75 0 1 0-15.387 1.325zM10 20C4.477 20 0 15.523 0 10S4.477 0 10 0s10 4.477 10 10-4.477 10-10 10z\"/>`,\n stretched: `<svg width=\"17\" height=\"10\" viewBox=\"0 0 17 10\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M13.568 5.925H4.056l1.703 1.703a1.125 1.125 0 0 1-1.59 1.591L.962 6.014A1.069 1.069 0 0 1 .588 4.26L4.38.469a1.069 1.069 0 0 1 1.512 1.511L4.084 3.787h9.606l-1.85-1.85a1.069 1.069 0 1 1 1.512-1.51l3.792 3.791a1.069 1.069 0 0 1-.475 1.788L13.514 9.16a1.125 1.125 0 0 1-1.59-1.591l1.644-1.644z\"/></svg>`,\n toolbox: `<svg width=\"17\" height=\"15\" viewBox=\"0 0 336 276\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M291 150.242V79c0-18.778-15.222-34-34-34H79c-18.778 0-34 15.222-34 34v42.264l67.179-44.192 80.398 71.614 56.686-29.14L291 150.242zm-.345 51.622l-42.3-30.246-56.3 29.884-80.773-66.925L45 174.187V197c0 18.778 15.222 34 34 34h178c17.126 0 31.295-12.663 33.655-29.136zM79 0h178c43.63 0 79 35.37 79 79v118c0 43.63-35.37 79-79 79H79c-43.63 0-79-35.37-79-79V79C0 35.37 35.37 0 79 0z\"/></svg>`\n};\n"],"mappings":";;;;;;eAAe;EACXA,UAAU,8ZAAoZ;EAC9ZC,SAAS,sZAA4Y;EACrZC,OAAO;AACX,CAAC;AAAA"}
@@ -1,16 +1,19 @@
1
- declare type Tune = {
2
- name: string;
3
- icon: string;
4
- title: string;
5
- action?: Function;
6
- };
1
+ /// <reference types="react" />
2
+ /// <reference types="web" />
3
+ import { API } from "@editorjs/editorjs";
4
+ import { ImageToolData, Tune, TuneOnChangeCallable } from "./types";
5
+ interface TunesParams {
6
+ api: API;
7
+ actions: Tune[];
8
+ onChange: TuneOnChangeCallable;
9
+ }
7
10
  /**
8
11
  * Working with Block Tunes
9
12
  */
10
13
  export default class Tunes {
11
14
  private api;
12
- private actions;
13
- private onChange;
15
+ private readonly actions;
16
+ private readonly onChange;
14
17
  private buttons;
15
18
  /**
16
19
  * @param {object} tune - image tool Tunes managers
@@ -18,11 +21,7 @@ export default class Tunes {
18
21
  * @param {object} tune.actions - list of user defined tunes
19
22
  * @param {Function} tune.onChange - tune toggling callback
20
23
  */
21
- constructor({ api, actions, onChange }: {
22
- api: any;
23
- actions: any;
24
- onChange: any;
25
- });
24
+ constructor({ api, actions, onChange }: TunesParams);
26
25
  /**
27
26
  * Available Image tunes
28
27
  *
@@ -46,13 +45,13 @@ export default class Tunes {
46
45
  * @param {ImageToolData} toolData - generate Elements of tunes
47
46
  * @returns {Element}
48
47
  */
49
- render(toolData: any): any;
48
+ render(toolData: ImageToolData): HTMLElement;
50
49
  /**
51
50
  * Clicks to one of the tunes
52
51
  *
53
52
  * @param {string} tuneName - clicked tune name
54
53
  * @param {Function} customFunction - function to execute on click
55
54
  */
56
- tuneClicked(tuneName: any, customFunction: any): boolean;
55
+ tuneClicked(tuneName: string, customFunction?: TuneOnChangeCallable): boolean;
57
56
  }
58
57
  export {};