@amityco/ts-sdk 7.11.1-35f804e0.0 → 7.11.1-38ad45e1.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 (32) hide show
  1. package/dist/@types/core/transport.d.ts +4 -1
  2. package/dist/@types/core/transport.d.ts.map +1 -1
  3. package/dist/eventRepository/api/deleteEvent.d.ts +16 -0
  4. package/dist/eventRepository/api/deleteEvent.d.ts.map +1 -0
  5. package/dist/eventRepository/api/index.d.ts +1 -0
  6. package/dist/eventRepository/api/index.d.ts.map +1 -1
  7. package/dist/eventRepository/events/index.d.ts +4 -0
  8. package/dist/eventRepository/events/index.d.ts.map +1 -0
  9. package/dist/eventRepository/events/onEventCreated.d.ts +17 -0
  10. package/dist/eventRepository/events/onEventCreated.d.ts.map +1 -0
  11. package/dist/eventRepository/events/onEventDeleted.d.ts +17 -0
  12. package/dist/eventRepository/events/onEventDeleted.d.ts.map +1 -0
  13. package/dist/eventRepository/events/onEventUpdated.d.ts +17 -0
  14. package/dist/eventRepository/events/onEventUpdated.d.ts.map +1 -0
  15. package/dist/eventRepository/index.d.ts +2 -0
  16. package/dist/eventRepository/index.d.ts.map +1 -1
  17. package/dist/eventRepository/internalApi/getEvent.d.ts +32 -0
  18. package/dist/eventRepository/internalApi/getEvent.d.ts.map +1 -0
  19. package/dist/eventRepository/internalApi/index.d.ts +2 -0
  20. package/dist/eventRepository/internalApi/index.d.ts.map +1 -0
  21. package/dist/eventRepository/observers/getEvent.d.ts +21 -0
  22. package/dist/eventRepository/observers/getEvent.d.ts.map +1 -0
  23. package/dist/eventRepository/observers/index.d.ts +2 -0
  24. package/dist/eventRepository/observers/index.d.ts.map +1 -0
  25. package/dist/eventRepository/utils/createEventEventSubscriber.d.ts +2 -0
  26. package/dist/eventRepository/utils/createEventEventSubscriber.d.ts.map +1 -0
  27. package/dist/eventRepository/utils/index.d.ts +1 -0
  28. package/dist/eventRepository/utils/index.d.ts.map +1 -1
  29. package/dist/index.cjs.js +199 -1
  30. package/dist/index.esm.js +199 -1
  31. package/dist/index.umd.js +1 -1
  32. package/package.json +1 -1
@@ -15,7 +15,10 @@ declare global {
15
15
  message: string;
16
16
  code: Amity.ServerError;
17
17
  };
18
- type Response<T> = SuccessResponse<T> | FailResponse | ErrorResponse;
18
+ type MutationResponse = {
19
+ success: boolean;
20
+ };
21
+ type Response<T> = SuccessResponse<T> | FailResponse | ErrorResponse | MutationResponse;
19
22
  type Token = string;
20
23
  type Pagination = {
21
24
  paging: {
@@ -1 +1 @@
1
- {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/@types/core/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,eAAe,CAAC,CAAC,IAAI;YACxB,MAAM,EAAE,SAAS,CAAC;YAClB,IAAI,EAAE,CAAC,CAAC;SACT,CAAC;QAEF,KAAK,YAAY,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,aAAa,GAAG;YACnB,MAAM,EAAE,OAAO,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,QAAQ,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,aAAa,CAAC;QAErE,KAAK,KAAK,GAAG,MAAM,CAAC;QAEpB,KAAK,UAAU,GAAG;YAChB,MAAM,EAAE;gBACN,QAAQ,CAAC,EAAE,KAAK,CAAC;gBACjB,IAAI,CAAC,EAAE,KAAK,CAAC;aACd,CAAC;SACH,CAAC;QAEF,KAAK,UAAU,GAAG;YAChB,OAAO,EAAE,CAAC,MAAM,EAAE;gBAAE,WAAW,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5E,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,SAAS,IAAI,OAAO,CAAC;YACzB,EAAE,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACnC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC5C,IAAI,CAAC;YACV,IAAI,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACrC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC5C,IAAI,CAAC;YACV,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACpC,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC7C,IAAI,CAAC;YACV,kBAAkB,EAAE,MAAM,IAAI,CAAC;YAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;YAC7F,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;SACtC,CAAC;KACH;CACF"}
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../../src/@types/core/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,CAAC;AAEV,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,KAAK,CAAC;QACd,KAAK,eAAe,CAAC,CAAC,IAAI;YACxB,MAAM,EAAE,SAAS,CAAC;YAClB,IAAI,EAAE,CAAC,CAAC;SACT,CAAC;QAEF,KAAK,YAAY,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC;YACf,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,aAAa,GAAG;YACnB,MAAM,EAAE,OAAO,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;YAChB,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC;SACzB,CAAC;QAEF,KAAK,gBAAgB,GAAG;YACtB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC;QAEF,KAAK,QAAQ,CAAC,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,aAAa,GAAG,gBAAgB,CAAC;QAExF,KAAK,KAAK,GAAG,MAAM,CAAC;QAEpB,KAAK,UAAU,GAAG;YAChB,MAAM,EAAE;gBACN,QAAQ,CAAC,EAAE,KAAK,CAAC;gBACjB,IAAI,CAAC,EAAE,KAAK,CAAC;aACd,CAAC;SACH,CAAC;QAEF,KAAK,UAAU,GAAG;YAChB,OAAO,EAAE,CAAC,MAAM,EAAE;gBAAE,WAAW,EAAE,MAAM,CAAC;gBAAC,MAAM,EAAE,MAAM,CAAA;aAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;YAC5E,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YAChC,IAAI,SAAS,IAAI,OAAO,CAAC;YACzB,EAAE,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACnC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC5C,IAAI,CAAC;YACV,IAAI,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACrC,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC5C,IAAI,CAAC;YACV,GAAG,EAAE,CAAC,CAAC,SAAS,MAAM,KAAK,CAAC,UAAU,EACpC,KAAK,EAAE,CAAC,EACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,KAC7C,IAAI,CAAC;YACV,kBAAkB,EAAE,MAAM,IAAI,CAAC;YAC/B,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;YAC7F,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;SACtC,CAAC;KACH;CACF"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * ```js
3
+ * import { EventRepository } from '@amityco/ts-sdk'
4
+ * const { success } = await EventRepository.deleteEvent(eventId)
5
+ * ```
6
+ *
7
+ * Deletes a {@link Amity.Event}
8
+ *
9
+ * @param eventId The {@link Amity.Event} ID to delete
10
+ * @return A success boolean if the {@link Amity.Event} was deleted
11
+ *
12
+ * @category Event API
13
+ * @async
14
+ */
15
+ export declare const deleteEvent: (eventId: Amity.Event['eventId']) => Promise<void>;
16
+ //# sourceMappingURL=deleteEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deleteEvent.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/api/deleteEvent.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,WAAW,YAAmB,WAAW,CAAC,SAAS,CAAC,KAAG,QAAQ,IAAI,CAoB/E,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export * from './createEvent';
2
2
  export * from './updateEvent';
3
+ export * from './deleteEvent';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './onEventCreated';
2
+ export * from './onEventUpdated';
3
+ export * from './onEventDeleted';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/events/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * ```js
3
+ * import { EventRepository } from '@amityco/ts-sdk'
4
+ * const dispose = EventRepository.onEventCreated(event => {
5
+ * // ...
6
+ * })
7
+ * ```
8
+ *
9
+ * Fired when a {@link Amity.Event} has been created
10
+ *
11
+ * @param callback The function to call when the event was fired
12
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
13
+ *
14
+ * @category Event Events
15
+ */
16
+ export declare const onEventCreated: (callback: Amity.Listener<Amity.InternalEvent>) => Amity.Unsubscriber;
17
+ //# sourceMappingURL=onEventCreated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onEventCreated.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/events/onEventCreated.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,CAAC,MAAM,aAAa,CAAC,uBACrB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * ```js
3
+ * import { EventRepository } from '@amityco/ts-sdk'
4
+ * const dispose = EventRepository.onEventDeleted(event => {
5
+ * // ...
6
+ * })
7
+ * ```
8
+ *
9
+ * Fired when a {@link Amity.Event} has been deleted
10
+ *
11
+ * @param callback The function to call when the event was fired
12
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
13
+ *
14
+ * @category Event Events
15
+ */
16
+ export declare const onEventDeleted: (callback: Amity.Listener<Amity.InternalEvent>) => Amity.Unsubscriber;
17
+ //# sourceMappingURL=onEventDeleted.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onEventDeleted.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/events/onEventDeleted.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,CAAC,MAAM,aAAa,CAAC,uBACrB,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * ```js
3
+ * import { EventRepository } from '@amityco/ts-sdk'
4
+ * const dispose = EventRepository.onEventUpdated(event => {
5
+ * // ...
6
+ * })
7
+ * ```
8
+ *
9
+ * Fired when a {@link Amity.Event} has been updated
10
+ *
11
+ * @param callback The function to call when the event was fired
12
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
13
+ *
14
+ * @category Event Events
15
+ */
16
+ export declare const onEventUpdated: (callback: Amity.Listener<Amity.InternalEvent>) => Amity.Unsubscriber;
17
+ //# sourceMappingURL=onEventUpdated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"onEventUpdated.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/events/onEventUpdated.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,CAAC,MAAM,aAAa,CAAC,uBACrB,CAAC"}
@@ -1,2 +1,4 @@
1
1
  export * from './api';
2
+ export * from './events';
3
+ export * from './observers';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eventRepository/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/eventRepository/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * ```js
3
+ * import { EventRepository } from '@amityco/ts-sdk'
4
+ * const event = await EventRepository.getEvent(eventId)
5
+ * ```
6
+ *
7
+ * Fetches a {@link Amity.Event} object
8
+ *
9
+ * @param eventId the ID of the {@link Amity.Event} to fetch
10
+ * @returns the associated {@link Amity.Event} object
11
+ *
12
+ * @category Event API
13
+ * @async
14
+ */
15
+ export declare const getEvent: {
16
+ (eventId: Amity.InternalEvent['eventId']): Promise<Amity.Cached<Amity.InternalEvent>>;
17
+ /**
18
+ * ```js
19
+ * import { EventRepository } from '@amityco/ts-sdk'
20
+ * const event = EventRepository.getEvent.locally(eventId)
21
+ * ```
22
+ *
23
+ * Fetches a {@link Amity.Event} object in cache
24
+ *
25
+ * @param eventId the ID of the {@link Amity.Event} to fetch
26
+ * @returns the associated {@link Amity.Event} object
27
+ *
28
+ * @category Event API
29
+ */
30
+ locally(eventId: Amity.Event['eventId']): Amity.Cached<Amity.InternalEvent> | undefined;
31
+ };
32
+ //# sourceMappingURL=getEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEvent.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/internalApi/getEvent.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,QAAQ;cACV,MAAM,aAAa,CAAC,SAAS,CAAC,GACtC,QAAQ,MAAM,MAAM,CAAC,MAAM,aAAa,CAAC,CAAC;IAmB7C;;;;;;;;;;;;OAYG;qBAEQ,WAAW,CAAC,SAAS,CAAC,GAC9B,MAAM,MAAM,CAAC,MAAM,aAAa,CAAC,GAAG,SAAS;CAlB/C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './getEvent';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/internalApi/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * ```js
3
+ * import { EventRepository } from '@amityco/ts-sdk';
4
+ *
5
+ * let event;
6
+ *
7
+ * const unsubscribe = EventRepository.getEvent(eventId, response => {
8
+ * event = response.data;
9
+ * });
10
+ * ```
11
+ *
12
+ * Observe all mutation on a given {@link Amity.Event}
13
+ *
14
+ * @param eventId the ID of the event to observe
15
+ * @param callback the function to call when new snapshot of event are available
16
+ * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the event
17
+ *
18
+ * @category Event Live Object
19
+ */
20
+ export declare const getEvent: (eventId: Amity.Event['eventId'], callback: Amity.LiveObjectCallback<Amity.Event>) => Amity.Unsubscriber;
21
+ //# sourceMappingURL=getEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEvent.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/observers/getEvent.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,QAAQ,YACV,WAAW,CAAC,SAAS,CAAC,YACrB,MAAM,kBAAkB,CAAC,WAAW,CAAC,KAC9C,MAAM,YAWR,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './getEvent';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/observers/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const createEventEventSubscriber: (event: keyof Amity.MqttEventEvents, callback: Amity.Listener<Amity.InternalEvent>) => Amity.Unsubscriber;
2
+ //# sourceMappingURL=createEventEventSubscriber.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createEventEventSubscriber.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/utils/createEventEventSubscriber.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,0BAA0B,UAC9B,MAAM,MAAM,eAAe,YACxB,MAAM,QAAQ,CAAC,MAAM,aAAa,CAAC,uBAqB9C,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from './prepareEventPayload';
2
+ export * from './createEventEventSubscriber';
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/eventRepository/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,8BAA8B,CAAC"}
package/dist/index.cjs.js CHANGED
@@ -30341,6 +30341,26 @@ const prepareEventPayload = (rawPayload) => {
30341
30341
  return Object.assign(Object.assign({}, rawPayload), { users: rawPayload.users.map(convertRawUserToInternalUser) });
30342
30342
  };
30343
30343
 
30344
+ const createEventEventSubscriber = (event, callback) => {
30345
+ const client = getActiveClient();
30346
+ const filter = (payload) => {
30347
+ const unpackedPayload = prepareEventPayload(payload);
30348
+ if (!client.cache) {
30349
+ callback(unpackedPayload.events[0]);
30350
+ }
30351
+ else {
30352
+ ingestInCache(unpackedPayload);
30353
+ const event = pullFromCache([
30354
+ 'event',
30355
+ 'get',
30356
+ unpackedPayload.events[0].eventId,
30357
+ ]);
30358
+ callback(event.data);
30359
+ }
30360
+ };
30361
+ return createEventSubscriber(client, event, event, filter);
30362
+ };
30363
+
30344
30364
  /* begin_public_function
30345
30365
  id: event.create
30346
30366
  */
@@ -30408,10 +30428,188 @@ const updateEvent = async (eventId, bundle) => {
30408
30428
  };
30409
30429
  /* end_public_function */
30410
30430
 
30431
+ /* begin_public_function
30432
+ id: event.get
30433
+ */
30434
+ /**
30435
+ * ```js
30436
+ * import { EventRepository } from '@amityco/ts-sdk'
30437
+ * const event = await EventRepository.getEvent(eventId)
30438
+ * ```
30439
+ *
30440
+ * Fetches a {@link Amity.Event} object
30441
+ *
30442
+ * @param eventId the ID of the {@link Amity.Event} to fetch
30443
+ * @returns the associated {@link Amity.Event} object
30444
+ *
30445
+ * @category Event API
30446
+ * @async
30447
+ */
30448
+ const getEvent$1 = async (eventId) => {
30449
+ const client = getActiveClient();
30450
+ client.log('event/getEvent', eventId);
30451
+ const { data: payload } = await client.http.get(`/api/v3/events/${eventId}`);
30452
+ const data = prepareEventPayload(payload);
30453
+ const cachedAt = client.cache && Date.now();
30454
+ if (client.cache)
30455
+ ingestInCache(data, { cachedAt });
30456
+ return {
30457
+ data: data.events.find(event => event.eventId === eventId),
30458
+ cachedAt,
30459
+ };
30460
+ };
30461
+ /* end_public_function */
30462
+ /**
30463
+ * ```js
30464
+ * import { EventRepository } from '@amityco/ts-sdk'
30465
+ * const event = EventRepository.getEvent.locally(eventId)
30466
+ * ```
30467
+ *
30468
+ * Fetches a {@link Amity.Event} object in cache
30469
+ *
30470
+ * @param eventId the ID of the {@link Amity.Event} to fetch
30471
+ * @returns the associated {@link Amity.Event} object
30472
+ *
30473
+ * @category Event API
30474
+ */
30475
+ getEvent$1.locally = (eventId) => {
30476
+ const client = getActiveClient();
30477
+ client.log('event/getEvent.locally', eventId);
30478
+ if (!client.cache)
30479
+ return;
30480
+ const cache = pullFromCache(['event', 'get', eventId]);
30481
+ if (!cache)
30482
+ return;
30483
+ return {
30484
+ data: cache.data,
30485
+ cachedAt: cache.cachedAt,
30486
+ };
30487
+ };
30488
+
30489
+ /* begin_public_function
30490
+ id: event.delete
30491
+ */
30492
+ /**
30493
+ * ```js
30494
+ * import { EventRepository } from '@amityco/ts-sdk'
30495
+ * const { success } = await EventRepository.deleteEvent(eventId)
30496
+ * ```
30497
+ *
30498
+ * Deletes a {@link Amity.Event}
30499
+ *
30500
+ * @param eventId The {@link Amity.Event} ID to delete
30501
+ * @return A success boolean if the {@link Amity.Event} was deleted
30502
+ *
30503
+ * @category Event API
30504
+ * @async
30505
+ */
30506
+ const deleteEvent = async (eventId) => {
30507
+ const client = getActiveClient();
30508
+ client.log('event/deleteEvent', eventId);
30509
+ const event = await getEvent$1(eventId);
30510
+ const { data } = await client.http.delete(`/api/v3/events/${eventId}`);
30511
+ const deletedEvent = Object.assign(Object.assign({}, event.data), { isDeleted: data.success });
30512
+ upsertInCache(['event', 'get', eventId], deletedEvent);
30513
+ fireEvent('event.deleted', {
30514
+ users: [],
30515
+ files: [],
30516
+ communities: [],
30517
+ videoStreamings: [],
30518
+ events: [deletedEvent],
30519
+ discussionCommunities: [],
30520
+ });
30521
+ };
30522
+ /* end_public_function */
30523
+
30524
+ /**
30525
+ * ```js
30526
+ * import { EventRepository } from '@amityco/ts-sdk'
30527
+ * const dispose = EventRepository.onEventCreated(event => {
30528
+ * // ...
30529
+ * })
30530
+ * ```
30531
+ *
30532
+ * Fired when a {@link Amity.Event} has been created
30533
+ *
30534
+ * @param callback The function to call when the event was fired
30535
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
30536
+ *
30537
+ * @category Event Events
30538
+ */
30539
+ const onEventCreated = (callback) => createEventEventSubscriber('event.created', callback);
30540
+
30541
+ /**
30542
+ * ```js
30543
+ * import { EventRepository } from '@amityco/ts-sdk'
30544
+ * const dispose = EventRepository.onEventUpdated(event => {
30545
+ * // ...
30546
+ * })
30547
+ * ```
30548
+ *
30549
+ * Fired when a {@link Amity.Event} has been updated
30550
+ *
30551
+ * @param callback The function to call when the event was fired
30552
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
30553
+ *
30554
+ * @category Event Events
30555
+ */
30556
+ const onEventUpdated = (callback) => createEventEventSubscriber('event.updated', callback);
30557
+
30558
+ /**
30559
+ * ```js
30560
+ * import { EventRepository } from '@amityco/ts-sdk'
30561
+ * const dispose = EventRepository.onEventDeleted(event => {
30562
+ * // ...
30563
+ * })
30564
+ * ```
30565
+ *
30566
+ * Fired when a {@link Amity.Event} has been deleted
30567
+ *
30568
+ * @param callback The function to call when the event was fired
30569
+ * @returns an {@link Amity.Unsubscriber} function to stop listening
30570
+ *
30571
+ * @category Event Events
30572
+ */
30573
+ const onEventDeleted = (callback) => createEventEventSubscriber('event.deleted', callback);
30574
+
30575
+ /* begin_public_function
30576
+ id: event.get
30577
+ */
30578
+ /**
30579
+ * ```js
30580
+ * import { EventRepository } from '@amityco/ts-sdk';
30581
+ *
30582
+ * let event;
30583
+ *
30584
+ * const unsubscribe = EventRepository.getEvent(eventId, response => {
30585
+ * event = response.data;
30586
+ * });
30587
+ * ```
30588
+ *
30589
+ * Observe all mutation on a given {@link Amity.Event}
30590
+ *
30591
+ * @param eventId the ID of the event to observe
30592
+ * @param callback the function to call when new snapshot of event are available
30593
+ * @returns An {@link Amity.Unsubscriber} function to run when willing to stop observing the event
30594
+ *
30595
+ * @category Event Live Object
30596
+ */
30597
+ const getEvent = (eventId, callback) => {
30598
+ return liveObject(eventId, callback, 'eventId', getEvent$1, [onEventCreated, onEventUpdated, onEventDeleted], {
30599
+ callbackDataSelector: (data) => (data ? eventLinkedObject(data) : data),
30600
+ });
30601
+ };
30602
+ /* end_public_function */
30603
+
30411
30604
  var index = /*#__PURE__*/Object.freeze({
30412
30605
  __proto__: null,
30413
30606
  createEvent: createEvent,
30414
- updateEvent: updateEvent
30607
+ updateEvent: updateEvent,
30608
+ deleteEvent: deleteEvent,
30609
+ onEventCreated: onEventCreated,
30610
+ onEventUpdated: onEventUpdated,
30611
+ onEventDeleted: onEventDeleted,
30612
+ getEvent: getEvent
30415
30613
  });
30416
30614
 
30417
30615
  exports.API_REGIONS = API_REGIONS;