@soul-refiner/design-system 2.0.0-alpha.26 → 2.0.0-alpha.28

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 (671) hide show
  1. package/dist/common/colors.js +140 -0
  2. package/dist/common/date.js +34 -0
  3. package/dist/common/styles.js +66 -0
  4. package/dist/components/actions/button/button.js +330 -0
  5. package/dist/components/actions/dropdown/dropdown.js +237 -0
  6. package/dist/components/actions/rate/rate.js +56 -0
  7. package/dist/components/actions/switch/switch.js +81 -0
  8. package/dist/components/actions/toggle/toggle.js +67 -0
  9. package/dist/components/actions/upload/upload.js +170 -0
  10. package/dist/components/atoms/box/box.js +26 -0
  11. package/dist/components/atoms/hide/hide.js +18 -0
  12. package/dist/components/atoms/seconds_to_duration/seconds_to_duration.js +36 -0
  13. package/dist/components/atoms/time_ago/time_ago.js +40 -0
  14. package/dist/components/atoms/typography/display.js +19 -0
  15. package/dist/components/atoms/typography/heading.js +44 -0
  16. package/dist/components/atoms/typography/paragraph.js +27 -0
  17. package/dist/components/atoms/typography/typography.js +17 -0
  18. package/dist/components/card/action/action.js +84 -0
  19. package/dist/components/card/audio/audio.js +143 -0
  20. package/dist/components/card/card.js +34 -0
  21. package/dist/components/card/feature/feature.js +204 -0
  22. package/dist/components/card/meeting/meeting.js +152 -0
  23. package/dist/components/card/person/person.js +83 -0
  24. package/dist/components/card/price/price.js +89 -0
  25. package/dist/components/card/regular/regular.js +43 -0
  26. package/dist/components/card/styles.js +16 -0
  27. package/dist/components/card/video/video.js +140 -0
  28. package/dist/components/card/written/written.js +143 -0
  29. package/dist/components/custom/courses_selection/courses_selection.js +143 -0
  30. package/dist/components/custom/users_selection/users_selection.js +134 -0
  31. package/dist/components/editor/constants.js +195 -0
  32. package/dist/components/editor/context.js +17 -0
  33. package/dist/components/editor/editor.js +114 -0
  34. package/dist/components/editor/icons/border-all.js +12 -0
  35. package/dist/components/editor/icons/border-bottom.js +12 -0
  36. package/dist/components/editor/icons/border-left.js +12 -0
  37. package/dist/components/editor/icons/border-none.js +12 -0
  38. package/dist/components/editor/icons/border-right.js +12 -0
  39. package/dist/components/editor/icons/border-top.js +12 -0
  40. package/dist/components/editor/navbar/alignment_dropdown.js +106 -0
  41. package/dist/components/editor/navbar/button_modal.js +70 -0
  42. package/dist/components/editor/navbar/navbar.js +225 -0
  43. package/dist/components/editor/navbar/style_dropdown.js +74 -0
  44. package/dist/components/editor/plugins/blocks/blockquote.js +17 -0
  45. package/dist/components/editor/plugins/blocks/blocks.js +54 -0
  46. package/dist/components/editor/plugins/blocks/buttons.js +91 -0
  47. package/dist/components/editor/plugins/blocks/dropdown-menu.js +78 -0
  48. package/dist/components/editor/plugins/blocks/image.js +60 -0
  49. package/dist/components/editor/plugins/blocks/list.js +26 -0
  50. package/dist/components/editor/plugins/blocks/media-popover.js +41 -0
  51. package/dist/components/editor/plugins/blocks/plate-button.js +63 -0
  52. package/dist/components/editor/plugins/blocks/popover.js +39 -0
  53. package/dist/components/editor/plugins/blocks/qa.js +55 -0
  54. package/dist/components/editor/plugins/blocks/resizable.js +48 -0
  55. package/dist/components/editor/plugins/blocks/separator.js +44 -0
  56. package/dist/components/editor/plugins/blocks/table-cell.js +48 -0
  57. package/dist/components/editor/plugins/blocks/table-row.js +16 -0
  58. package/dist/components/editor/plugins/blocks/table.js +98 -0
  59. package/dist/components/editor/plugins/blocks/text.js +103 -0
  60. package/dist/components/editor/plugins/blocks/video.js +42 -0
  61. package/dist/components/editor/plugins/leafs/leafs.js +37 -0
  62. package/dist/components/editor/plugins/leafs/link.js +86 -0
  63. package/dist/components/editor/plugins/marks/marks.js +17 -0
  64. package/dist/components/editor/plugins/plate.js +43 -0
  65. package/dist/components/editor/plugins/utils/exitBreak.js +36 -0
  66. package/dist/components/editor/plugins/utils/resetBlockType.js +26 -0
  67. package/dist/components/editor/plugins/utils/selectOnBackspace.js +11 -0
  68. package/dist/components/editor/plugins/utils/softBreak.js +19 -0
  69. package/dist/components/editor/plugins/utils/utils.js +17 -0
  70. package/dist/components/editor/simple_editor/navbar.js +128 -0
  71. package/dist/components/editor/simple_editor/plugins.js +93 -0
  72. package/dist/components/editor/simple_editor/simple_editor.js +98 -0
  73. package/dist/components/editor/styles/menu_button.js +36 -0
  74. package/dist/components/feedback/animated_toast/animated_toast.js +64 -0
  75. package/dist/components/feedback/badge/badge.js +75 -0
  76. package/dist/components/feedback/banner/banner.js +95 -0
  77. package/dist/components/feedback/chip/chip.js +103 -0
  78. package/dist/components/feedback/loader/loader.js +44 -0
  79. package/dist/components/feedback/notification/notification.js +87 -0
  80. package/dist/components/feedback/progress/progress.js +101 -0
  81. package/dist/components/feedback/toast/toast.js +126 -0
  82. package/dist/components/feedback/tooltip/tooltip.js +35 -0
  83. package/dist/components/iconography/avatar/avatar.js +190 -0
  84. package/dist/components/iconography/avatar/icons/approved.js +14 -0
  85. package/dist/components/iconography/avatar/icons/busy.js +14 -0
  86. package/dist/components/iconography/avatar/icons/declined.js +14 -0
  87. package/dist/components/iconography/avatar/icons/default.js +13 -0
  88. package/dist/components/iconography/avatar/icons/focus.js +14 -0
  89. package/dist/components/iconography/avatar/icons/locked.js +14 -0
  90. package/dist/components/iconography/avatar/icons/offline.js +14 -0
  91. package/dist/components/iconography/avatar/icons/online.js +13 -0
  92. package/dist/components/iconography/avatar/icons/subscribed.js +18 -0
  93. package/dist/components/iconography/icon/icon.js +19 -0
  94. package/dist/components/input/calendar/calendar.js +267 -0
  95. package/dist/components/input/checkbox/checkbox.js +32 -0
  96. package/dist/components/input/date/date.js +529 -0
  97. package/dist/components/input/filter/filter.js +332 -0
  98. package/dist/components/input/filter/filter_option.js +82 -0
  99. package/dist/components/input/radio/radio.js +92 -0
  100. package/dist/components/input/search/search.js +148 -0
  101. package/dist/components/input/select/select.js +56 -0
  102. package/dist/components/input/text_area/text_area.js +120 -0
  103. package/dist/components/input/text_input/text_input.js +157 -0
  104. package/dist/components/input/time/time.js +80 -0
  105. package/dist/components/media/video/video.js +42 -0
  106. package/dist/components/media/video-player/playlist-item.js +48 -0
  107. package/dist/components/media/video-player/video.js +210 -0
  108. package/dist/components/navigation/breadcrumb/breadcrumb.js +119 -0
  109. package/dist/components/navigation/inner/inner.js +199 -0
  110. package/dist/components/navigation/tabs/tabs.js +159 -0
  111. package/dist/components/surfaces/accordion/accordion.js +56 -0
  112. package/dist/components/surfaces/calendar_date/calendar_date.js +55 -0
  113. package/dist/components/surfaces/carousel/card/card.js +106 -0
  114. package/dist/components/surfaces/comment/comment.js +210 -0
  115. package/dist/components/surfaces/comment/helpers.js +30 -0
  116. package/dist/components/surfaces/drawer/drawer.js +140 -0
  117. package/dist/components/surfaces/message/message.js +56 -0
  118. package/dist/components/surfaces/modal/modal.js +135 -0
  119. package/dist/components/surfaces/portal/portal.js +36 -0
  120. package/dist/components/surfaces/post/post.js +246 -0
  121. package/dist/components/table/table/table.js +192 -0
  122. package/dist/icons/arrow/arrow_all.js +15 -0
  123. package/dist/icons/arrow/arrow_all_diagonal.js +15 -0
  124. package/dist/icons/arrow/arrow_both_downwards.js +15 -0
  125. package/dist/icons/arrow/arrow_both_upwards.js +15 -0
  126. package/dist/icons/arrow/arrow_circle_left.js +15 -0
  127. package/dist/icons/arrow/arrow_circle_left_double.js +15 -0
  128. package/dist/icons/arrow/arrow_circle_left_double_alert.js +17 -0
  129. package/dist/icons/arrow/arrow_circle_right.js +15 -0
  130. package/dist/icons/arrow/arrow_circle_right_double.js +15 -0
  131. package/dist/icons/arrow/arrow_circle_right_double_alert.js +15 -0
  132. package/dist/icons/arrow/arrow_diagonal_down_left.js +15 -0
  133. package/dist/icons/arrow/arrow_diagonal_down_left_circle.js +15 -0
  134. package/dist/icons/arrow/arrow_diagonal_down_right.js +15 -0
  135. package/dist/icons/arrow/arrow_diagonal_down_right_circle.js +15 -0
  136. package/dist/icons/arrow/arrow_diagonal_up_left.js +15 -0
  137. package/dist/icons/arrow/arrow_diagonal_up_left_circle.js +15 -0
  138. package/dist/icons/arrow/arrow_diagonal_up_right.js +15 -0
  139. package/dist/icons/arrow/arrow_diagonal_up_right_circle.js +15 -0
  140. package/dist/icons/arrow/arrow_down.js +15 -0
  141. package/dist/icons/arrow/arrow_down_bold.js +15 -0
  142. package/dist/icons/arrow/arrow_down_circle.js +15 -0
  143. package/dist/icons/arrow/arrow_left.js +15 -0
  144. package/dist/icons/arrow/arrow_left_bold.js +15 -0
  145. package/dist/icons/arrow/arrow_left_circle.js +15 -0
  146. package/dist/icons/arrow/arrow_left_curved.js +15 -0
  147. package/dist/icons/arrow/arrow_left_curved_circle.js +15 -0
  148. package/dist/icons/arrow/arrow_right.js +15 -0
  149. package/dist/icons/arrow/arrow_right_bold.js +15 -0
  150. package/dist/icons/arrow/arrow_right_circle.js +15 -0
  151. package/dist/icons/arrow/arrow_right_curved.js +15 -0
  152. package/dist/icons/arrow/arrow_right_curved_circle.js +15 -0
  153. package/dist/icons/arrow/arrow_up.js +15 -0
  154. package/dist/icons/arrow/arrow_up_bold.js +15 -0
  155. package/dist/icons/arrow/arrow_up_circle.js +15 -0
  156. package/dist/icons/arrow/chevron_down.js +15 -0
  157. package/dist/icons/arrow/chevron_down_circle.js +15 -0
  158. package/dist/icons/arrow/chevron_down_double.js +15 -0
  159. package/dist/icons/arrow/chevron_down_double_circle.js +15 -0
  160. package/dist/icons/arrow/chevron_left.js +15 -0
  161. package/dist/icons/arrow/chevron_left_circle.js +15 -0
  162. package/dist/icons/arrow/chevron_left_double.js +15 -0
  163. package/dist/icons/arrow/chevron_left_double_circle.js +15 -0
  164. package/dist/icons/arrow/chevron_right.js +15 -0
  165. package/dist/icons/arrow/chevron_right_circle.js +15 -0
  166. package/dist/icons/arrow/chevron_right_double.js +15 -0
  167. package/dist/icons/arrow/chevron_right_double_circle.js +15 -0
  168. package/dist/icons/arrow/chevron_scroll.js +15 -0
  169. package/dist/icons/arrow/chevron_up.js +15 -0
  170. package/dist/icons/arrow/chevron_up_circle.js +15 -0
  171. package/dist/icons/arrow/chevron_up_double.js +15 -0
  172. package/dist/icons/arrow/chevron_up_double_circle.js +15 -0
  173. package/dist/icons/arrow/forward_all.js +15 -0
  174. package/dist/icons/arrow/forward_all_bold.js +15 -0
  175. package/dist/icons/arrow/forward_bold.js +15 -0
  176. package/dist/icons/arrow/redo.js +15 -0
  177. package/dist/icons/arrow/redo_bold.js +15 -0
  178. package/dist/icons/arrow/reply.js +15 -0
  179. package/dist/icons/arrow/reply_all.js +15 -0
  180. package/dist/icons/arrow/reply_all_bold.js +15 -0
  181. package/dist/icons/arrow/reply_bold.js +15 -0
  182. package/dist/icons/arrow/undo.js +15 -0
  183. package/dist/icons/arrow/undo_bold.js +15 -0
  184. package/dist/icons/audio_video/drag_indicator.js +15 -0
  185. package/dist/icons/audio_video/eject.js +15 -0
  186. package/dist/icons/audio_video/equalizer.js +15 -0
  187. package/dist/icons/audio_video/fast_forward.js +15 -0
  188. package/dist/icons/audio_video/fast_forward_30.js +15 -0
  189. package/dist/icons/audio_video/fullscreen.js +15 -0
  190. package/dist/icons/audio_video/headphones.js +15 -0
  191. package/dist/icons/audio_video/library_add.js +15 -0
  192. package/dist/icons/audio_video/library_music.js +15 -0
  193. package/dist/icons/audio_video/microphone.js +15 -0
  194. package/dist/icons/audio_video/musical_note.js +15 -0
  195. package/dist/icons/audio_video/next.js +15 -0
  196. package/dist/icons/audio_video/pause.js +15 -0
  197. package/dist/icons/audio_video/pause_circle.js +15 -0
  198. package/dist/icons/audio_video/play.js +15 -0
  199. package/dist/icons/audio_video/play_circle.js +15 -0
  200. package/dist/icons/audio_video/play_display.js +15 -0
  201. package/dist/icons/audio_video/play_pause.js +15 -0
  202. package/dist/icons/audio_video/play_solid.js +15 -0
  203. package/dist/icons/audio_video/player_list.js +15 -0
  204. package/dist/icons/audio_video/player_list_add.js +15 -0
  205. package/dist/icons/audio_video/player_list_play.js +15 -0
  206. package/dist/icons/audio_video/previous.js +15 -0
  207. package/dist/icons/audio_video/radio.js +15 -0
  208. package/dist/icons/audio_video/record.js +15 -0
  209. package/dist/icons/audio_video/repeat.js +15 -0
  210. package/dist/icons/audio_video/rewind.js +15 -0
  211. package/dist/icons/audio_video/rewind_30.js +15 -0
  212. package/dist/icons/audio_video/shuffle.js +15 -0
  213. package/dist/icons/audio_video/sound_wave.js +15 -0
  214. package/dist/icons/audio_video/stop.js +15 -0
  215. package/dist/icons/audio_video/stop_circle.js +15 -0
  216. package/dist/icons/audio_video/subscriptions.js +15 -0
  217. package/dist/icons/audio_video/tuner.js +15 -0
  218. package/dist/icons/audio_video/volume.js +15 -0
  219. package/dist/icons/audio_video/volume_high.js +15 -0
  220. package/dist/icons/audio_video/volume_low.js +15 -0
  221. package/dist/icons/audio_video/volume_slash.js +15 -0
  222. package/dist/icons/basic/aa_sansserif.js +16 -0
  223. package/dist/icons/basic/aa_serif.js +16 -0
  224. package/dist/icons/basic/anchor.js +17 -0
  225. package/dist/icons/basic/bible.js +15 -0
  226. package/dist/icons/basic/bold.js +15 -0
  227. package/dist/icons/basic/book.js +15 -0
  228. package/dist/icons/basic/book_open.js +15 -0
  229. package/dist/icons/basic/bookmark.js +15 -0
  230. package/dist/icons/basic/bookmark_add.js +15 -0
  231. package/dist/icons/basic/bookmark_slash.js +15 -0
  232. package/dist/icons/basic/bookmarks.js +15 -0
  233. package/dist/icons/basic/books.js +18 -0
  234. package/dist/icons/basic/box.js +15 -0
  235. package/dist/icons/basic/briefcase.js +15 -0
  236. package/dist/icons/basic/browse_activity.js +15 -0
  237. package/dist/icons/basic/browser.js +15 -0
  238. package/dist/icons/basic/browser_slash.js +15 -0
  239. package/dist/icons/basic/calculator.js +15 -0
  240. package/dist/icons/basic/camera.js +15 -0
  241. package/dist/icons/basic/camera_add.js +15 -0
  242. package/dist/icons/basic/camera_slash.js +15 -0
  243. package/dist/icons/basic/checkmark.js +15 -0
  244. package/dist/icons/basic/checkmark_circle.js +17 -0
  245. package/dist/icons/basic/checkmark_filled.js +15 -0
  246. package/dist/icons/basic/checkmarks.js +15 -0
  247. package/dist/icons/basic/circle.js +15 -0
  248. package/dist/icons/basic/circle_slash.js +17 -0
  249. package/dist/icons/basic/clear_text_style.js +15 -0
  250. package/dist/icons/basic/close.js +15 -0
  251. package/dist/icons/basic/close_circle.js +15 -0
  252. package/dist/icons/basic/close_filled.js +15 -0
  253. package/dist/icons/basic/copy.js +15 -0
  254. package/dist/icons/basic/delete.js +15 -0
  255. package/dist/icons/basic/detail.js +15 -0
  256. package/dist/icons/basic/dot.js +15 -0
  257. package/dist/icons/basic/download.js +15 -0
  258. package/dist/icons/basic/download_arrow.js +15 -0
  259. package/dist/icons/basic/droplet.js +17 -0
  260. package/dist/icons/basic/ellipsis_horizontal.js +15 -0
  261. package/dist/icons/basic/ellipsis_horizontal_circle.js +15 -0
  262. package/dist/icons/basic/ellipsis_vertical.js +15 -0
  263. package/dist/icons/basic/ellipsis_vertical_circle.js +15 -0
  264. package/dist/icons/basic/eye.js +15 -0
  265. package/dist/icons/basic/eye_slash.js +15 -0
  266. package/dist/icons/basic/fingerprint.js +15 -0
  267. package/dist/icons/basic/flag.js +15 -0
  268. package/dist/icons/basic/flag_wave.js +15 -0
  269. package/dist/icons/basic/flag_wave_filled.js +15 -0
  270. package/dist/icons/basic/flame.js +15 -0
  271. package/dist/icons/basic/gauge.js +15 -0
  272. package/dist/icons/basic/glasses.js +15 -0
  273. package/dist/icons/basic/graduation_cap.js +15 -0
  274. package/dist/icons/basic/hashmark.js +15 -0
  275. package/dist/icons/basic/heart.js +15 -0
  276. package/dist/icons/basic/heart_slash.js +15 -0
  277. package/dist/icons/basic/highlighter.js +15 -0
  278. package/dist/icons/basic/home.js +15 -0
  279. package/dist/icons/basic/image.js +15 -0
  280. package/dist/icons/basic/inbox.js +15 -0
  281. package/dist/icons/basic/italic.js +15 -0
  282. package/dist/icons/basic/layers.js +15 -0
  283. package/dist/icons/basic/lightening.js +15 -0
  284. package/dist/icons/basic/lightening_slash.js +15 -0
  285. package/dist/icons/basic/link.js +15 -0
  286. package/dist/icons/basic/link_slash.js +15 -0
  287. package/dist/icons/basic/loudspeaker.js +15 -0
  288. package/dist/icons/basic/maximize.js +15 -0
  289. package/dist/icons/basic/menu.js +15 -0
  290. package/dist/icons/basic/menu_circle.js +15 -0
  291. package/dist/icons/basic/menu_dots.js +15 -0
  292. package/dist/icons/basic/microphone_slash.js +15 -0
  293. package/dist/icons/basic/minimize.js +15 -0
  294. package/dist/icons/basic/minus.js +15 -0
  295. package/dist/icons/basic/minus_circle.js +15 -0
  296. package/dist/icons/basic/move_item.js +15 -0
  297. package/dist/icons/basic/new.js +15 -0
  298. package/dist/icons/basic/newspaper.js +15 -0
  299. package/dist/icons/basic/node.js +15 -0
  300. package/dist/icons/basic/note_pad.js +16 -0
  301. package/dist/icons/basic/options.js +15 -0
  302. package/dist/icons/basic/paint_brush.js +15 -0
  303. package/dist/icons/basic/paperclip.js +15 -0
  304. package/dist/icons/basic/paperclip_slash.js +15 -0
  305. package/dist/icons/basic/pencil.js +15 -0
  306. package/dist/icons/basic/pencil_pad.js +15 -0
  307. package/dist/icons/basic/plus.js +15 -0
  308. package/dist/icons/basic/plus_circle.js +15 -0
  309. package/dist/icons/basic/presentation.js +15 -0
  310. package/dist/icons/basic/printer.js +15 -0
  311. package/dist/icons/basic/profile.js +15 -0
  312. package/dist/icons/basic/profile_check.js +15 -0
  313. package/dist/icons/basic/pulse.js +15 -0
  314. package/dist/icons/basic/qr_code.js +15 -0
  315. package/dist/icons/basic/resize.js +17 -0
  316. package/dist/icons/basic/scan.js +15 -0
  317. package/dist/icons/basic/scissors.js +15 -0
  318. package/dist/icons/basic/screenshot.js +15 -0
  319. package/dist/icons/basic/search.js +15 -0
  320. package/dist/icons/basic/select_item.js +16 -0
  321. package/dist/icons/basic/settings.js +15 -0
  322. package/dist/icons/basic/share.js +15 -0
  323. package/dist/icons/basic/share_external.js +15 -0
  324. package/dist/icons/basic/square.js +15 -0
  325. package/dist/icons/basic/star.js +15 -0
  326. package/dist/icons/basic/star_circle.js +15 -0
  327. package/dist/icons/basic/star_filled.js +15 -0
  328. package/dist/icons/basic/star_filled_half.js +15 -0
  329. package/dist/icons/basic/star_slash.js +15 -0
  330. package/dist/icons/basic/sticker.js +15 -0
  331. package/dist/icons/basic/strikethrough.js +15 -0
  332. package/dist/icons/basic/subtask.js +16 -0
  333. package/dist/icons/basic/tax.js +18 -0
  334. package/dist/icons/basic/text_bg_color.js +15 -0
  335. package/dist/icons/basic/text_color.js +15 -0
  336. package/dist/icons/basic/textbox.js +15 -0
  337. package/dist/icons/basic/thumbs_down.js +15 -0
  338. package/dist/icons/basic/thumbs_up.js +15 -0
  339. package/dist/icons/basic/thumbs_up_filled.js +15 -0
  340. package/dist/icons/basic/toggle_left.js +15 -0
  341. package/dist/icons/basic/toggle_right.js +15 -0
  342. package/dist/icons/basic/translate.js +15 -0
  343. package/dist/icons/basic/trash.js +15 -0
  344. package/dist/icons/basic/trash_slash.js +15 -0
  345. package/dist/icons/basic/underline.js +15 -0
  346. package/dist/icons/basic/upload.js +15 -0
  347. package/dist/icons/basic/video.js +15 -0
  348. package/dist/icons/basic/video_add.js +16 -0
  349. package/dist/icons/basic/video_slash.js +15 -0
  350. package/dist/icons/basic/wrench.js +15 -0
  351. package/dist/icons/basic/zoom_in.js +15 -0
  352. package/dist/icons/basic/zoom_out.js +15 -0
  353. package/dist/icons/data/bar_chart.js +15 -0
  354. package/dist/icons/data/bar_chart_downward.js +15 -0
  355. package/dist/icons/data/bar_chart_downward_outline.js +15 -0
  356. package/dist/icons/data/bar_chart_upward.js +15 -0
  357. package/dist/icons/data/bar_chart_upward_outline.js +15 -0
  358. package/dist/icons/data/candlestick_chart.js +15 -0
  359. package/dist/icons/data/four_circles.js +15 -0
  360. package/dist/icons/data/legend_toggle.js +15 -0
  361. package/dist/icons/data/line_chart.js +15 -0
  362. package/dist/icons/data/line_chart_area.js +15 -0
  363. package/dist/icons/data/line_chart_area_shaded.js +15 -0
  364. package/dist/icons/data/line_chart_double.js +15 -0
  365. package/dist/icons/data/line_chart_downward.js +15 -0
  366. package/dist/icons/data/line_chart_node.js +15 -0
  367. package/dist/icons/data/line_chart_outline.js +15 -0
  368. package/dist/icons/data/line_chart_search.js +15 -0
  369. package/dist/icons/data/line_chart_stars.js +15 -0
  370. package/dist/icons/data/line_chart_upward.js +15 -0
  371. package/dist/icons/data/pie_chart.js +16 -0
  372. package/dist/icons/data/tree.js +15 -0
  373. package/dist/icons/email/mail.js +15 -0
  374. package/dist/icons/email/mail_check.js +15 -0
  375. package/dist/icons/email/mail_minus.js +15 -0
  376. package/dist/icons/email/mail_send.js +15 -0
  377. package/dist/icons/email/send.js +15 -0
  378. package/dist/icons/email/send_close.js +15 -0
  379. package/dist/icons/email/send_schedule.js +15 -0
  380. package/dist/icons/email/send_text.js +15 -0
  381. package/dist/icons/emoji/emoji_add.js +15 -0
  382. package/dist/icons/emoji/laughing.js +15 -0
  383. package/dist/icons/emoji/neutral.js +15 -0
  384. package/dist/icons/emoji/sad.js +15 -0
  385. package/dist/icons/emoji/shocked.js +15 -0
  386. package/dist/icons/emoji/smile.js +15 -0
  387. package/dist/icons/file/clipboard.js +15 -0
  388. package/dist/icons/file/clipboard_check.js +15 -0
  389. package/dist/icons/file/clipboard_close.js +15 -0
  390. package/dist/icons/file/clipboard_minus.js +15 -0
  391. package/dist/icons/file/clipboard_plus.js +15 -0
  392. package/dist/icons/file/clipboard_text.js +15 -0
  393. package/dist/icons/file/file.js +15 -0
  394. package/dist/icons/file/file_add.js +15 -0
  395. package/dist/icons/file/file_check.js +15 -0
  396. package/dist/icons/file/file_close.js +15 -0
  397. package/dist/icons/file/file_code.js +15 -0
  398. package/dist/icons/file/file_download.js +15 -0
  399. package/dist/icons/file/file_draft.js +15 -0
  400. package/dist/icons/file/file_gear.js +16 -0
  401. package/dist/icons/file/file_minus.js +15 -0
  402. package/dist/icons/file/file_plus.js +15 -0
  403. package/dist/icons/file/file_scan.js +15 -0
  404. package/dist/icons/file/file_shred.js +15 -0
  405. package/dist/icons/file/file_text.js +15 -0
  406. package/dist/icons/file/file_upload.js +15 -0
  407. package/dist/icons/file/folder.js +15 -0
  408. package/dist/icons/file/folder_add.js +15 -0
  409. package/dist/icons/file/folder_arrow.js +15 -0
  410. package/dist/icons/file/folder_check.js +15 -0
  411. package/dist/icons/file/folder_close.js +15 -0
  412. package/dist/icons/file/folder_cloud.js +15 -0
  413. package/dist/icons/file/folder_gear.js +16 -0
  414. package/dist/icons/file/folder_minus.js +15 -0
  415. package/dist/icons/file/folder_music.js +15 -0
  416. package/dist/icons/file/folder_open.js +15 -0
  417. package/dist/icons/file/folder_plus.js +15 -0
  418. package/dist/icons/file/folder_zip.js +15 -0
  419. package/dist/icons/file/note.js +15 -0
  420. package/dist/icons/file/note_text.js +15 -0
  421. package/dist/icons/file/pdf.js +15 -0
  422. package/dist/icons/file/photo.js +15 -0
  423. package/dist/icons/finance/bitcoin.js +15 -0
  424. package/dist/icons/finance/coins.js +19 -0
  425. package/dist/icons/finance/credit_card.js +15 -0
  426. package/dist/icons/finance/credit_card_add.js +15 -0
  427. package/dist/icons/finance/credit_card_face.js +15 -0
  428. package/dist/icons/finance/credit_card_member.js +15 -0
  429. package/dist/icons/finance/credit_card_outcome.js +15 -0
  430. package/dist/icons/finance/credit_card_scan.js +15 -0
  431. package/dist/icons/finance/credit_card_share.js +15 -0
  432. package/dist/icons/finance/credit_card_slash.js +15 -0
  433. package/dist/icons/finance/currency_exchange.js +15 -0
  434. package/dist/icons/finance/dollar.js +15 -0
  435. package/dist/icons/finance/ethereum.js +15 -0
  436. package/dist/icons/finance/paypass.js +15 -0
  437. package/dist/icons/finance/strongbox.js +15 -0
  438. package/dist/icons/finance/wallet.js +15 -0
  439. package/dist/icons/index.js +1095 -0
  440. package/dist/icons/layout/block_align_bottom.js +15 -0
  441. package/dist/icons/layout/block_align_center.js +15 -0
  442. package/dist/icons/layout/block_align_left.js +15 -0
  443. package/dist/icons/layout/block_align_middle.js +15 -0
  444. package/dist/icons/layout/block_align_right.js +15 -0
  445. package/dist/icons/layout/block_align_top.js +15 -0
  446. package/dist/icons/layout/block_horizontal.js +15 -0
  447. package/dist/icons/layout/block_vertical.js +15 -0
  448. package/dist/icons/layout/edit_shape.js +15 -0
  449. package/dist/icons/layout/elements.js +15 -0
  450. package/dist/icons/layout/elements_add.js +15 -0
  451. package/dist/icons/layout/elements_filled.js +15 -0
  452. package/dist/icons/layout/elements_masonry.js +15 -0
  453. package/dist/icons/layout/frame.js +15 -0
  454. package/dist/icons/layout/frame_stack.js +15 -0
  455. package/dist/icons/layout/grid.js +15 -0
  456. package/dist/icons/layout/grid_column_three.js +15 -0
  457. package/dist/icons/layout/grid_column_two.js +15 -0
  458. package/dist/icons/layout/grid_dynamic.js +15 -0
  459. package/dist/icons/layout/grid_frame.js +15 -0
  460. package/dist/icons/layout/grid_row_three.js +15 -0
  461. package/dist/icons/layout/grid_row_two.js +15 -0
  462. package/dist/icons/layout/grid_six.js +15 -0
  463. package/dist/icons/layout/grid_small.js +15 -0
  464. package/dist/icons/layout/iframe.js +15 -0
  465. package/dist/icons/layout/kanban.js +15 -0
  466. package/dist/icons/layout/layout.js +15 -0
  467. package/dist/icons/layout/list.js +15 -0
  468. package/dist/icons/layout/list_filled.js +20 -0
  469. package/dist/icons/layout/padding.js +15 -0
  470. package/dist/icons/layout/page_break.js +15 -0
  471. package/dist/icons/layout/rotate_left.js +15 -0
  472. package/dist/icons/layout/rotate_right.js +15 -0
  473. package/dist/icons/layout/ruler.js +15 -0
  474. package/dist/icons/layout/segment.js +15 -0
  475. package/dist/icons/layout/select_area.js +15 -0
  476. package/dist/icons/layout/select_boundary.js +15 -0
  477. package/dist/icons/layout/sidebar_left.js +15 -0
  478. package/dist/icons/layout/sidebar_right.js +15 -0
  479. package/dist/icons/layout/slides.js +15 -0
  480. package/dist/icons/layout/slides_horizontal.js +15 -0
  481. package/dist/icons/layout/slides_vertical.js +20 -0
  482. package/dist/icons/layout/stack.js +15 -0
  483. package/dist/icons/layout/text.js +15 -0
  484. package/dist/icons/maps/atlas.js +15 -0
  485. package/dist/icons/maps/compass.js +15 -0
  486. package/dist/icons/maps/direction.js +15 -0
  487. package/dist/icons/maps/direction_angled.js +15 -0
  488. package/dist/icons/maps/globe.js +15 -0
  489. package/dist/icons/maps/globe_slash.js +15 -0
  490. package/dist/icons/maps/location.js +15 -0
  491. package/dist/icons/maps/location_slash.js +15 -0
  492. package/dist/icons/maps/map.js +15 -0
  493. package/dist/icons/maps/marker.js +15 -0
  494. package/dist/icons/maps/panorama.js +15 -0
  495. package/dist/icons/maps/pin.js +15 -0
  496. package/dist/icons/maps/pin_arrow.js +15 -0
  497. package/dist/icons/maps/pin_location.js +15 -0
  498. package/dist/icons/maps/pin_plus.js +15 -0
  499. package/dist/icons/maps/pin_question.js +15 -0
  500. package/dist/icons/maps/pin_slash.js +15 -0
  501. package/dist/icons/maps/push_pin.js +15 -0
  502. package/dist/icons/maps/push_pin_filled.js +15 -0
  503. package/dist/icons/maps/push_pin_slash.js +15 -0
  504. package/dist/icons/maps/radar.js +15 -0
  505. package/dist/icons/maps/route.js +15 -0
  506. package/dist/icons/message/bubble.js +15 -0
  507. package/dist/icons/message/bubble_question.js +15 -0
  508. package/dist/icons/message/comment.js +15 -0
  509. package/dist/icons/message/comment_add.js +15 -0
  510. package/dist/icons/message/comment_check.js +15 -0
  511. package/dist/icons/message/comment_close.js +15 -0
  512. package/dist/icons/message/comment_minus.js +15 -0
  513. package/dist/icons/message/comment_text.js +15 -0
  514. package/dist/icons/misc/advertisement.js +15 -0
  515. package/dist/icons/misc/atom.js +15 -0
  516. package/dist/icons/misc/bone.js +15 -0
  517. package/dist/icons/misc/brightness_high.js +15 -0
  518. package/dist/icons/misc/brightness_low.js +15 -0
  519. package/dist/icons/misc/contrast.js +15 -0
  520. package/dist/icons/misc/crosshairs.js +15 -0
  521. package/dist/icons/misc/crown.js +15 -0
  522. package/dist/icons/misc/footprint.js +15 -0
  523. package/dist/icons/misc/form.js +15 -0
  524. package/dist/icons/misc/funnel.js +15 -0
  525. package/dist/icons/misc/infinite.js +15 -0
  526. package/dist/icons/misc/insert_button.js +15 -0
  527. package/dist/icons/misc/light_bulb.js +15 -0
  528. package/dist/icons/misc/moon.js +15 -0
  529. package/dist/icons/misc/nut.js +15 -0
  530. package/dist/icons/misc/planet.js +15 -0
  531. package/dist/icons/misc/plus_thick.js +15 -0
  532. package/dist/icons/misc/pocket.js +15 -0
  533. package/dist/icons/misc/rocket.js +15 -0
  534. package/dist/icons/misc/soup.js +19 -0
  535. package/dist/icons/misc/sun.js +15 -0
  536. package/dist/icons/misc/toy_horse.js +15 -0
  537. package/dist/icons/misc/trophy.js +15 -0
  538. package/dist/icons/misc/watercloset.js +15 -0
  539. package/dist/icons/notifications/alert_circle.js +15 -0
  540. package/dist/icons/notifications/alert_octogon.js +15 -0
  541. package/dist/icons/notifications/alert_triangle.js +15 -0
  542. package/dist/icons/notifications/app_notification.js +15 -0
  543. package/dist/icons/notifications/bell.js +15 -0
  544. package/dist/icons/notifications/bell_alert.js +15 -0
  545. package/dist/icons/notifications/bell_checkmark.js +15 -0
  546. package/dist/icons/notifications/bell_minus.js +15 -0
  547. package/dist/icons/notifications/bell_plus.js +15 -0
  548. package/dist/icons/notifications/bell_ring.js +17 -0
  549. package/dist/icons/notifications/bell_slash.js +15 -0
  550. package/dist/icons/notifications/information.js +15 -0
  551. package/dist/icons/notifications/minus_octogon.js +15 -0
  552. package/dist/icons/notifications/question_circle.js +15 -0
  553. package/dist/icons/people/group.js +15 -0
  554. package/dist/icons/people/group_add.js +15 -0
  555. package/dist/icons/people/group_chat.js +17 -0
  556. package/dist/icons/people/group_remove.js +15 -0
  557. package/dist/icons/people/group_send.js +16 -0
  558. package/dist/icons/people/groups.js +15 -0
  559. package/dist/icons/people/person.js +15 -0
  560. package/dist/icons/people/person_add.js +15 -0
  561. package/dist/icons/people/person_checkmark.js +15 -0
  562. package/dist/icons/people/person_circle.js +17 -0
  563. package/dist/icons/people/person_close.js +17 -0
  564. package/dist/icons/people/person_remove.js +15 -0
  565. package/dist/icons/people/person_slash.js +17 -0
  566. package/dist/icons/phone/keypad.js +15 -0
  567. package/dist/icons/phone/phone.js +15 -0
  568. package/dist/icons/phone/phone_add.js +15 -0
  569. package/dist/icons/phone/phone_calling.js +15 -0
  570. package/dist/icons/phone/phone_check.js +15 -0
  571. package/dist/icons/phone/phone_close.js +15 -0
  572. package/dist/icons/phone/phone_decline.js +15 -0
  573. package/dist/icons/phone/phone_forwarded.js +15 -0
  574. package/dist/icons/phone/phone_hash.js +15 -0
  575. package/dist/icons/phone/phone_incoming.js +15 -0
  576. package/dist/icons/phone/phone_outgoing.js +15 -0
  577. package/dist/icons/phone/phone_pause.js +15 -0
  578. package/dist/icons/phone/phone_slash.js +15 -0
  579. package/dist/icons/phone/voicemail.js +15 -0
  580. package/dist/icons/security/key.js +15 -0
  581. package/dist/icons/security/key_slash.js +15 -0
  582. package/dist/icons/security/lock.js +15 -0
  583. package/dist/icons/security/lock_circle.js +15 -0
  584. package/dist/icons/security/lock_open.js +15 -0
  585. package/dist/icons/security/lock_slash.js +15 -0
  586. package/dist/icons/security/shield.js +15 -0
  587. package/dist/icons/security/shield_checkmark.js +15 -0
  588. package/dist/icons/security/shield_lock.js +15 -0
  589. package/dist/icons/security/shield_slash.js +15 -0
  590. package/dist/icons/security/verified.js +15 -0
  591. package/dist/icons/shopping/basket.js +15 -0
  592. package/dist/icons/shopping/cart.js +15 -0
  593. package/dist/icons/shopping/cart_filled.js +15 -0
  594. package/dist/icons/shopping/coupon.js +15 -0
  595. package/dist/icons/shopping/coupon_cut.js +15 -0
  596. package/dist/icons/shopping/delivery.js +15 -0
  597. package/dist/icons/shopping/discount.js +15 -0
  598. package/dist/icons/shopping/gift.js +15 -0
  599. package/dist/icons/shopping/gift_bag.js +15 -0
  600. package/dist/icons/shopping/inventory.js +15 -0
  601. package/dist/icons/shopping/point_of_sale.js +15 -0
  602. package/dist/icons/shopping/shirt.js +15 -0
  603. package/dist/icons/shopping/tag.js +15 -0
  604. package/dist/icons/shopping/tag_diagonal.js +15 -0
  605. package/dist/icons/shopping/tote.js +15 -0
  606. package/dist/icons/special/upload_audio.js +20 -0
  607. package/dist/icons/special/upload_file.js +15 -0
  608. package/dist/icons/special/upload_image.js +17 -0
  609. package/dist/icons/special/upload_video.js +18 -0
  610. package/dist/icons/symbols/at.js +15 -0
  611. package/dist/icons/symbols/cc.js +15 -0
  612. package/dist/icons/symbols/cmd.js +15 -0
  613. package/dist/icons/symbols/facebook.js +15 -0
  614. package/dist/icons/symbols/google.js +18 -0
  615. package/dist/icons/symbols/hash.js +15 -0
  616. package/dist/icons/symbols/instagram.js +27 -0
  617. package/dist/icons/symbols/messenger.js +21 -0
  618. package/dist/icons/symbols/twitter.js +15 -0
  619. package/dist/icons/technology/battery.js +15 -0
  620. package/dist/icons/technology/battery_100.js +15 -0
  621. package/dist/icons/technology/battery_20.js +15 -0
  622. package/dist/icons/technology/battery_40.js +15 -0
  623. package/dist/icons/technology/battery_60.js +15 -0
  624. package/dist/icons/technology/battery_80.js +15 -0
  625. package/dist/icons/technology/battery_charging.js +15 -0
  626. package/dist/icons/technology/battery_slash.js +15 -0
  627. package/dist/icons/technology/devices.js +15 -0
  628. package/dist/icons/technology/floppy_disk.js +15 -0
  629. package/dist/icons/technology/iphone.js +15 -0
  630. package/dist/icons/technology/laptop.js +15 -0
  631. package/dist/icons/technology/mobile.js +15 -0
  632. package/dist/icons/technology/monitor.js +15 -0
  633. package/dist/icons/technology/server.js +15 -0
  634. package/dist/icons/technology/sim_card.js +15 -0
  635. package/dist/icons/technology/usb_stick.js +15 -0
  636. package/dist/icons/text/align_center.js +15 -0
  637. package/dist/icons/text/align_justified.js +15 -0
  638. package/dist/icons/text/align_left.js +15 -0
  639. package/dist/icons/text/align_right.js +15 -0
  640. package/dist/icons/text/code_block.js +15 -0
  641. package/dist/icons/text/divider.js +15 -0
  642. package/dist/icons/text/footnote.js +17 -0
  643. package/dist/icons/text/indent_decrease.js +15 -0
  644. package/dist/icons/text/indent_increase.js +15 -0
  645. package/dist/icons/text/list_ordered.js +15 -0
  646. package/dist/icons/text/list_unordered.js +15 -0
  647. package/dist/icons/text/quote.js +15 -0
  648. package/dist/icons/text/table.js +15 -0
  649. package/dist/icons/time/alarm.js +15 -0
  650. package/dist/icons/time/alarm_checkmark.js +15 -0
  651. package/dist/icons/time/alarm_minus.js +15 -0
  652. package/dist/icons/time/alarm_plus.js +15 -0
  653. package/dist/icons/time/alarm_slash.js +15 -0
  654. package/dist/icons/time/alarm_snooze.js +15 -0
  655. package/dist/icons/time/calendar.js +15 -0
  656. package/dist/icons/time/calendar_add.js +15 -0
  657. package/dist/icons/time/calendar_checkmark.js +15 -0
  658. package/dist/icons/time/calendar_close.js +15 -0
  659. package/dist/icons/time/calendar_dates.js +15 -0
  660. package/dist/icons/time/calendar_minus.js +15 -0
  661. package/dist/icons/time/calendar_plus.js +15 -0
  662. package/dist/icons/time/calendar_scroll.js +17 -0
  663. package/dist/icons/time/clock.js +15 -0
  664. package/dist/icons/time/clock_history.js +15 -0
  665. package/dist/icons/time/stopwatch.js +15 -0
  666. package/dist/icons/time/timer.js +15 -0
  667. package/dist/icons/time/watch.js +15 -0
  668. package/dist/index.js +112 -11878
  669. package/dist/utils/date.js +73 -0
  670. package/dist/utils/function.js +5 -0
  671. package/package.json +1 -1
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+
5
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
6
+
7
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
8
+
9
+ const BorderTop = (props) => (React__default.default.createElement("svg", { viewBox: "0 0 24 24", height: "48", width: "48", focusable: "false", role: "img", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", ...props },
10
+ React__default.default.createElement("path", { d: "M3 6a1 1 0 0 0 2 0 1 1 0 0 1 1-1h12a1 1 0 0 1 1 1 1 1 0 1 0 2 0 3 3 0 0 0-3-3H6a3 3 0 0 0-3 3zm2 5a1 1 0 1 0-2 0v2a1 1 0 1 0 2 0v-2zm14 0a1 1 0 1 1 2 0v2a1 1 0 1 1-2 0v-2zm-5 9a1 1 0 0 1-1 1h-2a1 1 0 1 1 0-2h2a1 1 0 0 1 1 1zm-8 1a1 1 0 1 0 0-2 1 1 0 0 1-1-1 1 1 0 1 0-2 0 3 3 0 0 0 3 3zm11-1a1 1 0 0 0 1 1 3 3 0 0 0 3-3 1 1 0 1 0-2 0 1 1 0 0 1-1 1 1 1 0 0 0-1 1z" })));
11
+
12
+ exports.BorderTop = BorderTop;
@@ -0,0 +1,106 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var plate = require('@udecode/plate');
5
+ var plateAlignment = require('@udecode/plate-alignment');
6
+ var dropdown = require('../../actions/dropdown/dropdown.js');
7
+ var align_center = require('../../../icons/text/align_center.js');
8
+ var align_justified = require('../../../icons/text/align_justified.js');
9
+ var align_left = require('../../../icons/text/align_left.js');
10
+ var align_right = require('../../../icons/text/align_right.js');
11
+ var player_list_play = require('../../../icons/audio_video/player_list_play.js');
12
+ var menu_button = require('../styles/menu_button.js');
13
+
14
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
15
+
16
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
17
+
18
+ const items = [
19
+ {
20
+ value: 'left',
21
+ icon: align_left.AlignLeft,
22
+ },
23
+ {
24
+ value: 'center',
25
+ icon: align_center.AlignCenter,
26
+ },
27
+ {
28
+ value: 'right',
29
+ icon: align_right.AlignRight,
30
+ },
31
+ {
32
+ value: 'justify',
33
+ icon: align_justified.AlignJustified,
34
+ },
35
+ ];
36
+ const AlignmentDropdown = ({ editorRef }) => {
37
+ const alignState = plateAlignment.useAlignDropdownMenuState();
38
+ const { radioGroupProps } = plateAlignment.useAlignDropdownMenu(alignState);
39
+ const current = radioGroupProps.value;
40
+ const IconValue = items.find((item) => item.value === radioGroupProps.value)?.icon ??
41
+ player_list_play.PlayerListPlay;
42
+ const handleAlign = (event) => {
43
+ const value = event.target?.getAttribute('data-value');
44
+ if (!value)
45
+ return;
46
+ plate.setAlign(editorRef, {
47
+ value: value,
48
+ });
49
+ };
50
+ return (React__default.default.createElement(dropdown.Dropdown, { onChange: handleAlign, offset: [0, 0], options: [
51
+ {
52
+ icon: (React__default.default.createElement(menu_button.MenuButton, { "$active": current === 'left' },
53
+ React__default.default.createElement(align_left.AlignLeft, { size: 24, color: "grey-5" }))),
54
+ sx: 'gap: 0px; padding: 4px;',
55
+ value: 'left',
56
+ },
57
+ {
58
+ icon: (React__default.default.createElement(menu_button.MenuButton, { "$active": current === 'center' },
59
+ React__default.default.createElement(align_center.AlignCenter, { size: 24, color: "grey-5" }))),
60
+ sx: 'gap: 0px; padding: 4px;',
61
+ value: 'center',
62
+ },
63
+ {
64
+ icon: (React__default.default.createElement(menu_button.MenuButton, { "$active": current === 'right' },
65
+ React__default.default.createElement(align_right.AlignRight, { size: 24, color: "grey-5" }))),
66
+ sx: 'gap: 0px; padding: 4px;',
67
+ value: 'right',
68
+ },
69
+ {
70
+ icon: (React__default.default.createElement(menu_button.MenuButton, { "$active": current === 'justify' },
71
+ React__default.default.createElement(align_justified.AlignJustified, { size: 24, color: "grey-5" }))),
72
+ sx: 'gap: 0px; padding: 4px;',
73
+ value: 'justify',
74
+ },
75
+ ], maintainState: false, trigger: React__default.default.createElement(IconValue, { size: 24, color: "grey-5" }) }));
76
+ };
77
+ // <AlignToolbarButton
78
+ // as="div"
79
+ // active={alignment === 'left' ? true : undefined}
80
+ // data-value="left"
81
+ // value="left"
82
+ // icon={<AlignLeft size={24} color="grey-5" />}
83
+ // />
84
+ // <AlignToolbarButton
85
+ // as="div"
86
+ // active={alignment === 'center' ? true : undefined}
87
+ // data-value="center"
88
+ // value="center"
89
+ // icon={<AlignCenter size={24} color="grey-5" />}
90
+ // />
91
+ // <AlignToolbarButton
92
+ // as="div"
93
+ // active={alignment === 'right' ? true : undefined}
94
+ // data-value="right"
95
+ // value="right"
96
+ // icon={<AlignRight size={24} color="grey-5" />}
97
+ // />
98
+ // <AlignToolbarButton
99
+ // as="div"
100
+ // active={alignment === 'justify' ? true : undefined}
101
+ // data-value="justify"
102
+ // value="justify"
103
+ // icon={<AlignJustified size={24} color="grey-5" />}
104
+ // />
105
+
106
+ exports.AlignmentDropdown = AlignmentDropdown;
@@ -0,0 +1,70 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var styled = require('styled-components');
5
+ var box = require('../../atoms/box/box.js');
6
+ var button = require('../../actions/button/button.js');
7
+ var heading = require('../../atoms/typography/heading.js');
8
+ var modal = require('../../surfaces/modal/modal.js');
9
+ var paragraph = require('../../atoms/typography/paragraph.js');
10
+ var radio = require('../../input/radio/radio.js');
11
+ var close = require('../../../icons/basic/close.js');
12
+ var insert_button = require('../../../icons/misc/insert_button.js');
13
+ var menu_button = require('../styles/menu_button.js');
14
+ var constants = require('../constants.js');
15
+
16
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
17
+
18
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
19
+
20
+ const ButtonModal = ({ onButtonInsert }) => {
21
+ const [buttonType, setButtonType] = React__default.default.useState();
22
+ const handleButtonInsert = () => {
23
+ buttonType && onButtonInsert(buttonType);
24
+ setButtonType(undefined);
25
+ };
26
+ return (React__default.default.createElement(modal.Modal, null,
27
+ React__default.default.createElement(modal.Modal.Trigger, null,
28
+ React__default.default.createElement(menu_button.MenuButton, null,
29
+ React__default.default.createElement(insert_button.InsertButton, { size: 24, color: "grey-5" }))),
30
+ React__default.default.createElement(modal.Modal.Content, { sx: "border-radius: 16px; max-width: 782px; width: 100%; margin: 24px; padding: 0px;" },
31
+ React__default.default.createElement(box.Box, { "$dir": "column" },
32
+ React__default.default.createElement(box.Box, { "$align": "center", "$justify": "space-between", sx: "padding: 24px; box-shadow: var(--elevation-2);" },
33
+ React__default.default.createElement(box.Box, { "$align": "center", "$gap": 32 },
34
+ React__default.default.createElement(IconWrapper, null,
35
+ React__default.default.createElement(insert_button.InsertButton, { size: 24, color: "hue-blue-1" })),
36
+ React__default.default.createElement(heading.H, { "$bold": true, "$color": "hue-blue-1", "$fontSize": 20, "$lineHeight": 28 }, "Insert Button")),
37
+ React__default.default.createElement(close.Close, { size: 24, sx: "&:hover { cursor: pointer; border-radius: 50%; background-color: var(--color-grey-9); }" })),
38
+ React__default.default.createElement(box.Box, { "$dir": "column", "$gap": 24, sx: "padding: 24px 48px 24px 24px;" },
39
+ React__default.default.createElement(ButtonItem, { active: buttonType === constants.BUTTON_SUBSCRIBE, description: "A button encouraging the reader to purchase a paid subscription to your community", onClick: () => setButtonType(constants.BUTTON_SUBSCRIBE), title: "Subscribe Now" },
40
+ React__default.default.createElement(button.Button, { size: "small", sx: "width: 130px;" }, "Subscribe")),
41
+ React__default.default.createElement(ButtonItem, { active: buttonType === constants.BUTTON_LINK, description: "A button that links to a URL", onClick: () => setButtonType(constants.BUTTON_LINK), title: "Link Button" },
42
+ React__default.default.createElement(button.Button, { size: "small", sx: "width: 130px;" }, "Link"))),
43
+ React__default.default.createElement(box.Box, { "$padding": 24, "$gap": 16, sx: "padding: 24px; background-color: var(--color-white); border-top: 1px solid var(--color-grey-8);" },
44
+ React__default.default.createElement(modal.Modal.Dismiss, null,
45
+ React__default.default.createElement(button.Button, { size: "small", sx: "flex: 1;", type: "outlined", onClick: () => setButtonType(undefined) }, "Cancel")),
46
+ React__default.default.createElement(modal.Modal.Dismiss, null,
47
+ React__default.default.createElement(button.Button, { size: "small", sx: "flex: 1;", onClick: handleButtonInsert }, "Confirm")))))));
48
+ };
49
+ const IconWrapper = styled.styled.div `
50
+ height: 48px;
51
+ width: 48px;
52
+ box-sizing: border-box;
53
+ padding: 12px;
54
+ border-radius: 8px;
55
+ background-color: var(--color-hue-blue-2);
56
+ `;
57
+ const ButtonItem = ({ active, children, description, onClick, title, }) => (React__default.default.createElement(box.Box, { "$dir": "column", onClick: onClick, sx: "border-radius: 16px; box-shadow: var(--elevation-2); cursor: pointer;" },
58
+ React__default.default.createElement(box.Box, { sx: `
59
+ padding: 24px;
60
+ background-color: var(--color-blue-10);
61
+ border-radius: 8px 8px 0px 0px;
62
+ border-bottom: 1px solid var(--color-grey-9);
63
+ ` },
64
+ React__default.default.createElement(radio.Radio, { checked: !!active, sx: "align-items: flex-start;", value: title }),
65
+ React__default.default.createElement(box.Box, { "$dir": "column" },
66
+ React__default.default.createElement(paragraph.P, { "$semiBold": true }, title),
67
+ React__default.default.createElement(paragraph.P, null, description))),
68
+ React__default.default.createElement(box.Box, { "$align": "center", "$justify": "center", sx: "border-radius: 0px 0px 8px 8px; padding: 24px;" }, children)));
69
+
70
+ exports.ButtonModal = ButtonModal;
@@ -0,0 +1,225 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var styled = require('styled-components');
5
+ var plate = require('@udecode/plate');
6
+ var tooltip = require('../../feedback/tooltip/tooltip.js');
7
+ var bold = require('../../../icons/basic/bold.js');
8
+ var file_code = require('../../../icons/file/file_code.js');
9
+ var grid = require('../../../icons/layout/grid.js');
10
+ var headphones = require('../../../icons/audio_video/headphones.js');
11
+ var image = require('../../../icons/basic/image.js');
12
+ var italic = require('../../../icons/basic/italic.js');
13
+ var link = require('../../../icons/basic/link.js');
14
+ var list_ordered = require('../../../icons/text/list_ordered.js');
15
+ var list_unordered = require('../../../icons/text/list_unordered.js');
16
+ var quote = require('../../../icons/text/quote.js');
17
+ var redo = require('../../../icons/arrow/redo.js');
18
+ var strikethrough = require('../../../icons/basic/strikethrough.js');
19
+ var underline = require('../../../icons/basic/underline.js');
20
+ var undo = require('../../../icons/arrow/undo.js');
21
+ var video = require('../../../icons/basic/video.js');
22
+ var constants = require('../constants.js');
23
+ var style_dropdown = require('./style_dropdown.js');
24
+ var alignment_dropdown = require('./alignment_dropdown.js');
25
+ var button_modal = require('./button_modal.js');
26
+
27
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
28
+
29
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
30
+
31
+ const EditorBar = () => {
32
+ const editorRef = plate.useEditorRef('main');
33
+ const stateEditor = plate.useEditorState();
34
+ const audioRef = React__default.default.useRef(null);
35
+ const imageRef = React__default.default.useRef(null);
36
+ const videoRef = React__default.default.useRef(null);
37
+ const boldState = plate.useMarkToolbarButtonState({ nodeType: plate.MARK_BOLD });
38
+ const { props: { pressed: currBold, onClick: handleBold }, } = plate.useMarkToolbarButton(boldState);
39
+ const italicState = plate.useMarkToolbarButtonState({ nodeType: plate.MARK_ITALIC });
40
+ const { props: { pressed: currItalic, onClick: handleItalic }, } = plate.useMarkToolbarButton(italicState);
41
+ const strikethroughState = plate.useMarkToolbarButtonState({
42
+ nodeType: plate.MARK_STRIKETHROUGH,
43
+ });
44
+ const { props: { pressed: currStrikethrough, onClick: handleStrikethrough }, } = plate.useMarkToolbarButton(strikethroughState);
45
+ const underlineState = plate.useMarkToolbarButtonState({
46
+ nodeType: plate.MARK_UNDERLINE,
47
+ });
48
+ const { props: { pressed: currUnderline, onClick: handleUnderline }, } = plate.useMarkToolbarButton(underlineState);
49
+ const inlineCodeState = plate.useMarkToolbarButtonState({ nodeType: plate.MARK_CODE });
50
+ const { props: { pressed: currInlineCode, onClick: handleInlineCode }, } = plate.useMarkToolbarButton(inlineCodeState);
51
+ const linkState = plate.useLinkToolbarButtonState();
52
+ const { props: { pressed: currLink, onClick: handleLink }, } = plate.useLinkToolbarButton(linkState);
53
+ const orderedListState = plate.useListToolbarButtonState({ nodeType: plate.ELEMENT_OL });
54
+ const { props: { pressed: currOrderedList, onClick: handleOrderedList }, } = plate.useListToolbarButton(orderedListState);
55
+ const unorderedListState = plate.useListToolbarButtonState({
56
+ nodeType: plate.ELEMENT_UL,
57
+ });
58
+ const { props: { pressed: currUnorderedList, onClick: handleUnorderedList }, } = plate.useListToolbarButton(unorderedListState);
59
+ const handleAudioChange = async (event) => {
60
+ const file = event.target?.files?.[0];
61
+ if (!file)
62
+ return;
63
+ /**
64
+ * TODO: Insert audio component
65
+ */
66
+ };
67
+ const handleBlockquote = () => {
68
+ plate.toggleNodeType(stateEditor, { activeType: plate.ELEMENT_BLOCKQUOTE });
69
+ };
70
+ const handleButton = (type) => {
71
+ plate.insertNodes(editorRef, [
72
+ {
73
+ type: plate.getPluginType(editorRef, constants.ELEMENT_BUTTON),
74
+ buttonType: type,
75
+ children: [
76
+ {
77
+ text: 'Subscribe',
78
+ },
79
+ ],
80
+ },
81
+ ]);
82
+ };
83
+ const handleRedo = () => editorRef.redo();
84
+ const handleUndo = () => editorRef.undo();
85
+ const handleVideoChange = async () => {
86
+ const files = videoRef.current?.files;
87
+ if (!files)
88
+ return;
89
+ /**
90
+ * TODO: Insert video component
91
+ */
92
+ };
93
+ return (React__default.default.createElement(Wrapper, null,
94
+ React__default.default.createElement(Menu, { "aria-label": "editor-navigation" },
95
+ React__default.default.createElement(MenuSection, null,
96
+ React__default.default.createElement(tooltip.Tooltip, { content: "Undo", place: "top" },
97
+ React__default.default.createElement(MenuButton, { "$active": false, onClick: handleUndo },
98
+ React__default.default.createElement(undo.Undo, { size: 24, color: "grey-5" }))),
99
+ React__default.default.createElement(tooltip.Tooltip, { content: "Redo", place: "top" },
100
+ React__default.default.createElement(MenuButton, { "$active": false, onClick: handleRedo },
101
+ React__default.default.createElement(redo.Redo, { size: 24, color: "grey-5" })))),
102
+ React__default.default.createElement(Divider, null),
103
+ React__default.default.createElement(MenuSection, null,
104
+ React__default.default.createElement(style_dropdown.StyleDropdown, { editorRef: editorRef })),
105
+ React__default.default.createElement(Divider, null),
106
+ React__default.default.createElement(MenuSection, null,
107
+ React__default.default.createElement(tooltip.Tooltip, { content: "Bold", place: "top" },
108
+ React__default.default.createElement(MenuButton, { "$active": currBold, onClick: handleBold },
109
+ React__default.default.createElement(bold.Bold, { size: 24, color: "grey-5" }))),
110
+ React__default.default.createElement(tooltip.Tooltip, { content: "Italic", place: "top" },
111
+ React__default.default.createElement(MenuButton, { "$active": currItalic, onClick: handleItalic },
112
+ React__default.default.createElement(italic.Italic, { size: 24, color: "grey-5" }))),
113
+ React__default.default.createElement(tooltip.Tooltip, { content: "Underline", place: "top" },
114
+ React__default.default.createElement(MenuButton, { "$active": currUnderline, onClick: handleUnderline },
115
+ React__default.default.createElement(underline.Underline, { size: 24, color: "grey-5" }))),
116
+ React__default.default.createElement(tooltip.Tooltip, { content: "Strikethrough", place: "top" },
117
+ React__default.default.createElement(MenuButton, { "$active": currStrikethrough, onClick: handleStrikethrough },
118
+ React__default.default.createElement(strikethrough.Strikethrough, { size: 24, color: "grey-5" }))),
119
+ React__default.default.createElement(tooltip.Tooltip, { content: "Inline code", place: "top" },
120
+ React__default.default.createElement(MenuButton, { "$active": currInlineCode, onClick: handleInlineCode },
121
+ React__default.default.createElement(file_code.FileCode, { size: 24, color: "grey-5" })))),
122
+ React__default.default.createElement(Divider, null),
123
+ React__default.default.createElement(MenuSection, null,
124
+ React__default.default.createElement(MenuButton, { "$active": false, as: "div" },
125
+ React__default.default.createElement(alignment_dropdown.AlignmentDropdown, { editorRef: editorRef }))),
126
+ React__default.default.createElement(Divider, null),
127
+ React__default.default.createElement(MenuSection, null,
128
+ React__default.default.createElement(tooltip.Tooltip, { content: "Link", place: "top" },
129
+ React__default.default.createElement(MenuButton, { "$active": currLink, onClick: handleLink },
130
+ React__default.default.createElement(link.Link, { size: 24, color: "grey-5" }))),
131
+ React__default.default.createElement(tooltip.Tooltip, { content: "Image", place: "top" },
132
+ React__default.default.createElement(MenuButton, { "$active": false, as: "label" },
133
+ React__default.default.createElement("div", null,
134
+ React__default.default.createElement("input", { accept: "image/*", ref: imageRef, style: { display: 'none' }, type: "file" }),
135
+ React__default.default.createElement(image.Image, { size: 24, color: "grey-5" })))),
136
+ React__default.default.createElement(tooltip.Tooltip, { content: "Video", place: "top" },
137
+ React__default.default.createElement(MenuButton, { "$active": false, as: "label", onChange: handleVideoChange },
138
+ React__default.default.createElement("div", { onClick: () => videoRef.current?.click() },
139
+ React__default.default.createElement("input", { accept: "video/*", ref: videoRef, style: { display: 'none' }, type: "file" }),
140
+ React__default.default.createElement(video.Video, { size: 24, color: "grey-5" })))),
141
+ React__default.default.createElement(tooltip.Tooltip, { content: "Audio", place: "top" },
142
+ React__default.default.createElement(MenuButton, { "$active": false, as: "label", onChange: handleAudioChange },
143
+ React__default.default.createElement("div", { onClick: () => audioRef.current?.click() },
144
+ React__default.default.createElement("input", { accept: "audio/*", ref: audioRef, style: { display: 'none' }, type: "file" }),
145
+ React__default.default.createElement(headphones.Headphones, { size: 24, color: "grey-5" })))),
146
+ React__default.default.createElement(tooltip.Tooltip, { content: "Blockquote", place: "top" },
147
+ React__default.default.createElement(MenuButton, { "$active": false, onClick: handleBlockquote },
148
+ React__default.default.createElement(quote.Quote, { size: 24, color: "grey-5" }))),
149
+ React__default.default.createElement(tooltip.Tooltip, { content: "Add a button", place: "top" },
150
+ React__default.default.createElement(button_modal.ButtonModal, { onButtonInsert: handleButton }))),
151
+ React__default.default.createElement(Divider, null),
152
+ React__default.default.createElement(MenuSection, null,
153
+ React__default.default.createElement(tooltip.Tooltip, { content: "Unordered List", place: "top" },
154
+ React__default.default.createElement(MenuButton, { "$active": currUnorderedList, onClick: handleUnorderedList },
155
+ React__default.default.createElement(list_unordered.ListUnordered, { size: 24, color: "grey-5" }))),
156
+ React__default.default.createElement(tooltip.Tooltip, { content: "Ordered List", place: "top" },
157
+ React__default.default.createElement(MenuButton, { "$active": currOrderedList, onClick: handleOrderedList },
158
+ React__default.default.createElement(list_ordered.ListOrdered, { size: 24, color: "grey-5" }))),
159
+ React__default.default.createElement(tooltip.Tooltip, { content: "Add a button", place: "top" },
160
+ React__default.default.createElement(MenuButton, { "$active": currOrderedList, onClick: () => {
161
+ plate.insertTable(editorRef);
162
+ } },
163
+ React__default.default.createElement(grid.Grid, { size: 24, color: "grey-5" })))))));
164
+ };
165
+ const Wrapper = styled.styled.div `
166
+ position: sticky;
167
+ z-index: 2;
168
+ left: 0;
169
+ right: 0;
170
+ top: 0;
171
+ `;
172
+ const Menu = styled.styled.nav `
173
+ display: flex;
174
+ gap: 12px;
175
+ justify-content: center;
176
+ max-width: 1200px;
177
+ width: 100%;
178
+ margin: 0 auto;
179
+ padding: 14px 24px;
180
+ background-color: var(--color-white);
181
+ `;
182
+ const MenuSection = styled.styled.div `
183
+ display: flex;
184
+ gap: 16px;
185
+ align-items: center;
186
+ width: fit-content;
187
+ flex-shrink: 0;
188
+ `;
189
+ const MenuButton = styled.styled.button `
190
+ padding: 2px;
191
+ border: none;
192
+ outline: none;
193
+ cursor: pointer;
194
+ box-sizing: border-box;
195
+ height: 28px;
196
+ width: 28px;
197
+ border-radius: 2px;
198
+
199
+ &:hover:not(:disabled) {
200
+ padding: 1px;
201
+ border: 1px solid var(--color-grey-8);
202
+ }
203
+
204
+ &:active:not(:disabled) {
205
+ background-color: var(--color-grey-9);
206
+ }
207
+
208
+ &:disabled {
209
+ background-color: var(--color-white) !important;
210
+ cursor: initial;
211
+ svg {
212
+ fill: var(--color-grey-7) !important;
213
+ }
214
+ }
215
+
216
+ background-color: ${({ $active }) => $active ? 'var(--color-grey-9)' : 'transparent'};
217
+ `;
218
+ const Divider = styled.styled.div `
219
+ width: 1px;
220
+ height: 28px;
221
+ background-color: var(--color-grey-9);
222
+ `;
223
+
224
+ exports.EditorBar = EditorBar;
225
+ exports.MenuButton = MenuButton;
@@ -0,0 +1,74 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var plate = require('@udecode/plate');
5
+ var button = require('../../actions/button/button.js');
6
+ var dropdown = require('../../actions/dropdown/dropdown.js');
7
+
8
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
9
+
10
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
11
+
12
+ const items = [
13
+ {
14
+ value: plate.ELEMENT_PARAGRAPH,
15
+ label: 'Paragraph',
16
+ description: 'Paragraph',
17
+ },
18
+ {
19
+ value: plate.ELEMENT_H1,
20
+ label: 'Heading 1',
21
+ description: 'Heading 1',
22
+ },
23
+ {
24
+ value: plate.ELEMENT_H2,
25
+ label: 'Heading 2',
26
+ description: 'Heading 2',
27
+ },
28
+ {
29
+ value: plate.ELEMENT_H3,
30
+ label: 'Heading 3',
31
+ description: 'Heading 3',
32
+ },
33
+ {
34
+ value: plate.ELEMENT_H4,
35
+ label: 'Heading 4',
36
+ description: 'Heading 4',
37
+ },
38
+ {
39
+ value: plate.ELEMENT_H5,
40
+ label: 'Heading 5',
41
+ description: 'Heading 5',
42
+ },
43
+ {
44
+ value: plate.ELEMENT_H6,
45
+ label: 'Heading 6',
46
+ description: 'Heading 6',
47
+ },
48
+ ];
49
+ // eslint-disable-next-line
50
+ const defaultItem = items.find((item) => item.value === plate.ELEMENT_PARAGRAPH);
51
+ const StyleDropdown = ({ editorRef }) => {
52
+ let value = plate.ELEMENT_PARAGRAPH;
53
+ const handleChange = (event) => {
54
+ const value = event.target.getAttribute('data-value');
55
+ if (!value)
56
+ return;
57
+ plate.toggleNodeType(editorRef, { activeType: value });
58
+ };
59
+ if (plate.isCollapsed(editorRef?.selection)) {
60
+ const entry = plate.findNode(editorRef, {
61
+ match: (n) => plate.isBlock(editorRef, n),
62
+ });
63
+ if (entry) {
64
+ value =
65
+ items.find((item) => item.value === entry[0].type)?.value ??
66
+ plate.ELEMENT_PARAGRAPH;
67
+ }
68
+ }
69
+ const selectedItem = items.find((item) => item.value === value) ?? defaultItem;
70
+ const { label: selectedItemLabel } = selectedItem;
71
+ return (React__default.default.createElement(dropdown.Dropdown, { maintainState: false, onChange: handleChange, options: items, trigger: React__default.default.createElement(button.Button, { type: "special", size: "small", sx: "padding: 1px 4px; & > * { color: var(--color-grey-5); }" }, selectedItemLabel) }));
72
+ };
73
+
74
+ exports.StyleDropdown = StyleDropdown;
@@ -0,0 +1,17 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var plate = require('@udecode/plate');
5
+ var paragraph = require('../../../atoms/typography/paragraph.js');
6
+
7
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
8
+
9
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
10
+
11
+ const BlockquoteElement = React__default.default.forwardRef(({ children, ...props }, ref) => {
12
+ return (React__default.default.createElement(plate.PlateElement, { asChild: true, ref: ref, ...props },
13
+ React__default.default.createElement(React__default.default.Fragment, null,
14
+ React__default.default.createElement(paragraph.P, { as: "blockquote", sx: "padding-left: 16px; border-left: 1px solid var(--color-grey-8);" }, children))));
15
+ });
16
+
17
+ exports.BlockquoteElement = BlockquoteElement;
@@ -0,0 +1,54 @@
1
+ 'use strict';
2
+
3
+ var plate = require('@udecode/plate');
4
+ var text = require('./text.js');
5
+ var buttons = require('./buttons.js');
6
+ var qa = require('./qa.js');
7
+ var video = require('./video.js');
8
+
9
+ const blocks = [
10
+ buttons.createButtonsPlugin(),
11
+ plate.createBlockquotePlugin(),
12
+ plate.createCodeBlockPlugin(),
13
+ plate.createHeadingPlugin(),
14
+ plate.createHorizontalRulePlugin(),
15
+ plate.createImagePlugin({
16
+ options: {
17
+ disableUploadInsert: true,
18
+ disableEmbedInsert: true,
19
+ },
20
+ }),
21
+ qa.createQAPlugin(),
22
+ plate.createTextIndentPlugin(),
23
+ plate.createIndentListPlugin({
24
+ inject: {
25
+ props: {
26
+ validTypes: [
27
+ plate.ELEMENT_PARAGRAPH,
28
+ plate.ELEMENT_H1,
29
+ plate.ELEMENT_H2,
30
+ plate.ELEMENT_H3,
31
+ plate.ELEMENT_H4,
32
+ plate.ELEMENT_H5,
33
+ plate.ELEMENT_H6,
34
+ plate.ELEMENT_OL,
35
+ plate.ELEMENT_UL,
36
+ ],
37
+ },
38
+ },
39
+ }),
40
+ plate.createListPlugin(),
41
+ plate.createMediaEmbedPlugin(),
42
+ text.createParagraphPlugin(),
43
+ text.createHOnePlugin(),
44
+ text.createHTwoPlugin(),
45
+ text.createHThreePlugin(),
46
+ text.createHFourPlugin(),
47
+ text.createHFivePlugin(),
48
+ text.createHSixPlugin(),
49
+ plate.createResetNodePlugin(),
50
+ plate.createTablePlugin(),
51
+ video.createVideoTitlePlugin(),
52
+ ];
53
+
54
+ exports.blocks = blocks;
@@ -0,0 +1,91 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var styled = require('styled-components');
5
+ var plate = require('@udecode/plate');
6
+ var button = require('../../../actions/button/button.js');
7
+ var constants = require('../../constants.js');
8
+
9
+ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
10
+
11
+ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
12
+
13
+ const Button = React__default.default.forwardRef(({ children, editor, element, ...props }, ref) => {
14
+ const { buttonType, color } = element;
15
+ const pressed = !!editor?.selection &&
16
+ plate.someNode(editor, {
17
+ match: { type: plate.getPluginType(editor, constants.ELEMENT_BUTTON) },
18
+ });
19
+ const currBlock = plate.getBlockAbove(editor, {
20
+ at: editor.selection?.focus,
21
+ match: {
22
+ type: plate.getPluginType(editor, constants.ELEMENT_BUTTON),
23
+ buttonType: buttonType,
24
+ },
25
+ });
26
+ const editable = !plate.isEditorReadOnly(editor);
27
+ const handleColorChange = (color) => {
28
+ if (currBlock) {
29
+ plate.setNodes(editor, {
30
+ color,
31
+ }, {
32
+ at: currBlock ? currBlock[1] : undefined,
33
+ });
34
+ }
35
+ };
36
+ const ColorMenu = () => !pressed || !editable ? null : (React__default.default.createElement(ColorMenuComponent, { contentEditable: false }, constants.COLORS.map((color) => (React__default.default.createElement(ColorItem, { "$color": color, contentEditable: false, key: color, onClick: (event) => {
37
+ event.stopPropagation();
38
+ handleColorChange(color);
39
+ } })))));
40
+ return (React__default.default.createElement(plate.PlateElement, { asChild: true, editor: editor, element: element, ref: ref, ...props },
41
+ React__default.default.createElement(React__default.default.Fragment, null,
42
+ React__default.default.createElement(ColorMenu, null),
43
+ React__default.default.createElement(button.Button, { size: "small", sx: `
44
+ margin-left: auto !important;
45
+ margin-right: auto !important;
46
+ background-color: ${color ? color : 'var(--color-blue-5)'} !important;
47
+ border-color: ${color ? color : 'var(--color-blue-5)'} !important;
48
+ &:hover {
49
+ background-color: ${color ? color : 'var(--color-blue-5)'} !important;
50
+ filter: brightness(85%);
51
+ }
52
+ ` }, children))));
53
+ });
54
+ const ColorMenuComponent = styled.styled.div `
55
+ display: flex;
56
+ justify-content: center;
57
+ align-items: center;
58
+ gap: 16px;
59
+ z-index: 5;
60
+ position: absolute;
61
+ transform: translateY(24px);
62
+ left: calc(50% - 148px);
63
+ border-radius: 16px;
64
+ padding: 8px 16px;
65
+ box-shadow: var(--elevation-1);
66
+ background-color: var(--color-white);
67
+ `;
68
+ const ColorItem = styled.styled.div `
69
+ width: 24px;
70
+ height: 24px;
71
+ border-radius: 50%;
72
+ background-color: ${({ $color }) => $color};
73
+ cursor: pointer;
74
+ `;
75
+ const createButtonsPlugin = plate.createPluginFactory({
76
+ key: constants.ELEMENT_BUTTON,
77
+ type: constants.ELEMENT_BUTTON,
78
+ isElement: true,
79
+ component: Button,
80
+ then: () => ({
81
+ inject: {
82
+ props: {
83
+ classNames: undefined,
84
+ validTypes: [plate.ELEMENT_PARAGRAPH],
85
+ },
86
+ },
87
+ }),
88
+ });
89
+
90
+ exports.Button = Button;
91
+ exports.createButtonsPlugin = createButtonsPlugin;