@selfcommunity/react-ui 0.7.0-alpha.335 → 0.7.0-alpha.336

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 (316) hide show
  1. package/lib/cjs/components/BottomNavigation/BottomNavigation.js +8 -11
  2. package/lib/cjs/components/Composer/Attributes/Attributes.d.ts +22 -0
  3. package/lib/cjs/components/Composer/Attributes/Attributes.js +41 -0
  4. package/lib/cjs/components/Composer/Attributes/index.d.ts +3 -0
  5. package/lib/cjs/components/Composer/{Poll → Attributes}/index.js +2 -2
  6. package/lib/cjs/components/Composer/Composer.d.ts +53 -84
  7. package/lib/cjs/components/Composer/Composer.js +249 -443
  8. package/lib/cjs/components/Composer/Content/ContentDiscussion/ContentDiscussion.d.ts +32 -0
  9. package/lib/cjs/components/Composer/Content/ContentDiscussion/ContentDiscussion.js +53 -0
  10. package/lib/cjs/components/Composer/Content/ContentDiscussion/index.d.ts +3 -0
  11. package/lib/cjs/components/Composer/Content/ContentDiscussion/index.js +5 -0
  12. package/lib/cjs/components/Composer/Content/ContentPoll/ContentPoll.d.ts +26 -0
  13. package/lib/cjs/components/Composer/Content/ContentPoll/ContentPoll.js +129 -0
  14. package/lib/cjs/components/Composer/Content/ContentPoll/index.d.ts +3 -0
  15. package/lib/cjs/components/Composer/Content/ContentPoll/index.js +5 -0
  16. package/lib/cjs/components/Composer/Content/ContentPost/ContentPost.d.ts +32 -0
  17. package/lib/cjs/components/Composer/Content/ContentPost/ContentPost.js +51 -0
  18. package/lib/cjs/components/Composer/Content/ContentPost/index.d.ts +3 -0
  19. package/lib/cjs/components/Composer/Content/ContentPost/index.js +5 -0
  20. package/lib/cjs/components/Composer/Layer/AudienceLayer/AudienceLayer.d.ts +11 -0
  21. package/lib/cjs/components/Composer/Layer/AudienceLayer/AudienceLayer.js +74 -0
  22. package/lib/cjs/components/Composer/Layer/AudienceLayer/index.d.ts +3 -0
  23. package/lib/cjs/components/Composer/Layer/AudienceLayer/index.js +5 -0
  24. package/lib/cjs/components/Composer/Layer/CategoryLayer/CategoryLayer.d.ts +9 -0
  25. package/lib/cjs/components/Composer/Layer/CategoryLayer/CategoryLayer.js +41 -0
  26. package/lib/cjs/components/Composer/Layer/CategoryLayer/index.d.ts +3 -0
  27. package/lib/cjs/components/Composer/Layer/CategoryLayer/index.js +5 -0
  28. package/lib/cjs/components/Composer/Layer/CloseLayer/CloseLayer.d.ts +7 -0
  29. package/lib/cjs/components/Composer/Layer/CloseLayer/CloseLayer.js +41 -0
  30. package/lib/cjs/components/Composer/Layer/CloseLayer/index.d.ts +3 -0
  31. package/lib/cjs/components/Composer/{Audience → Layer/CloseLayer}/index.js +2 -2
  32. package/lib/cjs/components/Composer/Layer/LocationLayer/LocationLayer.d.ts +9 -0
  33. package/lib/cjs/components/Composer/Layer/LocationLayer/LocationLayer.js +41 -0
  34. package/lib/cjs/components/Composer/Layer/LocationLayer/index.d.ts +3 -0
  35. package/lib/cjs/components/Composer/Layer/LocationLayer/index.js +5 -0
  36. package/lib/cjs/components/Composer/Skeleton.d.ts +0 -4
  37. package/lib/cjs/components/Composer/Skeleton.js +10 -72
  38. package/lib/cjs/components/Composer/TypeSwitchButtonGroup/TypeSwitchButtonGroup.d.ts +6 -0
  39. package/lib/cjs/components/Composer/TypeSwitchButtonGroup/TypeSwitchButtonGroup.js +47 -0
  40. package/lib/cjs/components/Composer/TypeSwitchButtonGroup/index.d.ts +3 -0
  41. package/lib/cjs/components/Composer/TypeSwitchButtonGroup/index.js +5 -0
  42. package/lib/cjs/components/Composer/constants.d.ts +1 -0
  43. package/lib/cjs/components/Composer/constants.js +4 -0
  44. package/lib/cjs/components/Composer/index.d.ts +2 -3
  45. package/lib/cjs/components/Composer/index.js +1 -6
  46. package/lib/cjs/components/ComposerIconButton/ComposerIconButton.d.ts +2 -1
  47. package/lib/cjs/components/ComposerIconButton/ComposerIconButton.js +8 -8
  48. package/lib/cjs/components/Editor/Editor.js +14 -5
  49. package/lib/cjs/components/Feed/prefetchedData.d.ts +2 -368
  50. package/lib/cjs/components/Feed/prefetchedData.js +17 -16
  51. package/lib/cjs/components/FeedObject/Actions/Share/Share.js +2 -2
  52. package/lib/cjs/components/FeedObject/FeedObject.d.ts +2 -2
  53. package/lib/cjs/components/FeedObject/FeedObject.js +5 -5
  54. package/lib/cjs/components/FeedObjectMediaPreview/FeedObjectMediaPreview.d.ts +38 -0
  55. package/lib/cjs/components/FeedObjectMediaPreview/FeedObjectMediaPreview.js +66 -0
  56. package/lib/cjs/components/FeedObjectMediaPreview/index.d.ts +3 -0
  57. package/lib/cjs/components/FeedObjectMediaPreview/index.js +5 -0
  58. package/lib/cjs/components/InlineComposerWidget/InlineComposerWidget.d.ts +25 -33
  59. package/lib/cjs/components/InlineComposerWidget/InlineComposerWidget.js +34 -67
  60. package/lib/cjs/components/InlineComposerWidget/Skeleton.d.ts +4 -5
  61. package/lib/cjs/components/InlineComposerWidget/Skeleton.js +17 -37
  62. package/lib/cjs/components/InlineComposerWidget/constants.d.ts +1 -0
  63. package/lib/cjs/components/InlineComposerWidget/constants.js +4 -0
  64. package/lib/cjs/components/LocationAutocomplete/LocationAutocomplete.d.ts +2 -2
  65. package/lib/cjs/components/LocationAutocomplete/LocationAutocomplete.js +4 -2
  66. package/lib/cjs/components/NavigationMenuIconButton/NavigationMenuIconButton.d.ts +1 -1
  67. package/lib/cjs/components/NavigationToolbarMobile/NavigationToolbarMobile.d.ts +0 -5
  68. package/lib/cjs/components/NavigationToolbarMobile/NavigationToolbarMobile.js +19 -30
  69. package/lib/cjs/components/NavigationToolbarMobile/Skeleton.js +5 -6
  70. package/lib/cjs/components/NavigationToolbarMobile/constants.d.ts +1 -0
  71. package/lib/cjs/components/NavigationToolbarMobile/constants.js +4 -0
  72. package/lib/cjs/constants/Composer.d.ts +2 -0
  73. package/lib/cjs/constants/Composer.js +4 -2
  74. package/lib/cjs/index.d.ts +12 -12
  75. package/lib/cjs/index.js +14 -17
  76. package/lib/cjs/shared/Lightbox/Lightbox.js +2 -2
  77. package/lib/{esm/shared/Media/Image/PreviewComponent.d.ts → cjs/shared/Media/File/DisplayComponent.d.ts} +1 -11
  78. package/lib/cjs/shared/Media/{Image/PreviewComponent.js → File/DisplayComponent.js} +55 -145
  79. package/lib/{esm/shared/Media/Image/PreviewImage → cjs/shared/Media/File/Lightbox}/index.d.ts +4 -3
  80. package/lib/cjs/shared/Media/File/Lightbox/index.js +37 -0
  81. package/lib/cjs/shared/Media/File/PreviewComponent.d.ts +9 -0
  82. package/lib/cjs/shared/Media/File/PreviewComponent.js +51 -0
  83. package/lib/cjs/shared/Media/File/TriggerButton.d.ts +12 -0
  84. package/lib/cjs/shared/Media/File/TriggerButton.js +112 -0
  85. package/lib/cjs/shared/Media/File/asUploadButton.d.ts +7 -0
  86. package/lib/cjs/shared/Media/File/asUploadButton.js +30 -0
  87. package/lib/cjs/shared/Media/File/constants.d.ts +1 -0
  88. package/lib/cjs/shared/Media/File/constants.js +4 -0
  89. package/lib/cjs/shared/Media/File/filter.d.ts +3 -0
  90. package/lib/cjs/shared/Media/File/filter.js +4 -0
  91. package/lib/cjs/shared/Media/File/index.d.ts +3 -0
  92. package/lib/cjs/shared/Media/File/index.js +16 -0
  93. package/lib/cjs/shared/Media/Link/DisplayComponent.d.ts +20 -0
  94. package/lib/cjs/shared/Media/Link/DisplayComponent.js +69 -0
  95. package/lib/cjs/shared/Media/Link/LayerComponent.d.ts +9 -0
  96. package/lib/cjs/shared/Media/Link/LayerComponent.js +46 -0
  97. package/lib/cjs/shared/Media/Link/PreviewComponent.d.ts +7 -21
  98. package/lib/cjs/shared/Media/Link/PreviewComponent.js +28 -56
  99. package/lib/cjs/shared/Media/Link/TriggerButton.d.ts +4 -0
  100. package/lib/cjs/shared/Media/Link/TriggerButton.js +21 -0
  101. package/lib/cjs/shared/Media/Link/UrlTextField/index.js +1 -2
  102. package/lib/cjs/shared/Media/Link/constants.d.ts +1 -0
  103. package/lib/cjs/shared/Media/Link/constants.js +4 -0
  104. package/lib/cjs/shared/Media/Link/filter.d.ts +3 -0
  105. package/lib/cjs/shared/Media/Link/filter.js +4 -0
  106. package/lib/cjs/shared/Media/Link/index.js +9 -8
  107. package/lib/cjs/shared/Media/Share/DisplayComponent.d.ts +11 -0
  108. package/lib/cjs/shared/Media/Share/DisplayComponent.js +31 -0
  109. package/lib/cjs/shared/Media/Share/constants.d.ts +1 -0
  110. package/lib/cjs/shared/Media/Share/constants.js +4 -0
  111. package/lib/cjs/shared/Media/Share/filter.d.ts +3 -0
  112. package/lib/cjs/shared/Media/Share/filter.js +4 -0
  113. package/lib/cjs/shared/Media/Share/index.js +7 -7
  114. package/lib/cjs/shared/Media/index.d.ts +2 -4
  115. package/lib/cjs/shared/Media/index.js +3 -7
  116. package/lib/cjs/types/composer.d.ts +15 -0
  117. package/lib/cjs/types/composer.js +2 -0
  118. package/lib/cjs/types/media.d.ts +9 -5
  119. package/lib/esm/components/BottomNavigation/BottomNavigation.js +8 -11
  120. package/lib/esm/components/Composer/Attributes/Attributes.d.ts +22 -0
  121. package/lib/esm/components/Composer/Attributes/Attributes.js +38 -0
  122. package/lib/esm/components/Composer/Attributes/index.d.ts +3 -0
  123. package/lib/esm/components/Composer/Attributes/index.js +2 -0
  124. package/lib/esm/components/Composer/Composer.d.ts +53 -84
  125. package/lib/esm/components/Composer/Composer.js +246 -439
  126. package/lib/esm/components/Composer/Content/ContentDiscussion/ContentDiscussion.d.ts +32 -0
  127. package/lib/esm/components/Composer/Content/ContentDiscussion/ContentDiscussion.js +50 -0
  128. package/lib/esm/components/Composer/Content/ContentDiscussion/index.d.ts +3 -0
  129. package/lib/esm/components/Composer/Content/ContentDiscussion/index.js +2 -0
  130. package/lib/esm/components/Composer/Content/ContentPoll/ContentPoll.d.ts +26 -0
  131. package/lib/esm/components/Composer/Content/ContentPoll/ContentPoll.js +127 -0
  132. package/lib/esm/components/Composer/Content/ContentPoll/index.d.ts +3 -0
  133. package/lib/esm/components/Composer/Content/ContentPoll/index.js +2 -0
  134. package/lib/esm/components/Composer/Content/ContentPost/ContentPost.d.ts +32 -0
  135. package/lib/esm/components/Composer/Content/ContentPost/ContentPost.js +49 -0
  136. package/lib/esm/components/Composer/Content/ContentPost/index.d.ts +3 -0
  137. package/lib/esm/components/Composer/Content/ContentPost/index.js +2 -0
  138. package/lib/esm/components/Composer/Layer/AudienceLayer/AudienceLayer.d.ts +11 -0
  139. package/lib/esm/components/Composer/Layer/AudienceLayer/AudienceLayer.js +72 -0
  140. package/lib/esm/components/Composer/Layer/AudienceLayer/index.d.ts +3 -0
  141. package/lib/esm/components/Composer/Layer/AudienceLayer/index.js +2 -0
  142. package/lib/esm/components/Composer/Layer/CategoryLayer/CategoryLayer.d.ts +9 -0
  143. package/lib/esm/components/Composer/Layer/CategoryLayer/CategoryLayer.js +39 -0
  144. package/lib/esm/components/Composer/Layer/CategoryLayer/index.d.ts +3 -0
  145. package/lib/esm/components/Composer/Layer/CategoryLayer/index.js +2 -0
  146. package/lib/esm/components/Composer/Layer/CloseLayer/CloseLayer.d.ts +7 -0
  147. package/lib/esm/components/Composer/Layer/CloseLayer/CloseLayer.js +39 -0
  148. package/lib/esm/components/Composer/Layer/CloseLayer/index.d.ts +3 -0
  149. package/lib/esm/components/Composer/Layer/CloseLayer/index.js +2 -0
  150. package/lib/esm/components/Composer/Layer/LocationLayer/LocationLayer.d.ts +9 -0
  151. package/lib/esm/components/Composer/Layer/LocationLayer/LocationLayer.js +39 -0
  152. package/lib/esm/components/Composer/Layer/LocationLayer/index.d.ts +3 -0
  153. package/lib/esm/components/Composer/Layer/LocationLayer/index.js +2 -0
  154. package/lib/esm/components/Composer/Skeleton.d.ts +0 -4
  155. package/lib/esm/components/Composer/Skeleton.js +6 -68
  156. package/lib/esm/components/Composer/TypeSwitchButtonGroup/TypeSwitchButtonGroup.d.ts +6 -0
  157. package/lib/esm/components/Composer/TypeSwitchButtonGroup/TypeSwitchButtonGroup.js +44 -0
  158. package/lib/esm/components/Composer/TypeSwitchButtonGroup/index.d.ts +3 -0
  159. package/lib/esm/components/Composer/TypeSwitchButtonGroup/index.js +2 -0
  160. package/lib/esm/components/Composer/constants.d.ts +1 -0
  161. package/lib/esm/components/Composer/constants.js +1 -0
  162. package/lib/esm/components/Composer/index.d.ts +2 -3
  163. package/lib/esm/components/Composer/index.js +1 -3
  164. package/lib/esm/components/ComposerIconButton/ComposerIconButton.d.ts +2 -1
  165. package/lib/esm/components/ComposerIconButton/ComposerIconButton.js +8 -8
  166. package/lib/esm/components/Editor/Editor.js +16 -7
  167. package/lib/esm/components/Feed/Feed.js +4 -4
  168. package/lib/esm/components/Feed/prefetchedData.d.ts +2 -368
  169. package/lib/esm/components/Feed/prefetchedData.js +17 -16
  170. package/lib/esm/components/FeedObject/Actions/Share/Share.js +4 -4
  171. package/lib/esm/components/FeedObject/FeedObject.d.ts +2 -2
  172. package/lib/esm/components/FeedObject/FeedObject.js +8 -8
  173. package/lib/esm/components/FeedObjectMediaPreview/FeedObjectMediaPreview.d.ts +38 -0
  174. package/lib/esm/components/FeedObjectMediaPreview/FeedObjectMediaPreview.js +64 -0
  175. package/lib/esm/components/FeedObjectMediaPreview/index.d.ts +3 -0
  176. package/lib/esm/components/FeedObjectMediaPreview/index.js +2 -0
  177. package/lib/esm/components/InlineComposerWidget/InlineComposerWidget.d.ts +25 -33
  178. package/lib/esm/components/InlineComposerWidget/InlineComposerWidget.js +31 -64
  179. package/lib/esm/components/InlineComposerWidget/Skeleton.d.ts +4 -5
  180. package/lib/esm/components/InlineComposerWidget/Skeleton.js +15 -35
  181. package/lib/esm/components/InlineComposerWidget/constants.d.ts +1 -0
  182. package/lib/esm/components/InlineComposerWidget/constants.js +1 -0
  183. package/lib/esm/components/LocationAutocomplete/LocationAutocomplete.d.ts +2 -2
  184. package/lib/esm/components/LocationAutocomplete/LocationAutocomplete.js +4 -2
  185. package/lib/esm/components/NavigationMenuIconButton/NavigationMenuIconButton.d.ts +1 -1
  186. package/lib/esm/components/NavigationMenuIconButton/NavigationMenuIconButton.js +1 -1
  187. package/lib/esm/components/NavigationToolbarMobile/NavigationToolbarMobile.d.ts +0 -5
  188. package/lib/esm/components/NavigationToolbarMobile/NavigationToolbarMobile.js +12 -23
  189. package/lib/esm/components/NavigationToolbarMobile/Skeleton.js +3 -4
  190. package/lib/esm/components/NavigationToolbarMobile/constants.d.ts +1 -0
  191. package/lib/esm/components/NavigationToolbarMobile/constants.js +1 -0
  192. package/lib/esm/constants/Composer.d.ts +2 -0
  193. package/lib/esm/constants/Composer.js +3 -1
  194. package/lib/esm/index.d.ts +12 -12
  195. package/lib/esm/index.js +33 -33
  196. package/lib/esm/shared/Lightbox/Lightbox.js +2 -2
  197. package/lib/{cjs/shared/Media/Image/PreviewComponent.d.ts → esm/shared/Media/File/DisplayComponent.d.ts} +1 -11
  198. package/lib/esm/shared/Media/{Image/PreviewComponent.js → File/DisplayComponent.js} +50 -140
  199. package/lib/{cjs/shared/Media/Image/PreviewImage → esm/shared/Media/File/Lightbox}/index.d.ts +4 -3
  200. package/lib/esm/shared/Media/File/Lightbox/index.js +34 -0
  201. package/lib/esm/shared/Media/File/PreviewComponent.d.ts +9 -0
  202. package/lib/esm/shared/Media/File/PreviewComponent.js +49 -0
  203. package/lib/esm/shared/Media/File/TriggerButton.d.ts +12 -0
  204. package/lib/esm/shared/Media/File/TriggerButton.js +110 -0
  205. package/lib/esm/shared/Media/File/asUploadButton.d.ts +7 -0
  206. package/lib/esm/shared/Media/File/asUploadButton.js +28 -0
  207. package/lib/esm/shared/Media/File/constants.d.ts +1 -0
  208. package/lib/esm/shared/Media/File/constants.js +1 -0
  209. package/lib/esm/shared/Media/File/filter.d.ts +3 -0
  210. package/lib/esm/shared/Media/File/filter.js +2 -0
  211. package/lib/esm/shared/Media/File/index.d.ts +3 -0
  212. package/lib/esm/shared/Media/File/index.js +13 -0
  213. package/lib/esm/shared/Media/Link/DisplayComponent.d.ts +20 -0
  214. package/lib/esm/shared/Media/Link/DisplayComponent.js +67 -0
  215. package/lib/esm/shared/Media/Link/LayerComponent.d.ts +9 -0
  216. package/lib/esm/shared/Media/Link/LayerComponent.js +44 -0
  217. package/lib/esm/shared/Media/Link/PreviewComponent.d.ts +7 -21
  218. package/lib/esm/shared/Media/Link/PreviewComponent.js +27 -54
  219. package/lib/esm/shared/Media/Link/TriggerButton.d.ts +4 -0
  220. package/lib/esm/shared/Media/Link/TriggerButton.js +19 -0
  221. package/lib/esm/shared/Media/Link/UrlTextField/index.js +2 -3
  222. package/lib/esm/shared/Media/Link/constants.d.ts +1 -0
  223. package/lib/esm/shared/Media/Link/constants.js +1 -0
  224. package/lib/esm/shared/Media/Link/filter.d.ts +3 -0
  225. package/lib/esm/shared/Media/Link/filter.js +2 -0
  226. package/lib/esm/shared/Media/Link/index.js +9 -8
  227. package/lib/esm/shared/Media/Share/DisplayComponent.d.ts +11 -0
  228. package/lib/esm/shared/Media/Share/DisplayComponent.js +29 -0
  229. package/lib/esm/shared/Media/Share/constants.d.ts +1 -0
  230. package/lib/esm/shared/Media/Share/constants.js +1 -0
  231. package/lib/esm/shared/Media/Share/filter.d.ts +3 -0
  232. package/lib/esm/shared/Media/Share/filter.js +2 -0
  233. package/lib/esm/shared/Media/Share/index.js +7 -7
  234. package/lib/esm/shared/Media/index.d.ts +2 -4
  235. package/lib/esm/shared/Media/index.js +2 -4
  236. package/lib/esm/types/composer.d.ts +15 -0
  237. package/lib/esm/types/composer.js +1 -0
  238. package/lib/esm/types/media.d.ts +9 -5
  239. package/lib/umd/react-ui.js +1 -1
  240. package/package.json +7 -7
  241. package/lib/cjs/components/Composer/Audience/Audience.d.ts +0 -71
  242. package/lib/cjs/components/Composer/Audience/Audience.js +0 -69
  243. package/lib/cjs/components/Composer/Audience/index.d.ts +0 -3
  244. package/lib/cjs/components/Composer/Poll/Poll.d.ts +0 -31
  245. package/lib/cjs/components/Composer/Poll/Poll.js +0 -151
  246. package/lib/cjs/components/Composer/Poll/index.d.ts +0 -3
  247. package/lib/cjs/shared/Media/Document/EditButton.d.ts +0 -2
  248. package/lib/cjs/shared/Media/Document/EditButton.js +0 -10
  249. package/lib/cjs/shared/Media/Document/EditComponent.d.ts +0 -3
  250. package/lib/cjs/shared/Media/Document/EditComponent.js +0 -103
  251. package/lib/cjs/shared/Media/Document/PreviewComponent.d.ts +0 -3
  252. package/lib/cjs/shared/Media/Document/PreviewComponent.js +0 -43
  253. package/lib/cjs/shared/Media/Document/index.d.ts +0 -3
  254. package/lib/cjs/shared/Media/Document/index.js +0 -16
  255. package/lib/cjs/shared/Media/Image/EditButton.d.ts +0 -2
  256. package/lib/cjs/shared/Media/Image/EditButton.js +0 -10
  257. package/lib/cjs/shared/Media/Image/EditComponent.d.ts +0 -3
  258. package/lib/cjs/shared/Media/Image/EditComponent.js +0 -102
  259. package/lib/cjs/shared/Media/Image/PreviewImage/index.js +0 -41
  260. package/lib/cjs/shared/Media/Image/index.d.ts +0 -3
  261. package/lib/cjs/shared/Media/Image/index.js +0 -16
  262. package/lib/cjs/shared/Media/Link/EditButton.d.ts +0 -2
  263. package/lib/cjs/shared/Media/Link/EditButton.js +0 -10
  264. package/lib/cjs/shared/Media/Link/EditComponent.d.ts +0 -3
  265. package/lib/cjs/shared/Media/Link/EditComponent.js +0 -46
  266. package/lib/cjs/shared/Media/Share/PreviewComponent.d.ts +0 -7
  267. package/lib/cjs/shared/Media/Share/PreviewComponent.js +0 -32
  268. package/lib/cjs/shared/Media/Video/EditButton.d.ts +0 -2
  269. package/lib/cjs/shared/Media/Video/EditButton.js +0 -10
  270. package/lib/cjs/shared/Media/Video/EditComponent.d.ts +0 -3
  271. package/lib/cjs/shared/Media/Video/EditComponent.js +0 -89
  272. package/lib/cjs/shared/Media/Video/PreviewComponent.d.ts +0 -19
  273. package/lib/cjs/shared/Media/Video/PreviewComponent.js +0 -37
  274. package/lib/cjs/shared/Media/Video/index.d.ts +0 -3
  275. package/lib/cjs/shared/Media/Video/index.js +0 -16
  276. package/lib/cjs/shared/MediasPreview/index.d.ts +0 -18
  277. package/lib/cjs/shared/MediasPreview/index.js +0 -44
  278. package/lib/esm/components/Composer/Audience/Audience.d.ts +0 -71
  279. package/lib/esm/components/Composer/Audience/Audience.js +0 -66
  280. package/lib/esm/components/Composer/Audience/index.d.ts +0 -3
  281. package/lib/esm/components/Composer/Audience/index.js +0 -2
  282. package/lib/esm/components/Composer/Poll/Poll.d.ts +0 -31
  283. package/lib/esm/components/Composer/Poll/Poll.js +0 -149
  284. package/lib/esm/components/Composer/Poll/index.d.ts +0 -3
  285. package/lib/esm/components/Composer/Poll/index.js +0 -2
  286. package/lib/esm/shared/Media/Document/EditButton.d.ts +0 -2
  287. package/lib/esm/shared/Media/Document/EditButton.js +0 -7
  288. package/lib/esm/shared/Media/Document/EditComponent.d.ts +0 -3
  289. package/lib/esm/shared/Media/Document/EditComponent.js +0 -101
  290. package/lib/esm/shared/Media/Document/PreviewComponent.d.ts +0 -3
  291. package/lib/esm/shared/Media/Document/PreviewComponent.js +0 -41
  292. package/lib/esm/shared/Media/Document/index.d.ts +0 -3
  293. package/lib/esm/shared/Media/Document/index.js +0 -13
  294. package/lib/esm/shared/Media/Image/EditButton.d.ts +0 -2
  295. package/lib/esm/shared/Media/Image/EditButton.js +0 -7
  296. package/lib/esm/shared/Media/Image/EditComponent.d.ts +0 -3
  297. package/lib/esm/shared/Media/Image/EditComponent.js +0 -100
  298. package/lib/esm/shared/Media/Image/PreviewImage/index.js +0 -38
  299. package/lib/esm/shared/Media/Image/index.d.ts +0 -3
  300. package/lib/esm/shared/Media/Image/index.js +0 -13
  301. package/lib/esm/shared/Media/Link/EditButton.d.ts +0 -2
  302. package/lib/esm/shared/Media/Link/EditButton.js +0 -7
  303. package/lib/esm/shared/Media/Link/EditComponent.d.ts +0 -3
  304. package/lib/esm/shared/Media/Link/EditComponent.js +0 -43
  305. package/lib/esm/shared/Media/Share/PreviewComponent.d.ts +0 -7
  306. package/lib/esm/shared/Media/Share/PreviewComponent.js +0 -29
  307. package/lib/esm/shared/Media/Video/EditButton.d.ts +0 -2
  308. package/lib/esm/shared/Media/Video/EditButton.js +0 -7
  309. package/lib/esm/shared/Media/Video/EditComponent.d.ts +0 -3
  310. package/lib/esm/shared/Media/Video/EditComponent.js +0 -87
  311. package/lib/esm/shared/Media/Video/PreviewComponent.d.ts +0 -19
  312. package/lib/esm/shared/Media/Video/PreviewComponent.js +0 -34
  313. package/lib/esm/shared/Media/Video/index.d.ts +0 -3
  314. package/lib/esm/shared/Media/Video/index.js +0 -13
  315. package/lib/esm/shared/MediasPreview/index.d.ts +0 -18
  316. package/lib/esm/shared/MediasPreview/index.js +0 -42
@@ -1,66 +0,0 @@
1
- import { __rest } from "tslib";
2
- import React, { useState } from 'react';
3
- import { FormattedMessage } from 'react-intl';
4
- import Autocomplete from '@mui/material/Autocomplete';
5
- import TextField from '@mui/material/TextField';
6
- import Checkbox from '@mui/material/Checkbox';
7
- import parse from 'autosuggest-highlight/parse';
8
- import match from 'autosuggest-highlight/match';
9
- import { styled } from '@mui/material/styles';
10
- import TagChip from '../../../shared/TagChip';
11
- import { useThemeProps } from '@mui/system';
12
- const PREFIX = 'SCComposerAudience';
13
- const classes = {
14
- root: `${PREFIX}-root`
15
- };
16
- const Root = styled(Autocomplete, {
17
- name: PREFIX,
18
- slot: 'Root',
19
- overridesResolver: (props, styles) => styles.root
20
- })(() => ({
21
- minWidth: 120
22
- }));
23
- export default function (inProps) {
24
- // Props
25
- const props = useThemeProps({
26
- props: inProps,
27
- name: PREFIX
28
- });
29
- const { onChange, defaultValue = [], limitCountTags = 0, checkboxSelect = false, disabled = false, TextFieldProps = {
30
- variant: 'outlined',
31
- label: React.createElement(FormattedMessage, { id: "ui.composer.audience.tags.label", defaultMessage: "ui.composer.audience.tags.label" })
32
- }, tags = [] } = props, rest = __rest(props, ["onChange", "defaultValue", "limitCountTags", "checkboxSelect", "disabled", "TextFieldProps", "tags"]);
33
- // State
34
- const [open, setOpen] = useState(false);
35
- const [value, setValue] = useState(defaultValue);
36
- // Handlers
37
- const handleOpen = () => {
38
- setOpen(true);
39
- };
40
- const handleClose = () => {
41
- setOpen(false);
42
- };
43
- const handleChange = (event, value) => {
44
- let newValue = null;
45
- if (limitCountTags > 0) {
46
- const [...rest] = value;
47
- newValue = rest.slice(-1 * limitCountTags);
48
- }
49
- else {
50
- newValue = value;
51
- }
52
- setValue(newValue);
53
- onChange && onChange(newValue);
54
- };
55
- return (React.createElement(Root, Object.assign({ className: classes.root, open: open, onOpen: handleOpen, onClose: handleClose, disabled: disabled, multiple: true, options: tags || [], getOptionLabel: (option) => option.name || '', value: value, filterSelectedOptions: !checkboxSelect, disableCloseOnSelect: checkboxSelect, selectOnFocus: true, clearOnBlur: true, handleHomeEndKeys: true, clearIcon: null, noOptionsText: React.createElement(FormattedMessage, { id: "ui.composer.audience.tags.empty", defaultMessage: "ui.composer.audience.tags.empty" }), onChange: handleChange, isOptionEqualToValue: (option, value) => value.id === option.id, renderTags: (value, getTagProps) => {
56
- return value.map((option, index) => React.createElement(TagChip, Object.assign({ key: option.id, tag: option }, getTagProps({ index }))));
57
- }, renderOption: (props, option, { selected, inputValue }) => {
58
- const matches = match(option.name, inputValue);
59
- const parts = parse(option.name, matches);
60
- return (React.createElement("li", Object.assign({}, props),
61
- checkboxSelect && React.createElement(Checkbox, { style: { marginRight: 8 }, checked: selected }),
62
- React.createElement(TagChip, { key: option.id, tag: option, label: React.createElement(React.Fragment, null, parts.map((part, index) => (React.createElement("span", { key: index, style: { fontWeight: part.highlight ? 700 : 400 } }, part.text)))) })));
63
- }, renderInput: (params) => {
64
- return (React.createElement(TextField, Object.assign({}, params, TextFieldProps, { InputProps: Object.assign(Object.assign({}, params.InputProps), { autoComplete: 'addressing', endAdornment: React.createElement(React.Fragment, null, params.InputProps.endAdornment) }) })));
65
- } }, rest)));
66
- }
@@ -1,3 +0,0 @@
1
- import Audience, { AudienceProps } from './Audience';
2
- export default Audience;
3
- export { AudienceProps };
@@ -1,2 +0,0 @@
1
- import Audience from './Audience';
2
- export default Audience;
@@ -1,31 +0,0 @@
1
- import { SCFeedWidgetType } from '../../../types/feed';
2
- import { SCPollType } from '@selfcommunity/types';
3
- export interface PollProps {
4
- /**
5
- * Id of the feed object
6
- * @default 'poll'
7
- */
8
- id?: string;
9
- /**
10
- * Overrides or extends the styles applied to the component.
11
- * @default null
12
- */
13
- className?: string;
14
- /**
15
- * Value of the component
16
- */
17
- value?: SCPollType | null;
18
- /**
19
- * Widgets to insert into the feed
20
- * @default empty array
21
- */
22
- error?: SCFeedWidgetType[];
23
- /**
24
- * Callback for change event on poll object
25
- * @param value
26
- * @default empty object
27
- */
28
- onChange: (value: SCPollType) => void;
29
- }
30
- declare const _default: (inProps: PollProps) => JSX.Element;
31
- export default _default;
@@ -1,149 +0,0 @@
1
- import { __rest } from "tslib";
2
- import React, { forwardRef, useEffect, useState } from 'react';
3
- import { Box, Button, Checkbox, Divider, FormControlLabel, FormGroup, IconButton, TextField, Tooltip, Typography } from '@mui/material';
4
- import { styled } from '@mui/material/styles';
5
- import { defineMessages, FormattedMessage, useIntl } from 'react-intl';
6
- import Icon from '@mui/material/Icon';
7
- import { ReactSortable } from 'react-sortablejs';
8
- import InputAdornment from '@mui/material/InputAdornment';
9
- import { DatePicker, LocalizationProvider } from '@mui/x-date-pickers';
10
- import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns';
11
- import { COMPOSER_POLL_MIN_CHOICES, COMPOSER_POLL_MIN_CLOSE_DATE_DELTA, COMPOSER_POLL_TITLE_MAX_LENGTH } from '../../../constants/Composer';
12
- import itLocale from 'date-fns/locale/it';
13
- import enLocale from 'date-fns/locale/en-US';
14
- import classNames from 'classnames';
15
- import { useThemeProps } from '@mui/system';
16
- import { parseISO } from 'date-fns';
17
- const localeMap = {
18
- en: enLocale,
19
- it: itLocale
20
- };
21
- const PREFIX = 'SCComposerPoll';
22
- const classes = {
23
- root: `${PREFIX}-root`,
24
- generalError: `${PREFIX}-generalError`,
25
- title: `${PREFIX}-title`,
26
- choices: `${PREFIX}-choices`,
27
- choiceNew: `${PREFIX}-choice-new`,
28
- metadata: `${PREFIX}-metadata`
29
- };
30
- const Root = styled(Box, {
31
- name: PREFIX,
32
- slot: 'Root',
33
- overridesResolver: (props, styles) => styles.root
34
- })(({ theme }) => ({
35
- padding: theme.spacing(2),
36
- [`& .${classes.generalError}`]: {
37
- marginBottom: theme.spacing(2),
38
- color: theme.palette.error.main
39
- },
40
- [`& .${classes.title}, & .${classes.choices}, & .${classes.choiceNew}, & .${classes.metadata}`]: {
41
- marginBottom: theme.spacing(3)
42
- },
43
- [`& .${classes.choices} .MuiTextField-root`]: {
44
- marginBottom: theme.spacing()
45
- },
46
- [`& .${classes.metadata}`]: {
47
- marginTop: theme.spacing(3)
48
- }
49
- }));
50
- const messages = defineMessages({
51
- choicePlaceholder: {
52
- id: 'ui.composer.poll.choice.placeholder',
53
- defaultMessage: 'ui.composer.poll.choice.placeholder'
54
- }
55
- });
56
- const SortableComponent = forwardRef((_a, ref) => {
57
- var { children } = _a, props = __rest(_a, ["children"]);
58
- return (React.createElement(FormGroup, Object.assign({ direction: "column", ref: ref }, props), children));
59
- });
60
- /**
61
- * Default poll
62
- */
63
- const DEFAULT_CHOICE = { choice: '' };
64
- const DEFAULT_POLL = {
65
- title: '',
66
- multiple_choices: false,
67
- expiration_at: null,
68
- choices: [Object.assign({}, DEFAULT_CHOICE), Object.assign({}, DEFAULT_CHOICE)]
69
- };
70
- export default (inProps) => {
71
- // PROPS
72
- const props = useThemeProps({
73
- props: inProps,
74
- name: PREFIX
75
- });
76
- const { id = 'poll', className = null, value = Object.assign({}, DEFAULT_POLL), error = {}, onChange } = props;
77
- const { titleError = null, error: generalError = null } = Object.assign({}, error);
78
- // STATE
79
- const [title, setTitle] = useState(value !== null ? value.title : DEFAULT_POLL.title);
80
- const [multiple, setMultiple] = useState(value !== null ? value.multiple_choices : DEFAULT_POLL.multiple_choices);
81
- const [expiration, setExpiration] = React.useState(value !== null ? value.expiration_at : DEFAULT_POLL.expiration_at);
82
- const _choicesInitialState = [...(value !== null ? value.choices : DEFAULT_POLL.choices)];
83
- while (_choicesInitialState.length < COMPOSER_POLL_MIN_CHOICES) {
84
- _choicesInitialState.push(Object.assign({}, DEFAULT_CHOICE));
85
- }
86
- const [choices, setChoices] = useState(_choicesInitialState);
87
- // INTL
88
- const intl = useIntl();
89
- // Component update
90
- useEffect(() => {
91
- if (onChange && (title || titleError || expiration !== null || choices.filter((c) => c.choice.length > 0).length > 0)) {
92
- onChange({ title, expiration_at: expiration, multiple_choices: multiple, choices: choices.filter((c) => c.choice.length > 0) });
93
- }
94
- }, [title, multiple, expiration, choices]);
95
- // HANDLERS
96
- const handleChangeTitle = (event) => {
97
- setTitle(event.target.value);
98
- };
99
- const handleChangeMultiple = (event) => {
100
- setMultiple(event.target.checked);
101
- };
102
- const handleChangeExpiration = (value) => {
103
- setExpiration(value);
104
- };
105
- const handleAddChoice = () => {
106
- setChoices([...choices, Object.assign({}, DEFAULT_CHOICE)]);
107
- };
108
- const handleChangeChoice = (index) => {
109
- return (event) => {
110
- const _choices = [...choices];
111
- _choices[index].choice = event.target.value;
112
- setChoices(_choices);
113
- };
114
- };
115
- const handleDeleteChoice = (index) => {
116
- return () => {
117
- const _choices = [...choices];
118
- _choices.splice(index, 1);
119
- setChoices(_choices);
120
- };
121
- };
122
- const minDate = new Date();
123
- minDate.setDate(minDate.getDate() + COMPOSER_POLL_MIN_CLOSE_DATE_DELTA);
124
- return (React.createElement(Root, { id: id, className: classNames(classes.root, className) },
125
- generalError && React.createElement(Typography, { className: classes.generalError }, generalError),
126
- React.createElement(Box, { className: classes.title },
127
- React.createElement(TextField, { label: React.createElement(FormattedMessage, { id: "ui.composer.poll.title", defaultMessage: "ui.composer.poll.title" }), variant: "outlined", value: title, onChange: handleChangeTitle, fullWidth: true, error: Boolean(titleError), helperText: titleError && titleError, InputProps: {
128
- endAdornment: React.createElement(Typography, { variant: "body2" }, COMPOSER_POLL_TITLE_MAX_LENGTH - title.length)
129
- } })),
130
- React.createElement(Box, { className: classes.choices },
131
- React.createElement(ReactSortable, { list: [...choices], setList: (newSort) => setChoices(newSort), tag: SortableComponent }, choices.map((choice, index) => (React.createElement(TextField, { key: index, placeholder: intl.formatMessage(messages.choicePlaceholder), value: choice.choice, onChange: handleChangeChoice(index), variant: "outlined", InputProps: {
132
- startAdornment: (React.createElement(InputAdornment, { position: "start" },
133
- React.createElement(Icon, null, "drag"))),
134
- endAdornment: (React.createElement(InputAdornment, { position: "end" },
135
- React.createElement(Tooltip, { title: choices.length <= COMPOSER_POLL_MIN_CHOICES ? (React.createElement(FormattedMessage, { id: "ui.composer.poll.choice.delete.disabled", defaultMessage: "ui.composer.poll.choice.delete.disabled" })) : (React.createElement(FormattedMessage, { id: "ui.composer.poll.choice.delete", defaultMessage: "ui.composer.poll.choice.delete" })) },
136
- React.createElement("span", null,
137
- React.createElement(IconButton, { onClick: handleDeleteChoice(index), disabled: choices.length <= COMPOSER_POLL_MIN_CHOICES, edge: "end" },
138
- React.createElement(Icon, null, "delete"))))))
139
- } }))))),
140
- React.createElement(Box, { className: classes.choiceNew },
141
- React.createElement(Button, { color: "inherit", variant: "text", onClick: handleAddChoice },
142
- React.createElement(Icon, null, "add"),
143
- React.createElement(FormattedMessage, { id: "ui.composer.poll.choice.add", defaultMessage: "ui.composer.choice.add" }))),
144
- React.createElement(Divider, null),
145
- React.createElement(FormGroup, { className: classes.metadata },
146
- React.createElement(FormControlLabel, { control: React.createElement(Checkbox, { checked: multiple, onChange: handleChangeMultiple }), label: React.createElement(FormattedMessage, { id: "ui.composer.poll.multiple", defaultMessage: "ui.composer.poll.multiple" }) }),
147
- React.createElement(LocalizationProvider, { dateAdapter: AdapterDateFns, adapterLocale: localeMap[intl.locale] },
148
- React.createElement(DatePicker, { label: React.createElement(FormattedMessage, { id: "ui.composer.poll.expiration", defaultMessage: "ui.composer.poll.expiration" }), value: typeof expiration === 'string' ? parseISO(expiration) : expiration, onChange: handleChangeExpiration, slotProps: { textField: { variant: 'outlined' } }, minDate: minDate })))));
149
- };
@@ -1,3 +0,0 @@
1
- import Poll, { PollProps } from './Poll';
2
- export default Poll;
3
- export { PollProps };
@@ -1,2 +0,0 @@
1
- import Poll from './Poll';
2
- export default Poll;
@@ -1,2 +0,0 @@
1
- declare const _default: (props: any) => JSX.Element;
2
- export default _default;
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { IconButton as MUIIconButton } from '@mui/material';
3
- import Icon from '@mui/material/Icon';
4
- export default (props) => {
5
- return (React.createElement(MUIIconButton, Object.assign({}, props, { "aria-label": "upload document" }),
6
- React.createElement(Icon, null, "picture_as_pdf")));
7
- };
@@ -1,3 +0,0 @@
1
- import { EditMediaProps } from '../types';
2
- declare const _default: (props: EditMediaProps) => JSX.Element;
3
- export default _default;
@@ -1,101 +0,0 @@
1
- import { __rest } from "tslib";
2
- import { asUploadButton } from '@rpldy/upload-button';
3
- import React, { forwardRef, useCallback, useContext, useState } from 'react';
4
- import { Alert, AlertTitle, Box, Button as MuiButton, Fade, IconButton, ImageList, ImageListItem, ImageListItemBar, Typography } from '@mui/material';
5
- import { FormattedMessage } from 'react-intl';
6
- import { ReactSortable } from 'react-sortablejs';
7
- import ChunkedUploady from '@rpldy/chunked-uploady';
8
- import { Endpoints } from '@selfcommunity/api-services';
9
- import { SCContext } from '@selfcommunity/react-core';
10
- import { styled } from '@mui/material/styles';
11
- import MediaChunkUploader from '../../MediaChunkUploader';
12
- import Icon from '@mui/material/Icon';
13
- import UploadDropZone from '@rpldy/upload-drop-zone';
14
- const PREFIX = 'SCMediaActionDocument';
15
- const classes = {
16
- root: `${PREFIX}-root`,
17
- preview: `${PREFIX}-preview`,
18
- upload: `${PREFIX}-upload`,
19
- dragOver: `${PREFIX}-dragOver`,
20
- uploadBtn: `${PREFIX}-uploadBtn`
21
- };
22
- const Root = styled(Box, {
23
- name: PREFIX,
24
- slot: 'Root',
25
- overridesResolver: (props, styles) => styles.root
26
- })(({ theme }) => ({
27
- padding: theme.spacing(),
28
- [`& .${classes.preview}`]: {
29
- backgroundColor: theme.palette.background.default,
30
- height: 200,
31
- position: 'relative'
32
- },
33
- [`& .${classes.upload}`]: {
34
- textAlign: 'center'
35
- }
36
- }));
37
- const UploadButton = asUploadButton(forwardRef((props, ref) => (React.createElement(MuiButton, Object.assign({}, props, { "aria-label": "upload document", ref: ref, variant: "outlined", color: "inherit" }),
38
- React.createElement(Icon, null, "picture_as_pdf"),
39
- " ",
40
- React.createElement(FormattedMessage, { id: "ui.composer.media.document.add", defaultMessage: "ui.composer.media.document.add" })))));
41
- const SortableComponent = forwardRef((_a, ref) => {
42
- var { children } = _a, props = __rest(_a, ["children"]);
43
- return (React.createElement(ImageList, Object.assign({ ref: ref, cols: 3 }, props), children));
44
- });
45
- export default (props) => {
46
- //PROPS
47
- const { medias = [], onProgress, onSuccess, onSort, onDelete } = props;
48
- // STATE
49
- const [uploading, setUploading] = useState({});
50
- const [errors, setErrors] = useState({});
51
- // CONTEXT
52
- const scContext = useContext(SCContext);
53
- // FILTER
54
- const filterByMime = useCallback((file) => {
55
- //filter out files larger than 5MB
56
- return file.type === 'application/pdf';
57
- }, []);
58
- // HANDLERS
59
- const handleSuccess = (media) => {
60
- onSuccess(media);
61
- };
62
- const handleProgress = (chunks) => {
63
- setUploading(Object.assign({}, chunks));
64
- onProgress && onProgress(Object.values(chunks));
65
- };
66
- const handleError = (chunk, error) => {
67
- setErrors(Object.assign(Object.assign({}, errors), { [chunk.id]: Object.assign(Object.assign({}, chunk), { error }) }));
68
- };
69
- const handleRemoveErrors = (id) => {
70
- return () => {
71
- delete errors[id];
72
- setErrors(Object.assign({}, errors));
73
- };
74
- };
75
- /**
76
- * Renders root object
77
- */
78
- return (React.createElement(Root, { className: classes.root },
79
- (medias.length > 0 || Object.values(uploading).length > 0) && (React.createElement(Typography, { gutterBottom: true, component: "div" },
80
- React.createElement(ReactSortable, { list: [...medias, ...Object.values(uploading)], setList: (newSort) => onSort(newSort.filter((s) => s.upload_id === undefined)), tag: SortableComponent },
81
- medias.map((media) => (React.createElement(ImageListItem, { key: media.id },
82
- React.createElement(Box, { className: classes.preview, sx: { backgroundImage: `url(${media.image})` } }),
83
- React.createElement(ImageListItemBar, { title: media.title, actionIcon: React.createElement(IconButton, { onClick: onDelete(media.id), size: "small", sx: { color: 'rgba(255, 255, 255, 0.54)' } },
84
- React.createElement(Icon, null, "delete")) })))),
85
- Object.values(uploading).map((media) => (React.createElement(ImageListItem, { key: media.id, className: 'ignore-elements' },
86
- React.createElement(Box, { className: classes.preview, sx: { backgroundImage: `url(${media.image})` } },
87
- React.createElement(Icon, { sx: { position: 'absolute', left: 0, top: 0, width: '100%', height: '100%' } }, "picture_as_pdf")),
88
- React.createElement(ImageListItemBar, { title: React.createElement(Typography, { align: "center" }, `${Math.round(media.completed)}%`) }))))))),
89
- React.createElement(Box, null, Object.keys(errors).map((id) => (React.createElement(Fade, { in: true, key: id },
90
- React.createElement(Alert, { severity: "error", onClose: handleRemoveErrors(id) },
91
- React.createElement(AlertTitle, null, errors[id].name),
92
- errors[id].error))))),
93
- React.createElement(ChunkedUploady, { destination: {
94
- url: `${scContext.settings.portal}${Endpoints.ComposerChunkUploadMedia.url()}`,
95
- headers: { Authorization: `Bearer ${scContext.settings.session.authToken.accessToken}` },
96
- method: Endpoints.ComposerChunkUploadMedia.method
97
- }, chunkSize: 204800, multiple: true, accept: "application/pdf", fileFilter: filterByMime },
98
- React.createElement(MediaChunkUploader, { onSuccess: handleSuccess, onProgress: handleProgress, onError: handleError }),
99
- React.createElement(UploadDropZone, { onDragOverClassName: classes.dragOver, inputFieldName: "document", className: classes.upload },
100
- React.createElement(UploadButton, { inputFieldName: "document", className: classes.uploadBtn })))));
101
- };
@@ -1,3 +0,0 @@
1
- import { ImagePreviewComponentProps } from '../Image/PreviewComponent';
2
- declare const _default: (props: ImagePreviewComponentProps) => JSX.Element;
3
- export default _default;
@@ -1,41 +0,0 @@
1
- import { __rest } from "tslib";
2
- import React from 'react';
3
- import { styled } from '@mui/material/styles';
4
- import ImagePreview from '../Image/PreviewComponent';
5
- import { MAX_GRID_IMAGES } from '../../../constants/Media';
6
- const PREFIX = 'SCPreviewMediaDocument';
7
- const classes = {
8
- root: `${PREFIX}-root`
9
- };
10
- const Root = styled(ImagePreview, {
11
- name: PREFIX,
12
- slot: 'Root',
13
- overridesResolver: (props, styles) => styles.root
14
- })(({ theme }) => ({}));
15
- export default (props) => {
16
- // PROPS
17
- const { medias = [], onMediaClick } = props, rest = __rest(props, ["medias", "onMediaClick"]);
18
- /**
19
- * Handles click on pdf
20
- * @param doc
21
- */
22
- const handleClickOnPdf = (doc) => {
23
- if (doc && doc.index >= MAX_GRID_IMAGES - 1) {
24
- // Open the post/discussion
25
- // history.push(url(threadType, {id: thread.id, slug: thread.slug})());
26
- }
27
- else if (doc.src && doc.src.url) {
28
- // Open file in target blank
29
- let win = window.open(doc.src.url, '_blank');
30
- win.focus();
31
- }
32
- onMediaClick(doc.src);
33
- };
34
- /**
35
- * Renders document preview
36
- */
37
- if (medias.length > 0) {
38
- return React.createElement(Root, Object.assign({ className: classes.root, medias: medias }, rest, { onClick: handleClickOnPdf }));
39
- }
40
- return null;
41
- };
@@ -1,3 +0,0 @@
1
- import { SCMediaObjectType } from '../../../types/media';
2
- declare const Document: SCMediaObjectType;
3
- export default Document;
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
- import PreviewComponent from './PreviewComponent';
3
- import EditButton from './EditButton';
4
- import EditComponent from './EditComponent';
5
- import { MEDIA_TYPE_DOCUMENT } from '../../../constants/Media';
6
- const Document = {
7
- name: 'document',
8
- previewComponent: (props) => React.createElement(PreviewComponent, Object.assign({}, props)),
9
- editButton: (props) => React.createElement(EditButton, Object.assign({}, props)),
10
- editComponent: (props) => React.createElement(EditComponent, Object.assign({}, props)),
11
- filter: (media) => media.type === MEDIA_TYPE_DOCUMENT
12
- };
13
- export default Document;
@@ -1,2 +0,0 @@
1
- declare const _default: (props: any) => JSX.Element;
2
- export default _default;
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { IconButton as MUIIconButton } from '@mui/material';
3
- import Icon from '@mui/material/Icon';
4
- export default (props) => {
5
- return (React.createElement(MUIIconButton, Object.assign({}, props, { "aria-label": "upload image" }),
6
- React.createElement(Icon, null, "image")));
7
- };
@@ -1,3 +0,0 @@
1
- import { EditMediaProps } from '../types';
2
- declare const _default: (props: EditMediaProps) => JSX.Element;
3
- export default _default;
@@ -1,100 +0,0 @@
1
- import { __rest } from "tslib";
2
- import { asUploadButton } from '@rpldy/upload-button';
3
- import React, { forwardRef, useCallback, useContext, useState } from 'react';
4
- import { Alert, AlertTitle, Box, Button as MuiButton, Fade, IconButton, ImageList, ImageListItem, ImageListItemBar, Typography } from '@mui/material';
5
- import Icon from '@mui/material/Icon';
6
- import { FormattedMessage } from 'react-intl';
7
- import { ReactSortable } from 'react-sortablejs';
8
- import ChunkedUploady from '@rpldy/chunked-uploady';
9
- import { Endpoints } from '@selfcommunity/api-services';
10
- import { SCContext } from '@selfcommunity/react-core';
11
- import { styled } from '@mui/material/styles';
12
- import MediaChunkUploader from '../../MediaChunkUploader';
13
- import UploadDropZone from '@rpldy/upload-drop-zone';
14
- const PREFIX = 'SCMediaActionImage';
15
- const classes = {
16
- root: `${PREFIX}-root`,
17
- preview: `${PREFIX}-preview`,
18
- upload: `${PREFIX}-upload`,
19
- dragOver: `${PREFIX}-dragOver`,
20
- uploadBtn: `${PREFIX}-uploadBtn`
21
- };
22
- const Root = styled(Box, {
23
- name: PREFIX,
24
- slot: 'Root',
25
- overridesResolver: (props, styles) => styles.root
26
- })(({ theme }) => ({
27
- padding: theme.spacing(),
28
- [`& .${classes.preview}`]: {
29
- backgroundSize: 'cover !important',
30
- backgroundPosition: 'center !important',
31
- backgroundRepeat: 'no-repeat !important',
32
- height: 200,
33
- position: 'relative'
34
- },
35
- [`& .${classes.upload}`]: {
36
- textAlign: 'center'
37
- }
38
- }));
39
- const UploadButton = asUploadButton(forwardRef((props, ref) => (React.createElement(MuiButton, Object.assign({}, props, { "aria-label": "upload image", ref: ref, variant: "outlined", color: "inherit" }),
40
- React.createElement(Icon, null, "image"),
41
- " ",
42
- React.createElement(FormattedMessage, { id: "ui.composer.media.image.add", defaultMessage: "ui.composer.media.image.add" })))));
43
- const SortableComponent = forwardRef((_a, ref) => {
44
- var { children } = _a, props = __rest(_a, ["children"]);
45
- return (React.createElement(ImageList, Object.assign({ ref: ref, cols: 3 }, props), children));
46
- });
47
- export default (props) => {
48
- //PROPS
49
- const { medias = [], onProgress, onSuccess, onSort, onDelete } = props;
50
- // STATE
51
- const [uploading, setUploading] = useState({});
52
- const [errors, setErrors] = useState({});
53
- // CONTEXT
54
- const scContext = useContext(SCContext);
55
- // FILTER
56
- const filterByMime = useCallback((file) => {
57
- return file.type.startsWith('image/');
58
- }, []);
59
- // HANDLERS
60
- const handleSuccess = (media) => {
61
- onSuccess(media);
62
- };
63
- const handleProgress = (chunks) => {
64
- setUploading(Object.assign({}, chunks));
65
- onProgress && onProgress(Object.values(chunks));
66
- };
67
- const handleError = (chunk, error) => {
68
- setErrors(Object.assign(Object.assign({}, errors), { [chunk.id]: Object.assign(Object.assign({}, chunk), { error }) }));
69
- };
70
- const handleRemoveErrors = (id) => {
71
- return () => {
72
- delete errors[id];
73
- setErrors(Object.assign({}, errors));
74
- };
75
- };
76
- /**
77
- * Renders root object
78
- */
79
- return (React.createElement(Root, { className: classes.root },
80
- (medias.length > 0 || Object.values(uploading).length > 0) && (React.createElement(Typography, { gutterBottom: true, component: "div" },
81
- React.createElement(ReactSortable, { list: [...medias, ...Object.values(uploading)], setList: (newSort) => onSort(newSort.filter((s) => s.upload_id === undefined)), tag: SortableComponent },
82
- medias.map((media) => (React.createElement(ImageListItem, { key: media.id },
83
- React.createElement(Box, { className: classes.preview, sx: { backgroundImage: `url(${media.image})` } }),
84
- React.createElement(ImageListItemBar, { actionIcon: React.createElement(IconButton, { onClick: onDelete(media.id), size: "small", sx: { color: 'rgba(255, 255, 255, 0.54)' } },
85
- React.createElement(Icon, null, "delete")) })))),
86
- Object.values(uploading).map((media) => (React.createElement(ImageListItem, { key: media.id, className: 'ignore-elements' },
87
- React.createElement(Box, { className: classes.preview, sx: { backgroundImage: `url(${media.image})` } }),
88
- React.createElement(ImageListItemBar, { title: React.createElement(Typography, { align: "center" }, `${Math.round(media.completed)}%`) }))))))),
89
- React.createElement(Box, null, Object.keys(errors).map((id) => (React.createElement(Fade, { in: true, key: id },
90
- React.createElement(Alert, { severity: "error", onClose: handleRemoveErrors(id) },
91
- React.createElement(AlertTitle, null, errors[id].name),
92
- errors[id].error))))),
93
- React.createElement(ChunkedUploady, { destination: {
94
- url: `${scContext.settings.portal}${Endpoints.ComposerChunkUploadMedia.url()}`,
95
- method: Endpoints.ComposerChunkUploadMedia.method
96
- }, fileFilter: filterByMime, chunkSize: 204800, multiple: true, accept: "image/*;capture=camera" },
97
- React.createElement(MediaChunkUploader, { onSuccess: handleSuccess, onProgress: handleProgress, onError: handleError }),
98
- React.createElement(UploadDropZone, { onDragOverClassName: classes.dragOver, inputFieldName: "image", className: classes.upload },
99
- React.createElement(UploadButton, { inputFieldName: "image", className: classes.uploadBtn })))));
100
- };
@@ -1,38 +0,0 @@
1
- import { __rest } from "tslib";
2
- import React from 'react';
3
- import { styled } from '@mui/material/styles';
4
- import Lightbox from '../../../Lightbox';
5
- const PREFIX = 'SCPreviewImage';
6
- const classes = {
7
- root: `${PREFIX}-root`
8
- };
9
- const Root = styled(Lightbox, {
10
- name: PREFIX,
11
- slot: 'Root',
12
- overridesResolver: (props, styles) => styles.root
13
- })(() => ({}));
14
- export default function PreviewImage(props) {
15
- // PROPS
16
- const { images = [], index = 0, onClose, onIndexChange } = props, rest = __rest(props, ["images", "index", "onClose", "onIndexChange"]);
17
- /**
18
- * Gets image url
19
- * @param image
20
- */
21
- function getImageUrl(image) {
22
- if (typeof image === 'object') {
23
- return image.image ? image.image : '/static/frontend_v2/images/image.svg';
24
- }
25
- return image;
26
- }
27
- /**
28
- * Gets image key identifier
29
- * @param image
30
- */
31
- function getImageId(image) {
32
- return image.id;
33
- }
34
- /**
35
- * Renders root object
36
- */
37
- return (React.createElement(Root, Object.assign({}, rest, { className: classes.root, images: images.map((item, index) => ({ src: getImageUrl(item), key: index })), visible: index !== -1, onClose: onClose, index: index, onIndexChange: onIndexChange })));
38
- }
@@ -1,3 +0,0 @@
1
- import { SCMediaObjectType } from '../../../types/media';
2
- declare const Image: SCMediaObjectType;
3
- export default Image;
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
- import PreviewComponent from './PreviewComponent';
3
- import EditButton from './EditButton';
4
- import EditComponent from './EditComponent';
5
- import { MEDIA_TYPE_IMAGE } from '../../../constants/Media';
6
- const Image = {
7
- name: 'image',
8
- previewComponent: (props) => React.createElement(PreviewComponent, Object.assign({}, props)),
9
- editButton: (props) => React.createElement(EditButton, Object.assign({}, props)),
10
- editComponent: (props) => React.createElement(EditComponent, Object.assign({}, props)),
11
- filter: (media) => media.type === MEDIA_TYPE_IMAGE
12
- };
13
- export default Image;
@@ -1,2 +0,0 @@
1
- declare const _default: (props: any) => JSX.Element;
2
- export default _default;
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- import { IconButton as MUIIconButton } from '@mui/material';
3
- import Icon from '@mui/material/Icon';
4
- export default (props) => {
5
- return (React.createElement(MUIIconButton, Object.assign({}, props, { "aria-label": "add link" }),
6
- React.createElement(Icon, null, "link")));
7
- };
@@ -1,3 +0,0 @@
1
- import { EditMediaProps } from '../types';
2
- declare const _default: (props: EditMediaProps) => JSX.Element;
3
- export default _default;