@webiny/app-admin 5.43.2 → 6.0.0-alpha.0

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 (553) hide show
  1. package/base/Admin.js +25 -35
  2. package/base/Admin.js.map +1 -1
  3. package/base/Base/Menus/SupportMenuItems.d.ts +2 -0
  4. package/base/Base/Menus/SupportMenuItems.js +20 -0
  5. package/base/Base/Menus/SupportMenuItems.js.map +1 -0
  6. package/base/Base/Menus/WebinyVersion.d.ts +2 -0
  7. package/base/Base/Menus/WebinyVersion.js +24 -0
  8. package/base/Base/Menus/WebinyVersion.js.map +1 -0
  9. package/base/Base/Menus.d.ts +2 -0
  10. package/base/Base/Menus.js +129 -0
  11. package/base/Base/Menus.js.map +1 -0
  12. package/base/Base/Routes.d.ts +2 -0
  13. package/base/Base/Routes.js +24 -0
  14. package/base/Base/Routes.js.map +1 -0
  15. package/base/Base/Tenant/wby-logo.svg +3 -0
  16. package/base/Base/Tenant.d.ts +2 -0
  17. package/base/Base/Tenant.js +19 -0
  18. package/base/Base/Tenant.js.map +1 -0
  19. package/base/Base.js +11 -79
  20. package/base/Base.js.map +1 -1
  21. package/base/WebinyVersion.d.ts +2 -0
  22. package/base/WebinyVersion.js +24 -0
  23. package/base/WebinyVersion.js.map +1 -0
  24. package/base/plugins/AddGraphQLQuerySelection.js +11 -21
  25. package/base/plugins/AddGraphQLQuerySelection.js.map +1 -1
  26. package/base/providers/AdminUiStateProvider.d.ts +1 -0
  27. package/base/providers/AdminUiStateProvider.js +14 -0
  28. package/base/providers/AdminUiStateProvider.js.map +1 -0
  29. package/base/providers/ApolloProvider.js +9 -15
  30. package/base/providers/ApolloProvider.js.map +1 -1
  31. package/base/providers/TelemetryProvider.js +12 -18
  32. package/base/providers/TelemetryProvider.js.map +1 -1
  33. package/base/providers/UiProviders.d.ts +1 -0
  34. package/base/providers/UiProviders.js +14 -0
  35. package/base/providers/UiProviders.js.map +1 -0
  36. package/base/providers/UiStateProvider.js +9 -15
  37. package/base/providers/UiStateProvider.js.map +1 -1
  38. package/base/providers/ViewCompositionProvider.js +33 -44
  39. package/base/providers/ViewCompositionProvider.js.map +1 -1
  40. package/base/ui/Brand.js +5 -12
  41. package/base/ui/Brand.js.map +1 -1
  42. package/base/ui/CenteredView.js +12 -43
  43. package/base/ui/CenteredView.js.map +1 -1
  44. package/base/ui/Dashboard.js +5 -12
  45. package/base/ui/Dashboard.js.map +1 -1
  46. package/base/ui/FileManager.js +42 -56
  47. package/base/ui/FileManager.js.map +1 -1
  48. package/base/ui/Layout.js +8 -16
  49. package/base/ui/Layout.js.map +1 -1
  50. package/base/ui/LocaleSelector.js +5 -12
  51. package/base/ui/LocaleSelector.js.map +1 -1
  52. package/base/ui/LoginScreen.js +9 -15
  53. package/base/ui/LoginScreen.js.map +1 -1
  54. package/base/ui/Logo.d.ts +0 -5
  55. package/base/ui/Logo.js +5 -26
  56. package/base/ui/Logo.js.map +1 -1
  57. package/base/ui/Navigation.d.ts +0 -57
  58. package/base/ui/Navigation.js +5 -146
  59. package/base/ui/Navigation.js.map +1 -1
  60. package/base/ui/NotFound.js +5 -12
  61. package/base/ui/NotFound.js.map +1 -1
  62. package/base/ui/Tags.js +14 -19
  63. package/base/ui/Tags.js.map +1 -1
  64. package/base/ui/{Search.d.ts → TenantSelector.d.ts} +2 -18
  65. package/base/ui/TenantSelector.js +8 -0
  66. package/base/ui/TenantSelector.js.map +1 -0
  67. package/base/ui/UserMenu/UserMenu.d.ts +39 -0
  68. package/base/ui/UserMenu/UserMenu.js +8 -0
  69. package/base/ui/UserMenu/UserMenu.js.map +1 -0
  70. package/base/ui/UserMenu/UserMenuHandle.d.ts +39 -0
  71. package/base/ui/UserMenu/UserMenuHandle.js +8 -0
  72. package/base/ui/UserMenu/UserMenuHandle.js.map +1 -0
  73. package/base/ui/UserMenu/UserMenuItem.d.ts +81 -0
  74. package/base/ui/UserMenu/UserMenuItem.js +19 -0
  75. package/base/ui/UserMenu/UserMenuItem.js.map +1 -0
  76. package/base/ui/UserMenu/UserMenuLink.d.ts +81 -0
  77. package/base/ui/UserMenu/UserMenuLink.js +19 -0
  78. package/base/ui/UserMenu/UserMenuLink.js.map +1 -0
  79. package/base/ui/UserMenu/UserMenuSeparator.d.ts +42 -0
  80. package/base/ui/UserMenu/UserMenuSeparator.js +9 -0
  81. package/base/ui/UserMenu/UserMenuSeparator.js.map +1 -0
  82. package/base/ui/UserMenu.d.ts +3 -79
  83. package/base/ui/UserMenu.js +14 -101
  84. package/base/ui/UserMenu.js.map +1 -1
  85. package/components/AdminLayout.js +7 -13
  86. package/components/AdminLayout.js.map +1 -1
  87. package/components/AppInstaller/AppInstaller.js +57 -67
  88. package/components/AppInstaller/AppInstaller.js.map +1 -1
  89. package/components/AppInstaller/Sidebar.js +49 -69
  90. package/components/AppInstaller/Sidebar.js.map +1 -1
  91. package/components/AppInstaller/index.js +10 -16
  92. package/components/AppInstaller/index.js.map +1 -1
  93. package/components/AppInstaller/styled.js +8 -15
  94. package/components/AppInstaller/styled.js.map +1 -1
  95. package/components/AppInstaller/useInstaller.js +81 -91
  96. package/components/AppInstaller/useInstaller.js.map +1 -1
  97. package/components/BulkActions/Worker.js +95 -141
  98. package/components/BulkActions/Worker.js.map +1 -1
  99. package/components/BulkActions/index.js +2 -27
  100. package/components/BulkActions/index.js.map +1 -1
  101. package/components/BulkActions/useDialogWithReport/DialogMessage.js +20 -33
  102. package/components/BulkActions/useDialogWithReport/DialogMessage.js.map +1 -1
  103. package/components/BulkActions/useDialogWithReport/index.js +1 -16
  104. package/components/BulkActions/useDialogWithReport/index.js.map +1 -1
  105. package/components/BulkActions/useDialogWithReport/useDialogWithReport.js +45 -52
  106. package/components/BulkActions/useDialogWithReport/useDialogWithReport.js.map +1 -1
  107. package/components/Buttons/Buttons.d.ts +7 -6
  108. package/components/Buttons/Buttons.js +58 -56
  109. package/components/Buttons/Buttons.js.map +1 -1
  110. package/components/Buttons/Buttons.styles.js +2 -9
  111. package/components/Buttons/Buttons.styles.js.map +1 -1
  112. package/components/Buttons/index.js +2 -25
  113. package/components/Buttons/index.js.map +1 -1
  114. package/components/Buttons/useButtons.js +13 -19
  115. package/components/Buttons/useButtons.js.map +1 -1
  116. package/components/Dialogs/CustomDialog.js +30 -37
  117. package/components/Dialogs/CustomDialog.js.map +1 -1
  118. package/components/Dialogs/Dialog.d.ts +8 -4
  119. package/components/Dialogs/Dialog.js +56 -41
  120. package/components/Dialogs/Dialog.js.map +1 -1
  121. package/components/Dialogs/DialogsContext.d.ts +9 -3
  122. package/components/Dialogs/DialogsContext.js +96 -107
  123. package/components/Dialogs/DialogsContext.js.map +1 -1
  124. package/components/Dialogs/useDialogs.js +5 -17
  125. package/components/Dialogs/useDialogs.js.map +1 -1
  126. package/components/EmptyView.d.ts +1 -1
  127. package/components/EmptyView.js +31 -41
  128. package/components/EmptyView.js.map +1 -1
  129. package/components/Filters/Filters.js +12 -20
  130. package/components/Filters/Filters.js.map +1 -1
  131. package/components/Filters/FiltersToggle.d.ts +7 -0
  132. package/components/Filters/FiltersToggle.js +26 -0
  133. package/components/Filters/FiltersToggle.js.map +1 -0
  134. package/components/Filters/index.d.ts +1 -0
  135. package/components/Filters/index.js +2 -16
  136. package/components/Filters/index.js.map +1 -1
  137. package/components/FloatingActionButton.js +7 -13
  138. package/components/FloatingActionButton.js.map +1 -1
  139. package/components/FloatingPanel.js +44 -68
  140. package/components/FloatingPanel.js.map +1 -1
  141. package/components/IconPicker/IconPicker.d.ts +1 -1
  142. package/components/IconPicker/IconPicker.js +25 -32
  143. package/components/IconPicker/IconPicker.js.map +1 -1
  144. package/components/IconPicker/IconPickerComponent.d.ts +5 -5
  145. package/components/IconPicker/IconPickerComponent.js +67 -87
  146. package/components/IconPicker/IconPickerComponent.js.map +1 -1
  147. package/components/IconPicker/IconPickerPresenter.d.ts +5 -4
  148. package/components/IconPicker/IconPickerPresenter.js +68 -109
  149. package/components/IconPicker/IconPickerPresenter.js.map +1 -1
  150. package/components/IconPicker/IconPickerPresenter.test.js +21 -23
  151. package/components/IconPicker/IconPickerPresenter.test.js.map +1 -1
  152. package/components/IconPicker/IconPickerPresenterProvider.js +10 -17
  153. package/components/IconPicker/IconPickerPresenterProvider.js.map +1 -1
  154. package/components/IconPicker/IconPickerTab.d.ts +2 -1
  155. package/components/IconPicker/IconPickerTab.js +103 -113
  156. package/components/IconPicker/IconPickerTab.js.map +1 -1
  157. package/components/IconPicker/IconRenderer.js +16 -24
  158. package/components/IconPicker/IconRenderer.js.map +1 -1
  159. package/components/IconPicker/IconRepository.js +41 -73
  160. package/components/IconPicker/IconRepository.js.map +1 -1
  161. package/components/IconPicker/IconRepository.test.js +11 -13
  162. package/components/IconPicker/IconRepository.test.js.map +1 -1
  163. package/components/IconPicker/IconRepositoryFactory.js +14 -37
  164. package/components/IconPicker/IconRepositoryFactory.js.map +1 -1
  165. package/components/IconPicker/Loading.js +42 -68
  166. package/components/IconPicker/Loading.js.map +1 -1
  167. package/components/IconPicker/components/IconPickerCell.d.ts +12 -0
  168. package/components/IconPicker/components/IconPickerCell.js +27 -0
  169. package/components/IconPicker/components/IconPickerCell.js.map +1 -0
  170. package/components/IconPicker/components/IconPickerContent.d.ts +11 -0
  171. package/components/IconPicker/components/IconPickerContent.js +41 -0
  172. package/components/IconPicker/components/IconPickerContent.js.map +1 -0
  173. package/components/IconPicker/components/IconPickerRow.d.ts +4 -0
  174. package/components/IconPicker/components/IconPickerRow.js +14 -0
  175. package/components/IconPicker/components/IconPickerRow.js.map +1 -0
  176. package/components/IconPicker/components/IconPickerTrigger.d.ts +13 -0
  177. package/components/IconPicker/components/IconPickerTrigger.js +52 -0
  178. package/components/IconPicker/components/IconPickerTrigger.js.map +1 -0
  179. package/components/IconPicker/components/index.d.ts +4 -0
  180. package/components/IconPicker/components/index.js +6 -0
  181. package/components/IconPicker/components/index.js.map +1 -0
  182. package/components/IconPicker/config/Emojis.js +9 -16
  183. package/components/IconPicker/config/Emojis.js.map +1 -1
  184. package/components/IconPicker/config/FontAwesomeIcons.js +30 -43
  185. package/components/IconPicker/config/FontAwesomeIcons.js.map +1 -1
  186. package/components/IconPicker/config/IconPackProvider.js +10 -16
  187. package/components/IconPicker/config/IconPackProvider.js.map +1 -1
  188. package/components/IconPicker/config/IconType.js +52 -55
  189. package/components/IconPicker/config/IconType.js.map +1 -1
  190. package/components/IconPicker/config/index.js +35 -53
  191. package/components/IconPicker/config/index.js.map +1 -1
  192. package/components/IconPicker/defaultIcon.js +1 -7
  193. package/components/IconPicker/defaultIcon.js.map +1 -1
  194. package/components/IconPicker/index.js +6 -47
  195. package/components/IconPicker/index.js.map +1 -1
  196. package/components/IconPicker/plugins/customPlugin.js +71 -96
  197. package/components/IconPicker/plugins/customPlugin.js.map +1 -1
  198. package/components/IconPicker/plugins/emojisPlugin.js +80 -117
  199. package/components/IconPicker/plugins/emojisPlugin.js.map +1 -1
  200. package/components/IconPicker/plugins/graphql.js +19 -10
  201. package/components/IconPicker/plugins/graphql.js.map +1 -1
  202. package/components/IconPicker/plugins/iconsPlugin.js +62 -93
  203. package/components/IconPicker/plugins/iconsPlugin.js.map +1 -1
  204. package/components/IconPicker/types.d.ts +1 -1
  205. package/components/IconPicker/types.js +3 -8
  206. package/components/IconPicker/types.js.map +1 -1
  207. package/components/LexicalEditor/LexicalEditor.js +24 -31
  208. package/components/LexicalEditor/LexicalEditor.js.map +1 -1
  209. package/components/LexicalEditor/index.js +1 -12
  210. package/components/LexicalEditor/index.js.map +1 -1
  211. package/components/MultiImageUpload.d.ts +1 -1
  212. package/components/MultiImageUpload.js +8 -31
  213. package/components/MultiImageUpload.js.map +1 -1
  214. package/components/OptionsMenu/OptionsMenu.d.ts +1 -0
  215. package/components/OptionsMenu/OptionsMenu.js +17 -23
  216. package/components/OptionsMenu/OptionsMenu.js.map +1 -1
  217. package/components/OptionsMenu/OptionsMenuItem.d.ts +1 -0
  218. package/components/OptionsMenu/OptionsMenuItem.js +12 -17
  219. package/components/OptionsMenu/OptionsMenuItem.js.map +1 -1
  220. package/components/OptionsMenu/OptionsMenuLink.d.ts +1 -0
  221. package/components/OptionsMenu/OptionsMenuLink.js +13 -36
  222. package/components/OptionsMenu/OptionsMenuLink.js.map +1 -1
  223. package/components/OptionsMenu/index.js +4 -51
  224. package/components/OptionsMenu/index.js.map +1 -1
  225. package/components/OptionsMenu/useOptionsMenuItem.js +12 -18
  226. package/components/OptionsMenu/useOptionsMenuItem.js.map +1 -1
  227. package/components/OverlayLayout/OverlayLayout.d.ts +6 -16
  228. package/components/OverlayLayout/OverlayLayout.js +42 -147
  229. package/components/OverlayLayout/OverlayLayout.js.map +1 -1
  230. package/components/OverlayLayout/components/OverlayBackdrop.d.ts +7 -0
  231. package/components/OverlayLayout/components/OverlayBackdrop.js +15 -0
  232. package/components/OverlayLayout/components/OverlayBackdrop.js.map +1 -0
  233. package/components/OverlayLayout/components/OverlayContent.d.ts +6 -0
  234. package/components/OverlayLayout/components/OverlayContent.js +21 -0
  235. package/components/OverlayLayout/components/OverlayContent.js.map +1 -0
  236. package/components/OverlayLayout/components/OverlayHeader.d.ts +13 -0
  237. package/components/OverlayLayout/components/OverlayHeader.js +44 -0
  238. package/components/OverlayLayout/components/OverlayHeader.js.map +1 -0
  239. package/components/OverlayLayout/components/OverlayRoot.d.ts +9 -0
  240. package/components/OverlayLayout/components/OverlayRoot.js +19 -0
  241. package/components/OverlayLayout/components/OverlayRoot.js.map +1 -0
  242. package/components/OverlayLayout/components/index.d.ts +4 -0
  243. package/components/OverlayLayout/components/index.js +6 -0
  244. package/components/OverlayLayout/components/index.js.map +1 -0
  245. package/components/OverlayLayout/index.js +1 -16
  246. package/components/OverlayLayout/index.js.map +1 -1
  247. package/components/Permissions/CannotUseAaclAlert.js +5 -12
  248. package/components/Permissions/CannotUseAaclAlert.js.map +1 -1
  249. package/components/Permissions/Permissions.js +37 -48
  250. package/components/Permissions/Permissions.js.map +1 -1
  251. package/components/Permissions/PermissionsGroup.d.ts +6 -0
  252. package/components/Permissions/PermissionsGroup.js +18 -0
  253. package/components/Permissions/PermissionsGroup.js.map +1 -0
  254. package/components/Permissions/StyledComponents.d.ts +1 -2
  255. package/components/Permissions/StyledComponents.js +12 -25
  256. package/components/Permissions/StyledComponents.js.map +1 -1
  257. package/components/Permissions/index.d.ts +1 -0
  258. package/components/Permissions/index.js +4 -35
  259. package/components/Permissions/index.js.map +1 -1
  260. package/components/ResizablePanels/index.js +1 -42
  261. package/components/ResizablePanels/index.js.map +1 -1
  262. package/components/RichTextEditor/RichTextEditor.js +13 -21
  263. package/components/RichTextEditor/RichTextEditor.js.map +1 -1
  264. package/components/RichTextEditor/index.js +2 -19
  265. package/components/RichTextEditor/index.js.map +1 -1
  266. package/components/RichTextEditor/tools/header/index.js +455 -521
  267. package/components/RichTextEditor/tools/header/index.js.map +1 -1
  268. package/components/RichTextEditor/tools/image/index.js +147 -182
  269. package/components/RichTextEditor/tools/image/index.js.map +1 -1
  270. package/components/RichTextEditor/tools/image/svgs.js +4 -10
  271. package/components/RichTextEditor/tools/image/svgs.js.map +1 -1
  272. package/components/RichTextEditor/tools/image/tunes.js +75 -96
  273. package/components/RichTextEditor/tools/image/tunes.js.map +1 -1
  274. package/components/RichTextEditor/tools/image/types.js +1 -5
  275. package/components/RichTextEditor/tools/image/ui.js +143 -174
  276. package/components/RichTextEditor/tools/image/ui.js.map +1 -1
  277. package/components/RichTextEditor/tools/paragraph/index.js +337 -389
  278. package/components/RichTextEditor/tools/paragraph/index.js.map +1 -1
  279. package/components/RichTextEditor/tools/textColor/index.js +164 -202
  280. package/components/RichTextEditor/tools/textColor/index.js.map +1 -1
  281. package/components/RichTextEditor/tools/utils.js +3 -9
  282. package/components/RichTextEditor/tools/utils.js.map +1 -1
  283. package/components/Routes.js +14 -23
  284. package/components/Routes.js.map +1 -1
  285. package/components/SearchUI.d.ts +2 -1
  286. package/components/SearchUI.js +22 -48
  287. package/components/SearchUI.js.map +1 -1
  288. package/components/SimpleForm/SimpleForm.d.ts +14 -7
  289. package/components/SimpleForm/SimpleForm.js +72 -77
  290. package/components/SimpleForm/SimpleForm.js.map +1 -1
  291. package/components/SimpleForm/index.js +1 -30
  292. package/components/SimpleForm/index.js.map +1 -1
  293. package/components/SimpleUI/InputField.js +39 -47
  294. package/components/SimpleUI/InputField.js.map +1 -1
  295. package/components/SingleImageUpload.d.ts +19 -1
  296. package/components/SingleImageUpload.js +39 -75
  297. package/components/SingleImageUpload.js.map +1 -1
  298. package/components/SplitView/SplitView.d.ts +4 -4
  299. package/components/SplitView/SplitView.js +41 -88
  300. package/components/SplitView/SplitView.js.map +1 -1
  301. package/components/SplitView/index.js +1 -24
  302. package/components/SplitView/index.js.map +1 -1
  303. package/components/StateInspector.js +28 -28
  304. package/components/StateInspector.js.map +1 -1
  305. package/components/Wcp.js +21 -25
  306. package/components/Wcp.js.map +1 -1
  307. package/components/index.js +3 -26
  308. package/components/index.js.map +1 -1
  309. package/config/AdminConfig/Menu/MenuGroup.d.ts +62 -0
  310. package/config/AdminConfig/Menu/MenuGroup.js +14 -0
  311. package/config/AdminConfig/Menu/MenuGroup.js.map +1 -0
  312. package/config/AdminConfig/Menu/MenuItem.d.ts +43 -0
  313. package/config/AdminConfig/Menu/MenuItem.js +14 -0
  314. package/config/AdminConfig/Menu/MenuItem.js.map +1 -0
  315. package/config/AdminConfig/Menu/MenuLink.d.ts +43 -0
  316. package/config/AdminConfig/Menu/MenuLink.js +18 -0
  317. package/config/AdminConfig/Menu/MenuLink.js.map +1 -0
  318. package/config/AdminConfig/Menu/SupportMenu/SupportMenuItem.d.ts +43 -0
  319. package/config/AdminConfig/Menu/SupportMenu/SupportMenuItem.js +13 -0
  320. package/config/AdminConfig/Menu/SupportMenu/SupportMenuItem.js.map +1 -0
  321. package/config/AdminConfig/Menu/SupportMenu/SupportMenuLink.d.ts +24 -0
  322. package/config/AdminConfig/Menu/SupportMenu/SupportMenuLink.js +13 -0
  323. package/config/AdminConfig/Menu/SupportMenu/SupportMenuLink.js.map +1 -0
  324. package/config/AdminConfig/Menu/SupportMenu.d.ts +72 -0
  325. package/config/AdminConfig/Menu/SupportMenu.js +49 -0
  326. package/config/AdminConfig/Menu/SupportMenu.js.map +1 -0
  327. package/config/AdminConfig/Menu/UserMenu/UserMenuItem.d.ts +41 -0
  328. package/config/AdminConfig/Menu/UserMenu/UserMenuItem.js +7 -0
  329. package/config/AdminConfig/Menu/UserMenu/UserMenuItem.js.map +1 -0
  330. package/config/AdminConfig/Menu/UserMenu/UserMenuLink.d.ts +41 -0
  331. package/config/AdminConfig/Menu/UserMenu/UserMenuLink.js +7 -0
  332. package/config/AdminConfig/Menu/UserMenu/UserMenuLink.js.map +1 -0
  333. package/config/AdminConfig/Menu/UserMenu/UserMenuSeparator.d.ts +1 -0
  334. package/config/AdminConfig/Menu/UserMenu/UserMenuSeparator.js +3 -0
  335. package/config/AdminConfig/Menu/UserMenu/UserMenuSeparator.js.map +1 -0
  336. package/config/AdminConfig/Menu/UserMenu/types.d.ts +7 -0
  337. package/config/AdminConfig/Menu/UserMenu/types.js +3 -0
  338. package/config/AdminConfig/Menu/UserMenu/types.js.map +1 -0
  339. package/config/AdminConfig/Menu/UserMenu.d.ts +129 -0
  340. package/config/AdminConfig/Menu/UserMenu.js +61 -0
  341. package/config/AdminConfig/Menu/UserMenu.js.map +1 -0
  342. package/config/AdminConfig/Menu/types.d.ts +7 -0
  343. package/config/AdminConfig/Menu/types.js +3 -0
  344. package/config/AdminConfig/Menu/types.js.map +1 -0
  345. package/config/AdminConfig/Menu.d.ts +350 -0
  346. package/config/AdminConfig/Menu.js +75 -0
  347. package/config/AdminConfig/Menu.js.map +1 -0
  348. package/config/AdminConfig/Route.d.ts +3 -0
  349. package/config/AdminConfig/Route.js +8 -0
  350. package/config/AdminConfig/Route.js.map +1 -0
  351. package/config/AdminConfig/Tenant/TenantLogo.d.ts +23 -0
  352. package/config/AdminConfig/Tenant/TenantLogo.js +16 -0
  353. package/config/AdminConfig/Tenant/TenantLogo.js.map +1 -0
  354. package/config/AdminConfig/Tenant/TenantName.d.ts +23 -0
  355. package/config/AdminConfig/Tenant/TenantName.js +16 -0
  356. package/config/AdminConfig/Tenant/TenantName.js.map +1 -0
  357. package/config/AdminConfig/Tenant.d.ts +66 -0
  358. package/config/AdminConfig/Tenant.js +23 -0
  359. package/config/AdminConfig/Tenant.js.map +1 -0
  360. package/config/AdminConfig/Theme/assignColor.d.ts +2 -0
  361. package/config/AdminConfig/Theme/assignColor.js +22 -0
  362. package/config/AdminConfig/Theme/assignColor.js.map +1 -0
  363. package/config/AdminConfig/Theme/consts.d.ts +2 -0
  364. package/config/AdminConfig/Theme/consts.js +4 -0
  365. package/config/AdminConfig/Theme/consts.js.map +1 -0
  366. package/config/AdminConfig/Theme/types.d.ts +3 -0
  367. package/config/AdminConfig/Theme/types.js +3 -0
  368. package/config/AdminConfig/Theme/types.js.map +1 -0
  369. package/config/AdminConfig/Theme.d.ts +16 -0
  370. package/config/AdminConfig/Theme.js +22 -0
  371. package/config/AdminConfig/Theme.js.map +1 -0
  372. package/config/AdminConfig.d.ts +434 -0
  373. package/config/AdminConfig.js +47 -0
  374. package/config/AdminConfig.js.map +1 -0
  375. package/config/createAdminConfig.d.ts +57 -0
  376. package/config/createAdminConfig.js +94 -0
  377. package/config/createAdminConfig.js.map +1 -0
  378. package/hooks/index.js +10 -115
  379. package/hooks/index.js.map +1 -1
  380. package/hooks/useConfirmationDialog.js +26 -39
  381. package/hooks/useConfirmationDialog.js.map +1 -1
  382. package/hooks/useDialog.js +16 -21
  383. package/hooks/useDialog.js.map +1 -1
  384. package/hooks/useIsMounted.js +6 -14
  385. package/hooks/useIsMounted.js.map +1 -1
  386. package/hooks/useKeyHandler.js +28 -46
  387. package/hooks/useKeyHandler.js.map +1 -1
  388. package/hooks/useModKey.js +9 -20
  389. package/hooks/useModKey.js.map +1 -1
  390. package/hooks/useShiftKey.js +13 -26
  391. package/hooks/useShiftKey.js.map +1 -1
  392. package/hooks/useSnackbar.js +22 -43
  393. package/hooks/useSnackbar.js.map +1 -1
  394. package/hooks/useStateIfMounted.js +8 -18
  395. package/hooks/useStateIfMounted.js.map +1 -1
  396. package/hooks/useStateWithCallback.js +7 -20
  397. package/hooks/useStateWithCallback.js.map +1 -1
  398. package/index.d.ts +2 -5
  399. package/index.js +52 -491
  400. package/index.js.map +1 -1
  401. package/package.json +25 -23
  402. package/plugins/MenuPlugin.js +15 -36
  403. package/plugins/MenuPlugin.js.map +1 -1
  404. package/plugins/PermissionRendererPlugin.js +15 -36
  405. package/plugins/PermissionRendererPlugin.js.map +1 -1
  406. package/plugins/uiLayoutRenderer/index.js +39 -48
  407. package/plugins/uiLayoutRenderer/index.js.map +1 -1
  408. package/styles.scss +7 -3
  409. package/types.d.ts +1 -36
  410. package/types.js +4 -11
  411. package/types.js.map +1 -1
  412. package/ui/UIElement.js +1 -18
  413. package/ui/UIElement.js.map +1 -1
  414. package/ui/UILayout.js +1 -18
  415. package/ui/UILayout.js.map +1 -1
  416. package/ui/UIRenderer.js +1 -12
  417. package/ui/UIRenderer.js.map +1 -1
  418. package/ui/UIView.js +1 -24
  419. package/ui/UIView.js.map +1 -1
  420. package/ui/elements/AccordionElement.js +43 -74
  421. package/ui/elements/AccordionElement.js.map +1 -1
  422. package/ui/elements/ButtonElement.js +46 -79
  423. package/ui/elements/ButtonElement.js.map +1 -1
  424. package/ui/elements/ButtonGroupElement.js +12 -31
  425. package/ui/elements/ButtonGroupElement.js.map +1 -1
  426. package/ui/elements/GenericElement.js +1 -16
  427. package/ui/elements/GenericElement.js.map +1 -1
  428. package/ui/elements/LabelElement.js +15 -37
  429. package/ui/elements/LabelElement.js.map +1 -1
  430. package/ui/elements/NavigationMenuElement.js +67 -119
  431. package/ui/elements/NavigationMenuElement.js.map +1 -1
  432. package/ui/elements/PanelElement.js +2 -20
  433. package/ui/elements/PanelElement.js.map +1 -1
  434. package/ui/elements/PlaceholderElement.js +8 -29
  435. package/ui/elements/PlaceholderElement.js.map +1 -1
  436. package/ui/elements/SmallButtonElement.js +20 -40
  437. package/ui/elements/SmallButtonElement.js.map +1 -1
  438. package/ui/elements/TypographyElement.js +20 -43
  439. package/ui/elements/TypographyElement.js.map +1 -1
  440. package/ui/elements/ViewElement.js +1 -16
  441. package/ui/elements/ViewElement.js.map +1 -1
  442. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js +17 -33
  443. package/ui/elements/form/DynamicFieldsetElement/DynamicFieldsetRowElement.js.map +1 -1
  444. package/ui/elements/form/DynamicFieldsetElement.js +90 -127
  445. package/ui/elements/form/DynamicFieldsetElement.js.map +1 -1
  446. package/ui/elements/form/FileManagerElement/EmptyStateElement.js +7 -23
  447. package/ui/elements/form/FileManagerElement/EmptyStateElement.js.map +1 -1
  448. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +40 -65
  449. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
  450. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +56 -82
  451. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
  452. package/ui/elements/form/FileManagerElement/styled.js +37 -35
  453. package/ui/elements/form/FileManagerElement/styled.js.map +1 -1
  454. package/ui/elements/form/FileManagerElement.js +43 -81
  455. package/ui/elements/form/FileManagerElement.js.map +1 -1
  456. package/ui/elements/form/FormElement.js +17 -40
  457. package/ui/elements/form/FormElement.js.map +1 -1
  458. package/ui/elements/form/FormFieldElement.js +100 -158
  459. package/ui/elements/form/FormFieldElement.js.map +1 -1
  460. package/ui/elements/form/HiddenElement.js +21 -42
  461. package/ui/elements/form/HiddenElement.js.map +1 -1
  462. package/ui/elements/form/InputElement.js +28 -49
  463. package/ui/elements/form/InputElement.js.map +1 -1
  464. package/ui/elements/form/PasswordElement.js +26 -48
  465. package/ui/elements/form/PasswordElement.js.map +1 -1
  466. package/ui/elements/form/SelectElement.js +38 -64
  467. package/ui/elements/form/SelectElement.js.map +1 -1
  468. package/ui/elements/form/TextareaElement.js +30 -50
  469. package/ui/elements/form/TextareaElement.js.map +1 -1
  470. package/ui/views/AdminView/ContentElement.js +19 -42
  471. package/ui/views/AdminView/ContentElement.js.map +1 -1
  472. package/ui/views/AdminView/HeaderElement.js +57 -90
  473. package/ui/views/AdminView/HeaderElement.js.map +1 -1
  474. package/ui/views/AdminView/HeaderSectionCenterElement.js +16 -35
  475. package/ui/views/AdminView/HeaderSectionCenterElement.js.map +1 -1
  476. package/ui/views/AdminView/HeaderSectionLeftElement.js +16 -35
  477. package/ui/views/AdminView/HeaderSectionLeftElement.js.map +1 -1
  478. package/ui/views/AdminView/HeaderSectionRightElement.js +16 -35
  479. package/ui/views/AdminView/HeaderSectionRightElement.js.map +1 -1
  480. package/ui/views/AdminView/components/Dialog.js +30 -36
  481. package/ui/views/AdminView/components/Dialog.js.map +1 -1
  482. package/ui/views/AdminView/components/Hamburger.js +12 -21
  483. package/ui/views/AdminView/components/Hamburger.js.map +1 -1
  484. package/ui/views/FormView/FormContainerElement.js +16 -53
  485. package/ui/views/FormView/FormContainerElement.js.map +1 -1
  486. package/ui/views/FormView/FormContentElement.d.ts +3 -1
  487. package/ui/views/FormView/FormContentElement.js +7 -19
  488. package/ui/views/FormView/FormContentElement.js.map +1 -1
  489. package/ui/views/FormView/FormFooterElement.js +11 -45
  490. package/ui/views/FormView/FormFooterElement.js.map +1 -1
  491. package/ui/views/FormView/FormHeaderElement.js +26 -75
  492. package/ui/views/FormView/FormHeaderElement.js.map +1 -1
  493. package/ui/views/FormView.js +104 -148
  494. package/ui/views/FormView.js.map +1 -1
  495. package/ui/views/OverlayView/ContentElement.js +12 -31
  496. package/ui/views/OverlayView/ContentElement.js.map +1 -1
  497. package/ui/views/OverlayView/HeaderElement.js +62 -99
  498. package/ui/views/OverlayView/HeaderElement.js.map +1 -1
  499. package/ui/views/OverlayView/HeaderTitleElement.js +21 -44
  500. package/ui/views/OverlayView/HeaderTitleElement.js.map +1 -1
  501. package/ui/views/OverlayView/useOverlayView.js +16 -27
  502. package/ui/views/OverlayView/useOverlayView.js.map +1 -1
  503. package/ui/views/OverlayView.js +72 -123
  504. package/ui/views/OverlayView.js.map +1 -1
  505. package/ui/views/SplitView/SplitViewPanelElement.js +28 -64
  506. package/ui/views/SplitView/SplitViewPanelElement.js.map +1 -1
  507. package/ui/views/SplitView.js +51 -82
  508. package/ui/views/SplitView.js.map +1 -1
  509. package/base/Version.d.ts +0 -3
  510. package/base/Version.js +0 -56
  511. package/base/Version.js.map +0 -1
  512. package/base/ui/Menu.d.ts +0 -51
  513. package/base/ui/Menu.js +0 -133
  514. package/base/ui/Menu.js.map +0 -1
  515. package/base/ui/Search.js +0 -61
  516. package/base/ui/Search.js.map +0 -1
  517. package/components/BulkActions/useDialogWithReport/useDialogWithReport.styled.d.ts +0 -20
  518. package/components/BulkActions/useDialogWithReport/useDialogWithReport.styled.js +0 -48
  519. package/components/BulkActions/useDialogWithReport/useDialogWithReport.styled.js.map +0 -1
  520. package/components/Dialogs/styled.d.ts +0 -10
  521. package/components/Dialogs/styled.js +0 -40
  522. package/components/Dialogs/styled.js.map +0 -1
  523. package/components/Filters/Filters.styled.d.ts +0 -13
  524. package/components/Filters/Filters.styled.js +0 -53
  525. package/components/Filters/Filters.styled.js.map +0 -1
  526. package/components/IconPicker/IconPicker.styles.d.ts +0 -63
  527. package/components/IconPicker/IconPicker.styles.js +0 -187
  528. package/components/IconPicker/IconPicker.styles.js.map +0 -1
  529. package/components/OptionsMenu/OptionsMenu.styled.d.ts +0 -3
  530. package/components/OptionsMenu/OptionsMenu.styled.js +0 -26
  531. package/components/OptionsMenu/OptionsMenu.styled.js.map +0 -1
  532. package/components/OverlayLayout/icons/close.svg +0 -13
  533. package/components/OverlayLayout/icons/navigate_before.svg +0 -16
  534. package/plugins/globalSearch/SearchBar.d.ts +0 -34
  535. package/plugins/globalSearch/SearchBar.js +0 -225
  536. package/plugins/globalSearch/SearchBar.js.map +0 -1
  537. package/plugins/globalSearch/SearchBarDropdown.d.ts +0 -23
  538. package/plugins/globalSearch/SearchBarDropdown.js +0 -82
  539. package/plugins/globalSearch/SearchBarDropdown.js.map +0 -1
  540. package/plugins/globalSearch/icons/round-search-24px.svg +0 -20
  541. package/plugins/globalSearch/index.d.ts +0 -6
  542. package/plugins/globalSearch/index.js +0 -17
  543. package/plugins/globalSearch/index.js.map +0 -1
  544. package/plugins/globalSearch/styled.d.ts +0 -18
  545. package/plugins/globalSearch/styled.js +0 -133
  546. package/plugins/globalSearch/styled.js.map +0 -1
  547. package/styles/material-theme-assignments.scss +0 -375
  548. package/styles/material.scss +0 -42
  549. package/styles/reset.scss +0 -1
  550. package/styles/theme.scss +0 -76
  551. package/ui/views/AdminView/components/Snackbar.d.ts +0 -3
  552. package/ui/views/AdminView/components/Snackbar.js +0 -33
  553. package/ui/views/AdminView/components/Snackbar.js.map +0 -1
@@ -1,26 +1,18 @@
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 _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
9
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
- var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
- var _utils = require("../utils");
1
+ import { ALIGNMENTS, TextAlign, ALIGNMENT_ICONS } from "../utils";
2
+
13
3
  /**
14
4
  * @typedef {object} ParagraphConfig
15
5
  * @property {string} placeholder - placeholder for the empty paragraph
16
6
  * @property {boolean} preserveBlank - Whether or not to keep blank paragraphs when saving editor data`
17
7
  */
8
+
18
9
  /**
19
10
  * @typedef {Object} ParagraphData
20
11
  * @description Tool's input and output data format
21
12
  * @property {String} text — Paragraph's content. Can include HTML tags: <a><b><i>
22
13
  */
23
- var Paragraph = /*#__PURE__*/function () {
14
+
15
+ class Paragraph {
24
16
  // private readonly _settings: any;
25
17
 
26
18
  /**
@@ -32,12 +24,12 @@ var Paragraph = /*#__PURE__*/function () {
32
24
  * @param {object} params.api - editor.js api
33
25
  * @param {boolean} readOnly - read only mode flag
34
26
  */
35
- function Paragraph(_ref) {
36
- var data = _ref.data,
37
- config = _ref.config,
38
- api = _ref.api,
39
- readOnly = _ref.readOnly;
40
- (0, _classCallCheck2.default)(this, Paragraph);
27
+ constructor({
28
+ data,
29
+ config,
30
+ api,
31
+ readOnly
32
+ }) {
41
33
  this.api = api;
42
34
  this.readOnly = readOnly;
43
35
  this.typography = config.typography || null;
@@ -60,7 +52,7 @@ var Paragraph = /*#__PURE__*/function () {
60
52
  this._element = this.drawView();
61
53
  this._preserveBlank = config.preserveBlank !== undefined ? config.preserveBlank : false;
62
54
  this.settingsButtons = [];
63
- this.alignments = _utils.ALIGNMENTS;
55
+ this.alignments = ALIGNMENTS;
64
56
 
65
57
  // Call the `data` setter, to properly render the view element.
66
58
  this.data = this._data;
@@ -72,416 +64,372 @@ var Paragraph = /*#__PURE__*/function () {
72
64
  * @return {string}
73
65
  * @constructor
74
66
  */
75
- return (0, _createClass2.default)(Paragraph, [{
76
- key: "data",
77
- get:
78
- /**
79
- * Get current Tools`s data
80
- * @returns {ParagraphData} Current data
81
- * @private
82
- */
83
- function get() {
84
- var text = this._element.innerHTML;
67
+ static get DEFAULT_PLACEHOLDER() {
68
+ return "";
69
+ }
85
70
 
86
- // this._data.text = text;
71
+ /**
72
+ * Enable Conversion Toolbar. Paragraph can be converted to/from other tools
73
+ */
74
+ static get conversionConfig() {
75
+ return {
76
+ export: "text",
77
+ // to convert Paragraph to other block, use 'text' property of saved data
78
+ import: "text" // to covert other block's exported string to Paragraph, fill 'text' property of tool data
79
+ };
80
+ }
87
81
 
88
- return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, this._data), {}, {
89
- text: text
90
- });
91
- }
82
+ /**
83
+ * Sanitizer rules
84
+ */
85
+ static get sanitize() {
86
+ return {
87
+ text: {
88
+ br: true
89
+ }
90
+ };
91
+ }
92
92
 
93
- /**
94
- * Store data in plugin:
95
- * - at the this._data property
96
- * - at the HTML
97
- *
98
- * @param {ParagraphData} data — data to set
99
- * @private
100
- */,
101
- set: function set(data) {
102
- var _this = this;
103
- this._data = data || {};
104
- this._element.innerHTML = this._data.text || "";
93
+ /**
94
+ * Returns true to notify the core that read-only mode is supported
95
+ *
96
+ * @return {boolean}
97
+ */
98
+ static get isReadOnlySupported() {
99
+ return true;
100
+ }
105
101
 
106
- /**
107
- * Add Alignment class
108
- */
109
- this.alignments.forEach(function (alignment) {
110
- if (alignment.name === _this._data.textAlign) {
111
- _this._element.classList.add("ce-header-text--".concat(alignment.name));
112
- } else {
113
- _this._element.classList.remove("ce-header-text--".concat(alignment.name));
114
- }
115
- });
102
+ /**
103
+ * Get current Tools`s data
104
+ * @returns {ParagraphData} Current data
105
+ * @private
106
+ */
107
+ get data() {
108
+ const text = this._element.innerHTML;
116
109
 
117
- /**
118
- * Add Typography class
119
- */
120
- if (this._data.className) {
121
- var _this$_element$classL;
122
- (_this$_element$classL = this._element.classList).add.apply(_this$_element$classL, (0, _toConsumableArray2.default)(this._data.className.split(" ")));
123
- }
124
- }
110
+ // this._data.text = text;
125
111
 
126
- /**
127
- * Used by Editor paste handling API.
128
- * Provides configuration to handle P tags.
129
- *
130
- * @returns {{tags: string[]}}
131
- */
132
- }, {
133
- key: "currentAlignment",
134
- get:
135
- /**
136
- * Get current alignment
137
- *
138
- * @returns {alignment}
139
- */
140
- function get() {
141
- var _this2 = this;
142
- var alignment = this.alignments.find(function (alignment) {
143
- return alignment.name === _this2._data.textAlign;
144
- });
145
- if (!alignment) {
146
- alignment = {
147
- name: _utils.TextAlign.START,
148
- svg: _utils.ALIGNMENT_ICONS.start
149
- };
150
- }
151
- return alignment;
152
- }
112
+ return {
113
+ ...this._data,
114
+ text
115
+ };
116
+ }
153
117
 
154
- /**
155
- * Check if text content is empty and set empty string to inner html.
156
- * We need this because some browsers (e.g. Safari) insert <br> into empty contentEditable elements
157
- *
158
- * @param {KeyboardEvent} e - key up event
159
- */
160
- }, {
161
- key: "onKeyUp",
162
- value: function onKeyUp(e) {
163
- if (e.code !== "Backspace" && e.code !== "Delete") {
164
- return;
165
- }
166
- var textContent = this._element.textContent;
167
- if (textContent === "") {
168
- this._element.innerHTML = "";
169
- }
170
- }
118
+ /**
119
+ * Store data in plugin:
120
+ * - at the this._data property
121
+ * - at the HTML
122
+ *
123
+ * @param {ParagraphData} data — data to set
124
+ * @private
125
+ */
126
+ set data(data) {
127
+ this._data = data || {};
128
+ this._element.innerHTML = this._data.text || "";
171
129
 
172
130
  /**
173
- * Create Tool's view
174
- * @return {HTMLElement}
175
- * @private
131
+ * Add Alignment class
176
132
  */
177
- }, {
178
- key: "drawView",
179
- value: function drawView() {
180
- var div = document.createElement("div");
181
- div.classList.add(this._CSS.wrapper, this._CSS.block);
182
- // Add custom className to view.
183
- if (this._data.className) {
184
- div.classList.add(this._data.className);
133
+ this.alignments.forEach(alignment => {
134
+ if (alignment.name === this._data.textAlign) {
135
+ this._element.classList.add(`ce-header-text--${alignment.name}`);
136
+ } else {
137
+ this._element.classList.remove(`ce-header-text--${alignment.name}`);
185
138
  }
186
- div.contentEditable = "false";
187
- div.dataset["placeholder"] = this.api.i18n.t(this._placeholder);
188
- if (!this.readOnly) {
189
- div.contentEditable = "true";
190
- div.addEventListener("keyup", this.onKeyUp);
191
- }
192
- return div;
193
- }
139
+ });
194
140
 
195
141
  /**
196
- * Return Tool's view
142
+ * Add Typography class
197
143
  */
198
- }, {
199
- key: "render",
200
- value: function render() {
201
- return this._element;
144
+ if (this._data.className) {
145
+ this._element.classList.add(...this._data.className.split(" "));
202
146
  }
147
+ }
203
148
 
204
- /**
205
- * Create Block's settings block
206
- */
207
- }, {
208
- key: "renderSettings",
209
- value: function renderSettings() {
210
- var _this3 = this;
211
- var holder = document.createElement("div");
212
-
213
- // Add alignment selectors
214
- this.alignments.forEach(function (alignment) {
215
- var selectTypeButton = document.createElement("span");
216
- selectTypeButton.classList.add(_this3._CSS.settingsButton);
217
-
218
- /**
219
- * Highlight current level button
220
- */
221
- if (_this3.currentAlignment.name === alignment.name) {
222
- selectTypeButton.classList.add(_this3._CSS.settingsButtonActive);
223
- }
224
-
225
- /**
226
- * Add SVG icon
227
- */
228
- selectTypeButton.innerHTML = alignment.svg;
229
-
230
- /**
231
- * Save alignment to its button
232
- */
233
- selectTypeButton.dataset["textAlign"] = alignment.name;
234
-
235
- /**
236
- * Set up click handler
237
- */
238
- selectTypeButton.addEventListener("click", function () {
239
- _this3.setAlignment(alignment);
240
- });
241
-
242
- /**
243
- * Append settings button to holder
244
- */
245
- holder.appendChild(selectTypeButton);
246
-
247
- /**
248
- * Save settings buttons
249
- */
250
- _this3.settingsButtons.push(selectTypeButton);
251
- });
149
+ /**
150
+ * Used by Editor paste handling API.
151
+ * Provides configuration to handle P tags.
152
+ *
153
+ * @returns {{tags: string[]}}
154
+ */
155
+ static get pasteConfig() {
156
+ return {
157
+ tags: ["P"]
158
+ };
159
+ }
252
160
 
253
- // Add `Typography` selector
254
- if (this.typography) {
255
- var typographyForParagraph = Object.values(this.typography).filter(function (item) {
256
- return item.component === "p";
257
- });
258
- var selectTypeButton = document.createElement("SELECT");
259
- // Add editor's default input style
260
- selectTypeButton.classList.add(this.api.styles.input);
261
- // Add typography options
262
- typographyForParagraph.forEach(function (item) {
263
- var option = new Option(item.label, item.className);
264
- selectTypeButton.appendChild(option);
265
- });
266
- // Add "onclick" handler
267
- selectTypeButton.onclick = function (event) {
268
- var _ref2 = event.target,
269
- value = _ref2.value;
270
- _this3.setTypographyClass(value);
271
- };
272
-
273
- /**
274
- * Append settings button to holder
275
- */
276
- holder.appendChild(selectTypeButton);
277
-
278
- /**
279
- * Save settings buttons
280
- */
281
- this.settingsButtons.push(selectTypeButton);
282
- }
283
- return holder;
284
- }
161
+ /**
162
+ * Icon and title for displaying at the Toolbox
163
+ *
164
+ * @return {{icon: string, title: string}}
165
+ */
166
+ static get toolbox() {
167
+ return {
168
+ icon: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0.2 -0.3 9 11.4" width="12" height="14">\n' + ' <path d="M0 2.77V.92A1 1 0 01.2.28C.35.1.56 0 .83 0h7.66c.28.01.48.1.63.28.14.17.21.38.21.64v1.85c0 .26-.08.48-.23.66-.15.17-.37.26-.66.26-.28 0-.5-.09-.64-.26a1 1 0 01-.21-.66V1.69H5.6v7.58h.5c.25 0 .45.08.6.23.17.16.25.35.25.6s-.08.45-.24.6a.87.87 0 01-.62.22H3.21a.87.87 0 01-.61-.22.78.78 0 01-.24-.6c0-.25.08-.44.24-.6a.85.85 0 01.61-.23h.5V1.7H1.73v1.08c0 .26-.08.48-.23.66-.15.17-.37.26-.66.26-.28 0-.5-.09-.64-.26A1 1 0 010 2.77z"/>\n' + "</svg>",
169
+ title: "Text"
170
+ };
171
+ }
285
172
 
286
- /**
287
- * Method that specified how to merge two Text blocks.
288
- * Called by Editor.js by backspace at the beginning of the Block
289
- * @param {ParagraphData} data
290
- * @public
291
- */
292
- }, {
293
- key: "merge",
294
- value: function merge(data) {
295
- this.data = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, this.data), {}, {
296
- text: this.data.text + data.text
297
- });
173
+ /**
174
+ * Get current alignment
175
+ *
176
+ * @returns {alignment}
177
+ */
178
+ get currentAlignment() {
179
+ let alignment = this.alignments.find(alignment => alignment.name === this._data.textAlign);
180
+ if (!alignment) {
181
+ alignment = {
182
+ name: TextAlign.START,
183
+ svg: ALIGNMENT_ICONS.start
184
+ };
298
185
  }
186
+ return alignment;
187
+ }
299
188
 
300
- /**
301
- * Validate Paragraph block data:
302
- * - check for emptiness
303
- *
304
- * @param {ParagraphData} savedData data received after saving
305
- * @returns {boolean} false if saved data is not correct, otherwise true
306
- * @public
307
- */
308
- }, {
309
- key: "validate",
310
- value: function validate(savedData) {
311
- return !(savedData.text.trim() === "" && !this._preserveBlank);
189
+ /**
190
+ * Check if text content is empty and set empty string to inner html.
191
+ * We need this because some browsers (e.g. Safari) insert <br> into empty contentEditable elements
192
+ *
193
+ * @param {KeyboardEvent} e - key up event
194
+ */
195
+ onKeyUp(e) {
196
+ if (e.code !== "Backspace" && e.code !== "Delete") {
197
+ return;
312
198
  }
313
-
314
- /**
315
- * Extract Tool's data from the view
316
- * @param {HTMLDivElement} toolsContent - Paragraph tools rendered view
317
- * @returns {ParagraphData} - saved data
318
- * @public
319
- */
320
- }, {
321
- key: "save",
322
- value: function save(toolsContent) {
323
- return {
324
- text: toolsContent.innerHTML,
325
- textAlign: this.getTextAlign(toolsContent.className),
326
- className: this.data.className
327
- };
199
+ const {
200
+ textContent
201
+ } = this._element;
202
+ if (textContent === "") {
203
+ this._element.innerHTML = "";
328
204
  }
205
+ }
329
206
 
330
- /**
331
- * Extract textAlign from className
332
- *
333
- * @param {string} className - heading element className
334
- * @returns {TextAlign} textAlign
335
- */
336
- }, {
337
- key: "getTextAlign",
338
- value: function getTextAlign(className) {
339
- var textAlign = _utils.TextAlign.START;
340
- // Match className with alignment
341
- this.alignments.forEach(function (alignment) {
342
- if (className.includes("ce-header-text--".concat(alignment.name))) {
343
- textAlign = alignment.name;
344
- }
345
- });
346
- return textAlign;
207
+ /**
208
+ * Create Tool's view
209
+ * @return {HTMLElement}
210
+ * @private
211
+ */
212
+ drawView() {
213
+ const div = document.createElement("div");
214
+ div.classList.add(this._CSS.wrapper, this._CSS.block);
215
+ // Add custom className to view.
216
+ if (this._data.className) {
217
+ div.classList.add(this._data.className);
347
218
  }
348
-
349
- /**
350
- * On paste callback fired from Editor.
351
- *
352
- * @param {PasteEvent} event - event with pasted data
353
- */
354
- }, {
355
- key: "onPaste",
356
- value: function onPaste(event) {
357
- var detail = event.detail;
358
- this.data = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, this.data), {}, {
359
- text: detail.data.innerHTML
360
- });
219
+ div.contentEditable = "false";
220
+ div.dataset["placeholder"] = this.api.i18n.t(this._placeholder);
221
+ if (!this.readOnly) {
222
+ div.contentEditable = "true";
223
+ div.addEventListener("keyup", this.onKeyUp);
361
224
  }
225
+ return div;
226
+ }
362
227
 
363
- /**
364
- * Callback for Block's settings buttons
365
- *
366
- * @param {number} alignment - level to set
367
- */
368
- }, {
369
- key: "setAlignment",
370
- value: function setAlignment(alignment) {
371
- var _this4 = this;
372
- this.data = {
373
- textAlign: alignment.name,
374
- text: this.data.text
375
- };
228
+ /**
229
+ * Return Tool's view
230
+ */
231
+ render() {
232
+ return this._element;
233
+ }
234
+
235
+ /**
236
+ * Create Block's settings block
237
+ */
238
+ renderSettings() {
239
+ const holder = document.createElement("div");
240
+
241
+ // Add alignment selectors
242
+ this.alignments.forEach(alignment => {
243
+ const selectTypeButton = document.createElement("span");
244
+ selectTypeButton.classList.add(this._CSS.settingsButton);
245
+
246
+ /**
247
+ * Highlight current level button
248
+ */
249
+ if (this.currentAlignment.name === alignment.name) {
250
+ selectTypeButton.classList.add(this._CSS.settingsButtonActive);
251
+ }
252
+
253
+ /**
254
+ * Add SVG icon
255
+ */
256
+ selectTypeButton.innerHTML = alignment.svg;
257
+
258
+ /**
259
+ * Save alignment to its button
260
+ */
261
+ selectTypeButton.dataset["textAlign"] = alignment.name;
376
262
 
377
263
  /**
378
- * Highlight button by selected level
264
+ * Set up click handler
379
265
  */
380
- this.settingsButtons.forEach(function (button) {
381
- button.classList.toggle(_this4._CSS.settingsButtonActive, button.dataset["textAlign"] === alignment.name);
266
+ selectTypeButton.addEventListener("click", () => {
267
+ this.setAlignment(alignment);
382
268
  });
383
- }
384
269
 
385
- /**
386
- * Callback for Block's settings buttons
387
- *
388
- * @param {string} className - name of typography class
389
- */
390
- }, {
391
- key: "setTypographyClass",
392
- value: function setTypographyClass(className) {
393
- this.data = {
394
- textAlign: this.data.textAlign,
395
- text: this.data.text,
396
- className: className
270
+ /**
271
+ * Append settings button to holder
272
+ */
273
+ holder.appendChild(selectTypeButton);
274
+
275
+ /**
276
+ * Save settings buttons
277
+ */
278
+ this.settingsButtons.push(selectTypeButton);
279
+ });
280
+
281
+ // Add `Typography` selector
282
+ if (this.typography) {
283
+ const typographyForParagraph = Object.values(this.typography).filter(item => item.component === "p");
284
+ const selectTypeButton = document.createElement("SELECT");
285
+ // Add editor's default input style
286
+ selectTypeButton.classList.add(this.api.styles.input);
287
+ // Add typography options
288
+ typographyForParagraph.forEach(item => {
289
+ const option = new Option(item.label, item.className);
290
+ selectTypeButton.appendChild(option);
291
+ });
292
+ // Add "onclick" handler
293
+ selectTypeButton.onclick = event => {
294
+ const {
295
+ value
296
+ } = event.target;
297
+ this.setTypographyClass(value);
397
298
  };
299
+
300
+ /**
301
+ * Append settings button to holder
302
+ */
303
+ holder.appendChild(selectTypeButton);
304
+
305
+ /**
306
+ * Save settings buttons
307
+ */
308
+ this.settingsButtons.push(selectTypeButton);
398
309
  }
310
+ return holder;
311
+ }
399
312
 
400
- /**
401
- * Normalize input data
402
- *
403
- * @param {HeaderData} data - saved data to process
404
- *
405
- * @returns {HeaderData}
406
- * @private
407
- */
408
- }, {
409
- key: "normalizeData",
410
- value: function normalizeData(data) {
411
- var newData = {};
412
- if (typeof data !== "object") {
413
- data = {};
313
+ /**
314
+ * Method that specified how to merge two Text blocks.
315
+ * Called by Editor.js by backspace at the beginning of the Block
316
+ * @param {ParagraphData} data
317
+ * @public
318
+ */
319
+ merge(data) {
320
+ this.data = {
321
+ ...this.data,
322
+ text: this.data.text + data.text
323
+ };
324
+ }
325
+
326
+ /**
327
+ * Validate Paragraph block data:
328
+ * - check for emptiness
329
+ *
330
+ * @param {ParagraphData} savedData — data received after saving
331
+ * @returns {boolean} false if saved data is not correct, otherwise true
332
+ * @public
333
+ */
334
+ validate(savedData) {
335
+ return !(savedData.text.trim() === "" && !this._preserveBlank);
336
+ }
337
+
338
+ /**
339
+ * Extract Tool's data from the view
340
+ * @param {HTMLDivElement} toolsContent - Paragraph tools rendered view
341
+ * @returns {ParagraphData} - saved data
342
+ * @public
343
+ */
344
+ save(toolsContent) {
345
+ return {
346
+ text: toolsContent.innerHTML,
347
+ textAlign: this.getTextAlign(toolsContent.className),
348
+ className: this.data.className
349
+ };
350
+ }
351
+
352
+ /**
353
+ * Extract textAlign from className
354
+ *
355
+ * @param {string} className - heading element className
356
+ * @returns {TextAlign} textAlign
357
+ */
358
+ getTextAlign(className) {
359
+ let textAlign = TextAlign.START;
360
+ // Match className with alignment
361
+ this.alignments.forEach(alignment => {
362
+ if (className.includes(`ce-header-text--${alignment.name}`)) {
363
+ textAlign = alignment.name;
414
364
  }
415
- newData.text = data.text || "";
416
- newData.textAlign = data.textAlign || _utils.TextAlign.START;
417
- newData.className = data.className || "";
418
- return newData;
419
- }
420
- }], [{
421
- key: "DEFAULT_PLACEHOLDER",
422
- get: function get() {
423
- return "";
424
- }
365
+ });
366
+ return textAlign;
367
+ }
425
368
 
426
- /**
427
- * Enable Conversion Toolbar. Paragraph can be converted to/from other tools
428
- */
429
- }, {
430
- key: "conversionConfig",
431
- get: function get() {
432
- return {
433
- export: "text",
434
- // to convert Paragraph to other block, use 'text' property of saved data
435
- import: "text" // to covert other block's exported string to Paragraph, fill 'text' property of tool data
436
- };
437
- }
369
+ /**
370
+ * On paste callback fired from Editor.
371
+ *
372
+ * @param {PasteEvent} event - event with pasted data
373
+ */
374
+ onPaste(event) {
375
+ const detail = event.detail;
376
+ this.data = {
377
+ ...this.data,
378
+ text: detail.data.innerHTML
379
+ };
380
+ }
438
381
 
439
- /**
440
- * Sanitizer rules
441
- */
442
- }, {
443
- key: "sanitize",
444
- get: function get() {
445
- return {
446
- text: {
447
- br: true
448
- }
449
- };
450
- }
382
+ /**
383
+ * Callback for Block's settings buttons
384
+ *
385
+ * @param {number} alignment - level to set
386
+ */
387
+ setAlignment(alignment) {
388
+ this.data = {
389
+ textAlign: alignment.name,
390
+ text: this.data.text
391
+ };
451
392
 
452
393
  /**
453
- * Returns true to notify the core that read-only mode is supported
454
- *
455
- * @return {boolean}
394
+ * Highlight button by selected level
456
395
  */
457
- }, {
458
- key: "isReadOnlySupported",
459
- get: function get() {
460
- return true;
461
- }
462
- }, {
463
- key: "pasteConfig",
464
- get: function get() {
465
- return {
466
- tags: ["P"]
467
- };
468
- }
396
+ this.settingsButtons.forEach(button => {
397
+ button.classList.toggle(this._CSS.settingsButtonActive, button.dataset["textAlign"] === alignment.name);
398
+ });
399
+ }
469
400
 
470
- /**
471
- * Icon and title for displaying at the Toolbox
472
- *
473
- * @return {{icon: string, title: string}}
474
- */
475
- }, {
476
- key: "toolbox",
477
- get: function get() {
478
- return {
479
- icon: '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0.2 -0.3 9 11.4" width="12" height="14">\n' + ' <path d="M0 2.77V.92A1 1 0 01.2.28C.35.1.56 0 .83 0h7.66c.28.01.48.1.63.28.14.17.21.38.21.64v1.85c0 .26-.08.48-.23.66-.15.17-.37.26-.66.26-.28 0-.5-.09-.64-.26a1 1 0 01-.21-.66V1.69H5.6v7.58h.5c.25 0 .45.08.6.23.17.16.25.35.25.6s-.08.45-.24.6a.87.87 0 01-.62.22H3.21a.87.87 0 01-.61-.22.78.78 0 01-.24-.6c0-.25.08-.44.24-.6a.85.85 0 01.61-.23h.5V1.7H1.73v1.08c0 .26-.08.48-.23.66-.15.17-.37.26-.66.26-.28 0-.5-.09-.64-.26A1 1 0 010 2.77z"/>\n' + "</svg>",
480
- title: "Text"
481
- };
401
+ /**
402
+ * Callback for Block's settings buttons
403
+ *
404
+ * @param {string} className - name of typography class
405
+ */
406
+ setTypographyClass(className) {
407
+ this.data = {
408
+ textAlign: this.data.textAlign,
409
+ text: this.data.text,
410
+ className: className
411
+ };
412
+ }
413
+
414
+ /**
415
+ * Normalize input data
416
+ *
417
+ * @param {HeaderData} data - saved data to process
418
+ *
419
+ * @returns {HeaderData}
420
+ * @private
421
+ */
422
+ normalizeData(data) {
423
+ const newData = {};
424
+ if (typeof data !== "object") {
425
+ data = {};
482
426
  }
483
- }]);
484
- }();
485
- var _default = exports.default = Paragraph;
427
+ newData.text = data.text || "";
428
+ newData.textAlign = data.textAlign || TextAlign.START;
429
+ newData.className = data.className || "";
430
+ return newData;
431
+ }
432
+ }
433
+ export default Paragraph;
486
434
 
487
435
  //# sourceMappingURL=index.js.map