@amityco/ts-sdk 7.11.1-6441c7e7.0 → 7.11.1-cef76519.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/@types/domains/event.d.ts +8 -6
  2. package/dist/@types/domains/event.d.ts.map +1 -1
  3. package/dist/eventRepository/api/createEvent.d.ts +2 -2
  4. package/dist/eventRepository/api/index.d.ts +1 -0
  5. package/dist/eventRepository/api/index.d.ts.map +1 -1
  6. package/dist/eventRepository/api/updateEvent.d.ts +17 -0
  7. package/dist/eventRepository/api/updateEvent.d.ts.map +1 -0
  8. package/dist/eventRepository/events/index.d.ts +4 -0
  9. package/dist/eventRepository/events/index.d.ts.map +1 -0
  10. package/dist/eventRepository/events/onEventCreated.d.ts +17 -0
  11. package/dist/eventRepository/events/onEventCreated.d.ts.map +1 -0
  12. package/dist/eventRepository/events/onEventDeleted.d.ts +17 -0
  13. package/dist/eventRepository/events/onEventDeleted.d.ts.map +1 -0
  14. package/dist/eventRepository/events/onEventUpdated.d.ts +17 -0
  15. package/dist/eventRepository/events/onEventUpdated.d.ts.map +1 -0
  16. package/dist/eventRepository/index.d.ts +2 -0
  17. package/dist/eventRepository/index.d.ts.map +1 -1
  18. package/dist/eventRepository/internalApi/getEvent.d.ts +32 -0
  19. package/dist/eventRepository/internalApi/getEvent.d.ts.map +1 -0
  20. package/dist/eventRepository/internalApi/index.d.ts +2 -0
  21. package/dist/eventRepository/internalApi/index.d.ts.map +1 -0
  22. package/dist/eventRepository/observers/getEvent.d.ts +21 -0
  23. package/dist/eventRepository/observers/getEvent.d.ts.map +1 -0
  24. package/dist/eventRepository/observers/index.d.ts +2 -0
  25. package/dist/eventRepository/observers/index.d.ts.map +1 -0
  26. package/dist/eventRepository/utils/createEventEventSubscriber.d.ts +2 -0
  27. package/dist/eventRepository/utils/createEventEventSubscriber.d.ts.map +1 -0
  28. package/dist/eventRepository/utils/index.d.ts +1 -0
  29. package/dist/eventRepository/utils/index.d.ts.map +1 -1
  30. package/dist/index.cjs.js +201 -4
  31. package/dist/index.esm.js +201 -4
  32. package/dist/index.umd.js +1 -1
  33. package/package.json +1 -1
package/dist/index.esm.js CHANGED
@@ -46433,13 +46433,33 @@ const prepareEventPayload = (rawPayload) => {
46433
46433
  return Object.assign(Object.assign({}, rawPayload), { users: rawPayload.users.map(convertRawUserToInternalUser) });
46434
46434
  };
46435
46435
 
46436
+ const createEventEventSubscriber = (event, callback) => {
46437
+ const client = getActiveClient();
46438
+ const filter = (payload) => {
46439
+ const unpackedPayload = prepareEventPayload(payload);
46440
+ if (!client.cache) {
46441
+ callback(unpackedPayload.events[0]);
46442
+ }
46443
+ else {
46444
+ ingestInCache(unpackedPayload);
46445
+ const event = pullFromCache([
46446
+ 'event',
46447
+ 'get',
46448
+ unpackedPayload.events[0].eventId,
46449
+ ]);
46450
+ callback(event.data);
46451
+ }
46452
+ };
46453
+ return createEventSubscriber(client, event, event, filter);
46454
+ };
46455
+
46436
46456
  /* begin_public_function
46437
46457
  id: event.create
46438
46458
  */
46439
46459
  /**
46440
46460
  * ```js
46441
- * import { createEvent } from '@amityco/ts-sdk'
46442
- * const created = await createEvent(bundle)
46461
+ * import { EventRepository } from '@amityco/ts-sdk'
46462
+ * const response = await EventRepository.createEvent(bundle)
46443
46463
  * ```
46444
46464
  *
46445
46465
  * Creates an {@link Amity.Event}
@@ -46454,11 +46474,11 @@ const createEvent = async (bundle) => {
46454
46474
  const client = getActiveClient();
46455
46475
  client.log('event/createEvent', bundle);
46456
46476
  const { data: payload } = await client.http.post('/api/v1/events', bundle);
46477
+ fireEvent('event.created', payload);
46457
46478
  const preparedPayload = prepareEventPayload(payload);
46458
46479
  const cachedAt = client.cache && Date.now();
46459
46480
  if (client.cache)
46460
46481
  ingestInCache(preparedPayload, { cachedAt });
46461
- fireEvent('event.created', preparedPayload);
46462
46482
  return {
46463
46483
  data: eventLinkedObject(preparedPayload.events[0]),
46464
46484
  cachedAt,
@@ -46466,9 +46486,186 @@ const createEvent = async (bundle) => {
46466
46486
  };
46467
46487
  /* end_public_function */
46468
46488
 
46489
+ /* begin_public_function
46490
+ id: event.update
46491
+ */
46492
+ /**
46493
+ * ```js
46494
+ * import { EventRepository } from '@amityco/ts-sdk'
46495
+ * const response = await EventRepository.updateEvent(eventId, bundle)
46496
+ * ```
46497
+ *
46498
+ * Updates an {@link Amity.Event}
46499
+ *
46500
+ * @param eventId The ID of the {@link Amity.Event} to edit
46501
+ * @param bundle The data necessary to update an existing {@link Amity.Event}
46502
+ * @returns the updated {@link Amity.Event}
46503
+ *
46504
+ * @category Event API
46505
+ * @async
46506
+ */
46507
+ const updateEvent = async (eventId, bundle) => {
46508
+ const client = getActiveClient();
46509
+ client.log('event/updateEvent', eventId, bundle);
46510
+ const { data: payload } = await client.http.put(`/api/v1/events/${eventId}`, bundle);
46511
+ fireEvent('event.updated', payload);
46512
+ const preparedPayload = prepareEventPayload(payload);
46513
+ const cachedAt = client.cache && Date.now();
46514
+ if (client.cache)
46515
+ ingestInCache(preparedPayload, { cachedAt });
46516
+ return {
46517
+ data: eventLinkedObject(preparedPayload.events.find(event => event.eventId === eventId)),
46518
+ cachedAt,
46519
+ };
46520
+ };
46521
+ /* end_public_function */
46522
+
46523
+ /**
46524
+ * ```js
46525
+ * import { EventRepository } from '@amityco/ts-sdk'
46526
+ * const dispose = EventRepository.onEventCreated(event => {
46527
+ * // ...
46528
+ * })
46529
+ * ```
46530
+ *
46531
+ * Fired when a {@link Amity.Event} has been created
46532
+ *
46533
+ * @param callback The function to call when the event was fired
46534
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
46535
+ *
46536
+ * @category Event Events
46537
+ */
46538
+ const onEventCreated = (callback) => createEventEventSubscriber('event.created', callback);
46539
+
46540
+ /**
46541
+ * ```js
46542
+ * import { EventRepository } from '@amityco/ts-sdk'
46543
+ * const dispose = EventRepository.onEventUpdated(event => {
46544
+ * // ...
46545
+ * })
46546
+ * ```
46547
+ *
46548
+ * Fired when a {@link Amity.Event} has been updated
46549
+ *
46550
+ * @param callback The function to call when the event was fired
46551
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
46552
+ *
46553
+ * @category Event Events
46554
+ */
46555
+ const onEventUpdated = (callback) => createEventEventSubscriber('event.updated', callback);
46556
+
46557
+ /**
46558
+ * ```js
46559
+ * import { EventRepository } from '@amityco/ts-sdk'
46560
+ * const dispose = EventRepository.onEventDeleted(event => {
46561
+ * // ...
46562
+ * })
46563
+ * ```
46564
+ *
46565
+ * Fired when a {@link Amity.Event} has been deleted
46566
+ *
46567
+ * @param callback The function to call when the event was fired
46568
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
46569
+ *
46570
+ * @category Event Events
46571
+ */
46572
+ const onEventDeleted = (callback) => createEventEventSubscriber('event.deleted', callback);
46573
+
46574
+ /* begin_public_function
46575
+ id: event.get
46576
+ */
46577
+ /**
46578
+ * ```js
46579
+ * import { EventRepository } from '@amityco/ts-sdk'
46580
+ * const event = await EventRepository.getEvent(eventId)
46581
+ * ```
46582
+ *
46583
+ * Fetches a {@link Amity.Event} object
46584
+ *
46585
+ * @param eventId the ID of the {@link Amity.Event} to fetch
46586
+ * @returns the associated {@link Amity.Event} object
46587
+ *
46588
+ * @category Event API
46589
+ * @async
46590
+ */
46591
+ const getEvent$1 = async (eventId) => {
46592
+ const client = getActiveClient();
46593
+ client.log('event/getEvent', eventId);
46594
+ const { data: payload } = await client.http.get(`/api/v3/events/${eventId}`);
46595
+ const data = prepareEventPayload(payload);
46596
+ const cachedAt = client.cache && Date.now();
46597
+ if (client.cache)
46598
+ ingestInCache(data, { cachedAt });
46599
+ return {
46600
+ data: data.events.find(event => event.eventId === eventId),
46601
+ cachedAt,
46602
+ };
46603
+ };
46604
+ /* end_public_function */
46605
+ /**
46606
+ * ```js
46607
+ * import { EventRepository } from '@amityco/ts-sdk'
46608
+ * const event = EventRepository.getEvent.locally(eventId)
46609
+ * ```
46610
+ *
46611
+ * Fetches a {@link Amity.Event} object in cache
46612
+ *
46613
+ * @param eventId the ID of the {@link Amity.Event} to fetch
46614
+ * @returns the associated {@link Amity.Event} object
46615
+ *
46616
+ * @category Event API
46617
+ */
46618
+ getEvent$1.locally = (eventId) => {
46619
+ const client = getActiveClient();
46620
+ client.log('event/getEvent.locally', eventId);
46621
+ if (!client.cache)
46622
+ return;
46623
+ const cache = pullFromCache(['event', 'get', eventId]);
46624
+ if (!cache)
46625
+ return;
46626
+ return {
46627
+ data: cache.data,
46628
+ cachedAt: cache.cachedAt,
46629
+ };
46630
+ };
46631
+
46632
+ /* begin_public_function
46633
+ id: event.get
46634
+ */
46635
+ /**
46636
+ * ```js
46637
+ * import { EventRepository } from '@amityco/ts-sdk';
46638
+ *
46639
+ * let event;
46640
+ *
46641
+ * const unsubscribe = EventRepository.getEvent(eventId, response => {
46642
+ * event = response.data;
46643
+ * });
46644
+ * ```
46645
+ *
46646
+ * Observe all mutation on a given {@link Amity.Event}
46647
+ *
46648
+ * @param eventId the ID of the event to observe
46649
+ * @param callback the function to call when new snapshot of event are available
46650
+ * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the event
46651
+ *
46652
+ * @category Event Live Object
46653
+ */
46654
+ const getEvent = (eventId, callback) => {
46655
+ return liveObject(eventId, callback, 'eventId', getEvent$1, [onEventCreated, onEventUpdated, onEventDeleted], {
46656
+ callbackDataSelector: (data) => (data ? eventLinkedObject(data) : data),
46657
+ });
46658
+ };
46659
+ /* end_public_function */
46660
+
46469
46661
  var index = /*#__PURE__*/Object.freeze({
46470
46662
  __proto__: null,
46471
- createEvent: createEvent
46663
+ createEvent: createEvent,
46664
+ updateEvent: updateEvent,
46665
+ onEventCreated: onEventCreated,
46666
+ onEventUpdated: onEventUpdated,
46667
+ onEventDeleted: onEventDeleted,
46668
+ getEvent: getEvent
46472
46669
  });
46473
46670
 
46474
46671
  export { API_REGIONS, index$4 as AdRepository, AmityEventOriginType, AmityEventStatus, AmityEventType, index$c as CategoryRepository, index$g as ChannelRepository, index$p as Client, index$b as CommentRepository, CommunityPostSettingMaps, CommunityPostSettings, index$d as CommunityRepository, ContentFeedType, ContentFlagReasonEnum, DefaultCommunityPostSetting, index as EventRepository, FeedDataTypeEnum, index$a as FeedRepository, FeedSortByEnum, FeedSourceEnum, FileAccessTypeEnum, index$m as FileRepository, FileType, GET_WATCHER_URLS, index$2 as InvitationRepository, InvitationSortByEnum, InvitationStatusEnum, InvitationTypeEnum, JoinRequestStatusEnum, JoinResultStatusEnum, index$1 as LiveReactionRepository, index$6 as LiveStreamPlayer, MembershipAcceptanceTypeEnum, MessageContentType, index$k as MessageRepository, index$7 as PollRepository, PostContentType, index$9 as PostRepository, PostStructureType, index$l as ReactionRepository, index$5 as StoryRepository, index$8 as StreamRepository, index$j as SubChannelRepository, SubscriptionLevels, index$n as UserRepository, UserTypeEnum, VERSION, VideoResolution, VideoSize, VideoTranscodingStatus, backupCache, createQuery, createReport, createUserToken, deleteReport, disableCache, dropFromCache, enableCache, filterByChannelMembership, filterByCommunityMembership, filterByFeedType, filterByPostDataTypes, filterByPropEquality, filterByPropInclusion, filterByPropIntersection, filterBySearchTerm, filterByStringComparePartially, getChannelTopic, getCommentTopic, getCommunityStoriesTopic, getCommunityTopic, getLiveReactionTopic, getLiveStreamTopic, getMarkedMessageTopic, getMarkerUserFeedTopic, getMessageTopic, getMyFollowersTopic, getMyFollowingsTopic, getNetworkTopic, getPostTopic, getRole, getSmartFeedChannelTopic, getSmartFeedMessageTopic, getSmartFeedSubChannelTopic, getStoryTopic, getSubChannelTopic, getUserTopic, isAfterBefore, isAfterBeforeRaw, isCachable, isFetcher, isFresh, isLocal, isMutator, isOffline, isPaged, isReportedByMe, isSkip, mergeInCache, index$3 as notificationTray, onChannelMarkerFetched, onFeedMarkerFetched, onFeedMarkerUpdated, onMessageMarked, onMessageMarkerFetched, onSubChannelMarkerFetched, onSubChannelMarkerUpdated, onUserMarkerFetched, onUserMarkerFetchedLegacy, pullFromCache, pushToCache, queryCache, queryOptions, queryRoles, restoreCache, runQuery, sortByChannelSegment, sortByDisplayName, sortByFirstCreated, sortByFirstUpdated, sortByLastActivity, sortByLastCreated, sortByLastUpdated, sortByLocalSortingDate, sortByName, sortBySegmentNumber, subscribeTopic, toPage, toPageRaw, toToken, upsertInCache, wipeCache };