musora-content-services 2.6.4 → 2.7.1

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 (133) hide show
  1. package/.coderabbit.yaml +0 -0
  2. package/.editorconfig +0 -0
  3. package/.github/pull_request_template.md +0 -0
  4. package/.github/workflows/node.js.yml +0 -0
  5. package/.prettierignore +0 -0
  6. package/.prettierrc +0 -0
  7. package/.yarnrc.yml +1 -0
  8. package/CHANGELOG.md +9 -0
  9. package/README.md +0 -0
  10. package/babel.config.cjs +0 -0
  11. package/docs/Content-Organization.html +0 -0
  12. package/docs/ContentOrganization.html +0 -0
  13. package/docs/Gamification.html +0 -0
  14. package/docs/UserManagement.html +0 -0
  15. package/docs/UserManagementSystem.html +0 -0
  16. package/docs/api_types.js.html +0 -0
  17. package/docs/config.js.html +0 -0
  18. package/docs/content-org_content-org.js.html +0 -0
  19. package/docs/content-org_playlists-types.js.html +0 -0
  20. package/docs/content-org_playlists.js.html +0 -0
  21. package/docs/content.js.html +0 -0
  22. package/docs/fonts/Montserrat/Montserrat-Bold.eot +0 -0
  23. package/docs/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
  24. package/docs/fonts/Montserrat/Montserrat-Bold.woff +0 -0
  25. package/docs/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
  26. package/docs/fonts/Montserrat/Montserrat-Regular.eot +0 -0
  27. package/docs/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
  28. package/docs/fonts/Montserrat/Montserrat-Regular.woff +0 -0
  29. package/docs/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
  30. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
  31. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -0
  32. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
  33. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
  34. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
  35. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
  36. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -0
  37. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
  38. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
  39. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
  40. package/docs/gamification_awards.js.html +0 -0
  41. package/docs/gamification_gamification.js.html +0 -0
  42. package/docs/gamification_types.js.html +0 -0
  43. package/docs/global.html +0 -0
  44. package/docs/global.html#User +0 -0
  45. package/docs/index.html +0 -0
  46. package/docs/module-Awards.html +0 -0
  47. package/docs/module-Config.html +0 -0
  48. package/docs/module-Content-Services-V2.html +0 -0
  49. package/docs/module-Content-Services.html +763 -0
  50. package/docs/module-Interests.html +0 -0
  51. package/docs/module-Permissions.html +0 -0
  52. package/docs/module-Playlists.html +0 -0
  53. package/docs/module-Railcontent-Services.html +0 -0
  54. package/docs/module-Sanity-Services.html +0 -0
  55. package/docs/module-Session-Management.html +0 -0
  56. package/docs/module-Sessions.html +0 -0
  57. package/docs/module-User-Activity.html +0 -0
  58. package/docs/module-User-Management.html +0 -0
  59. package/docs/module-User-Permissions.html +0 -0
  60. package/docs/module-UserManagement.html +0 -0
  61. package/docs/module-UserProfile.html +0 -0
  62. package/docs/railcontent.js.html +0 -0
  63. package/docs/sanity.js.html +0 -0
  64. package/docs/scripts/collapse.js +0 -0
  65. package/docs/scripts/commonNav.js +0 -0
  66. package/docs/scripts/linenumber.js +0 -0
  67. package/docs/scripts/nav.js +0 -0
  68. package/docs/scripts/polyfill.js +0 -0
  69. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -0
  70. package/docs/scripts/prettify/lang-css.js +0 -0
  71. package/docs/scripts/prettify/prettify.js +0 -0
  72. package/docs/scripts/search.js +0 -0
  73. package/docs/styles/jsdoc.css +0 -0
  74. package/docs/styles/prettify.css +0 -0
  75. package/docs/types.js.html +0 -0
  76. package/docs/userActivity.js.html +0 -0
  77. package/docs/user_interests.js.html +0 -0
  78. package/docs/user_management.js.html +0 -0
  79. package/docs/user_permissions.js.html +0 -0
  80. package/docs/user_profile.js.html +0 -0
  81. package/docs/user_sessions.js.html +0 -0
  82. package/docs/user_types.js.html +0 -0
  83. package/docs/user_user-management-system.js.html +0 -0
  84. package/docs/user_user-management.js.html +0 -0
  85. package/jest.config.js +0 -0
  86. package/jsdoc.json +0 -0
  87. package/link_mcs.sh +0 -0
  88. package/package.json +1 -1
  89. package/src/contentMetaData.js +11 -11
  90. package/src/index.d.ts +4 -0
  91. package/src/index.js +4 -0
  92. package/src/infrastructure/http/HttpClient.ts +0 -0
  93. package/src/infrastructure/http/executors/FetchRequestExecutor.ts +0 -0
  94. package/src/infrastructure/http/index.ts +0 -0
  95. package/src/infrastructure/http/interfaces/HeaderProvider.ts +0 -0
  96. package/src/infrastructure/http/interfaces/HttpError.ts +0 -0
  97. package/src/infrastructure/http/interfaces/NetworkError.ts +0 -0
  98. package/src/infrastructure/http/interfaces/RequestExecutor.ts +0 -0
  99. package/src/infrastructure/http/interfaces/RequestOptions.ts +0 -0
  100. package/src/infrastructure/http/providers/DefaultHeaderProvider.ts +0 -0
  101. package/src/services/content-org/playlists-types.js +0 -0
  102. package/src/services/content-org/playlists.js +11 -0
  103. package/src/services/content.js +0 -0
  104. package/src/services/contentAggregator.js +0 -0
  105. package/src/services/contentProgress.js +4 -5
  106. package/src/services/railcontent.js +0 -0
  107. package/src/services/recommendations.js +0 -0
  108. package/src/services/user/interests.js +0 -0
  109. package/src/services/user/profile.js +0 -0
  110. package/src/services/user/types.js +0 -0
  111. package/src/services/user/user-management-system.js +0 -0
  112. package/src/services/userActivity.js +0 -0
  113. package/test/HttpClient.test.js +0 -0
  114. package/test/content.test.js +0 -0
  115. package/test/contentLikes.test.js +0 -0
  116. package/test/contentProgress.test.js +0 -0
  117. package/test/dataContext.test.js +0 -0
  118. package/test/forum.test.js +0 -0
  119. package/test/imageSRCBuilder.test.js +0 -0
  120. package/test/imageSRCVerify.test.js +0 -0
  121. package/test/initializeTests.js +0 -0
  122. package/test/lib/lastUpdated.test.js +0 -0
  123. package/test/live/contentProgressLive.test.js +0 -0
  124. package/test/live/railcontentLive.test.js +0 -0
  125. package/test/localStorageMock.js +0 -0
  126. package/test/log.js +0 -0
  127. package/test/mockData/mockData_fetchByRailContentIds_one_content.json +0 -0
  128. package/test/mockData/mockData_user_practices.json +0 -0
  129. package/test/sanityQueryService.test.js +1 -1
  130. package/test/streakMessage.test.js +0 -0
  131. package/test/user/permissions.test.js +0 -0
  132. package/test/userActivity.test.js +0 -0
  133. package/tools/generate-index.cjs +0 -0
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
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
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
File without changes
File without changes
package/jest.config.js CHANGED
File without changes
package/jsdoc.json CHANGED
File without changes
package/link_mcs.sh CHANGED
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "musora-content-services",
3
- "version": "2.6.4",
3
+ "version": "2.7.1",
4
4
  "description": "A package for Musoras content services ",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -46,7 +46,7 @@ export class Tabs {
46
46
  static RecentActivityLessons = { name: 'Lessons', short_name: 'Lessons' }
47
47
  static RecentActivitySongs = { name: 'Songs', short_name: 'Songs' }
48
48
  static RecentActivityPosts = { name: 'Posts', short_name: 'Posts' }
49
- static RecentActivityComments = { name: 'Comment', short_name: 'Comments' }
49
+ static RecentActivityComments = { name: 'Comments', short_name: 'Comments' }
50
50
  }
51
51
 
52
52
  export const TabResponseType = {
@@ -246,6 +246,16 @@ const commonMetadata = {
246
246
  Tabs.ExploreAll
247
247
  ],
248
248
  },
249
+ 'recent-activities': {
250
+ name: 'Recent Activity',
251
+ tabs: [
252
+ Tabs.RecentAll,
253
+ Tabs.RecentActivityLessons,
254
+ Tabs.RecentActivitySongs,
255
+ Tabs.RecentActivityPosts,
256
+ Tabs.RecentActivityComments,
257
+ ],
258
+ },
249
259
  }
250
260
  const contentMetadata = {
251
261
  drumeo: {
@@ -374,16 +384,6 @@ const contentMetadata = {
374
384
  Tabs.ExploreAll
375
385
  ],
376
386
  },
377
- 'recent-activities': {
378
- name: 'Recent Activity',
379
- tabs: [
380
- Tabs.RecentAll,
381
- Tabs.RecentActivityLessons,
382
- Tabs.RecentActivitySongs,
383
- Tabs.RecentActivityPosts,
384
- Tabs.RecentActivityComments,
385
- ],
386
- },
387
387
  },
388
388
  pianote: {
389
389
  'lessons': {
package/src/index.d.ts CHANGED
@@ -9,6 +9,7 @@ import {
9
9
  addItemToPlaylist,
10
10
  createPlaylist,
11
11
  deleteItemsFromPlaylist,
12
+ deletePlaylist,
12
13
  duplicatePlaylist,
13
14
  fetchPlaylist,
14
15
  fetchPlaylistItems,
@@ -16,6 +17,7 @@ import {
16
17
  likePlaylist,
17
18
  reportPlaylist,
18
19
  togglePlaylistPrivate,
20
+ undeletePlaylist,
19
21
  unlikePlaylist,
20
22
  updatePlaylist
21
23
  } from './services/content-org/playlists.js';
@@ -276,6 +278,7 @@ declare module 'musora-content-services' {
276
278
  createPracticeNotes,
277
279
  deleteComment,
278
280
  deleteItemsFromPlaylist,
281
+ deletePlaylist,
279
282
  deletePracticeSession,
280
283
  deleteUserActivity,
281
284
  duplicatePlaylist,
@@ -441,6 +444,7 @@ declare module 'musora-content-services' {
441
444
  togglePlaylistPrivate,
442
445
  unassignModeratorToComment,
443
446
  unblockUser,
447
+ undeletePlaylist,
444
448
  unlikeComment,
445
449
  unlikeContent,
446
450
  unlikePlaylist,
package/src/index.js CHANGED
@@ -9,6 +9,7 @@ import {
9
9
  addItemToPlaylist,
10
10
  createPlaylist,
11
11
  deleteItemsFromPlaylist,
12
+ deletePlaylist,
12
13
  duplicatePlaylist,
13
14
  fetchPlaylist,
14
15
  fetchPlaylistItems,
@@ -16,6 +17,7 @@ import {
16
17
  likePlaylist,
17
18
  reportPlaylist,
18
19
  togglePlaylistPrivate,
20
+ undeletePlaylist,
19
21
  unlikePlaylist,
20
22
  updatePlaylist
21
23
  } from './services/content-org/playlists.js';
@@ -275,6 +277,7 @@ export {
275
277
  createPracticeNotes,
276
278
  deleteComment,
277
279
  deleteItemsFromPlaylist,
280
+ deletePlaylist,
278
281
  deletePracticeSession,
279
282
  deleteUserActivity,
280
283
  duplicatePlaylist,
@@ -440,6 +443,7 @@ export {
440
443
  togglePlaylistPrivate,
441
444
  unassignModeratorToComment,
442
445
  unblockUser,
446
+ undeletePlaylist,
443
447
  unlikeComment,
444
448
  unlikeContent,
445
449
  unlikePlaylist,
File without changes
File without changes
File without changes
File without changes
@@ -70,6 +70,17 @@ export async function createPlaylist(playlistData) {
70
70
  return await fetchHandler(url, 'POST', null, playlistData)
71
71
  }
72
72
 
73
+ export async function deletePlaylist(playlist) {
74
+ const url = `${BASE_PATH}/v1/user/playlists/delete/${playlist}`
75
+ return await fetchHandler(url, 'POST', null, playlist)
76
+ }
77
+
78
+ export async function undeletePlaylist(playlist) {
79
+ const url = `${BASE_PATH}/v1/user/playlists/undelete/${playlist}`
80
+ return await fetchHandler(url, 'POST', null, playlist)
81
+ }
82
+
83
+
73
84
  /**
74
85
  * Likes a playlist for the current user.
75
86
  *
File without changes
File without changes
@@ -252,12 +252,11 @@ export async function recordWatchSession(
252
252
  sessionId = uuidv4()
253
253
  }
254
254
 
255
- await recordUserPractice({ content_id: contentId, duration_seconds: secondsPlayed })
256
- try {
257
- await recordUserPractice({ content_id: contentId, duration_seconds: secondsPlayed })
258
- } catch (error) {
255
+ try {
256
+ await recordUserPractice({ content_id: contentId, duration_seconds: Math.ceil(secondsPlayed) })
257
+ } catch (error) {
259
258
  console.error('Failed to record user practice:', error)
260
- }
259
+ }
261
260
 
262
261
  await dataContext.update(
263
262
  async function (localContext) {
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
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/test/log.js CHANGED
File without changes
File without changes
@@ -988,7 +988,7 @@ describe('Recommended System', function() {
988
988
  })
989
989
 
990
990
  test('fetchMetadata', async () => {
991
- const response = await fetchMetadata('drumeo', 'recent-activities')
991
+ const response = await fetchMetadata('singeo', 'recent-activities')
992
992
  log(response)
993
993
  expect(response.tabs.length).toBeGreaterThan(0)
994
994
  })
File without changes
File without changes
File without changes
File without changes