@selfcommunity/react-ui 0.7.50-events.46 → 0.7.50-events.48

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 (121) hide show
  1. package/lib/cjs/components/CreateEventWidget/CreateEventWidget.d.ts +6 -0
  2. package/lib/cjs/components/CreateEventWidget/CreateEventWidget.js +5 -4
  3. package/lib/cjs/components/CreateEventWidget/Skeleton.js +1 -1
  4. package/lib/cjs/components/Event/Event.d.ts +28 -0
  5. package/lib/cjs/components/Event/Event.js +64 -8
  6. package/lib/cjs/components/Event/Skeleton.d.ts +9 -3
  7. package/lib/cjs/components/Event/Skeleton.js +48 -6
  8. package/lib/cjs/components/EventHeader/EventHeader.js +10 -3
  9. package/lib/cjs/components/EventInfoWidget/EventInfoWidget.js +2 -1
  10. package/lib/cjs/components/EventInfoWidget/Skeleton.js +1 -1
  11. package/lib/cjs/components/EventLocationWidget/EventLocationWidget.js +8 -3
  12. package/lib/cjs/components/EventPartecipantsButton/EventPartecipantsButton.js +7 -8
  13. package/lib/cjs/components/EventSubscribeButton/EventSubscribeButton.js +3 -2
  14. package/lib/cjs/components/Events/Events.d.ts +6 -1
  15. package/lib/cjs/components/Events/Events.js +3 -3
  16. package/lib/cjs/components/FeedObjectMediaPreview/FeedObjectMediaPreview.d.ts +1 -1
  17. package/lib/cjs/components/FeedObjectMediaPreview/FeedObjectMediaPreview.js +1 -1
  18. package/lib/cjs/components/MyEventsWidget/MyEventsWidget.js +11 -9
  19. package/lib/cjs/components/MyEventsWidget/Skeleton.js +6 -3
  20. package/lib/cjs/components/Notification/Event/Event.d.ts +15 -0
  21. package/lib/cjs/components/Notification/Event/Event.js +71 -0
  22. package/lib/cjs/components/Notification/Event/index.d.ts +3 -0
  23. package/lib/cjs/components/Notification/Event/index.js +5 -0
  24. package/lib/cjs/components/Notification/Notification.js +26 -0
  25. package/lib/cjs/components/SnippetNotifications/SnippetNotifications.js +7 -0
  26. package/lib/cjs/components/SuggestedEventsWidget/Skeleton.d.ts +2 -0
  27. package/lib/cjs/components/SuggestedEventsWidget/Skeleton.js +28 -0
  28. package/lib/cjs/components/SuggestedEventsWidget/SuggestedEventsWidget.d.ts +14 -0
  29. package/lib/cjs/components/SuggestedEventsWidget/SuggestedEventsWidget.js +80 -0
  30. package/lib/cjs/components/SuggestedEventsWidget/constants.d.ts +1 -0
  31. package/lib/cjs/components/SuggestedEventsWidget/constants.js +4 -0
  32. package/lib/cjs/components/SuggestedEventsWidget/index.d.ts +4 -0
  33. package/lib/cjs/components/SuggestedEventsWidget/index.js +8 -0
  34. package/lib/cjs/components/ToastNotifications/ToastNotifications.js +7 -0
  35. package/lib/cjs/constants/EventActionsMenu.d.ts +6 -0
  36. package/lib/cjs/constants/EventActionsMenu.js +9 -0
  37. package/lib/cjs/constants/Media.d.ts +2 -0
  38. package/lib/cjs/constants/Media.js +3 -1
  39. package/lib/cjs/index.d.ts +3 -1
  40. package/lib/cjs/index.js +9 -4
  41. package/lib/cjs/shared/Calendar/index.js +1 -1
  42. package/lib/cjs/shared/EventActionsMenu/index.d.ts +49 -0
  43. package/lib/cjs/shared/EventActionsMenu/index.js +154 -0
  44. package/lib/cjs/shared/EventInfoDetails/index.d.ts +12 -0
  45. package/lib/cjs/shared/EventInfoDetails/index.js +3 -3
  46. package/lib/cjs/shared/Media/Event/DisplayComponent.d.ts +15 -0
  47. package/lib/cjs/shared/Media/Event/DisplayComponent.js +31 -0
  48. package/lib/cjs/shared/Media/Event/constants.d.ts +1 -0
  49. package/lib/cjs/shared/Media/Event/constants.js +4 -0
  50. package/lib/cjs/shared/Media/Event/filter.d.ts +3 -0
  51. package/lib/cjs/shared/Media/Event/filter.js +4 -0
  52. package/lib/cjs/shared/Media/Event/index.d.ts +3 -0
  53. package/lib/cjs/shared/Media/Event/index.js +14 -0
  54. package/lib/cjs/shared/Media/Link/PreviewComponent.js +1 -1
  55. package/lib/cjs/shared/Media/index.d.ts +2 -1
  56. package/lib/cjs/shared/Media/index.js +3 -1
  57. package/lib/cjs/types/event.d.ts +5 -0
  58. package/lib/cjs/types/event.js +9 -0
  59. package/lib/esm/components/CreateEventWidget/CreateEventWidget.d.ts +6 -0
  60. package/lib/esm/components/CreateEventWidget/CreateEventWidget.js +5 -4
  61. package/lib/esm/components/CreateEventWidget/Skeleton.js +1 -1
  62. package/lib/esm/components/Event/Event.d.ts +28 -0
  63. package/lib/esm/components/Event/Event.js +66 -10
  64. package/lib/esm/components/Event/Skeleton.d.ts +9 -3
  65. package/lib/esm/components/Event/Skeleton.js +50 -7
  66. package/lib/esm/components/EventHeader/EventHeader.js +11 -4
  67. package/lib/esm/components/EventInfoWidget/EventInfoWidget.js +2 -1
  68. package/lib/esm/components/EventInfoWidget/Skeleton.js +1 -1
  69. package/lib/esm/components/EventLocationWidget/EventLocationWidget.js +8 -3
  70. package/lib/esm/components/EventPartecipantsButton/EventPartecipantsButton.js +8 -9
  71. package/lib/esm/components/EventSubscribeButton/EventSubscribeButton.js +3 -2
  72. package/lib/esm/components/Events/Events.d.ts +6 -1
  73. package/lib/esm/components/Events/Events.js +3 -3
  74. package/lib/esm/components/FeedObjectMediaPreview/FeedObjectMediaPreview.d.ts +1 -1
  75. package/lib/esm/components/FeedObjectMediaPreview/FeedObjectMediaPreview.js +2 -2
  76. package/lib/esm/components/MyEventsWidget/MyEventsWidget.js +13 -11
  77. package/lib/esm/components/MyEventsWidget/Skeleton.js +7 -4
  78. package/lib/esm/components/Notification/Event/Event.d.ts +15 -0
  79. package/lib/esm/components/Notification/Event/Event.js +68 -0
  80. package/lib/esm/components/Notification/Event/index.d.ts +3 -0
  81. package/lib/esm/components/Notification/Event/index.js +2 -0
  82. package/lib/esm/components/Notification/Notification.js +26 -0
  83. package/lib/esm/components/SnippetNotifications/SnippetNotifications.js +7 -0
  84. package/lib/esm/components/SuggestedEventsWidget/Skeleton.d.ts +2 -0
  85. package/lib/esm/components/SuggestedEventsWidget/Skeleton.js +24 -0
  86. package/lib/esm/components/SuggestedEventsWidget/SuggestedEventsWidget.d.ts +14 -0
  87. package/lib/esm/components/SuggestedEventsWidget/SuggestedEventsWidget.js +77 -0
  88. package/lib/esm/components/SuggestedEventsWidget/constants.d.ts +1 -0
  89. package/lib/esm/components/SuggestedEventsWidget/constants.js +1 -0
  90. package/lib/esm/components/SuggestedEventsWidget/index.d.ts +4 -0
  91. package/lib/esm/components/SuggestedEventsWidget/index.js +4 -0
  92. package/lib/esm/components/ToastNotifications/ToastNotifications.js +7 -0
  93. package/lib/esm/constants/EventActionsMenu.d.ts +6 -0
  94. package/lib/esm/constants/EventActionsMenu.js +6 -0
  95. package/lib/esm/constants/Media.d.ts +2 -0
  96. package/lib/esm/constants/Media.js +2 -0
  97. package/lib/esm/index.d.ts +3 -1
  98. package/lib/esm/index.js +4 -2
  99. package/lib/esm/shared/Calendar/index.js +1 -1
  100. package/lib/esm/shared/EventActionsMenu/index.d.ts +49 -0
  101. package/lib/esm/shared/EventActionsMenu/index.js +151 -0
  102. package/lib/esm/shared/EventInfoDetails/index.d.ts +12 -0
  103. package/lib/esm/shared/EventInfoDetails/index.js +3 -3
  104. package/lib/esm/shared/Media/Event/DisplayComponent.d.ts +15 -0
  105. package/lib/esm/shared/Media/Event/DisplayComponent.js +29 -0
  106. package/lib/esm/shared/Media/Event/constants.d.ts +1 -0
  107. package/lib/esm/shared/Media/Event/constants.js +1 -0
  108. package/lib/esm/shared/Media/Event/filter.d.ts +3 -0
  109. package/lib/esm/shared/Media/Event/filter.js +2 -0
  110. package/lib/esm/shared/Media/Event/index.d.ts +3 -0
  111. package/lib/esm/shared/Media/Event/index.js +11 -0
  112. package/lib/esm/shared/Media/Link/PreviewComponent.js +1 -1
  113. package/lib/esm/shared/Media/index.d.ts +2 -1
  114. package/lib/esm/shared/Media/index.js +2 -1
  115. package/lib/esm/types/event.d.ts +5 -0
  116. package/lib/esm/types/event.js +6 -0
  117. package/lib/umd/224.js +2 -0
  118. package/lib/umd/react-ui.js +1 -1
  119. package/package.json +7 -7
  120. package/lib/umd/84.js +0 -2
  121. /package/lib/umd/{84.js.LICENSE.txt → 224.js.LICENSE.txt} +0 -0
package/lib/cjs/index.js CHANGED
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConsentSolution = exports.ConnectionUserButton = exports.ConfirmDialog = exports.ComposerIconButton = exports.Composer = exports.CommentsObjectSkeleton = exports.CommentsObject = exports.CommentsFeedObjectSkeleton = exports.CommentsFeedObject = exports.CommentObjectSkeleton = exports.CommentObjectReply = exports.CommentObject = exports.ChangePicture = exports.ChangeGroupPicture = exports.ChangeGroupCover = exports.ChangeCover = exports.CentralProgress = exports.CategoryTrendingUsersWidget = exports.CategoryTrendingPeopleWidgetSkeleton = exports.CategoryTrendingFeedWidgetSkeleton = exports.CategoryTrendingFeedWidget = exports.CategorySkeleton = exports.CategoryHeaderSkeleton = exports.CategoryHeader = exports.CategoryFollowersButton = exports.CategoryFollowButton = exports.CategoryAutocomplete = exports.Category = exports.CategoriesSuggestionWidgetSkeleton = exports.CategoriesSuggestionWidget = exports.CategoriesSkeleton = exports.CategoriesPopularWidgetSkeleton = exports.CategoriesPopularWidget = exports.Categories = exports.Calendar = exports.bytesToSize = exports.BroadcastMessagesSkeleton = exports.BroadcastMessages = exports.BottomNavigation = exports.BaseItem = exports.BaseDialog = exports.AvatarGroupSkeleton = exports.AccountVerify = exports.AccountReset = exports.AccountRecover = exports.AccountDeleteButton = exports.AccountDelete = exports.AccountDataPortabilityButton = exports.AccountDataPortability = exports.AccountChangeMailValidation = void 0;
4
- exports.getUnseenNotification = exports.getRelativeTime = exports.GenericSkeleton = exports.FriendshipUserButton = exports.FooterSkeleton = exports.Footer = exports.FollowUserButton = exports.File = exports.FeedUpdatesWidgetSkeleton = exports.FeedUpdatesWidget = exports.FeedSkeleton = exports.FeedObjectSkeleton = exports.FeedObjectMediaPreview = exports.FeedObject = exports.Feed = exports.FACEBOOK_SHARE = exports.EventsSkeleton = exports.EventSkeleton = exports.Events = exports.EventPartecipantsButton = exports.EventLocationWidgetSkeleton = exports.EventLocationWidget = exports.EventInviteButton = exports.EventInfoWidget = exports.EventInfoDetails = exports.EventHeaderSkeleton = exports.EventHeader = exports.Event = exports.EmailTextField = exports.EditorSkeleton = exports.Editor = exports.EditGroupButton = exports.EditEventButton = exports.DefaultHeaderContent = exports.DefaultDrawerContent = exports.DEFAULT_WIDGETS_NUMBER = exports.DEFAULT_PRELOAD_OFFSET_VIEWPORT = exports.DEFAULT_PAGINATION_QUERY_PARAM_NAME = exports.DEFAULT_PAGINATION_OFFSET = exports.DEFAULT_PAGINATION_LIMIT = exports.DEFAULT_FIELDS = exports.CustomAdvSkeleton = exports.CustomAdv = exports.CreateGroupButton = exports.CreateEventWidgetSkeleton = exports.CreateEventWidget = exports.CreateEventButton = exports.ContributionUtils = exports.ConsentSolutionSkeleton = exports.ConsentSolutionButton = void 0;
5
- exports.NavigationSettingsIconButton = exports.NavigationMenuIconButton = exports.NavigationMenuHeader = exports.NavigationMenuContent = exports.MyEventsWidgetSkeleton = exports.MyEventsWidget = exports.MIN_PRELOAD_OFFSET_VIEWPORT = exports.MetadataField = exports.MessageUploaderUtils = exports.MediaChunkUploader = exports.MEDIA_TYPE_EMBED = exports.MAX_PRELOAD_OFFSET_VIEWPORT = exports.LoyaltyProgramWidgetSkeleton = exports.LoyaltyProgramWidget = exports.LogoSelfCommunity = exports.LocationAutocomplete = exports.LINKEDIN_SHARE = exports.Link = exports.Lightbox = exports.LEGAL_POLICIES = exports.LanguageSwitcher = exports.InlineComposerWidgetSkeleton = exports.InlineComposerWidget = exports.InfiniteScroll = exports.IncubatorSuggestionWidget = exports.IncubatorSubscribeButton = exports.IncubatorListWidget = exports.IncubatorDetail = exports.Incubator = exports.HiddenPlaceholder = exports.GroupSubscribeButton = exports.GroupsSkeleton = exports.GroupSkeleton = exports.GroupSettingsIconButton = exports.Groups = exports.GroupRequestsWidgetSkeleton = exports.GroupRequestsWidget = exports.GroupMembersWidgetSkeleton = exports.GroupMembersWidget = exports.GroupMembersButton = exports.GroupInvitedWidgetSkeleton = exports.GroupInvitedWidget = exports.GroupInviteButton = exports.GroupInfoWidgetSkeleton = exports.GroupInfoWidget = exports.GroupHeaderSkeleton = exports.GroupHeader = exports.GroupForm = exports.Group = exports.getUnseenNotificationCounter = void 0;
6
- exports.UserConnectionsRequestsSentWidgetSkeleton = exports.UserConnectionsRequestsSentWidget = exports.UserAvatar = exports.UserActionIconButton = exports.User = exports.UrlTextField = exports.ToastNotificationsSkeleton = exports.ToastNotifications = exports.TagChip = exports.StickyBox = exports.SnippetNotificationsSkeleton = exports.SnippetNotifications = exports.Share = exports.SearchDialog = exports.SearchAutocomplete = exports.SCUserSocialAssociations = exports.SCUserProfileSettings = exports.SCUserProfileFields = exports.SCNotificationObjectTemplateType = exports.SCFeedObjectTemplateType = exports.SCFeedObjectActivitiesType = exports.SCCommentsOrderBy = exports.SCBroadcastMessageTemplateType = exports.ReplyComment = exports.RelatedFeedObjectsWidgetSkeleton = exports.RelatedFeedObjectsWidget = exports.PrivateMessageThreadSkeleton = exports.PrivateMessageThreadItemSkeleton = exports.PrivateMessageThreadItem = exports.PrivateMessageThread = exports.PrivateMessageSnippetsSkeleton = exports.PrivateMessageSnippets = exports.PrivateMessageSnippetItemSkeleton = exports.PrivateMessageSnippetItem = exports.PrivateMessageSettingsIconButton = exports.PrivateMessageEditorSkeleton = exports.PrivateMessageEditor = exports.PrivateMessageComponentSkeleton = exports.PrivateMessageComponent = exports.PollSuggestionWidget = exports.PlatformWidgetSkeleton = exports.PlatformWidget = exports.PhoneTextField = exports.PasswordTextField = exports.NotificationSkeleton = exports.Notification = exports.NavigationToolbarSkeleton = exports.NavigationToolbarMobileSkeleton = exports.NavigationToolbarMobile = exports.NavigationToolbar = void 0;
7
- exports.X_SHARE = exports.Widget = exports.useStickyBox = exports.UserSuggestionWidgetSkeleton = exports.UserSuggestionWidget = exports.UserSubscribedGroupsWidgetSkeleton = exports.UserSubscribedGroupsWidget = exports.UserSocialAssociation = exports.UserSkeleton = exports.UserProfileHeaderSkeleton = exports.UserProfileHeader = exports.UserProfileEditSkeleton = exports.UserProfileEditSectionSettings = exports.UserProfileEditSectionPublicInfo = exports.UserProfileEditSectionAccount = exports.UserProfileEdit = exports.UserProfileBlocked = exports.UsernameTextField = exports.UserInfoSkeleton = exports.UserInfoDialog = exports.UserInfo = exports.UserFollowersWidgetSkeleton = exports.UserFollowersWidget = exports.UserFollowedUsersWidgetSkeleton = exports.UserFollowedUsersWidget = exports.UserFollowedCategoriesWidgetSkeleton = exports.UserFollowedCategoriesWidget = exports.UserDeletedSnackBar = exports.UserCounters = exports.UserConnectionsWidgetSkeleton = exports.UserConnectionsWidget = exports.UserConnectionsRequestsWidgetSkeleton = exports.UserConnectionsRequestsWidget = void 0;
4
+ exports.getRelativeTime = exports.GenericSkeleton = exports.FriendshipUserButton = exports.FooterSkeleton = exports.Footer = exports.FollowUserButton = exports.File = exports.FeedUpdatesWidgetSkeleton = exports.FeedUpdatesWidget = exports.FeedSkeleton = exports.FeedObjectSkeleton = exports.FeedObjectMediaPreview = exports.FeedObject = exports.Feed = exports.FACEBOOK_SHARE = exports.EventsSkeleton = exports.EventSkeleton = exports.Events = exports.EventPartecipantsButton = exports.EventLocationWidgetSkeleton = exports.EventLocationWidget = exports.EventInviteButton = exports.EventInfoWidget = exports.EventInfoDetails = exports.EventHeaderSkeleton = exports.EventHeader = exports.EventActionsMenu = exports.Event = exports.EmailTextField = exports.EditorSkeleton = exports.Editor = exports.EditGroupButton = exports.EditEventButton = exports.DefaultHeaderContent = exports.DefaultDrawerContent = exports.DEFAULT_WIDGETS_NUMBER = exports.DEFAULT_PRELOAD_OFFSET_VIEWPORT = exports.DEFAULT_PAGINATION_QUERY_PARAM_NAME = exports.DEFAULT_PAGINATION_OFFSET = exports.DEFAULT_PAGINATION_LIMIT = exports.DEFAULT_FIELDS = exports.CustomAdvSkeleton = exports.CustomAdv = exports.CreateGroupButton = exports.CreateEventWidgetSkeleton = exports.CreateEventWidget = exports.CreateEventButton = exports.ContributionUtils = exports.ConsentSolutionSkeleton = exports.ConsentSolutionButton = void 0;
5
+ exports.NavigationMenuIconButton = exports.NavigationMenuHeader = exports.NavigationMenuContent = exports.MyEventsWidgetSkeleton = exports.MyEventsWidget = exports.MIN_PRELOAD_OFFSET_VIEWPORT = exports.MetadataField = exports.MessageUploaderUtils = exports.MediaChunkUploader = exports.MEDIA_TYPE_EMBED = exports.MAX_PRELOAD_OFFSET_VIEWPORT = exports.LoyaltyProgramWidgetSkeleton = exports.LoyaltyProgramWidget = exports.LogoSelfCommunity = exports.LocationAutocomplete = exports.LINKEDIN_SHARE = exports.Link = exports.Lightbox = exports.LEGAL_POLICIES = exports.LanguageSwitcher = exports.InlineComposerWidgetSkeleton = exports.InlineComposerWidget = exports.InfiniteScroll = exports.IncubatorSuggestionWidget = exports.IncubatorSubscribeButton = exports.IncubatorListWidget = exports.IncubatorDetail = exports.Incubator = exports.HiddenPlaceholder = exports.GroupSubscribeButton = exports.GroupsSkeleton = exports.GroupSkeleton = exports.GroupSettingsIconButton = exports.Groups = exports.GroupRequestsWidgetSkeleton = exports.GroupRequestsWidget = exports.GroupMembersWidgetSkeleton = exports.GroupMembersWidget = exports.GroupMembersButton = exports.GroupInvitedWidgetSkeleton = exports.GroupInvitedWidget = exports.GroupInviteButton = exports.GroupInfoWidgetSkeleton = exports.GroupInfoWidget = exports.GroupHeaderSkeleton = exports.GroupHeader = exports.GroupForm = exports.Group = exports.getUnseenNotificationCounter = exports.getUnseenNotification = void 0;
6
+ exports.UserActionIconButton = exports.User = exports.UrlTextField = exports.ToastNotificationsSkeleton = exports.ToastNotifications = exports.TagChip = exports.SuggestedEventsWidgetSkeleton = exports.SuggestedEventsWidget = exports.StickyBox = exports.SnippetNotificationsSkeleton = exports.SnippetNotifications = exports.Share = exports.SearchDialog = exports.SearchAutocomplete = exports.SCUserSocialAssociations = exports.SCUserProfileSettings = exports.SCUserProfileFields = exports.SCNotificationObjectTemplateType = exports.SCFeedObjectTemplateType = exports.SCFeedObjectActivitiesType = exports.SCCommentsOrderBy = exports.SCBroadcastMessageTemplateType = exports.ReplyComment = exports.RelatedFeedObjectsWidgetSkeleton = exports.RelatedFeedObjectsWidget = exports.PrivateMessageThreadSkeleton = exports.PrivateMessageThreadItemSkeleton = exports.PrivateMessageThreadItem = exports.PrivateMessageThread = exports.PrivateMessageSnippetsSkeleton = exports.PrivateMessageSnippets = exports.PrivateMessageSnippetItemSkeleton = exports.PrivateMessageSnippetItem = exports.PrivateMessageSettingsIconButton = exports.PrivateMessageEditorSkeleton = exports.PrivateMessageEditor = exports.PrivateMessageComponentSkeleton = exports.PrivateMessageComponent = exports.PollSuggestionWidget = exports.PlatformWidgetSkeleton = exports.PlatformWidget = exports.PhoneTextField = exports.PasswordTextField = exports.NotificationSkeleton = exports.Notification = exports.NavigationToolbarSkeleton = exports.NavigationToolbarMobileSkeleton = exports.NavigationToolbarMobile = exports.NavigationToolbar = exports.NavigationSettingsIconButton = void 0;
7
+ exports.X_SHARE = exports.Widget = exports.useStickyBox = exports.UserSuggestionWidgetSkeleton = exports.UserSuggestionWidget = exports.UserSubscribedGroupsWidgetSkeleton = exports.UserSubscribedGroupsWidget = exports.UserSocialAssociation = exports.UserSkeleton = exports.UserProfileHeaderSkeleton = exports.UserProfileHeader = exports.UserProfileEditSkeleton = exports.UserProfileEditSectionSettings = exports.UserProfileEditSectionPublicInfo = exports.UserProfileEditSectionAccount = exports.UserProfileEdit = exports.UserProfileBlocked = exports.UsernameTextField = exports.UserInfoSkeleton = exports.UserInfoDialog = exports.UserInfo = exports.UserFollowersWidgetSkeleton = exports.UserFollowersWidget = exports.UserFollowedUsersWidgetSkeleton = exports.UserFollowedUsersWidget = exports.UserFollowedCategoriesWidgetSkeleton = exports.UserFollowedCategoriesWidget = exports.UserDeletedSnackBar = exports.UserCounters = exports.UserConnectionsWidgetSkeleton = exports.UserConnectionsWidget = exports.UserConnectionsRequestsWidgetSkeleton = exports.UserConnectionsRequestsWidget = exports.UserConnectionsRequestsSentWidgetSkeleton = exports.UserConnectionsRequestsSentWidget = exports.UserAvatar = void 0;
8
8
  const tslib_1 = require("tslib");
9
9
  /**
10
10
  * Components
@@ -248,6 +248,9 @@ Object.defineProperty(exports, "GenericSkeleton", { enumerable: true, get: funct
248
248
  const SnippetNotifications_1 = tslib_1.__importStar(require("./components/SnippetNotifications"));
249
249
  exports.SnippetNotifications = SnippetNotifications_1.default;
250
250
  Object.defineProperty(exports, "SnippetNotificationsSkeleton", { enumerable: true, get: function () { return SnippetNotifications_1.SnippetNotificationsSkeleton; } });
251
+ const SuggestedEventsWidget_1 = tslib_1.__importStar(require("./components/SuggestedEventsWidget"));
252
+ exports.SuggestedEventsWidget = SuggestedEventsWidget_1.default;
253
+ Object.defineProperty(exports, "SuggestedEventsWidgetSkeleton", { enumerable: true, get: function () { return SuggestedEventsWidget_1.SuggestedEventsWidgetSkeleton; } });
251
254
  const ToastNotifications_1 = tslib_1.__importStar(require("./components/ToastNotifications"));
252
255
  exports.ToastNotifications = ToastNotifications_1.default;
253
256
  Object.defineProperty(exports, "ToastNotificationsSkeleton", { enumerable: true, get: function () { return ToastNotifications_1.ToastNotificationsSkeleton; } });
@@ -314,6 +317,8 @@ const ConfirmDialog_1 = tslib_1.__importDefault(require("./shared/ConfirmDialog/
314
317
  exports.ConfirmDialog = ConfirmDialog_1.default;
315
318
  const EmailTextField_1 = tslib_1.__importDefault(require("./shared/EmailTextField"));
316
319
  exports.EmailTextField = EmailTextField_1.default;
320
+ const EventActionsMenu_1 = tslib_1.__importDefault(require("./shared/EventActionsMenu"));
321
+ exports.EventActionsMenu = EventActionsMenu_1.default;
317
322
  const EventInfoDetails_1 = tslib_1.__importDefault(require("./shared/EventInfoDetails"));
318
323
  exports.EventInfoDetails = EventInfoDetails_1.default;
319
324
  const HiddenPlaceholder_1 = tslib_1.__importDefault(require("./shared/HiddenPlaceholder"));
@@ -11,7 +11,7 @@ const Root = (0, material_1.styled)(material_1.Stack, {
11
11
  name: PREFIX,
12
12
  slot: 'Root',
13
13
  overridesResolver: (_props, styles) => styles.root
14
- })();
14
+ })(() => ({}));
15
15
  function Calendar(props) {
16
16
  const day = props.day;
17
17
  return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: classes.root }, { children: [(0, jsx_runtime_1.jsx)(material_1.Box, { className: classes.header }), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "h2", textAlign: "center" }, { children: day }))] })));
@@ -0,0 +1,49 @@
1
+ import { IconButtonProps } from '@mui/material';
2
+ import { SCEventType } from '@selfcommunity/types';
3
+ export interface EventActionsMenuProps extends IconButtonProps {
4
+ /**
5
+ * Overrides or extends the styles applied to the component.
6
+ * @default null
7
+ */
8
+ className?: string;
9
+ /**
10
+ * The event
11
+ */
12
+ event?: SCEventType;
13
+ /**
14
+ * The event id
15
+ */
16
+ eventId: number;
17
+ /**
18
+ * Any other properties
19
+ */
20
+ [p: string]: any;
21
+ }
22
+ /**
23
+ * > API documentation for the Community-JS EventActionsMenu component. Learn about the available props and the CSS API.
24
+
25
+ #### Import
26
+
27
+ ```jsx
28
+ import {EventActionsMenu} from '@selfcommunity/react-ui';
29
+ ```
30
+
31
+ #### Component Name
32
+
33
+ The name `SCEventActionsMenu` can be used when providing style overrides in the theme.
34
+
35
+
36
+ #### CSS
37
+
38
+ |Rule Name|Global class|Description|
39
+ |---|---|---|
40
+ |root|.SCEventActionsMenu-root|Styles applied to the root element.|
41
+ |drawerRoot|.SCEventActionsMenu-drawer-root|Styles applied to the drawer root element.|
42
+ |menuRoot|.SCEventActionsMenu-menu-root|Styles applied to the menu root element.|
43
+ |paper|.SCEventActionsMenu-paper|Styles applied to the paper element.|
44
+ |item|.SCEventActionsMenu-item|Styles applied to the item element.|
45
+
46
+
47
+ * @param inProps
48
+ */
49
+ export default function EventActionsMenu(inProps: EventActionsMenuProps): JSX.Element;
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const styles_1 = require("@mui/material/styles");
7
+ const material_1 = require("@mui/material");
8
+ const react_intl_1 = require("react-intl");
9
+ const Icon_1 = tslib_1.__importDefault(require("@mui/material/Icon"));
10
+ const classnames_1 = tslib_1.__importDefault(require("classnames"));
11
+ const system_1 = require("@mui/system");
12
+ const react_core_1 = require("@selfcommunity/react-core");
13
+ const ConfirmDialog_1 = tslib_1.__importDefault(require("../../shared/ConfirmDialog/ConfirmDialog"));
14
+ const api_services_1 = require("@selfcommunity/api-services");
15
+ const types_1 = require("@selfcommunity/types");
16
+ const EventActionsMenu_1 = require("../../constants/EventActionsMenu");
17
+ const utils_1 = require("@selfcommunity/utils");
18
+ const notistack_1 = require("notistack");
19
+ const HiddenPlaceholder_1 = tslib_1.__importDefault(require("../HiddenPlaceholder"));
20
+ const PREFIX = 'SCEventActionsMenu';
21
+ const classes = {
22
+ root: `${PREFIX}-root`,
23
+ drawerRoot: `${PREFIX}-drawer-root`,
24
+ menuRoot: `${PREFIX}-menu-root`,
25
+ paper: `${PREFIX}-paper`,
26
+ item: `${PREFIX}-item`
27
+ };
28
+ const Root = (0, styles_1.styled)(material_1.IconButton, {
29
+ name: PREFIX,
30
+ slot: 'Root'
31
+ })(() => ({}));
32
+ const SwipeableDrawerRoot = (0, styles_1.styled)(material_1.SwipeableDrawer, {
33
+ name: PREFIX,
34
+ slot: 'DrawerRoot'
35
+ })(() => ({}));
36
+ const MenuRoot = (0, styles_1.styled)(material_1.Menu, {
37
+ name: PREFIX,
38
+ slot: 'MenuRoot'
39
+ })(() => ({}));
40
+ /**
41
+ * > API documentation for the Community-JS EventActionsMenu component. Learn about the available props and the CSS API.
42
+
43
+ #### Import
44
+
45
+ ```jsx
46
+ import {EventActionsMenu} from '@selfcommunity/react-ui';
47
+ ```
48
+
49
+ #### Component Name
50
+
51
+ The name `SCEventActionsMenu` can be used when providing style overrides in the theme.
52
+
53
+
54
+ #### CSS
55
+
56
+ |Rule Name|Global class|Description|
57
+ |---|---|---|
58
+ |root|.SCEventActionsMenu-root|Styles applied to the root element.|
59
+ |drawerRoot|.SCEventActionsMenu-drawer-root|Styles applied to the drawer root element.|
60
+ |menuRoot|.SCEventActionsMenu-menu-root|Styles applied to the menu root element.|
61
+ |paper|.SCEventActionsMenu-paper|Styles applied to the paper element.|
62
+ |item|.SCEventActionsMenu-item|Styles applied to the item element.|
63
+
64
+
65
+ * @param inProps
66
+ */
67
+ function EventActionsMenu(inProps) {
68
+ var _a;
69
+ // PROPS
70
+ const props = (0, system_1.useThemeProps)({
71
+ props: inProps,
72
+ name: PREFIX
73
+ });
74
+ const { className, event, eventId } = props, rest = tslib_1.__rest(props, ["className", "event", "eventId"]);
75
+ // STATE
76
+ const [anchorEl, setAnchorEl] = (0, react_1.useState)(null);
77
+ const [openConfirmDialog, setOpenConfirmDialog] = (0, react_1.useState)(false);
78
+ // HOOKS
79
+ const theme = (0, material_1.useTheme)();
80
+ const isMobile = (0, material_1.useMediaQuery)(theme.breakpoints.down('md'));
81
+ const scRoutingContext = (0, react_core_1.useSCRouting)();
82
+ const scUserContext = (0, react_core_1.useSCUser)();
83
+ const { scEvent } = (0, react_core_1.useSCFetchEvent)({ id: eventId, event });
84
+ const isEventAdmin = (0, react_1.useMemo)(() => { var _a; return scUserContext.user && ((_a = scEvent === null || scEvent === void 0 ? void 0 : scEvent.managed_by) === null || _a === void 0 ? void 0 : _a.id) === scUserContext.user.id; }, [scUserContext.user, (_a = scEvent === null || scEvent === void 0 ? void 0 : scEvent.managed_by) === null || _a === void 0 ? void 0 : _a.id]);
85
+ // HANDLERS
86
+ const handleOpen = (event) => {
87
+ setAnchorEl(event.currentTarget);
88
+ };
89
+ const handleClose = () => {
90
+ setAnchorEl(null);
91
+ };
92
+ const handleCloseDialog = () => {
93
+ setOpenConfirmDialog(false);
94
+ setAnchorEl(null);
95
+ };
96
+ /**
97
+ * Handles thread deletion
98
+ */
99
+ function handleDeleteThread() {
100
+ api_services_1.EventService.deleteEvent(scEvent.id)
101
+ .then(() => {
102
+ handleCloseDialog();
103
+ })
104
+ .catch((error) => {
105
+ setOpenConfirmDialog(false);
106
+ console.log(error);
107
+ });
108
+ }
109
+ const createGoogleCalendarLink = (event) => {
110
+ const baseUrl = 'https://www.google.com/calendar/render?action=TEMPLATE';
111
+ return `${baseUrl}&text=${encodeURIComponent(event.name)}&details=${encodeURIComponent(event.description)}&location=${encodeURIComponent(event.geolocation)}&dates=${event.start_date}/${event.end_date}`;
112
+ };
113
+ /**
114
+ * Handles actions
115
+ */
116
+ function handleAction(action) {
117
+ if (action === EventActionsMenu_1.GET_EVENT_LINK) {
118
+ (0, utils_1.copyTextToClipboard)(`${location.protocol}//${location.host}${scRoutingContext.url(react_core_1.SCRoutes.EVENT_ROUTE_NAME, scEvent)}`).then(() => {
119
+ (0, notistack_1.enqueueSnackbar)((0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.common.permanentLinkCopied", defaultMessage: "ui.common.permanentLinkCopied" }), {
120
+ variant: 'success',
121
+ autoHideDuration: 3000
122
+ });
123
+ });
124
+ handleClose();
125
+ }
126
+ else if (action === EventActionsMenu_1.ADD_EVENT_TO_CALENDAR) {
127
+ window.open(createGoogleCalendarLink(scEvent), '_blank', 'noopener,noreferrer');
128
+ handleClose();
129
+ }
130
+ else if (action === EventActionsMenu_1.CANCEL_EVENT) {
131
+ setOpenConfirmDialog(true);
132
+ handleClose();
133
+ }
134
+ }
135
+ /**
136
+ *
137
+ */
138
+ const renderList = () => {
139
+ return [
140
+ (0, jsx_runtime_1.jsxs)(material_1.MenuItem, Object.assign({ className: classes.item, onClick: () => handleAction(EventActionsMenu_1.GET_EVENT_LINK) }, { children: [(0, jsx_runtime_1.jsx)(material_1.ListItemIcon, { children: (0, jsx_runtime_1.jsx)(Icon_1.default, { children: "link" }) }), (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.shared.eventActionsMenu.item.link", defaultMessage: "ui.shared.eventActionsMenu.item.link" })] }), "link"),
141
+ (0, jsx_runtime_1.jsxs)(material_1.MenuItem, Object.assign({ className: classes.item, onClick: () => handleAction(EventActionsMenu_1.ADD_EVENT_TO_CALENDAR) }, { children: [(0, jsx_runtime_1.jsx)(material_1.ListItemIcon, { children: (0, jsx_runtime_1.jsx)(Icon_1.default, { children: "CalendarIcon" }) }), (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.shared.eventActionsMenu.item.calendar", defaultMessage: "ui.shared.eventActionsMenu.item.calendar" })] }), "calendar"),
142
+ isEventAdmin && [
143
+ (0, jsx_runtime_1.jsx)(material_1.Divider, {}, "divider"),
144
+ (0, jsx_runtime_1.jsxs)(material_1.MenuItem, Object.assign({ className: classes.item, onClick: () => handleAction(EventActionsMenu_1.CANCEL_EVENT) }, { children: [(0, jsx_runtime_1.jsx)(material_1.ListItemIcon, { children: (0, jsx_runtime_1.jsx)(Icon_1.default, { children: "close" }) }), (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.shared.eventActionsMenu.item.cancel", defaultMessage: "ui.shared.eventActionsMenu.item.cancel" })] }), "cancel")
145
+ ]
146
+ ];
147
+ };
148
+ if (!scUserContext.user ||
149
+ ((scEvent === null || scEvent === void 0 ? void 0 : scEvent.privacy) === types_1.SCEventPrivacyType.PRIVATE && (scEvent === null || scEvent === void 0 ? void 0 : scEvent.subscription_status) !== types_1.SCEventSubscriptionStatusType.SUBSCRIBED)) {
150
+ return (0, jsx_runtime_1.jsx)(HiddenPlaceholder_1.default, {});
151
+ }
152
+ return ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(classes.root, className) }, rest, { onClick: handleOpen }, { children: (0, jsx_runtime_1.jsx)(Icon_1.default, { children: "more_vert" }) })), isMobile ? ((0, jsx_runtime_1.jsx)(SwipeableDrawerRoot, Object.assign({ className: classes.drawerRoot, anchor: "bottom", open: Boolean(anchorEl), onClose: handleClose, onOpen: handleOpen, PaperProps: { className: classes.paper }, disableSwipeToOpen: true }, { children: (0, jsx_runtime_1.jsx)(material_1.List, { children: renderList() }) }))) : ((0, jsx_runtime_1.jsx)(MenuRoot, Object.assign({ className: classes.menuRoot, anchorEl: anchorEl, open: Boolean(anchorEl), onClose: handleClose, PaperProps: { className: classes.paper } }, { children: renderList() }))), openConfirmDialog && ((0, jsx_runtime_1.jsx)(ConfirmDialog_1.default, { open: openConfirmDialog, title: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.shared.eventActionsMenu.dialog.msg", defaultMessage: "ui.shared.eventActionsMenu.dialog.msg" }), btnConfirm: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: "ui.shared.eventActionsMenu.dialog.confirm", defaultMessage: "ui.shared.eventActionsMenu.dialog.confirm" }), onConfirm: handleDeleteThread, onClose: handleCloseDialog }))] }));
153
+ }
154
+ exports.default = EventActionsMenu;
@@ -1,6 +1,18 @@
1
1
  import { SCEventType } from '@selfcommunity/types';
2
+ import React from 'react';
2
3
  export interface EventInfoDetailsProps {
3
4
  event: SCEventType;
5
+ hideDateIcon?: boolean;
6
+ hidePrivacyIcon?: boolean;
7
+ hideLocationIcon?: boolean;
8
+ hideCreatedIcon?: boolean;
9
+ hasDateInfo?: boolean;
10
+ hasPrivacyInfo?: boolean;
11
+ hasLocationInfo?: boolean;
4
12
  hasCreatedInfo?: boolean;
13
+ beforeDateInfo?: React.ReactNode | null;
14
+ beforePrivacyInfo?: React.ReactNode | null;
15
+ beforeLocationInfo?: React.ReactNode | null;
16
+ beforeCreatedInfo?: React.ReactNode | null;
5
17
  }
6
18
  export default function EventInfoDetails(inProps: EventInfoDetailsProps): JSX.Element;
@@ -23,14 +23,14 @@ const Root = (0, material_1.styled)(material_1.Stack, {
23
23
  name: PREFIX,
24
24
  slot: 'Root',
25
25
  overridesResolver: (_props, styles) => styles.root
26
- })();
26
+ })(() => ({}));
27
27
  function EventInfoDetails(inProps) {
28
28
  // PROPS
29
29
  const props = (0, material_1.useThemeProps)({
30
30
  props: inProps,
31
31
  name: PREFIX
32
32
  });
33
- const { event, hasCreatedInfo } = props;
33
+ const { event, hideDateIcon = false, hidePrivacyIcon = false, hideLocationIcon = false, hideCreatedIcon = false, hasDateInfo = true, hasPrivacyInfo = true, hasLocationInfo = true, hasCreatedInfo = false, beforeDateInfo, beforePrivacyInfo, beforeLocationInfo, beforeCreatedInfo } = props;
34
34
  // HOOKS
35
35
  const intl = (0, react_intl_1.useIntl)();
36
36
  const privacy = event.privacy === types_1.SCEventPrivacyType.PUBLIC ? 'ui.eventInfoDetails.privacy.public' : 'ui.eventInfoDetails.privacy.private';
@@ -45,6 +45,6 @@ function EventInfoDetails(inProps) {
45
45
  locale: LOCALE_MAP[intl.locale]
46
46
  }).replace(/Creato il (\d{1})+ ([a-z]+) (\d{4})/, (_, day, month, year) => `Creato il ${day} ${month.charAt(0).toUpperCase() + month.slice(1)} ${year}`);
47
47
  };
48
- return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: classes.root }, { children: [(0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.iconTextWrapper }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: "CalendarIcon" })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: formatDateEventDate(event.start_date) }))] })), (0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.iconTextWrapper }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: event.privacy === types_1.SCEventPrivacyType.PUBLIC ? 'public' : 'private' })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: privacy, defaultMessage: privacy }) })), "-", (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: location, defaultMessage: location }) }))] })), (0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.iconTextWrapper }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: event.location === types_1.SCEventLocationType.ONLINE ? 'play_circle_outline' : 'add_location_alt' })), event.location === types_1.SCEventLocationType.ONLINE ? ((0, jsx_runtime_1.jsx)(react_core_1.Link, Object.assign({ to: event.link, target: "_blank", className: classes.link }, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1", className: classes.url }, { children: event.link })) }))) : ((0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1", className: classes.url }, { children: event.geolocation })))] })), hasCreatedInfo && ((0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.creationWrapper }, { children: [(0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: "create" })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: formatDateCreateDate(event.created_at) }))] })))] })));
48
+ return ((0, jsx_runtime_1.jsxs)(Root, Object.assign({ className: classes.root }, { children: [beforeDateInfo, hasDateInfo && ((0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.iconTextWrapper }, { children: [!hideDateIcon && (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: "CalendarIcon" })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: formatDateEventDate(event.start_date) }))] }))), beforePrivacyInfo, hasPrivacyInfo && ((0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.iconTextWrapper }, { children: [!hidePrivacyIcon && (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: event.privacy === types_1.SCEventPrivacyType.PUBLIC ? 'public' : 'private' })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: privacy, defaultMessage: privacy }) })), "-", (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: (0, jsx_runtime_1.jsx)(react_intl_1.FormattedMessage, { id: location, defaultMessage: location }) }))] }))), beforeLocationInfo, hasLocationInfo && ((0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.iconTextWrapper }, { children: [!hideLocationIcon && ((0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: event.location === types_1.SCEventLocationType.ONLINE ? 'play_circle_outline' : 'add_location_alt' }))), event.location === types_1.SCEventLocationType.ONLINE ? ((0, jsx_runtime_1.jsx)(react_core_1.Link, Object.assign({ to: event.link, target: "_blank", className: classes.link }, { children: (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1", className: classes.url }, { children: event.link })) }))) : ((0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1", className: classes.url }, { children: event.geolocation })))] }))), beforeCreatedInfo, hasCreatedInfo && ((0, jsx_runtime_1.jsxs)(material_1.Stack, Object.assign({ className: classes.creationWrapper }, { children: [!hideCreatedIcon && (0, jsx_runtime_1.jsx)(material_1.Icon, Object.assign({ fontSize: "small" }, { children: "create" })), (0, jsx_runtime_1.jsx)(material_1.Typography, Object.assign({ variant: "body1" }, { children: formatDateCreateDate(event.created_at) }))] })))] })));
49
49
  }
50
50
  exports.default = EventInfoDetails;
@@ -0,0 +1,15 @@
1
+ import { ReactElement } from 'react';
2
+ import { SCMediaType } from '@selfcommunity/types/src/types';
3
+ import { BoxProps } from '@mui/material';
4
+ export interface DisplayComponentProps extends BoxProps {
5
+ /**
6
+ * Medias
7
+ */
8
+ medias: SCMediaType[];
9
+ /**
10
+ * Handles on media click
11
+ */
12
+ onMediaClick?: (any: any) => void;
13
+ }
14
+ declare const _default: ({ className, medias, onMediaClick, ...rest }: DisplayComponentProps) => ReactElement;
15
+ export default _default;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const styles_1 = require("@mui/material/styles");
7
+ const Box_1 = tslib_1.__importDefault(require("@mui/material/Box"));
8
+ const classnames_1 = tslib_1.__importDefault(require("classnames"));
9
+ const filter_1 = tslib_1.__importDefault(require("./filter"));
10
+ const Event_1 = tslib_1.__importDefault(require("../../../components/Event"));
11
+ const event_1 = require("../../../types/event");
12
+ const constants_1 = require("./constants");
13
+ const classes = {
14
+ displayRoot: `${constants_1.PREFIX}-display-root`,
15
+ eventPreview: `${constants_1.PREFIX}-event-preview`,
16
+ eventPlaceholder: `${constants_1.PREFIX}-event-placeholder`
17
+ };
18
+ const Root = (0, styles_1.styled)(Box_1.default, {
19
+ name: constants_1.PREFIX,
20
+ slot: 'DisplayRoot'
21
+ })(({ theme }) => ({}));
22
+ exports.default = (_a) => {
23
+ var { className, medias = [], onMediaClick = null } = _a, rest = tslib_1.__rest(_a, ["className", "medias", "onMediaClick"]);
24
+ // MEMO
25
+ const _medias = (0, react_1.useMemo)(() => medias.filter(filter_1.default), [medias]);
26
+ if (_medias.length === 0) {
27
+ return null;
28
+ }
29
+ console.log(medias);
30
+ return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ className: (0, classnames_1.default)(className, classes.displayRoot) }, rest, { children: _medias.map((media, i) => ((0, jsx_runtime_1.jsx)(Box_1.default, Object.assign({ className: classes.eventPreview, onClick: onMediaClick }, { children: (0, jsx_runtime_1.jsx)(Event_1.default, { event: media.embed.metadata, template: event_1.SCEventTemplateType.DETAIL, variant: "outlined", square: true, hideEventParticipants: true, hideEventPlanner: true, actions: (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, {}) }) }), i))) })));
31
+ };
@@ -0,0 +1 @@
1
+ export declare const PREFIX = "SCMediaEvent";
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PREFIX = void 0;
4
+ exports.PREFIX = 'SCMediaEvent';
@@ -0,0 +1,3 @@
1
+ import { SCMediaType } from '@selfcommunity/types/src/types';
2
+ declare const _default: (media: SCMediaType) => boolean;
3
+ export default _default;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const Media_1 = require("../../../constants/Media");
4
+ exports.default = (media) => media.type === Media_1.MEDIA_TYPE_EVENT;
@@ -0,0 +1,3 @@
1
+ import { SCMediaObjectType } from '../../../types/media';
2
+ declare const Event: SCMediaObjectType;
3
+ export default Event;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ const DisplayComponent_1 = tslib_1.__importDefault(require("./DisplayComponent"));
5
+ const filter_1 = tslib_1.__importDefault(require("./filter"));
6
+ const Event = {
7
+ name: 'event',
8
+ displayComponent: DisplayComponent_1.default,
9
+ triggerButton: null,
10
+ layerComponent: null,
11
+ previewComponent: null,
12
+ filter: filter_1.default
13
+ };
14
+ exports.default = Event;
@@ -32,6 +32,6 @@ const PreviewComponent = react_1.default.forwardRef((props, ref) => {
32
32
  onChange && onChange([...value.filter((media) => medias.findIndex((m) => m.id === media.id) === -1), ...medias]);
33
33
  }, [onChange, value]);
34
34
  const handleDelete = (0, react_1.useCallback)((id) => () => onChange && onChange(value.filter((media) => media.id !== id)), [onChange, value]);
35
- return (0, jsx_runtime_1.jsx)(Root, Object.assign({ ref: ref, className: (0, classnames_1.default)(className, classes.previewRoot) }, rest, { children: medias.length > 0 && ((0, jsx_runtime_1.jsx)(react_sortablejs_1.ReactSortable, Object.assign({ list: medias, setList: handleSort }, { children: medias.map((media) => ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: (0, classnames_1.default)(classes.media, { [classes.video]: media.embed.metadata && media.embed.metadata.type === Media_1.MEDIA_TYPE_VIDEO }) }, { children: [(0, jsx_runtime_1.jsx)(DisplayComponent_1.default, { medias: [media] }), (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ className: classes.delete, onClick: handleDelete(media.id), size: "small" }, { children: (0, jsx_runtime_1.jsx)(Icon_1.default, { children: "delete" }) }))] }), media.id))) }))) }));
35
+ return ((0, jsx_runtime_1.jsx)(Root, Object.assign({ ref: ref, className: (0, classnames_1.default)(className, classes.previewRoot) }, rest, { children: medias.length > 0 && ((0, jsx_runtime_1.jsx)(react_sortablejs_1.ReactSortable, Object.assign({ list: medias, setList: handleSort }, { children: medias.map((media) => ((0, jsx_runtime_1.jsxs)(material_1.Box, Object.assign({ className: (0, classnames_1.default)(classes.media, { [classes.video]: media.embed.metadata && media.embed.metadata.type === Media_1.MEDIA_TYPE_VIDEO }) }, { children: [(0, jsx_runtime_1.jsx)(DisplayComponent_1.default, { medias: [media] }), (0, jsx_runtime_1.jsx)(material_1.IconButton, Object.assign({ className: classes.delete, onClick: handleDelete(media.id), size: "small" }, { children: (0, jsx_runtime_1.jsx)(Icon_1.default, { children: "delete" }) }))] }), media.id))) }))) })));
36
36
  });
37
37
  exports.default = PreviewComponent;
@@ -1,5 +1,6 @@
1
1
  import File from './File';
2
2
  import Link from './Link';
3
3
  import Share from './Share';
4
+ import Event from './Event';
4
5
  import { EditMediaProps } from './types';
5
- export { File, Link, Share, EditMediaProps };
6
+ export { File, Link, Share, Event, EditMediaProps };
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Share = exports.Link = exports.File = void 0;
3
+ exports.Event = exports.Share = exports.Link = exports.File = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const File_1 = tslib_1.__importDefault(require("./File"));
6
6
  exports.File = File_1.default;
@@ -8,3 +8,5 @@ const Link_1 = tslib_1.__importDefault(require("./Link"));
8
8
  exports.Link = Link_1.default;
9
9
  const Share_1 = tslib_1.__importDefault(require("./Share"));
10
10
  exports.Share = Share_1.default;
11
+ const Event_1 = tslib_1.__importDefault(require("./Event"));
12
+ exports.Event = Event_1.default;
@@ -0,0 +1,5 @@
1
+ export declare enum SCEventTemplateType {
2
+ DETAIL = "detail",
3
+ SNIPPET = "snippet",
4
+ PREVIEW = "preview"
5
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SCEventTemplateType = void 0;
4
+ var SCEventTemplateType;
5
+ (function (SCEventTemplateType) {
6
+ SCEventTemplateType["DETAIL"] = "detail";
7
+ SCEventTemplateType["SNIPPET"] = "snippet";
8
+ SCEventTemplateType["PREVIEW"] = "preview";
9
+ })(SCEventTemplateType = exports.SCEventTemplateType || (exports.SCEventTemplateType = {}));
@@ -1,5 +1,11 @@
1
+ import { CreateEventButtonProps } from '../CreateEventButton';
1
2
  import { WidgetProps } from '../Widget';
2
3
  export interface CreateEventWidgetProps extends WidgetProps {
4
+ /**
5
+ * Props to spread to CreateEventButton component
6
+ * @default {}
7
+ */
8
+ CreateEventButtonComponentProps?: CreateEventButtonProps;
3
9
  /**
4
10
  * Other props
5
11
  */
@@ -21,8 +21,9 @@ const classes = {
21
21
  };
22
22
  const Root = styled(Widget, {
23
23
  name: PREFIX,
24
- slot: 'Root'
25
- })();
24
+ slot: 'Root',
25
+ overridesResolver: (_props, styles) => styles.root
26
+ })(() => ({}));
26
27
  export default function CreateEventWidget(inProps) {
27
28
  var _a;
28
29
  // PROPS
@@ -30,7 +31,7 @@ export default function CreateEventWidget(inProps) {
30
31
  props: inProps,
31
32
  name: PREFIX
32
33
  });
33
- const rest = __rest(props, []);
34
+ const { CreateEventButtonComponentProps = {} } = props, rest = __rest(props, ["CreateEventButtonComponentProps"]);
34
35
  // STATE
35
36
  const [loading, setLoading] = useState(true);
36
37
  // CONTEXT
@@ -55,5 +56,5 @@ export default function CreateEventWidget(inProps) {
55
56
  if (!eventsEnabled || (!canCreateEvent && onlyStaffEnabled) || !authUserId) {
56
57
  return _jsx(HiddenPlaceholder, {});
57
58
  }
58
- return (_jsxs(Root, Object.assign({ className: classes.root }, rest, { children: [_jsxs(Box, Object.assign({ position: "relative" }, { children: [_jsx(CardMedia, { component: "img", image: `${preferences[SCPreferences.IMAGES_USER_DEFAULT_COVER].value}`, alt: "placeholder image", className: classes.image }), _jsx(Icon, Object.assign({ className: classes.calendar, fontSize: "large" }, { children: "CalendarIcon" }))] })), _jsxs(CardContent, Object.assign({ className: classes.content }, { children: [_jsx(Typography, Object.assign({ variant: "h5", className: classes.title }, { children: _jsx(FormattedMessage, { id: "ui.createEvent.title", defaultMessage: "ui.createEvent.title" }) })), _jsx(Typography, Object.assign({ variant: "body1", className: classes.spaging }, { children: _jsx(FormattedMessage, { id: "ui.createEvent.description", defaultMessage: "ui.createEvent.description" }) })), _jsx(Divider, { className: classes.spaging })] })), _jsx(CardActions, Object.assign({ className: classes.actions }, { children: _jsx(CreateEventButton, {}) }))] })));
59
+ return (_jsxs(Root, Object.assign({ className: classes.root }, rest, { children: [_jsxs(Box, Object.assign({ position: "relative" }, { children: [_jsx(CardMedia, { component: "img", image: `${preferences[SCPreferences.IMAGES_USER_DEFAULT_COVER].value}`, alt: "placeholder image", className: classes.image }), _jsx(Icon, Object.assign({ className: classes.calendar, fontSize: "large" }, { children: "CalendarIcon" }))] })), _jsxs(CardContent, Object.assign({ className: classes.content }, { children: [_jsx(Typography, Object.assign({ variant: "h5", className: classes.title }, { children: _jsx(FormattedMessage, { id: "ui.createEvent.title", defaultMessage: "ui.createEvent.title" }) })), _jsx(Typography, Object.assign({ variant: "body1", className: classes.spaging }, { children: _jsx(FormattedMessage, { id: "ui.createEvent.description", defaultMessage: "ui.createEvent.description" }) })), _jsx(Divider, { className: classes.spaging })] })), _jsx(CardActions, Object.assign({ className: classes.actions }, { children: _jsx(CreateEventButton, Object.assign({}, CreateEventButtonComponentProps)) }))] })));
59
60
  }
@@ -15,7 +15,7 @@ const classes = {
15
15
  const Root = styled(Widget, {
16
16
  name: PREFIX,
17
17
  slot: 'SkeletonRoot'
18
- })();
18
+ })(() => ({}));
19
19
  export default function CreateEventWidgetSkeleton() {
20
20
  return (_jsxs(Root, Object.assign({ className: classes.root }, { children: [_jsxs(Box, Object.assign({ position: "relative" }, { children: [_jsx(Skeleton, { variant: "rectangular", animation: "wave", width: "100%", height: "110px" }), _jsx(Skeleton, { className: classes.calendar, variant: "rounded", animation: "wave", width: "50px", height: "50px" })] })), _jsxs(CardContent, Object.assign({ className: classes.content }, { children: [_jsx(Skeleton, { className: classes.title, animation: "wave", width: "26%", height: "30px" }), _jsx(Skeleton, { className: classes.spacing, animation: "wave", width: "100%", height: "20px" }), _jsx(Divider, { className: classes.spacing })] })), _jsx(CardActions, Object.assign({ className: classes.actions }, { children: _jsx(Skeleton, { animation: "wave", variant: "rounded", width: "138px", height: "36px" }) }))] })));
21
21
  }
@@ -1,5 +1,8 @@
1
+ import React from 'react';
1
2
  import { SCEventType } from '@selfcommunity/types';
2
3
  import { WidgetProps } from '../Widget';
4
+ import { EventSkeletonProps } from './Skeleton';
5
+ import { SCEventTemplateType } from '../../types/event';
3
6
  export interface EventProps extends WidgetProps {
4
7
  /**
5
8
  * Event Object
@@ -11,6 +14,31 @@ export interface EventProps extends WidgetProps {
11
14
  * @default null
12
15
  */
13
16
  eventId?: number;
17
+ /**
18
+ * Event template type
19
+ * @default 'preview'
20
+ */
21
+ template?: SCEventTemplateType;
22
+ /**
23
+ * Actions
24
+ * @default null
25
+ */
26
+ actions?: React.ReactNode;
27
+ /**
28
+ * Hide participants
29
+ * @default false
30
+ */
31
+ hideEventParticipants?: boolean;
32
+ /**
33
+ * Hide event planner
34
+ * @default false
35
+ */
36
+ hideEventPlanner?: boolean;
37
+ /**
38
+ * Props to spread to EventSkeleton component
39
+ * @default {}
40
+ */
41
+ EventSkeletonComponentProps?: EventSkeletonProps;
14
42
  /**
15
43
  * Any other properties
16
44
  */