@selfcommunity/api-services 1.0.19-alpha.1 → 1.1.0-alpha.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.
@@ -1155,6 +1155,10 @@ const Endpoints = {
1155
1155
  url: (0, utils_1.urlReplacer)('/api/v2/score/'),
1156
1156
  method: 'POST'
1157
1157
  },
1158
+ GetLeaderboards: {
1159
+ url: (0, utils_1.urlReplacer)('/api/v2/score/leaderboard/'),
1160
+ method: 'GET'
1161
+ },
1158
1162
  /**
1159
1163
  * Reactions
1160
1164
  */
@@ -1,5 +1,5 @@
1
- import { SCUserScoreType } from '@selfcommunity/types';
2
- import { ScoreParams, SCPaginatedResponse, UserScoreParams } from '../../types';
1
+ import { SCUserLeaderboardType, SCUserScoreType } from '@selfcommunity/types';
2
+ import { ScoreParams, SCPaginatedResponse, UserScoreParams, LeaderboardParams } from '../../types';
3
3
  import { AxiosRequestConfig } from 'axios';
4
4
  export interface ScoreApiClientInterface {
5
5
  getAllScores(params?: ScoreParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserScoreType>>;
@@ -28,6 +28,14 @@ export declare class ScoreApiClient {
28
28
  * @param config
29
29
  */
30
30
  static addScore(data: UserScoreParams, config?: AxiosRequestConfig): Promise<SCUserScoreType>;
31
+ /**
32
+ * Fetches a list of user leaderboards based on the provided parameters.
33
+ *
34
+ * @param {LeaderboardParams} [params] - Optional query parameters for filtering and pagination of the leaderboards.
35
+ * @param {AxiosRequestConfig} [config] - Optional Axios request configuration object for customizing the API request.
36
+ * @return {Promise<SCUserLeaderboardType>} A promise that resolves to a paginated response containing the user leaderboard data.
37
+ */
38
+ static getLeaderboards(params?: LeaderboardParams, config?: AxiosRequestConfig): Promise<SCUserLeaderboardType>;
31
39
  }
32
40
  /**
33
41
  *
@@ -61,4 +69,5 @@ export default class ScoreService {
61
69
  static getAllScores(params?: ScoreParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserScoreType>>;
62
70
  static searchScore(params?: ScoreParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserScoreType>>;
63
71
  static addScore(data: UserScoreParams, config?: AxiosRequestConfig): Promise<SCUserScoreType>;
72
+ static getLeaderboards(params?: LeaderboardParams, config?: AxiosRequestConfig): Promise<SCUserLeaderboardType>;
64
73
  }
@@ -35,6 +35,17 @@ class ScoreApiClient {
35
35
  static addScore(data, config) {
36
36
  return (0, apiRequest_1.apiRequest)(Object.assign(Object.assign({}, config), { url: Endpoints_1.default.AddScore.url({}), method: Endpoints_1.default.AddScore.method, data: data }));
37
37
  }
38
+ /**
39
+ * Fetches a list of user leaderboards based on the provided parameters.
40
+ *
41
+ * @param {LeaderboardParams} [params] - Optional query parameters for filtering and pagination of the leaderboards.
42
+ * @param {AxiosRequestConfig} [config] - Optional Axios request configuration object for customizing the API request.
43
+ * @return {Promise<SCUserLeaderboardType>} A promise that resolves to a paginated response containing the user leaderboard data.
44
+ */
45
+ static getLeaderboards(params, config) {
46
+ const p = (0, url_1.urlParams)(params);
47
+ return (0, apiRequest_1.apiRequest)(Object.assign(Object.assign({}, config), { url: `${Endpoints_1.default.GetLeaderboards.url({})}?${p.toString()}`, method: Endpoints_1.default.GetLeaderboards.method }));
48
+ }
38
49
  }
39
50
  exports.ScoreApiClient = ScoreApiClient;
40
51
  /**
@@ -81,5 +92,10 @@ class ScoreService {
81
92
  return ScoreApiClient.addScore(data, config);
82
93
  });
83
94
  }
95
+ static getLeaderboards(params, config) {
96
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
97
+ return ScoreApiClient.getLeaderboards(params, config);
98
+ });
99
+ }
84
100
  }
85
101
  exports.default = ScoreService;
@@ -7,7 +7,7 @@ import { IncubatorCreateParams, IncubatorSearchParams } from './incubator';
7
7
  import { LoyaltyPrizeParams, LoyaltyGetPrizeParams } from './prize';
8
8
  import { ModerationParams, ModerateContributionParams, FlaggedContributionParams } from './moderation';
9
9
  import { CustomNotificationParams } from './notification';
10
- import { UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams } from './user';
10
+ import { UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams, LeaderboardParams } from './user';
11
11
  import { TagParams, TagGetParams } from './tag';
12
12
  import { MediaCreateParams, MediaTypes, ChunkUploadParams, ChunkUploadCompleteParams } from './media';
13
13
  import { ThreadParams, MessageCreateParams, MessageMediaUploadParams, MessageThumbnailUploadParams, MessageChunkUploadDoneParams, MessageMediaChunksParams, ThreadDeleteParams } from './privateMessage';
@@ -30,4 +30,4 @@ import { StartStepParams, OnBoardingStep } from './onBoarding';
30
30
  import { CourseCreateParams, CourseSearchParams, CourseInfoViewType, CourseInfoParams, CourseLessonCommentsParams, CourseUserRoleParams, CourseUsersParams, CourseDashboardUsersParams } from './course';
31
31
  import { PaymentContentStatusParams, PaymentContentStatus, PaymentProductsParams, CustomerPortalCreateSessionParams, CheckoutSessionParams, CheckoutCreateSessionParams, PaymentOrderParams } from './payment';
32
32
  import { ContactUsRequestParams } from './contactUs';
33
- export { AccountCreateParams, AccountVerifyParams, AccountRecoverParams, AccountResetParams, AccountSearchParams, SCPaginatedResponse, WebhookParamType, WebhookEventsType, SSOSignUpParams, CommentListParams, CommentCreateParams, IncubatorCreateParams, IncubatorSearchParams, LoyaltyPrizeParams, LoyaltyGetPrizeParams, ModerationParams, ModerateContributionParams, FlaggedContributionParams, CustomNotificationParams, UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams, TagParams, TagGetParams, MediaCreateParams, MediaTypes, ChunkUploadCompleteParams, ChunkUploadParams, ThreadParams, ThreadDeleteParams, MessageCreateParams, MessageMediaUploadParams, MessageThumbnailUploadParams, MessageChunkUploadDoneParams, MessageMediaChunksParams, CategoryParams, CustomAdvParams, CustomPageParams, CustomPageSearchParams, EmbedUpdateParams, EmbedSearchParams, BaseGetParams, BaseSearchParams, FeedObjGetParams, FeedObjCreateParams, FeedObjectPollVotesSearch, ScheduledFeedObjParams, FeedParams, LegalPageFilterParams, FeatureParams, ScoreParams, InsightContributionParams, InsightUserParams, InsightEmbedParams, InsightCommonParams, ReactionParams, GroupCreateParams, GroupFeedParams, EventCreateParams, EventFeedParams, EventRelatedParams, EventSearchParams, LiveStreamCreateParams, LiveStreamSearchParams, LiveStreamRemoveParticipantParams, StartStepParams, OnBoardingStep, CourseCreateParams, CourseSearchParams, CourseInfoViewType, CourseInfoParams, CourseLessonCommentsParams, CourseUserRoleParams, CourseUsersParams, CourseDashboardUsersParams, PaymentContentStatusParams, PaymentContentStatus, PaymentProductsParams, CustomerPortalCreateSessionParams, CheckoutSessionParams, CheckoutCreateSessionParams, PaymentOrderParams, ContactUsRequestParams };
33
+ export { AccountCreateParams, AccountVerifyParams, AccountRecoverParams, AccountResetParams, AccountSearchParams, SCPaginatedResponse, WebhookParamType, WebhookEventsType, SSOSignUpParams, CommentListParams, CommentCreateParams, IncubatorCreateParams, IncubatorSearchParams, LoyaltyPrizeParams, LoyaltyGetPrizeParams, ModerationParams, ModerateContributionParams, FlaggedContributionParams, CustomNotificationParams, UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams, LeaderboardParams, TagParams, TagGetParams, MediaCreateParams, MediaTypes, ChunkUploadCompleteParams, ChunkUploadParams, ThreadParams, ThreadDeleteParams, MessageCreateParams, MessageMediaUploadParams, MessageThumbnailUploadParams, MessageChunkUploadDoneParams, MessageMediaChunksParams, CategoryParams, CustomAdvParams, CustomPageParams, CustomPageSearchParams, EmbedUpdateParams, EmbedSearchParams, BaseGetParams, BaseSearchParams, FeedObjGetParams, FeedObjCreateParams, FeedObjectPollVotesSearch, ScheduledFeedObjParams, FeedParams, LegalPageFilterParams, FeatureParams, ScoreParams, InsightContributionParams, InsightUserParams, InsightEmbedParams, InsightCommonParams, ReactionParams, GroupCreateParams, GroupFeedParams, EventCreateParams, EventFeedParams, EventRelatedParams, EventSearchParams, LiveStreamCreateParams, LiveStreamSearchParams, LiveStreamRemoveParticipantParams, StartStepParams, OnBoardingStep, CourseCreateParams, CourseSearchParams, CourseInfoViewType, CourseInfoParams, CourseLessonCommentsParams, CourseUserRoleParams, CourseUsersParams, CourseDashboardUsersParams, PaymentContentStatusParams, PaymentContentStatus, PaymentProductsParams, CustomerPortalCreateSessionParams, CheckoutSessionParams, CheckoutCreateSessionParams, PaymentOrderParams, ContactUsRequestParams };
@@ -49,6 +49,27 @@ export interface UserScoreParams {
49
49
  */
50
50
  user: number;
51
51
  }
52
+ /**
53
+ * interface LeaderboardParams
54
+ */
55
+ export interface LeaderboardParams extends BaseGetParams {
56
+ /**
57
+ * Represents the starting timestamp or date from which a reputation-related event or status is considered.
58
+ * This property is optional and may not always be present.
59
+ * Expected to be in string format, typically representing a valid date or datetime.
60
+ */
61
+ reputed_at_from?: string;
62
+ /**
63
+ * An optional property representing the timestamp or date string to which
64
+ * the "reputed at" status is applicable. Typically used to denote an end time
65
+ * or boundary in contexts where a reputation or status is evaluated over a period.
66
+ */
67
+ reputed_at_to?: string;
68
+ /**
69
+ * Filter the results based on tag or campaign
70
+ */
71
+ search_reputation_context?: string;
72
+ }
52
73
  export interface UserGetParams extends BaseGetParams {
53
74
  mutual?: number;
54
75
  }
@@ -1153,6 +1153,10 @@ const Endpoints = {
1153
1153
  url: urlReplacer('/api/v2/score/'),
1154
1154
  method: 'POST'
1155
1155
  },
1156
+ GetLeaderboards: {
1157
+ url: urlReplacer('/api/v2/score/leaderboard/'),
1158
+ method: 'GET'
1159
+ },
1156
1160
  /**
1157
1161
  * Reactions
1158
1162
  */
@@ -1,5 +1,5 @@
1
- import { SCUserScoreType } from '@selfcommunity/types';
2
- import { ScoreParams, SCPaginatedResponse, UserScoreParams } from '../../types';
1
+ import { SCUserLeaderboardType, SCUserScoreType } from '@selfcommunity/types';
2
+ import { ScoreParams, SCPaginatedResponse, UserScoreParams, LeaderboardParams } from '../../types';
3
3
  import { AxiosRequestConfig } from 'axios';
4
4
  export interface ScoreApiClientInterface {
5
5
  getAllScores(params?: ScoreParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserScoreType>>;
@@ -28,6 +28,14 @@ export declare class ScoreApiClient {
28
28
  * @param config
29
29
  */
30
30
  static addScore(data: UserScoreParams, config?: AxiosRequestConfig): Promise<SCUserScoreType>;
31
+ /**
32
+ * Fetches a list of user leaderboards based on the provided parameters.
33
+ *
34
+ * @param {LeaderboardParams} [params] - Optional query parameters for filtering and pagination of the leaderboards.
35
+ * @param {AxiosRequestConfig} [config] - Optional Axios request configuration object for customizing the API request.
36
+ * @return {Promise<SCUserLeaderboardType>} A promise that resolves to a paginated response containing the user leaderboard data.
37
+ */
38
+ static getLeaderboards(params?: LeaderboardParams, config?: AxiosRequestConfig): Promise<SCUserLeaderboardType>;
31
39
  }
32
40
  /**
33
41
  *
@@ -61,4 +69,5 @@ export default class ScoreService {
61
69
  static getAllScores(params?: ScoreParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserScoreType>>;
62
70
  static searchScore(params?: ScoreParams, config?: AxiosRequestConfig): Promise<SCPaginatedResponse<SCUserScoreType>>;
63
71
  static addScore(data: UserScoreParams, config?: AxiosRequestConfig): Promise<SCUserScoreType>;
72
+ static getLeaderboards(params?: LeaderboardParams, config?: AxiosRequestConfig): Promise<SCUserLeaderboardType>;
64
73
  }
@@ -32,6 +32,17 @@ export class ScoreApiClient {
32
32
  static addScore(data, config) {
33
33
  return apiRequest(Object.assign(Object.assign({}, config), { url: Endpoints.AddScore.url({}), method: Endpoints.AddScore.method, data: data }));
34
34
  }
35
+ /**
36
+ * Fetches a list of user leaderboards based on the provided parameters.
37
+ *
38
+ * @param {LeaderboardParams} [params] - Optional query parameters for filtering and pagination of the leaderboards.
39
+ * @param {AxiosRequestConfig} [config] - Optional Axios request configuration object for customizing the API request.
40
+ * @return {Promise<SCUserLeaderboardType>} A promise that resolves to a paginated response containing the user leaderboard data.
41
+ */
42
+ static getLeaderboards(params, config) {
43
+ const p = urlParams(params);
44
+ return apiRequest(Object.assign(Object.assign({}, config), { url: `${Endpoints.GetLeaderboards.url({})}?${p.toString()}`, method: Endpoints.GetLeaderboards.method }));
45
+ }
35
46
  }
36
47
  /**
37
48
  *
@@ -77,4 +88,9 @@ export default class ScoreService {
77
88
  return ScoreApiClient.addScore(data, config);
78
89
  });
79
90
  }
91
+ static getLeaderboards(params, config) {
92
+ return __awaiter(this, void 0, void 0, function* () {
93
+ return ScoreApiClient.getLeaderboards(params, config);
94
+ });
95
+ }
80
96
  }
@@ -7,7 +7,7 @@ import { IncubatorCreateParams, IncubatorSearchParams } from './incubator';
7
7
  import { LoyaltyPrizeParams, LoyaltyGetPrizeParams } from './prize';
8
8
  import { ModerationParams, ModerateContributionParams, FlaggedContributionParams } from './moderation';
9
9
  import { CustomNotificationParams } from './notification';
10
- import { UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams } from './user';
10
+ import { UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams, LeaderboardParams } from './user';
11
11
  import { TagParams, TagGetParams } from './tag';
12
12
  import { MediaCreateParams, MediaTypes, ChunkUploadParams, ChunkUploadCompleteParams } from './media';
13
13
  import { ThreadParams, MessageCreateParams, MessageMediaUploadParams, MessageThumbnailUploadParams, MessageChunkUploadDoneParams, MessageMediaChunksParams, ThreadDeleteParams } from './privateMessage';
@@ -30,4 +30,4 @@ import { StartStepParams, OnBoardingStep } from './onBoarding';
30
30
  import { CourseCreateParams, CourseSearchParams, CourseInfoViewType, CourseInfoParams, CourseLessonCommentsParams, CourseUserRoleParams, CourseUsersParams, CourseDashboardUsersParams } from './course';
31
31
  import { PaymentContentStatusParams, PaymentContentStatus, PaymentProductsParams, CustomerPortalCreateSessionParams, CheckoutSessionParams, CheckoutCreateSessionParams, PaymentOrderParams } from './payment';
32
32
  import { ContactUsRequestParams } from './contactUs';
33
- export { AccountCreateParams, AccountVerifyParams, AccountRecoverParams, AccountResetParams, AccountSearchParams, SCPaginatedResponse, WebhookParamType, WebhookEventsType, SSOSignUpParams, CommentListParams, CommentCreateParams, IncubatorCreateParams, IncubatorSearchParams, LoyaltyPrizeParams, LoyaltyGetPrizeParams, ModerationParams, ModerateContributionParams, FlaggedContributionParams, CustomNotificationParams, UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams, TagParams, TagGetParams, MediaCreateParams, MediaTypes, ChunkUploadCompleteParams, ChunkUploadParams, ThreadParams, ThreadDeleteParams, MessageCreateParams, MessageMediaUploadParams, MessageThumbnailUploadParams, MessageChunkUploadDoneParams, MessageMediaChunksParams, CategoryParams, CustomAdvParams, CustomPageParams, CustomPageSearchParams, EmbedUpdateParams, EmbedSearchParams, BaseGetParams, BaseSearchParams, FeedObjGetParams, FeedObjCreateParams, FeedObjectPollVotesSearch, ScheduledFeedObjParams, FeedParams, LegalPageFilterParams, FeatureParams, ScoreParams, InsightContributionParams, InsightUserParams, InsightEmbedParams, InsightCommonParams, ReactionParams, GroupCreateParams, GroupFeedParams, EventCreateParams, EventFeedParams, EventRelatedParams, EventSearchParams, LiveStreamCreateParams, LiveStreamSearchParams, LiveStreamRemoveParticipantParams, StartStepParams, OnBoardingStep, CourseCreateParams, CourseSearchParams, CourseInfoViewType, CourseInfoParams, CourseLessonCommentsParams, CourseUserRoleParams, CourseUsersParams, CourseDashboardUsersParams, PaymentContentStatusParams, PaymentContentStatus, PaymentProductsParams, CustomerPortalCreateSessionParams, CheckoutSessionParams, CheckoutCreateSessionParams, PaymentOrderParams, ContactUsRequestParams };
33
+ export { AccountCreateParams, AccountVerifyParams, AccountRecoverParams, AccountResetParams, AccountSearchParams, SCPaginatedResponse, WebhookParamType, WebhookEventsType, SSOSignUpParams, CommentListParams, CommentCreateParams, IncubatorCreateParams, IncubatorSearchParams, LoyaltyPrizeParams, LoyaltyGetPrizeParams, ModerationParams, ModerateContributionParams, FlaggedContributionParams, CustomNotificationParams, UserGetParams, UserAutocompleteParams, UserScoreParams, UserSearchParams, LeaderboardParams, TagParams, TagGetParams, MediaCreateParams, MediaTypes, ChunkUploadCompleteParams, ChunkUploadParams, ThreadParams, ThreadDeleteParams, MessageCreateParams, MessageMediaUploadParams, MessageThumbnailUploadParams, MessageChunkUploadDoneParams, MessageMediaChunksParams, CategoryParams, CustomAdvParams, CustomPageParams, CustomPageSearchParams, EmbedUpdateParams, EmbedSearchParams, BaseGetParams, BaseSearchParams, FeedObjGetParams, FeedObjCreateParams, FeedObjectPollVotesSearch, ScheduledFeedObjParams, FeedParams, LegalPageFilterParams, FeatureParams, ScoreParams, InsightContributionParams, InsightUserParams, InsightEmbedParams, InsightCommonParams, ReactionParams, GroupCreateParams, GroupFeedParams, EventCreateParams, EventFeedParams, EventRelatedParams, EventSearchParams, LiveStreamCreateParams, LiveStreamSearchParams, LiveStreamRemoveParticipantParams, StartStepParams, OnBoardingStep, CourseCreateParams, CourseSearchParams, CourseInfoViewType, CourseInfoParams, CourseLessonCommentsParams, CourseUserRoleParams, CourseUsersParams, CourseDashboardUsersParams, PaymentContentStatusParams, PaymentContentStatus, PaymentProductsParams, CustomerPortalCreateSessionParams, CheckoutSessionParams, CheckoutCreateSessionParams, PaymentOrderParams, ContactUsRequestParams };
@@ -49,6 +49,27 @@ export interface UserScoreParams {
49
49
  */
50
50
  user: number;
51
51
  }
52
+ /**
53
+ * interface LeaderboardParams
54
+ */
55
+ export interface LeaderboardParams extends BaseGetParams {
56
+ /**
57
+ * Represents the starting timestamp or date from which a reputation-related event or status is considered.
58
+ * This property is optional and may not always be present.
59
+ * Expected to be in string format, typically representing a valid date or datetime.
60
+ */
61
+ reputed_at_from?: string;
62
+ /**
63
+ * An optional property representing the timestamp or date string to which
64
+ * the "reputed at" status is applicable. Typically used to denote an end time
65
+ * or boundary in contexts where a reputation or status is evaluated over a period.
66
+ */
67
+ reputed_at_to?: string;
68
+ /**
69
+ * Filter the results based on tag or campaign
70
+ */
71
+ search_reputation_context?: string;
72
+ }
52
73
  export interface UserGetParams extends BaseGetParams {
53
74
  mutual?: number;
54
75
  }