musora-content-services 2.27.0 → 2.27.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 (162) 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/conventional-commits.yaml +0 -0
  5. package/.github/workflows/docs.js.yml +0 -0
  6. package/.github/workflows/node.js.yml +0 -0
  7. package/.prettierignore +0 -0
  8. package/.prettierrc +0 -0
  9. package/CHANGELOG.md +7 -0
  10. package/README.md +0 -0
  11. package/babel.config.cjs +0 -0
  12. package/docs/Content-Organization.html +0 -0
  13. package/docs/ContentOrganization.html +0 -0
  14. package/docs/Gamification.html +0 -0
  15. package/docs/UserManagement.html +0 -0
  16. package/docs/UserManagementSystem.html +0 -0
  17. package/docs/api_types.js.html +0 -0
  18. package/docs/config.js.html +0 -0
  19. package/docs/content-org_content-org.js.html +0 -0
  20. package/docs/content-org_playlists-types.js.html +0 -0
  21. package/docs/content-org_playlists.js.html +0 -0
  22. package/docs/content.js.html +0 -0
  23. package/docs/fonts/Montserrat/Montserrat-Bold.eot +0 -0
  24. package/docs/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
  25. package/docs/fonts/Montserrat/Montserrat-Bold.woff +0 -0
  26. package/docs/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
  27. package/docs/fonts/Montserrat/Montserrat-Regular.eot +0 -0
  28. package/docs/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
  29. package/docs/fonts/Montserrat/Montserrat-Regular.woff +0 -0
  30. package/docs/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
  31. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
  32. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -0
  33. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
  34. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
  35. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
  36. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
  37. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -0
  38. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
  39. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
  40. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
  41. package/docs/gamification_awards.js.html +0 -0
  42. package/docs/gamification_gamification.js.html +0 -0
  43. package/docs/gamification_types.js.html +0 -0
  44. package/docs/global.html +0 -0
  45. package/docs/global.html#User +0 -0
  46. package/docs/index.html +0 -0
  47. package/docs/module-Awards.html +0 -0
  48. package/docs/module-Config.html +0 -0
  49. package/docs/module-Content-Services-V2.html +0 -0
  50. package/docs/module-Interests.html +0 -0
  51. package/docs/module-Notifications.html +0 -0
  52. package/docs/module-Permissions.html +0 -0
  53. package/docs/module-Playlists.html +0 -0
  54. package/docs/module-Railcontent-Services.html +0 -0
  55. package/docs/module-Sanity-Services.html +0 -0
  56. package/docs/module-Session-Management.html +0 -0
  57. package/docs/module-Sessions.html +0 -0
  58. package/docs/module-User-Activity.html +0 -0
  59. package/docs/module-User-Management.html +0 -0
  60. package/docs/module-User-Permissions.html +0 -0
  61. package/docs/module-UserActivity.html +0 -0
  62. package/docs/module-UserChat.html +0 -0
  63. package/docs/module-UserManagement.html +0 -0
  64. package/docs/module-UserNotifications.html +0 -0
  65. package/docs/module-UserProfile.html +0 -0
  66. package/docs/railcontent.js.html +0 -0
  67. package/docs/sanity.js.html +0 -0
  68. package/docs/scripts/collapse.js +0 -0
  69. package/docs/scripts/commonNav.js +0 -0
  70. package/docs/scripts/linenumber.js +0 -0
  71. package/docs/scripts/nav.js +0 -0
  72. package/docs/scripts/polyfill.js +0 -0
  73. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -0
  74. package/docs/scripts/prettify/lang-css.js +0 -0
  75. package/docs/scripts/prettify/prettify.js +0 -0
  76. package/docs/scripts/search.js +0 -0
  77. package/docs/styles/jsdoc.css +0 -0
  78. package/docs/styles/prettify.css +0 -0
  79. package/docs/types.js.html +0 -0
  80. package/docs/userActivity.js.html +0 -0
  81. package/docs/user_chat.js.html +0 -0
  82. package/docs/user_interests.js.html +0 -0
  83. package/docs/user_management.js.html +0 -0
  84. package/docs/user_notifications.js.html +0 -0
  85. package/docs/user_permissions.js.html +0 -0
  86. package/docs/user_profile.js.html +0 -0
  87. package/docs/user_sessions.js.html +0 -0
  88. package/docs/user_types.js.html +0 -0
  89. package/docs/user_user-management-system.js.html +0 -0
  90. package/docs/user_user-management.js.html +0 -0
  91. package/jest.config.js +0 -0
  92. package/jsdoc.json +0 -0
  93. package/package.json +1 -1
  94. package/src/contentMetaData.js +0 -0
  95. package/src/filterBuilder.js +0 -0
  96. package/src/infrastructure/http/HttpClient.ts +0 -0
  97. package/src/infrastructure/http/executors/FetchRequestExecutor.ts +0 -0
  98. package/src/infrastructure/http/index.ts +0 -0
  99. package/src/infrastructure/http/interfaces/HeaderProvider.ts +0 -0
  100. package/src/infrastructure/http/interfaces/HttpError.ts +0 -0
  101. package/src/infrastructure/http/interfaces/NetworkError.ts +0 -0
  102. package/src/infrastructure/http/interfaces/RequestExecutor.ts +0 -0
  103. package/src/infrastructure/http/interfaces/RequestOptions.ts +0 -0
  104. package/src/infrastructure/http/providers/DefaultHeaderProvider.ts +0 -0
  105. package/src/lib/httpHelper.js +0 -0
  106. package/src/lib/lastUpdated.js +0 -0
  107. package/src/services/api/types.js +0 -0
  108. package/src/services/config.js +0 -0
  109. package/src/services/content-org/content-org.js +0 -0
  110. package/src/services/content-org/guided-courses.ts +0 -0
  111. package/src/services/content-org/playlists-types.js +0 -0
  112. package/src/services/content-org/playlists.js +0 -0
  113. package/src/services/content.js +0 -0
  114. package/src/services/contentAggregator.js +0 -0
  115. package/src/services/contentLikes.js +0 -0
  116. package/src/services/contentProgress.js +6 -2
  117. package/src/services/dataContext.js +0 -0
  118. package/src/services/dateUtils.js +0 -0
  119. package/src/services/forum.js +0 -0
  120. package/src/services/gamification/awards.js +0 -0
  121. package/src/services/gamification/gamification.js +0 -0
  122. package/src/services/gamification/types.js +0 -0
  123. package/src/services/imageSRCBuilder.js +0 -0
  124. package/src/services/railcontent.js +0 -0
  125. package/src/services/recommendations.js +0 -0
  126. package/src/services/types.js +0 -0
  127. package/src/services/user/account.ts +0 -0
  128. package/src/services/user/chat.js +0 -0
  129. package/src/services/user/interests.js +0 -0
  130. package/src/services/user/management.js +0 -0
  131. package/src/services/user/permissions.js +0 -0
  132. package/src/services/user/profile.js +0 -0
  133. package/src/services/user/sessions.js +0 -0
  134. package/src/services/user/types.js +0 -0
  135. package/src/services/user/user-management-system.js +0 -0
  136. package/src/services/userActivity.js +3 -1
  137. package/test/HttpClient.test.js +0 -0
  138. package/test/content.test.js +0 -0
  139. package/test/contentLikes.test.js +0 -0
  140. package/test/contentProgress.test.js +0 -0
  141. package/test/dataContext.test.js +0 -0
  142. package/test/forum.test.js +0 -0
  143. package/test/imageSRCBuilder.test.js +0 -0
  144. package/test/imageSRCVerify.test.js +0 -0
  145. package/test/initializeTests.js +0 -0
  146. package/test/lib/lastUpdated.test.js +0 -0
  147. package/test/live/contentProgressLive.test.js +0 -0
  148. package/test/live/railcontentLive.test.js +0 -0
  149. package/test/localStorageMock.js +0 -0
  150. package/test/log.js +0 -0
  151. package/test/mockData/mockData_fetchByRailContentIds_one_content.json +0 -0
  152. package/test/mockData/mockData_progress_content.json +0 -0
  153. package/test/mockData/mockData_sanity_progress_content.json +0 -0
  154. package/test/mockData/mockData_user_practices.json +0 -0
  155. package/test/notifications.test.js +0 -0
  156. package/test/progressRows.test.js +0 -0
  157. package/test/sanityQueryService.test.js +0 -0
  158. package/test/streakMessage.test.js +0 -0
  159. package/test/user/permissions.test.js +0 -0
  160. package/test/userActivity.test.js +0 -0
  161. package/tools/generate-index.cjs +0 -0
  162. package/.yarnrc.yml +0 -1
package/.coderabbit.yaml CHANGED
File without changes
package/.editorconfig CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
package/.prettierignore CHANGED
File without changes
package/.prettierrc CHANGED
File without changes
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [2.27.1](https://github.com/railroadmedia/musora-content-services/compare/v2.27.0...v2.27.1) (2025-07-17)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **Userpractice:** add category_id and instrument_id to userPractice ([2c92c6f](https://github.com/railroadmedia/musora-content-services/commit/2c92c6f6adcb7fac657c3b12e1c3f5e927cff214))
11
+
5
12
  ## [2.27.0](https://github.com/railroadmedia/musora-content-services/compare/v2.24.0...v2.27.0) (2025-07-17)
6
13
 
7
14
 
package/README.md CHANGED
File without changes
package/babel.config.cjs 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
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/docs/global.html CHANGED
File without changes
File without changes
package/docs/index.html 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
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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "musora-content-services",
3
- "version": "2.27.0",
3
+ "version": "2.27.1",
4
4
  "description": "A package for Musoras content services ",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
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
@@ -371,6 +371,8 @@ function resetStatusInLocalContext(localContext, contentId, hierarchy) {
371
371
  * @param {int} currentSeconds
372
372
  * @param {int} secondsPlayed
373
373
  * @param {string} sessionId - This function records a sessionId to pass into future updates to progress on the same video
374
+ * @param {int} instrumentId - enum value of instrument id
375
+ * @param {int} categoryId - enum value of category id
374
376
  */
375
377
  export async function recordWatchSession(
376
378
  contentId,
@@ -379,7 +381,9 @@ export async function recordWatchSession(
379
381
  mediaLengthSeconds,
380
382
  currentSeconds,
381
383
  secondsPlayed,
382
- sessionId = null
384
+ sessionId = null,
385
+ instrumentId = null,
386
+ categoryId = null,
383
387
  ) {
384
388
  let mediaTypeId = getMediaTypeId(mediaType, mediaCategory)
385
389
  let updateLocalProgress = mediaTypeId === 1 || mediaTypeId === 2 //only update for video playback
@@ -391,7 +395,7 @@ export async function recordWatchSession(
391
395
  //TODO: Good enough for Alpha, Refine in reliability improvements
392
396
  sessionData[sessionId] = sessionData[sessionId] || {}
393
397
  const secondsSinceLastUpdate = Math.ceil(secondsPlayed - (sessionData[sessionId][contentId] ?? 0))
394
- await recordUserPractice({ content_id: contentId, duration_seconds: secondsSinceLastUpdate })
398
+ await recordUserPractice({ content_id: contentId, duration_seconds: secondsSinceLastUpdate, category_id: categoryId, instrument_id: instrumentId })
395
399
  } catch (error) {
396
400
  console.error('Failed to record user practice:', error)
397
401
  }
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
@@ -272,7 +272,9 @@ export async function getUserMonthlyStats(params = {}) {
272
272
  * auto: false,
273
273
  * category_id: 5,
274
274
  * title: "Guitar Warm-up",
275
- * thumbnail_url: "https://example.com/thumbnail.jpg"
275
+ * thumbnail_url: "https://example.com/thumbnail.jpg",
276
+ * instrument_id: 1,
277
+ * instrument_id: 2,
276
278
  * })
277
279
  * .then(response => console.log(response))
278
280
  * .catch(error => console.error(error));
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
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/.yarnrc.yml DELETED
@@ -1 +0,0 @@
1
- nodeLinker: node-modules