musora-content-services 2.43.0 → 2.45.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/.coderabbit.yaml +0 -0
- package/.editorconfig +0 -0
- package/.github/pull_request_template.md +0 -0
- package/.github/workflows/conventional-commits.yaml +0 -0
- package/.github/workflows/docs.js.yml +0 -0
- package/.github/workflows/node.js.yml +0 -0
- package/.prettierignore +0 -0
- package/.prettierrc +0 -0
- package/.yarnrc.yml +1 -0
- package/CHANGELOG.md +19 -0
- package/README.md +0 -0
- package/babel.config.cjs +0 -0
- package/docs/ContentOrganization.html +2 -2
- package/docs/Forums.html +2 -2
- package/docs/Gamification.html +2 -2
- package/docs/UserManagementSystem.html +2 -2
- package/docs/api_types.js.html +2 -2
- package/docs/config.js.html +2 -2
- package/docs/content-org_content-org.js.html +2 -2
- package/docs/content-org_guided-courses.ts.html +2 -2
- package/docs/content-org_playlists-types.js.html +2 -2
- package/docs/content-org_playlists.js.html +2 -2
- package/docs/content.js.html +2 -2
- package/docs/fonts/Montserrat/Montserrat-Bold.eot +0 -0
- package/docs/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
- package/docs/fonts/Montserrat/Montserrat-Bold.woff +0 -0
- package/docs/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
- package/docs/fonts/Montserrat/Montserrat-Regular.eot +0 -0
- package/docs/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
- package/docs/fonts/Montserrat/Montserrat-Regular.woff +0 -0
- package/docs/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
- package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
- package/docs/forums_categories.ts.html +2 -2
- package/docs/forums_discussions.js.html +0 -0
- package/docs/forums_forum.js.html +0 -0
- package/docs/forums_forums.ts.html +2 -2
- package/docs/forums_posts.ts.html +132 -0
- package/docs/forums_threads.ts.html +76 -5
- package/docs/gamification_awards.js.html +0 -0
- package/docs/gamification_awards.ts.html +2 -2
- package/docs/gamification_gamification.js.html +2 -2
- package/docs/gamification_types.js.html +0 -0
- package/docs/global.html +2 -2
- package/docs/index.html +2 -2
- package/docs/module-Accounts.html +2 -2
- package/docs/module-Awards.html +2 -2
- package/docs/module-Categories.html +24 -0
- package/docs/module-Config.html +2 -2
- package/docs/module-Content-Services-V2.html +2 -2
- package/docs/module-ForumDiscussions.html +0 -0
- package/docs/module-Forums.html +6225 -222
- package/docs/module-GuidedCourses.html +2 -2
- package/docs/module-Interests.html +2 -2
- package/docs/module-Payments.html +2 -2
- package/docs/module-Permissions.html +2 -2
- package/docs/module-Playlists.html +2 -2
- package/docs/module-Railcontent-Services.html +2 -2
- package/docs/module-Sanity-Services.html +10 -175
- package/docs/module-Sessions.html +2 -2
- package/docs/module-Threads.html +176 -1
- package/docs/module-UserActivity.html +2 -2
- package/docs/module-UserChat.html +2 -2
- package/docs/module-UserManagement.html +2 -2
- package/docs/module-UserMemberships.html +2 -2
- package/docs/module-UserNotifications.html +2 -2
- package/docs/module-UserProfile.html +2 -2
- package/docs/railcontent.js.html +2 -2
- package/docs/sanity.js.html +3 -25
- package/docs/scripts/collapse.js +0 -0
- package/docs/scripts/commonNav.js +0 -0
- package/docs/scripts/linenumber.js +0 -0
- package/docs/scripts/nav.js +0 -0
- package/docs/scripts/polyfill.js +0 -0
- package/docs/scripts/prettify/Apache-License-2.0.txt +0 -0
- package/docs/scripts/prettify/lang-css.js +0 -0
- package/docs/scripts/prettify/prettify.js +0 -0
- package/docs/scripts/search.js +0 -0
- package/docs/styles/jsdoc.css +0 -0
- package/docs/styles/prettify.css +0 -0
- package/docs/userActivity.js.html +2 -2
- package/docs/user_account.ts.html +2 -2
- package/docs/user_chat.js.html +2 -2
- package/docs/user_interests.js.html +2 -2
- package/docs/user_management.js.html +2 -2
- package/docs/user_memberships.js.html +2 -2
- package/docs/user_notifications.js.html +2 -2
- package/docs/user_payments.ts.html +2 -2
- package/docs/user_permissions.js.html +2 -2
- package/docs/user_profile.js.html +2 -2
- package/docs/user_sessions.js.html +5 -5
- package/docs/user_types.js.html +2 -2
- package/docs/user_user-management-system.js.html +2 -2
- package/jest.config.js +0 -0
- package/jsdoc.json +0 -0
- package/package.json +1 -1
- package/src/contentMetaData.js +0 -0
- package/src/filterBuilder.js +0 -0
- package/src/index.d.ts +18 -1
- package/src/index.js +18 -1
- package/src/infrastructure/http/HttpClient.ts +0 -0
- package/src/infrastructure/http/executors/FetchRequestExecutor.ts +0 -0
- package/src/infrastructure/http/index.ts +0 -0
- package/src/infrastructure/http/interfaces/HeaderProvider.ts +0 -0
- package/src/infrastructure/http/interfaces/HttpError.ts +0 -0
- package/src/infrastructure/http/interfaces/NetworkError.ts +0 -0
- package/src/infrastructure/http/interfaces/RequestExecutor.ts +0 -0
- package/src/infrastructure/http/interfaces/RequestOptions.ts +0 -0
- package/src/infrastructure/http/providers/DefaultHeaderProvider.ts +0 -0
- package/src/lib/httpHelper.js +0 -0
- package/src/lib/lastUpdated.js +0 -0
- package/src/services/api/types.js +0 -0
- package/src/services/api/types.ts +0 -0
- package/src/services/config.js +0 -0
- package/src/services/content-org/content-org.js +0 -0
- package/src/services/content-org/guided-courses.ts +0 -0
- package/src/services/content-org/playlists-types.js +0 -0
- package/src/services/content-org/playlists.js +0 -0
- package/src/services/content.js +0 -0
- package/src/services/contentAggregator.js +0 -0
- package/src/services/contentLikes.js +0 -0
- package/src/services/dataContext.js +0 -0
- package/src/services/dateUtils.js +0 -0
- package/src/services/eventsAPI.js +0 -0
- package/src/services/forum.js +0 -0
- package/src/services/forums/forums.ts +0 -0
- package/src/services/forums/posts.ts +60 -0
- package/src/services/forums/threads.ts +74 -3
- package/src/services/forums/types.ts +2 -0
- package/src/services/gamification/gamification.js +0 -0
- package/src/services/imageSRCBuilder.js +0 -0
- package/src/services/imageSRCVerify.js +0 -0
- package/src/services/railcontent.js +0 -0
- package/src/services/recommendations.js +0 -0
- package/src/services/types.js +0 -0
- package/src/services/user/account.ts +0 -0
- package/src/services/user/chat.js +0 -0
- package/src/services/user/interests.js +0 -0
- package/src/services/user/management.js +0 -0
- package/src/services/user/notifications.js +0 -0
- package/src/services/user/payments.ts +0 -0
- package/src/services/user/permissions.js +0 -0
- package/src/services/user/profile.js +0 -0
- package/src/services/user/sessions.js +3 -3
- package/src/services/user/types.js +0 -0
- package/src/services/user/user-management-system.js +0 -0
- package/src/services/userActivity.js +0 -0
- package/test/HttpClient.test.js +0 -0
- package/test/content.test.js +0 -0
- package/test/contentLikes.test.js +0 -0
- package/test/contentProgress.test.js +0 -0
- package/test/dataContext.test.js +0 -0
- package/test/forum.test.js +0 -0
- package/test/imageSRCBuilder.test.js +0 -0
- package/test/imageSRCVerify.test.js +0 -0
- package/test/initializeTests.js +0 -0
- package/test/lib/lastUpdated.test.js +0 -0
- package/test/live/contentProgressLive.test.js +0 -0
- package/test/live/railcontentLive.test.js +0 -0
- package/test/localStorageMock.js +0 -0
- package/test/log.js +0 -0
- package/test/mockData/mockData_fetchByRailContentIds_one_content.json +0 -0
- package/test/mockData/mockData_progress_content.json +0 -0
- package/test/mockData/mockData_sanity_progress_content.json +0 -0
- package/test/mockData/mockData_user_practices.json +0 -0
- package/test/notifications.test.js +0 -0
- package/test/progressRows.test.js +0 -0
- package/test/sanityQueryService.test.js +0 -0
- package/test/streakMessage.test.js +0 -0
- package/test/user/permissions.test.js +0 -0
- package/test/userActivity.test.js +0 -0
- package/tools/generate-index.cjs +0 -0
- package/.claude/settings.local.json +0 -8
package/src/index.js
CHANGED
|
@@ -98,11 +98,21 @@ import {
|
|
|
98
98
|
updateForumCategory
|
|
99
99
|
} from './services/forums/categories.ts';
|
|
100
100
|
|
|
101
|
+
import {
|
|
102
|
+
createPost,
|
|
103
|
+
fetchPosts
|
|
104
|
+
} from './services/forums/posts.ts';
|
|
105
|
+
|
|
101
106
|
import {
|
|
102
107
|
createThread,
|
|
103
108
|
fetchThreads,
|
|
104
109
|
followThread,
|
|
105
|
-
|
|
110
|
+
lockThread,
|
|
111
|
+
pinThread,
|
|
112
|
+
unfollowThread,
|
|
113
|
+
unlockThread,
|
|
114
|
+
unpinThread,
|
|
115
|
+
updateThread
|
|
106
116
|
} from './services/forums/threads.ts';
|
|
107
117
|
|
|
108
118
|
import {
|
|
@@ -356,6 +366,7 @@ export {
|
|
|
356
366
|
createComment,
|
|
357
367
|
createForumCategory,
|
|
358
368
|
createPlaylist,
|
|
369
|
+
createPost,
|
|
359
370
|
createPracticeNotes,
|
|
360
371
|
createThread,
|
|
361
372
|
deleteComment,
|
|
@@ -428,6 +439,7 @@ export {
|
|
|
428
439
|
fetchPlayAlongsCount,
|
|
429
440
|
fetchPlaylist,
|
|
430
441
|
fetchPlaylistItems,
|
|
442
|
+
fetchPosts,
|
|
431
443
|
fetchRecent,
|
|
432
444
|
fetchRecentActivitiesActiveTabs,
|
|
433
445
|
fetchRecentUserActivities,
|
|
@@ -514,6 +526,7 @@ export {
|
|
|
514
526
|
likeComment,
|
|
515
527
|
likeContent,
|
|
516
528
|
likePlaylist,
|
|
529
|
+
lockThread,
|
|
517
530
|
logUserPractice,
|
|
518
531
|
login,
|
|
519
532
|
loginWithProvider,
|
|
@@ -527,6 +540,7 @@ export {
|
|
|
527
540
|
otherStats,
|
|
528
541
|
pauseLiveEventPolling,
|
|
529
542
|
pinProgressRow,
|
|
543
|
+
pinThread,
|
|
530
544
|
postContentComplete,
|
|
531
545
|
postContentLiked,
|
|
532
546
|
postContentReset,
|
|
@@ -572,12 +586,15 @@ export {
|
|
|
572
586
|
unlikeComment,
|
|
573
587
|
unlikeContent,
|
|
574
588
|
unlikePlaylist,
|
|
589
|
+
unlockThread,
|
|
575
590
|
unpinProgressRow,
|
|
591
|
+
unpinThread,
|
|
576
592
|
updateDisplayName,
|
|
577
593
|
updateForumCategory,
|
|
578
594
|
updateNotificationSetting,
|
|
579
595
|
updatePlaylist,
|
|
580
596
|
updatePracticeNotes,
|
|
597
|
+
updateThread,
|
|
581
598
|
updateUserPractice,
|
|
582
599
|
upgradeSubscription,
|
|
583
600
|
uploadPicture,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/lib/httpHelper.js
CHANGED
|
File without changes
|
package/src/lib/lastUpdated.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/services/config.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/services/content.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/services/forum.js
CHANGED
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module Forums
|
|
3
|
+
*/
|
|
4
|
+
import { HttpClient } from '../../infrastructure/http/HttpClient'
|
|
5
|
+
import { globalConfig } from '../config.js'
|
|
6
|
+
import {ForumPost} from './types'
|
|
7
|
+
import { PaginatedResponse } from '../api/types'
|
|
8
|
+
|
|
9
|
+
const baseUrl = `/api/forums`
|
|
10
|
+
|
|
11
|
+
export interface CreatePostParams {
|
|
12
|
+
content: string
|
|
13
|
+
brand: string
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
/**
|
|
17
|
+
* Creates a new post under a forum thread.
|
|
18
|
+
*
|
|
19
|
+
* @param {CreatePostParams} params - The parameters for creating the post.
|
|
20
|
+
* @returns {Promise<ForumPost>} - A promise that resolves to the created post.
|
|
21
|
+
* @throws {HttpError} - If the request fails.
|
|
22
|
+
*/
|
|
23
|
+
export async function createPost(
|
|
24
|
+
threadId: number,
|
|
25
|
+
params: CreatePostParams
|
|
26
|
+
): Promise<ForumPost> {
|
|
27
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
28
|
+
return httpClient.post<ForumPost>(`${baseUrl}/v1/threads/${threadId}/posts`, params)
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export interface FetchPostParams {
|
|
32
|
+
page?: number,
|
|
33
|
+
limit?: number,
|
|
34
|
+
/** Sort order: "-published_on" (default), "published_on", or "mine". */
|
|
35
|
+
sort?: '-published_on' | string
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Fetches posts for the given thread.
|
|
39
|
+
*
|
|
40
|
+
* @param {number} threadId - The ID of the forum thread.
|
|
41
|
+
* @param {string} brand - The brand context (e.g., "drumeo", "singeo").
|
|
42
|
+
* @param {FetchPostParams} [params] - Optional parameters such as `page`, `limit`, and `sort`.
|
|
43
|
+
* @returns {Promise<PaginatedResponse<ForumPost>>} - Resolves to a paginated list of forum posts.
|
|
44
|
+
* @throws {HttpError} - If the request fails.
|
|
45
|
+
*/
|
|
46
|
+
export async function fetchPosts(
|
|
47
|
+
threadId: number,
|
|
48
|
+
brand: string,
|
|
49
|
+
params: FetchPostParams = {}
|
|
50
|
+
): Promise<PaginatedResponse<ForumPost>> {
|
|
51
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
52
|
+
const queryObj: Record<string, string> = { brand, ...Object.fromEntries(
|
|
53
|
+
Object.entries(params).filter(([_, v]) => v !== undefined && v !== null).map(([k, v]) => [k, String(v)])
|
|
54
|
+
)}
|
|
55
|
+
const query = new URLSearchParams(queryObj).toString()
|
|
56
|
+
|
|
57
|
+
const url = `${baseUrl}/v1/threads/${threadId}/posts?${query}`
|
|
58
|
+
return httpClient.get<PaginatedResponse<ForumPost>>(url)
|
|
59
|
+
}
|
|
60
|
+
|
|
@@ -9,9 +9,8 @@ import { PaginatedResponse } from '../api/types'
|
|
|
9
9
|
const baseUrl = `/api/forums`
|
|
10
10
|
|
|
11
11
|
export interface CreateThreadParams {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
weight: number
|
|
12
|
+
title: string
|
|
13
|
+
first_post_content: string
|
|
15
14
|
brand: string
|
|
16
15
|
}
|
|
17
16
|
|
|
@@ -30,6 +29,26 @@ export async function createThread(
|
|
|
30
29
|
return httpClient.post<ForumThread>(`${baseUrl}/v1/categories/${categoryId}/threads`, params)
|
|
31
30
|
}
|
|
32
31
|
|
|
32
|
+
export interface UpdateThreadParams {
|
|
33
|
+
title: string
|
|
34
|
+
brand: string
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Updates an existing thread under a forum category.
|
|
38
|
+
*
|
|
39
|
+
* @param {number} threadId - The ID of the thread to update.
|
|
40
|
+
* @param {UpdateThreadParams} params - The parameters for updating the thread.
|
|
41
|
+
* @returns {Promise<ForumThread>} - A promise that resolves to the updated thread.
|
|
42
|
+
* @throws {HttpError} - If the request fails.
|
|
43
|
+
*/
|
|
44
|
+
export async function updateThread(
|
|
45
|
+
threadId: number,
|
|
46
|
+
params: UpdateThreadParams
|
|
47
|
+
): Promise<ForumThread> {
|
|
48
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
49
|
+
return httpClient.put<ForumThread>(`${baseUrl}/v1/threads/${threadId}`, params)
|
|
50
|
+
}
|
|
51
|
+
|
|
33
52
|
/**
|
|
34
53
|
* Follow a thread.
|
|
35
54
|
*
|
|
@@ -86,3 +105,55 @@ export async function fetchThreads(
|
|
|
86
105
|
return httpClient.get<PaginatedResponse<ForumThread>>(url)
|
|
87
106
|
}
|
|
88
107
|
|
|
108
|
+
/**
|
|
109
|
+
* Pins a thread to the top of its category.
|
|
110
|
+
*
|
|
111
|
+
* @param {number} threadId - The ID of the thread to pin.
|
|
112
|
+
* @param {string} brand - The brand context (e.g., "drumeo", "singeo").
|
|
113
|
+
* @return {Promise<void>} - A promise that resolves when the thread is pinned.
|
|
114
|
+
* @throws {HttpError} - If the request fails.
|
|
115
|
+
*/
|
|
116
|
+
export async function pinThread(threadId: number, brand: string): Promise<void> {
|
|
117
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
118
|
+
return httpClient.post<void>(`${baseUrl}/v1/threads/${threadId}/pin`, { brand })
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Unpins a thread from the top of its category.
|
|
123
|
+
*
|
|
124
|
+
* @param {number} threadId - The ID of the thread to unpin.
|
|
125
|
+
* @param {string} brand - The brand context (e.g., "drumeo", "singeo").
|
|
126
|
+
* @return {Promise<void>} - A promise that resolves when the thread is unpinned.
|
|
127
|
+
* @throws {HttpError} - If the request fails.
|
|
128
|
+
*/
|
|
129
|
+
export async function unpinThread(threadId: number, brand: string): Promise<void> {
|
|
130
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
131
|
+
return httpClient.delete<void>(`${baseUrl}/v1/threads/${threadId}/pin?brand=${brand}`)
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/**
|
|
135
|
+
* Locks a thread to prevent further posts.
|
|
136
|
+
*
|
|
137
|
+
* @param {number} threadId - The ID of the thread to lock.
|
|
138
|
+
* @param {string} brand - The brand context (e.g., "drumeo", "singeo").
|
|
139
|
+
* @return {Promise<void>} - A promise that resolves when the thread is locked.
|
|
140
|
+
* @throws {HttpError} - If the request fails.
|
|
141
|
+
*/
|
|
142
|
+
export async function lockThread(threadId: number, brand: string): Promise<void> {
|
|
143
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
144
|
+
return httpClient.post<void>(`${baseUrl}/v1/threads/${threadId}/unlock`, { brand })
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
/**
|
|
148
|
+
* Unlock a thread to allow further posts.
|
|
149
|
+
*
|
|
150
|
+
* @param {number} threadId - The ID of the thread to unlock.
|
|
151
|
+
* @param {string} brand - The brand context (e.g., "drumeo", "singeo").
|
|
152
|
+
* @return {Promise<void>} - A promise that resolves when the thread is unlocked.
|
|
153
|
+
* @throws {HttpError} - If the request fails.
|
|
154
|
+
*/
|
|
155
|
+
export async function unlockThread(threadId: number, brand: string): Promise<void> {
|
|
156
|
+
const httpClient = new HttpClient(globalConfig.baseUrl)
|
|
157
|
+
return httpClient.delete<void>(`${baseUrl}/v1/threads/${threadId}/lock?brand=${brand}`)
|
|
158
|
+
}
|
|
159
|
+
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/src/services/types.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -45,8 +45,8 @@ export async function login(email, password, deviceName, deviceToken, platform)
|
|
|
45
45
|
}),
|
|
46
46
|
})
|
|
47
47
|
}
|
|
48
|
-
|
|
49
|
-
export async function loginWithProvider(provider, providerIdToken, deviceToken, deviceName, platform) {
|
|
48
|
+
//Removing 3rdParty OAuth2 for now => https://musora.atlassian.net/browse/BEH-624?focusedCommentId=21492
|
|
49
|
+
/*export async function loginWithProvider(provider, providerIdToken, deviceToken, deviceName, platform) {
|
|
50
50
|
const baseUrl = `${globalConfig.baseUrl}/api/user-management-system`
|
|
51
51
|
|
|
52
52
|
try {
|
|
@@ -74,7 +74,7 @@ export async function loginWithProvider(provider, providerIdToken, deviceToken,
|
|
|
74
74
|
console.error('loginWithProvider failed', err)
|
|
75
75
|
throw err
|
|
76
76
|
}
|
|
77
|
-
}
|
|
77
|
+
}*/
|
|
78
78
|
|
|
79
79
|
/**
|
|
80
80
|
* Logs the user out of the current session.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/test/HttpClient.test.js
CHANGED
|
File without changes
|
package/test/content.test.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/test/dataContext.test.js
CHANGED
|
File without changes
|
package/test/forum.test.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/test/initializeTests.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/test/localStorageMock.js
CHANGED
|
File without changes
|
package/test/log.js
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/tools/generate-index.cjs
CHANGED
|
File without changes
|