@amityco/ts-sdk 7.9.3-3043b851.0 → 7.9.3-9d4caef6.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.
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/channel.d.ts +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/channel.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/@types/domains/channel.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/api/unmuteChannel.d.ts +0 -14
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/api/unmuteChannel.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/api/unmuteChannel.js +2 -6
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/api/unmuteChannel.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/internalApi/getMembership.d.ts +16 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/internalApi/getMembership.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/internalApi/getMembership.js +20 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/internalApi/getMembership.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/observers/getMembership.d.ts +8 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/observers/getMembership.d.ts.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/observers/getMembership.js +58 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/channelRepository/observers/getMembership.js.map +1 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsBot.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsBot.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsVisitor.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/api/loginAsVisitor.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setVisitorClientToken.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/client/utils/setVisitorClientToken.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/channelLinkedObject.d.ts.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/channelLinkedObject.js +8 -0
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/dist/utils/linkedObject/channelLinkedObject.js.map +1 -1
- package/.rollup.cache/home/runner/work/AmityTypescriptSDK/AmityTypescriptSDK/packages/sdk/tsconfig.tsbuildinfo +1 -1
- package/dist/@types/domains/channel.d.ts +1 -0
- package/dist/@types/domains/channel.d.ts.map +1 -1
- package/dist/channelRepository/api/unmuteChannel.d.ts +0 -14
- package/dist/channelRepository/api/unmuteChannel.d.ts.map +1 -1
- package/dist/channelRepository/internalApi/getMembership.d.ts +16 -0
- package/dist/channelRepository/internalApi/getMembership.d.ts.map +1 -0
- package/dist/channelRepository/observers/getMembership.d.ts +8 -0
- package/dist/channelRepository/observers/getMembership.d.ts.map +1 -0
- package/dist/client/api/loginAsBot.d.ts.map +1 -1
- package/dist/client/api/loginAsVisitor.d.ts.map +1 -1
- package/dist/client/utils/setVisitorClientToken.d.ts.map +1 -1
- package/dist/index.cjs.js +75 -6
- package/dist/index.esm.js +75 -6
- package/dist/index.umd.js +1 -1
- package/dist/utils/linkedObject/channelLinkedObject.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/@types/domains/channel.ts +4 -0
- package/src/channelRepository/api/unmuteChannel.ts +2 -4
- package/src/channelRepository/internalApi/getMembership.ts +45 -0
- package/src/channelRepository/observers/getMembership.ts +89 -0
- package/src/client/api/loginAsBot.ts +0 -1
- package/src/client/api/loginAsVisitor.ts +0 -2
- package/src/client/utils/setVisitorClientToken.ts +0 -1
- package/src/utils/linkedObject/channelLinkedObject.ts +11 -0
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -65,6 +65,7 @@ declare global {
|
|
|
65
65
|
markAsRead: () => Promise<boolean>;
|
|
66
66
|
previewMembers: Amity.Membership<'channel'>[];
|
|
67
67
|
myMembership: (callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>) => Amity.Unsubscriber;
|
|
68
|
+
getMembership: (userId: Amity.User['userId'], callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>) => Amity.Unsubscriber;
|
|
68
69
|
};
|
|
69
70
|
type QueryChannels = {
|
|
70
71
|
channelIds?: Amity.Channel['channelId'][];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/channel.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"channel.d.ts","sourceRoot":"","sources":["../../../src/@types/domains/channel.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../src/@types/domains/channel.ts"],"names":[],"mappings":"","sourcesContent":["export {};\n\ndeclare global {\n namespace Amity {\n type ChannelType = 'broadcast' | 'conversation' | 'community' | 'live';\n\n type ChannelMemberActionType =\n | 'onJoin'\n | 'onLeft'\n | 'onMemberRead'\n | 'onMemberAdded'\n | 'onMemberRemoved'\n | 'onChannelMemberBanned'\n | 'onChannelMemberUnbanned'\n | 'onChannelMemberRoleAdded'\n | 'onChannelMemberRoleRemoved';\n\n const enum ChannelActionType {\n OnResolveChannel = 'onResolveChannel',\n OnResolveUnread = 'OnResolveUnread',\n OnFetch = 'onFetch',\n OnCreate = 'onCreate',\n OnUpdate = 'onUpdate',\n OnDelete = 'onDelete',\n OnJoin = 'onJoin',\n OnLeft = 'onLeft',\n OnMute = 'onMute',\n onUnmute = 'onUnmute',\n OnMemberAdded = 'onMemberAdded',\n OnMemberRemoved = 'onMemberRemoved',\n OnUserMessageFeedMarkerFetch = 'onUserMessageFeedMarkerFetch',\n }\n\n type RawChannel<T extends ChannelType = any> = {\n _id: string;\n channelId: string;\n channelInternalId: string;\n channelPublicId: string;\n displayName?: string;\n avatarFileId?: Amity.File<'image'>['fileId'];\n type: T;\n\n isDistinct?: boolean;\n\n isMuted?: boolean;\n muteTimeout?: string;\n\n isRateLimited?: boolean;\n rateLimit?: number;\n rateLimitWindow?: number;\n rateLimitTimeout?: number;\n\n messageAutoDeleteEnabled?: boolean;\n autoDeleteMessageByFlagLimit?: number;\n\n memberCount?: number;\n messageCount: number;\n moderatorMemberCount?: number;\n\n messagePreviewId?: string;\n\n isPublic?: boolean;\n\n lastActivity: Amity.timestamp;\n\n attachedTo?: {\n postId?: string;\n videoStreamId?: string;\n };\n } & Amity.Metadata &\n Amity.Taggable &\n Amity.Timestamps &\n Amity.SoftDelete &\n Amity.Subscribable;\n\n // Use for the data stored in the local cache and local event payload\n type StaticInternalChannel<T extends ChannelType = any> = RawChannel<T> & {\n defaultSubChannelId: string;\n isUnreadCountSupport: boolean;\n };\n\n /**\n * Internal used only\n * same as Amity.ChannelModel in tech spec\n * It's used for the data calculated in SDK side contained dynamic values and removed unused fields\n */\n type InternalChannel<T extends ChannelType = any> = Omit<\n StaticInternalChannel<T>,\n 'messageCount'\n > & {\n isMentioned: boolean;\n subChannelsUnreadCount: number;\n // legacy unread count does not use the maker service\n unreadCount: number;\n };\n\n /* public type */\n // with linked object\n type Channel<T extends ChannelType = any> = InternalChannel<T> & {\n messagePreview?: Amity.MessagePreview | null;\n markAsRead: () => Promise<boolean>;\n previewMembers: Amity.Membership<'channel'>[];\n myMembership: (\n callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>,\n ) => Amity.Unsubscriber;\n };\n\n type QueryChannels = {\n channelIds?: Amity.Channel['channelId'][];\n displayName?: string;\n membership?: 'all' | 'member' | 'notMember';\n sortBy?: 'displayName' | 'firstCreated' | 'lastCreated' | 'lastActivity';\n types?: Amity.ChannelType[];\n isDeleted?: Amity.Channel['isDeleted'];\n tags?: Amity.Taggable['tags'];\n excludeTags?: Amity.Taggable['tags'];\n limit?: number;\n page?: Amity.Page;\n };\n\n type ChannelLiveCollection = Amity.LiveCollectionParams<Omit<QueryChannels, 'page'>>;\n\n type ChannelLiveCollectionCache = Amity.LiveCollectionCache<\n Amity.Channel['channelId'],\n Pick<QueryChannels, 'page'>\n >;\n\n type QueryChannelMembers = {\n channelId: Amity.Channel['channelId'];\n memberships?: Array<Exclude<Amity.Membership<'channel'>['membership'], 'none'> | 'muted'>;\n roles?: string[];\n sortBy?: 'firstCreated' | 'lastCreated';\n search?: string;\n page?: Amity.Page;\n includeDeleted?: boolean;\n };\n\n type SearchChannelMembers = Amity.LiveCollectionParams<Omit<QueryChannelMembers, 'sortBy'>>;\n\n type ChannelMembersLiveCollection = Amity.LiveCollectionParams<\n Omit<QueryChannelMembers, 'page'>\n >;\n\n type SearchChannelMembersLiveCollection = Amity.LiveCollectionParams<\n Omit<SearchChannelMembers, 'page'>\n >;\n\n type ChannelMembersLiveCollectionCache = Amity.LiveCollectionCache<\n Amity.Membership<'channel'>['userId'],\n Pick<QueryChannelMembers, 'page'>\n >;\n\n // Use for channel's unread count value stored in the local cache\n type ChannelUnread = {\n channelId: Amity.Channel['channelId'];\n unreadCount: number;\n isMentioned: boolean;\n readToSegment: number | null;\n lastSegment: number;\n lastMentionedSegment: number | null;\n isDeleted: boolean;\n };\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"channel.js","sourceRoot":"","sources":["../../../src/@types/domains/channel.ts"],"names":[],"mappings":"","sourcesContent":["export {};\n\ndeclare global {\n namespace Amity {\n type ChannelType = 'broadcast' | 'conversation' | 'community' | 'live';\n\n type ChannelMemberActionType =\n | 'onJoin'\n | 'onLeft'\n | 'onMemberRead'\n | 'onMemberAdded'\n | 'onMemberRemoved'\n | 'onChannelMemberBanned'\n | 'onChannelMemberUnbanned'\n | 'onChannelMemberRoleAdded'\n | 'onChannelMemberRoleRemoved';\n\n const enum ChannelActionType {\n OnResolveChannel = 'onResolveChannel',\n OnResolveUnread = 'OnResolveUnread',\n OnFetch = 'onFetch',\n OnCreate = 'onCreate',\n OnUpdate = 'onUpdate',\n OnDelete = 'onDelete',\n OnJoin = 'onJoin',\n OnLeft = 'onLeft',\n OnMute = 'onMute',\n onUnmute = 'onUnmute',\n OnMemberAdded = 'onMemberAdded',\n OnMemberRemoved = 'onMemberRemoved',\n OnUserMessageFeedMarkerFetch = 'onUserMessageFeedMarkerFetch',\n }\n\n type RawChannel<T extends ChannelType = any> = {\n _id: string;\n channelId: string;\n channelInternalId: string;\n channelPublicId: string;\n displayName?: string;\n avatarFileId?: Amity.File<'image'>['fileId'];\n type: T;\n\n isDistinct?: boolean;\n\n isMuted?: boolean;\n muteTimeout?: string;\n\n isRateLimited?: boolean;\n rateLimit?: number;\n rateLimitWindow?: number;\n rateLimitTimeout?: number;\n\n messageAutoDeleteEnabled?: boolean;\n autoDeleteMessageByFlagLimit?: number;\n\n memberCount?: number;\n messageCount: number;\n moderatorMemberCount?: number;\n\n messagePreviewId?: string;\n\n isPublic?: boolean;\n\n lastActivity: Amity.timestamp;\n\n attachedTo?: {\n postId?: string;\n videoStreamId?: string;\n };\n } & Amity.Metadata &\n Amity.Taggable &\n Amity.Timestamps &\n Amity.SoftDelete &\n Amity.Subscribable;\n\n // Use for the data stored in the local cache and local event payload\n type StaticInternalChannel<T extends ChannelType = any> = RawChannel<T> & {\n defaultSubChannelId: string;\n isUnreadCountSupport: boolean;\n };\n\n /**\n * Internal used only\n * same as Amity.ChannelModel in tech spec\n * It's used for the data calculated in SDK side contained dynamic values and removed unused fields\n */\n type InternalChannel<T extends ChannelType = any> = Omit<\n StaticInternalChannel<T>,\n 'messageCount'\n > & {\n isMentioned: boolean;\n subChannelsUnreadCount: number;\n // legacy unread count does not use the maker service\n unreadCount: number;\n };\n\n /* public type */\n // with linked object\n type Channel<T extends ChannelType = any> = InternalChannel<T> & {\n messagePreview?: Amity.MessagePreview | null;\n markAsRead: () => Promise<boolean>;\n previewMembers: Amity.Membership<'channel'>[];\n myMembership: (\n callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>,\n ) => Amity.Unsubscriber;\n getMembership: (\n userId: Amity.User['userId'],\n callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>,\n ) => Amity.Unsubscriber;\n };\n\n type QueryChannels = {\n channelIds?: Amity.Channel['channelId'][];\n displayName?: string;\n membership?: 'all' | 'member' | 'notMember';\n sortBy?: 'displayName' | 'firstCreated' | 'lastCreated' | 'lastActivity';\n types?: Amity.ChannelType[];\n isDeleted?: Amity.Channel['isDeleted'];\n tags?: Amity.Taggable['tags'];\n excludeTags?: Amity.Taggable['tags'];\n limit?: number;\n page?: Amity.Page;\n };\n\n type ChannelLiveCollection = Amity.LiveCollectionParams<Omit<QueryChannels, 'page'>>;\n\n type ChannelLiveCollectionCache = Amity.LiveCollectionCache<\n Amity.Channel['channelId'],\n Pick<QueryChannels, 'page'>\n >;\n\n type QueryChannelMembers = {\n channelId: Amity.Channel['channelId'];\n memberships?: Array<Exclude<Amity.Membership<'channel'>['membership'], 'none'> | 'muted'>;\n roles?: string[];\n sortBy?: 'firstCreated' | 'lastCreated';\n search?: string;\n page?: Amity.Page;\n includeDeleted?: boolean;\n };\n\n type SearchChannelMembers = Amity.LiveCollectionParams<Omit<QueryChannelMembers, 'sortBy'>>;\n\n type ChannelMembersLiveCollection = Amity.LiveCollectionParams<\n Omit<QueryChannelMembers, 'page'>\n >;\n\n type SearchChannelMembersLiveCollection = Amity.LiveCollectionParams<\n Omit<SearchChannelMembers, 'page'>\n >;\n\n type ChannelMembersLiveCollectionCache = Amity.LiveCollectionCache<\n Amity.Membership<'channel'>['userId'],\n Pick<QueryChannelMembers, 'page'>\n >;\n\n // Use for channel's unread count value stored in the local cache\n type ChannelUnread = {\n channelId: Amity.Channel['channelId'];\n unreadCount: number;\n isMentioned: boolean;\n readToSegment: number | null;\n lastSegment: number;\n lastMentionedSegment: number | null;\n isDeleted: boolean;\n };\n }\n}\n"]}
|
|
@@ -1,16 +1,2 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* ```js
|
|
3
|
-
* import { ChannelRepository } from '@amityco/ts-sdk'
|
|
4
|
-
* const isMuted = await ChannelRepository.unmute('foobar')
|
|
5
|
-
* ```
|
|
6
|
-
*
|
|
7
|
-
* Mutes a {@link Amity.Channel} object
|
|
8
|
-
*
|
|
9
|
-
* @param channelId the {@link Amity.Channel} to mute
|
|
10
|
-
* @returns A success boolean if the {@link Amity.Channel} was muted
|
|
11
|
-
*
|
|
12
|
-
* @category Channel API
|
|
13
|
-
* @async
|
|
14
|
-
*/
|
|
15
1
|
export declare const unmuteChannel: (channelId: Amity.Channel['channelId']) => Promise<boolean>;
|
|
16
2
|
//# sourceMappingURL=unmuteChannel.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unmuteChannel.d.ts","sourceRoot":"","sources":["../../../src/channelRepository/api/unmuteChannel.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"unmuteChannel.d.ts","sourceRoot":"","sources":["../../../src/channelRepository/api/unmuteChannel.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,aAAa,cAAqB,MAAM,OAAO,CAAC,WAAW,CAAC,KAAG,QAAQ,OAAO,CAY1F,CAAC"}
|
|
@@ -2,7 +2,6 @@ import { getActiveClient } from '~/client/api';
|
|
|
2
2
|
/* begin_public_function
|
|
3
3
|
id: channel.unmute
|
|
4
4
|
*/
|
|
5
|
-
const CHANNEL_UNMUTE_PERIOD = 0;
|
|
6
5
|
/**
|
|
7
6
|
* ```js
|
|
8
7
|
* import { ChannelRepository } from '@amityco/ts-sdk'
|
|
@@ -17,14 +16,11 @@ const CHANNEL_UNMUTE_PERIOD = 0;
|
|
|
17
16
|
* @category Channel API
|
|
18
17
|
* @async
|
|
19
18
|
*/
|
|
19
|
+
const CHANNEL_UNMUTE_PERIOD = 0; // Setting mute period as 0 is the same as unmuting the channel
|
|
20
20
|
export const unmuteChannel = async (channelId) => {
|
|
21
21
|
const client = getActiveClient();
|
|
22
22
|
client.log('channel/unmuteChannel', channelId);
|
|
23
|
-
const { data } = await client.http.put(`/api/v2/channel/${encodeURIComponent(channelId)}/mute`,
|
|
24
|
-
/*
|
|
25
|
-
* Setting mute period as 0 is the same as unmuting the channel
|
|
26
|
-
*/
|
|
27
|
-
{ mutePeriod: CHANNEL_UNMUTE_PERIOD });
|
|
23
|
+
const { data } = await client.http.put(`/api/v2/channel/${encodeURIComponent(channelId)}/mute`, { mutePeriod: CHANNEL_UNMUTE_PERIOD });
|
|
28
24
|
const { success } = data;
|
|
29
25
|
return success;
|
|
30
26
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unmuteChannel.js","sourceRoot":"","sources":["../../../src/channelRepository/api/unmuteChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C;;EAEE;AACF,MAAM,qBAAqB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"unmuteChannel.js","sourceRoot":"","sources":["../../../src/channelRepository/api/unmuteChannel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C;;EAEE;AACF;;;;;;;;;;;;;GAaG;AACH,MAAM,qBAAqB,GAAG,CAAC,CAAC,CAAC,+DAA+D;AAEhG,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,SAAqC,EAAoB,EAAE;IAC7F,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,uBAAuB,EAAE,SAAS,CAAC,CAAC;IAE/C,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CACpC,mBAAmB,kBAAkB,CAAC,SAAS,CAAC,OAAO,EACvD,EAAE,UAAU,EAAE,qBAAqB,EAAE,CACtC,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IAEzB,OAAO,OAAO,CAAC;AACjB,CAAC,CAAC;AACF,yBAAyB","sourcesContent":["import { getActiveClient } from '~/client/api';\n\n/* begin_public_function\n id: channel.unmute\n*/\n/**\n * ```js\n * import { ChannelRepository } from '@amityco/ts-sdk'\n * const isMuted = await ChannelRepository.unmute('foobar')\n * ```\n *\n * Mutes a {@link Amity.Channel} object\n *\n * @param channelId the {@link Amity.Channel} to mute\n * @returns A success boolean if the {@link Amity.Channel} was muted\n *\n * @category Channel API\n * @async\n */\nconst CHANNEL_UNMUTE_PERIOD = 0; // Setting mute period as 0 is the same as unmuting the channel\n\nexport const unmuteChannel = async (channelId: Amity.Channel['channelId']): Promise<boolean> => {\n const client = getActiveClient();\n client.log('channel/unmuteChannel', channelId);\n\n const { data } = await client.http.put<{ success: boolean }>(\n `/api/v2/channel/${encodeURIComponent(channelId)}/mute`,\n { mutePeriod: CHANNEL_UNMUTE_PERIOD },\n );\n\n const { success } = data;\n\n return success;\n};\n/* end_public_function */\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
*
|
|
3
|
+
* get membership of user in a channel from cache
|
|
4
|
+
*
|
|
5
|
+
* @returns the {@link Amity.Membership<'channel'>} objects
|
|
6
|
+
*
|
|
7
|
+
* @category Channel API
|
|
8
|
+
* @async
|
|
9
|
+
*/
|
|
10
|
+
declare type GetMembershipParams = {
|
|
11
|
+
channelId: string;
|
|
12
|
+
userId: Amity.User['userId'];
|
|
13
|
+
};
|
|
14
|
+
export declare const getMembership: ({ channelId, userId, }: GetMembershipParams) => Amity.Cached<Amity.Membership<'channel'>>;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=getMembership.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMembership.d.ts","sourceRoot":"","sources":["../../../src/channelRepository/internalApi/getMembership.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AAEH,aAAK,mBAAmB,GAAG;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;CAC9B,CAAC;AAEF,eAAO,MAAM,aAAa,2BAGvB,mBAAmB,KAAG,MAAM,MAAM,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAsBhE,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ASCApiError } from '~/core/errors';
|
|
2
|
+
import { pullFromCache } from '~/cache/api/pullFromCache';
|
|
3
|
+
import { getActiveClient } from '~/client/api/activeClient';
|
|
4
|
+
export const getMembership = ({ channelId, userId, }) => {
|
|
5
|
+
const client = getActiveClient();
|
|
6
|
+
client.log('channel/getMembership.locally');
|
|
7
|
+
const cacheChannelUser = pullFromCache([
|
|
8
|
+
'channelUsers',
|
|
9
|
+
'get',
|
|
10
|
+
`${channelId}#${userId}`,
|
|
11
|
+
]);
|
|
12
|
+
if (!cacheChannelUser) {
|
|
13
|
+
throw new ASCApiError('Item not found!', 400400 /* Amity.ServerError.ITEM_NOT_FOUND */, "error" /* Amity.ErrorLevel.ERROR */);
|
|
14
|
+
}
|
|
15
|
+
return {
|
|
16
|
+
data: cacheChannelUser.data,
|
|
17
|
+
cachedAt: cacheChannelUser.cachedAt,
|
|
18
|
+
};
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=getMembership.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMembership.js","sourceRoot":"","sources":["../../../src/channelRepository/internalApi/getMembership.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAiB5D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAC5B,SAAS,EACT,MAAM,GACc,EAA6C,EAAE;IACnE,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,MAAM,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE5C,MAAM,gBAAgB,GAAG,aAAa,CAA8B;QAClE,cAAc;QACd,KAAK;QACL,GAAG,SAAS,IAAI,MAAM,EAAE;KACzB,CAAC,CAAC;IAEH,IAAI,CAAC,gBAAgB,EAAE;QACrB,MAAM,IAAI,WAAW,CACnB,iBAAiB,sFAGlB,CAAC;KACH;IAED,OAAO;QACL,IAAI,EAAE,gBAAgB,CAAC,IAAI;QAC3B,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;KACpC,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { ASCApiError } from '~/core/errors';\nimport { pullFromCache } from '~/cache/api/pullFromCache';\nimport { getActiveClient } from '~/client/api/activeClient';\n\n/**\n *\n * get membership of user in a channel from cache\n *\n * @returns the {@link Amity.Membership<'channel'>} objects\n *\n * @category Channel API\n * @async\n */\n\ntype GetMembershipParams = {\n channelId: string;\n userId: Amity.User['userId'];\n};\n\nexport const getMembership = ({\n channelId,\n userId,\n}: GetMembershipParams): Amity.Cached<Amity.Membership<'channel'>> => {\n const client = getActiveClient();\n client.log('channel/getMembership.locally');\n\n const cacheChannelUser = pullFromCache<Amity.Membership<'channel'>>([\n 'channelUsers',\n 'get',\n `${channelId}#${userId}`,\n ]);\n\n if (!cacheChannelUser) {\n throw new ASCApiError(\n 'Item not found!',\n Amity.ServerError.ITEM_NOT_FOUND,\n Amity.ErrorLevel.ERROR,\n );\n }\n\n return {\n data: cacheChannelUser.data,\n cachedAt: cacheChannelUser.cachedAt,\n };\n};\n"]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
declare type GetMembership = {
|
|
2
|
+
channelId: string;
|
|
3
|
+
userId: Amity.User['userId'];
|
|
4
|
+
callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>;
|
|
5
|
+
};
|
|
6
|
+
export declare const getMembership: ({ channelId, userId, callback, }: GetMembership) => Amity.Unsubscriber;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=getMembership.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMembership.d.ts","sourceRoot":"","sources":["../../../src/channelRepository/observers/getMembership.ts"],"names":[],"mappings":"AAaA,aAAK,aAAa,GAAG;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,CAAC;CAC7E,CAAC;AAEF,eAAO,MAAM,aAAa,qCAIvB,aAAa,KAAG,MAAM,YAiExB,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { getMembership as _getMembership } from '../internalApi/getMembership';
|
|
2
|
+
import { ASCApiError } from '~/core/errors';
|
|
3
|
+
import { getActiveClient } from '~/client/api/activeClient';
|
|
4
|
+
import { isEqual } from '~/utils/isEqual';
|
|
5
|
+
import { createQuery, runQuery } from '~/core/query';
|
|
6
|
+
import { UNSYNCED_OBJECT_CACHED_AT_MESSAGE, UNSYNCED_OBJECT_CACHED_AT_VALUE, } from '~/utils/constants';
|
|
7
|
+
import { channelMemberLinkedObject } from '~/utils/linkedObject/channelMemberLinkedObject';
|
|
8
|
+
import { onChannelMemberBanned, onChannelMemberUnbanned } from '../events';
|
|
9
|
+
import { onChannelSetUserMuted } from '../events/onChannelSetUserMuted';
|
|
10
|
+
export const getMembership = ({ channelId, userId, callback, }) => {
|
|
11
|
+
const { log, cache } = getActiveClient();
|
|
12
|
+
if (!cache) {
|
|
13
|
+
console.log('This observable object need the cache data!');
|
|
14
|
+
}
|
|
15
|
+
const timestamp = Date.now();
|
|
16
|
+
log(`liveMembership(tmpid: ${timestamp}) > listen`);
|
|
17
|
+
const disposers = [];
|
|
18
|
+
let isUnsyncedModel = false;
|
|
19
|
+
let model;
|
|
20
|
+
const dispatcher = (data) => {
|
|
21
|
+
callback(Object.assign(Object.assign({}, data), { data: data.data ? channelMemberLinkedObject(data.data) : data.data }));
|
|
22
|
+
};
|
|
23
|
+
const realtimeRouter = (_, __) => {
|
|
24
|
+
const { data } = _getMembership({ channelId, userId });
|
|
25
|
+
if (isEqual(model, data))
|
|
26
|
+
return;
|
|
27
|
+
dispatcher({ loading: false, data });
|
|
28
|
+
};
|
|
29
|
+
const onFetch = () => {
|
|
30
|
+
const query = createQuery(async () => _getMembership({ channelId, userId }));
|
|
31
|
+
runQuery(query, ({ error, data, loading, origin, cachedAt }) => {
|
|
32
|
+
if (cachedAt === UNSYNCED_OBJECT_CACHED_AT_VALUE) {
|
|
33
|
+
dispatcher({
|
|
34
|
+
data,
|
|
35
|
+
origin,
|
|
36
|
+
loading: false,
|
|
37
|
+
error: new ASCApiError(UNSYNCED_OBJECT_CACHED_AT_MESSAGE, 800800 /* Amity.ClientError.DISALOOW_UNSYNCED_OBJECT */, "error" /* Amity.ErrorLevel.ERROR */),
|
|
38
|
+
});
|
|
39
|
+
isUnsyncedModel = true;
|
|
40
|
+
disposers.forEach(fn => fn());
|
|
41
|
+
}
|
|
42
|
+
else if (!isUnsyncedModel) {
|
|
43
|
+
dispatcher({ loading, data, origin, error });
|
|
44
|
+
}
|
|
45
|
+
if (error) {
|
|
46
|
+
disposers.forEach(fn => fn());
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
};
|
|
50
|
+
disposers.push(onChannelMemberBanned(realtimeRouter));
|
|
51
|
+
disposers.push(onChannelMemberUnbanned(realtimeRouter));
|
|
52
|
+
disposers.push(onChannelSetUserMuted(realtimeRouter));
|
|
53
|
+
onFetch();
|
|
54
|
+
return () => {
|
|
55
|
+
disposers.forEach(fn => fn());
|
|
56
|
+
};
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=getMembership.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMembership.js","sourceRoot":"","sources":["../../../src/channelRepository/observers/getMembership.ts"],"names":[],"mappings":"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","sourcesContent":["import { getMembership as _getMembership } from '../internalApi/getMembership';\nimport { ASCApiError } from '~/core/errors';\nimport { getActiveClient } from '~/client/api/activeClient';\nimport { isEqual } from '~/utils/isEqual';\nimport { createQuery, runQuery } from '~/core/query';\nimport {\n UNSYNCED_OBJECT_CACHED_AT_MESSAGE,\n UNSYNCED_OBJECT_CACHED_AT_VALUE,\n} from '~/utils/constants';\nimport { channelMemberLinkedObject } from '~/utils/linkedObject/channelMemberLinkedObject';\nimport { onChannelMemberBanned, onChannelMemberUnbanned } from '../events';\nimport { onChannelSetUserMuted } from '../events/onChannelSetUserMuted';\n\ntype GetMembership = {\n channelId: string;\n userId: Amity.User['userId'];\n callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>;\n};\n\nexport const getMembership = ({\n channelId,\n userId,\n callback,\n}: GetMembership): Amity.Unsubscriber => {\n const { log, cache } = getActiveClient();\n\n if (!cache) {\n console.log('This observable object need the cache data!');\n }\n\n const timestamp = Date.now();\n log(`liveMembership(tmpid: ${timestamp}) > listen`);\n\n const disposers: Amity.Unsubscriber[] = [];\n\n let isUnsyncedModel = false;\n\n let model: Amity.Membership<'channel'> | undefined;\n\n const dispatcher = (data: Amity.LiveObject<Amity.Membership<'channel'> | undefined>) => {\n callback({ ...data, data: data.data ? channelMemberLinkedObject(data.data) : data.data });\n };\n\n const realtimeRouter = (_: Amity.StaticInternalChannel, __: Amity.RawMembership<'channel'>) => {\n const { data } = _getMembership({ channelId, userId });\n\n if (isEqual(model, data)) return;\n\n dispatcher({ loading: false, data });\n };\n\n const onFetch = () => {\n const query = createQuery(async () => _getMembership({ channelId, userId }));\n\n runQuery(query, ({ error, data, loading, origin, cachedAt }) => {\n if (cachedAt === UNSYNCED_OBJECT_CACHED_AT_VALUE) {\n dispatcher({\n data,\n origin,\n loading: false,\n error: new ASCApiError(\n UNSYNCED_OBJECT_CACHED_AT_MESSAGE,\n Amity.ClientError.DISALOOW_UNSYNCED_OBJECT,\n Amity.ErrorLevel.ERROR,\n ),\n });\n\n isUnsyncedModel = true;\n disposers.forEach(fn => fn());\n } else if (!isUnsyncedModel) {\n dispatcher({ loading, data, origin, error });\n }\n\n if (error) {\n disposers.forEach(fn => fn());\n }\n });\n };\n\n disposers.push(onChannelMemberBanned(realtimeRouter));\n disposers.push(onChannelMemberUnbanned(realtimeRouter));\n disposers.push(onChannelSetUserMuted(realtimeRouter));\n\n onFetch();\n\n return () => {\n disposers.forEach(fn => fn());\n };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loginAsBot.d.ts","sourceRoot":"","sources":["../../../src/client/api/loginAsBot.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loginAsBot.d.ts","sourceRoot":"","sources":["../../../src/client/api/loginAsBot.ts"],"names":[],"mappings":"AA4BA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,eAAO,MAAM,UAAU,WAAkB;IACvC,cAAc,EAAE,MAAM,cAAc,CAAC;CACtC,KAAG,QAAQ,OAAO,CAuElB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loginAsBot.js","sourceRoot":"","sources":["../../../src/client/api/loginAsBot.ts"],"names":[],"mappings":"AAEA,2CAA2C;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAEhF,OAAO,cAAc,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"loginAsBot.js","sourceRoot":"","sources":["../../../src/client/api/loginAsBot.ts"],"names":[],"mappings":"AAEA,2CAA2C;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAEhF,OAAO,cAAc,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,aAAa,GAAyB,EAAE,CAAC;AAE/C;;EAEE;AACF;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,EAAE,MAEhC,EAAoB,EAAE;IACrB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,IAAI,YAAgC,CAAC;IAErC,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE;QACrC,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,YAAY,EAAE,MAAM,CAAC,YAAY;KAClC,CAAC,CAAC;IAEH,oBAAoB;IACpB,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;IACrC,IAAI,IAAmB,CAAC;IAExB,IAAI;QACF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,iBAAiB,CAAC;YAClD,MAAM,EAAE;gBACN,QAAQ;aACT;YACD,OAAO,EAAE;gBACP,oBAAoB,EAAE,IAAI;aAC3B;SACF,CAAC,CAAC;QAEH,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAEf,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE5B,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAE9C;;;WAGG;QACH,YAAY,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEtE,cAAc,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;KACpC;IAAC,OAAO,KAAK,EAAE;QACd;;;WAGG;QACH,cAAc,CAAC,WAAW,EAAE,CAAC,eAAe,uDAAmC,CAAC;QAEhF,yDAAyD;QACzD,MAAM,KAAK,CAAC;KACb;IAED,MAAM,+BAA+B,EAAE,CAAC;IAExC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,+BAA+B;QAC/B,aAAa,CAAC,IAAI,CAChB,iBAAiB,CAAC,CAAC,CAAC,EAAE;YACpB,eAAe,EAAE,CAAC;YAElB,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAElC,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC,EAEF,cAAc,CAAC,KAAK,CAAC,EAAE;YACrB,cAAc,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAEpD,MAAM,EAAE,CAAC;YAET,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,CAAC,CAAC,CACH,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,yBAAyB","sourcesContent":["/* eslint-disable no-param-reassign */\nimport { modifyMqttConnection } from '~/client/utils/modifyMqttConnection';\n/* eslint-disable require-atomic-updates */\nimport { getDeviceId } from '~/core/device';\nimport { logout } from './logout';\n\nimport { getActiveClient } from './activeClient';\nimport { terminateClient } from './terminateClient';\nimport { setActiveUser } from './activeUser';\n\nimport { onTokenExpired } from '../events/onTokenExpired';\nimport { onTokenTerminated } from '../events/onTokenTerminated';\nimport { initializeMessagePreviewSetting } from '../utils/messagePreviewEngine';\n\nimport SessionWatcher from '../utils/SessionWatcher';\nimport { setBotClientToken } from '../utils/setBotClientToken';\nimport { setCurrentUser } from '../utils/setCurrentUser';\n\n/*\n * declared earlier to accomodate case when logging in with a different user\n * than the one already connected, in which case the existing subscriptions need\n * to be cleared\n */\nconst subscriptions: Amity.Unsubscriber[] = [];\n\n/* begin_public_function\n id: client.loginAsBot\n*/\n/**\n * ```js\n * import { loginAsBot } from '@amityco/ts-sdk/client/api'\n * const success = await loginAsBot({\n sessionHandler: {\n sessionWillRenewAccessToken(renewal: Amity.AccessTokenRenewal) {\n ...\n }\n * })\n * ```\n *\n * Connects an {@link Amity.Client} instance to ASC servers\n *\n * @param params. the connect parameters\n * @param params.sessionHandler\n * @returns a success boolean if connected\n *\n * @category Client API\n * @async\n */\n\nexport const loginAsBot = async (params: {\n sessionHandler: Amity.SessionHandler;\n}): Promise<boolean> => {\n const client = getActiveClient();\n let unsubWatcher: Amity.Unsubscriber;\n\n client.log('client/api/connectClient', {\n apiKey: client.apiKey,\n sessionState: client.sessionState,\n });\n\n // generate deviceId\n const deviceId = await getDeviceId();\n let user: Amity.RawUser;\n\n try {\n const { users, userType } = await setBotClientToken({\n params: {\n deviceId,\n },\n options: {\n setAccessTokenCookie: true,\n },\n });\n\n [user] = users;\n\n client.userId = user.userId;\n\n client.sessionHandler = params.sessionHandler;\n\n /*\n * Cannot push to subscriptions as watcher needs to continue working even if\n * token expires\n */\n unsubWatcher = client.accessTokenExpiryWatcher(params.sessionHandler);\n\n setCurrentUser({ user, userType });\n } catch (error) {\n /*\n * if getting token failed session state reverts to initial state when app\n * is first launched\n */\n SessionWatcher.getInstance().setSessionState(Amity.SessionStates.NOT_LOGGED_IN);\n\n // pass error down tree so the calling function handle it\n throw error;\n }\n\n await initializeMessagePreviewSetting();\n\n if (subscriptions.length === 0) {\n // handling internal SDK events\n subscriptions.push(\n onTokenTerminated(_ => {\n terminateClient();\n\n subscriptions.forEach(fn => fn());\n\n unsubWatcher();\n }),\n\n onTokenExpired(state => {\n SessionWatcher.getInstance().setSessionState(state);\n\n logout();\n\n subscriptions.forEach(fn => fn());\n }),\n );\n }\n\n return true;\n};\n\n/* end_public_function */\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loginAsVisitor.d.ts","sourceRoot":"","sources":["../../../src/client/api/loginAsVisitor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loginAsVisitor.d.ts","sourceRoot":"","sources":["../../../src/client/api/loginAsVisitor.ts"],"names":[],"mappings":"AA2BA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,eAAO,MAAM,cAAc,WACjB,MAAM,4BAA4B,GAAG;IAC3C,cAAc,EAAE,MAAM,cAAc,CAAC;CACtC,KACA,QAAQ,OAAO,CAwEjB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loginAsVisitor.js","sourceRoot":"","sources":["../../../src/client/api/loginAsVisitor.ts"],"names":[],"mappings":"AAEA,2CAA2C;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"loginAsVisitor.js","sourceRoot":"","sources":["../../../src/client/api/loginAsVisitor.ts"],"names":[],"mappings":"AAEA,2CAA2C;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,+BAA+B,CAAC;AAEhF,OAAO,cAAc,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;;;GAIG;AACH,MAAM,aAAa,GAAyB,EAAE,CAAC;AAE/C;;EAEE;AACF;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EACjC,MAEC,EACiB,EAAE;IACpB,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,IAAI,YAAgC,CAAC;IACrC,MAAM,CAAC,GAAG,CAAC,0BAA0B,kBACnC,MAAM,EAAE,MAAM,CAAC,MAAM,EACrB,YAAY,EAAE,MAAM,CAAC,YAAY,IAC9B,MAAM,EACT,CAAC;IAEH,oBAAoB;IACpB,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;IACrC,IAAI,IAAmB,CAAC;IAExB,IAAI;QACF,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,qBAAqB,CAAC;YACtD,MAAM,kCACD,MAAM,KACT,QAAQ,GACT;YACD,OAAO,EAAE;gBACP,oBAAoB,EAAE,IAAI;aAC3B;SACF,CAAC,CAAC;QAEH,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAEf,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE5B,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QAE9C;;;WAGG;QACH,YAAY,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAEtE,cAAc,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;KACpC;IAAC,OAAO,KAAK,EAAE;QACd;;;WAGG;QACH,cAAc,CAAC,WAAW,EAAE,CAAC,eAAe,uDAAmC,CAAC;QAEhF,yDAAyD;QACzD,MAAM,KAAK,CAAC;KACb;IAED,MAAM,+BAA+B,EAAE,CAAC;IAExC,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,+BAA+B;QAC/B,aAAa,CAAC,IAAI,CAChB,iBAAiB,CAAC,CAAC,CAAC,EAAE;YACpB,eAAe,EAAE,CAAC;YAElB,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YAElC,YAAY,EAAE,CAAC;QACjB,CAAC,CAAC,EAEF,cAAc,CAAC,KAAK,CAAC,EAAE;YACrB,cAAc,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;YAEpD,MAAM,EAAE,CAAC;YAET,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,CAAC,CAAC,CACH,CAAC;KACH;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,yBAAyB","sourcesContent":["/* eslint-disable no-param-reassign */\nimport { modifyMqttConnection } from '~/client/utils/modifyMqttConnection';\n/* eslint-disable require-atomic-updates */\nimport { getDeviceId } from '~/core/device';\nimport { logout } from './logout';\n\nimport { getActiveClient } from './activeClient';\nimport { terminateClient } from './terminateClient';\n\nimport { onTokenExpired } from '../events/onTokenExpired';\nimport { onTokenTerminated } from '../events/onTokenTerminated';\nimport { initializeMessagePreviewSetting } from '../utils/messagePreviewEngine';\n\nimport SessionWatcher from '../utils/SessionWatcher';\nimport { setVisitorClientToken } from '../utils/setVisitorClientToken';\nimport { setCurrentUser } from '../utils/setCurrentUser';\n\n/*\n * declared earlier to accomodate case when logging in with a different user\n * than the one already connected, in which case the existing subscriptions need\n * to be cleared\n */\nconst subscriptions: Amity.Unsubscriber[] = [];\n\n/* begin_public_function\n id: client.loginAsVisitor\n*/\n/**\n * ```js\n * import { loginAsVisitor } from '@amityco/ts-sdk/client/api'\n * const success = await loginAsVisitor({\n sessionHandler: {\n sessionWillRenewAccessToken(renewal: Amity.AccessTokenRenewal) {\n ...\n }\n * })\n * ```\n *\n * Connects an {@link Amity.Client} instance to ASC servers\n *\n * @param params. the connect parameters\n * @param params.authSignature The authenitcation signature - necessary when network option is set to secure\n * @param params.authSignatureExpiresAt Expire time of the authenitcation signature\n * @param params.sessionHandler\n * @returns a success boolean if connected\n *\n * @category Client API\n * @async\n */\n\nexport const loginAsVisitor = async (\n params: Amity.ConnectClientAsVisitorParams & {\n sessionHandler: Amity.SessionHandler;\n },\n): Promise<boolean> => {\n const client = getActiveClient();\n let unsubWatcher: Amity.Unsubscriber;\n client.log('client/api/connectClient', {\n apiKey: client.apiKey,\n sessionState: client.sessionState,\n ...params,\n });\n\n // generate deviceId\n const deviceId = await getDeviceId();\n let user: Amity.RawUser;\n\n try {\n const { users, userType } = await setVisitorClientToken({\n params: {\n ...params,\n deviceId,\n },\n options: {\n setAccessTokenCookie: true,\n },\n });\n\n [user] = users;\n\n client.userId = user.userId;\n\n client.sessionHandler = params.sessionHandler;\n\n /*\n * Cannot push to subscriptions as watcher needs to continue working even if\n * token expires\n */\n unsubWatcher = client.accessTokenExpiryWatcher(params.sessionHandler);\n\n setCurrentUser({ user, userType });\n } catch (error) {\n /*\n * if getting token failed session state reverts to initial state when app\n * is first launched\n */\n SessionWatcher.getInstance().setSessionState(Amity.SessionStates.NOT_LOGGED_IN);\n\n // pass error down tree so the calling function handle it\n throw error;\n }\n\n await initializeMessagePreviewSetting();\n\n if (subscriptions.length === 0) {\n // handling internal SDK events\n subscriptions.push(\n onTokenTerminated(_ => {\n terminateClient();\n\n subscriptions.forEach(fn => fn());\n\n unsubWatcher();\n }),\n\n onTokenExpired(state => {\n SessionWatcher.getInstance().setSessionState(state);\n\n logout();\n\n subscriptions.forEach(fn => fn());\n }),\n );\n }\n\n return true;\n};\n\n/* end_public_function */\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setVisitorClientToken.d.ts","sourceRoot":"","sources":["../../../src/client/utils/setVisitorClientToken.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"setVisitorClientToken.d.ts","sourceRoot":"","sources":["../../../src/client/utils/setVisitorClientToken.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB,WAAkB,WAAW,sBAAsB,CAAC,CAAC,CAAC,CAAC;;;;EAqBxF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setVisitorClientToken.js","sourceRoot":"","sources":["../../../src/client/utils/setVisitorClientToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"setVisitorClientToken.js","sourceRoot":"","sources":["../../../src/client/utils/setVisitorClientToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EAAE,MAA6C,EAAE,EAAE;IAC3F,MAAM,MAAM,GAAG,eAAe,EAAE,CAAC;IACjC,6BAA6B;IAC7B,eAAe,uDAAkC,CAAC;IAElD,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,CAAC;IAE5F,8CAA8C;IAC9C,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,GAAG,UAAU,WAAW,EAAE,CAAC;IAE5E,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,GAAG;QAC9B,WAAW,EAAE,SAAS;QACtB,cAAc,EAAE,KAAK;QACrB,aAAa,EAAE,KAAK;KACrB,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAEpD,eAAe,qDAAiC,CAAC;IAEjD,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC1C,CAAC,CAAC","sourcesContent":["import { getActiveClient } from '../api/activeClient';\nimport { setSessionState } from '../api/setSessionState';\nimport { getVisitorToken } from '../api/getVisitorToken';\n\n/**\n * A util to set or refresh client token\n *\n * @param params.userId the user ID for the current session\n * @param params.displayName the user's displayName for the current session\n * @param params.deviceId Manual override of the user's device id (for device management)\n * @param params.authToken The authentication token - necessary when network option is set to secure\n * @param options get bot token options\n * @param options.setAccessTokenCookie The authentication token - necessary when network option is set to secure\n * @returns token & user info\n *\n * @category private\n * @async\n */\nexport const setVisitorClientToken = async (params: Parameters<typeof getVisitorToken>[0]) => {\n const client = getActiveClient();\n // begin establishing session\n setSessionState(Amity.SessionStates.ESTABLISHING);\n\n const { accessToken, users, expiresAt, issuedAt, userType } = await getVisitorToken(params);\n\n // manually setup the token for http transport\n client.http.defaults.headers.common.Authorization = `Bearer ${accessToken}`;\n\n client.http.defaults.metadata = {\n tokenExpiry: expiresAt,\n isGlobalBanned: false,\n isUserDeleted: false,\n };\n\n client.token = { accessToken, issuedAt, expiresAt };\n\n setSessionState(Amity.SessionStates.ESTABLISHED);\n\n return { accessToken, users, userType };\n};\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelLinkedObject.d.ts","sourceRoot":"","sources":["../../../src/utils/linkedObject/channelLinkedObject.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"channelLinkedObject.d.ts","sourceRoot":"","sources":["../../../src/utils/linkedObject/channelLinkedObject.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,mBAAmB,YAAa,MAAM,eAAe,KAAG,MAAM,OAmC1E,CAAC"}
|
|
@@ -3,6 +3,7 @@ import { shallowClone } from '../shallowClone';
|
|
|
3
3
|
import { queryCache } from '~/cache/api';
|
|
4
4
|
import { channelMemberLinkedObject } from './channelMemberLinkedObject';
|
|
5
5
|
import { getMyMembership } from '~/channelRepository/observers/getMyMembership';
|
|
6
|
+
import { getMembership } from '~/channelRepository/observers/getMembership';
|
|
6
7
|
export const channelLinkedObject = (channel) => {
|
|
7
8
|
var _a;
|
|
8
9
|
let previewMembers = [];
|
|
@@ -21,6 +22,13 @@ export const channelLinkedObject = (channel) => {
|
|
|
21
22
|
markAsRead: () => markAsRead(channel.channelInternalId),
|
|
22
23
|
previewMembers,
|
|
23
24
|
myMembership: (callback) => getMyMembership(channel.channelId, callback),
|
|
25
|
+
getMembership: (userId, callback) => {
|
|
26
|
+
getMembership({
|
|
27
|
+
channelId: channel.channelId,
|
|
28
|
+
userId,
|
|
29
|
+
callback,
|
|
30
|
+
});
|
|
31
|
+
},
|
|
24
32
|
});
|
|
25
33
|
};
|
|
26
34
|
//# sourceMappingURL=channelLinkedObject.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelLinkedObject.js","sourceRoot":"","sources":["../../../src/utils/linkedObject/channelLinkedObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"channelLinkedObject.js","sourceRoot":"","sources":["../../../src/utils/linkedObject/channelLinkedObject.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4CAA4C,CAAC;AACxE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,+CAA+C,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,6CAA6C,CAAC;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAA8B,EAAiB,EAAE;;IACnF,IAAI,cAAc,GAAkC,EAAE,CAAC;IAEvD,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QACxD,MAAM,YAAY,GAAG,UAAU,CAA8B,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;QACtF,IAAI,YAAY,IAAI,CAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,IAAG,CAAC,EAAE;YAC5C,cAAc,GAAG,CACf,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,MAAM,CAClB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM,CACjF,mCAAI,EAAE,CACR;gBACC,4CAA4C;iBAC3C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAC3E,8BAA8B;iBAC7B,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;iBACX,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC;SACvD;KACF;IAED,OAAO,YAAY,CAAC,OAAO,EAAE;QAC3B,UAAU,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,iBAAiB,CAAC;QACvD,cAAc;QACd,YAAY,EAAE,CAAC,QAA2E,EAAE,EAAE,CAC5F,eAAe,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,CAAC;QAC9C,aAAa,EAAE,CACb,MAA4B,EAC5B,QAA2E,EAC3E,EAAE;YACF,aAAa,CAAC;gBACZ,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM;gBACN,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC,CAAC","sourcesContent":["import { markAsRead } from '~/channelRepository/internalApi/markAsRead';\nimport { shallowClone } from '../shallowClone';\nimport { queryCache } from '~/cache/api';\nimport { channelMemberLinkedObject } from './channelMemberLinkedObject';\nimport { getMyMembership } from '~/channelRepository/observers/getMyMembership';\nimport { getMembership } from '~/channelRepository/observers/getMembership';\n\nexport const channelLinkedObject = (channel: Amity.InternalChannel): Amity.Channel => {\n let previewMembers: Amity.Membership<'channel'>[] = [];\n\n if (['conversation', 'community'].includes(channel.type)) {\n const channelUsers = queryCache<Amity.Membership<'channel'>>(['channelUsers', 'get']);\n if (channelUsers && channelUsers?.length > 0) {\n previewMembers = (\n channelUsers?.filter(\n ({ data }) => data.channelId === channel.channelId && data.membership !== 'none',\n ) ?? []\n )\n // sort in ascending order by userInternalId\n .sort((a, b) => a.data.userInternalId.localeCompare(b.data.userInternalId))\n // Select only first 4 members\n .slice(0, 4)\n .map(({ data }) => channelMemberLinkedObject(data));\n }\n }\n\n return shallowClone(channel, {\n markAsRead: () => markAsRead(channel.channelInternalId),\n previewMembers,\n myMembership: (callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>) =>\n getMyMembership(channel.channelId, callback),\n getMembership: (\n userId: Amity.User['userId'],\n callback: Amity.LiveObjectCallback<Amity.Membership<'channel'> | undefined>,\n ) => {\n getMembership({\n channelId: channel.channelId,\n userId,\n callback,\n });\n },\n });\n};\n"]}
|