musora-content-services 2.3.26 → 2.4.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.
Files changed (124) 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 +7 -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 +1 -1
  13. package/docs/Gamification.html +1 -1
  14. package/docs/UserManagement.html +0 -0
  15. package/docs/UserManagementSystem.html +1 -1
  16. package/docs/api_types.js.html +1 -1
  17. package/docs/config.js.html +1 -1
  18. package/docs/content-org_content-org.js.html +1 -1
  19. package/docs/content-org_playlists-types.js.html +1 -1
  20. package/docs/content-org_playlists.js.html +1 -1
  21. package/docs/content.js.html +25 -10
  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 +1 -1
  41. package/docs/gamification_gamification.js.html +1 -1
  42. package/docs/gamification_types.js.html +1 -1
  43. package/docs/global.html +1 -1
  44. package/docs/global.html#User +0 -0
  45. package/docs/index.html +1 -1
  46. package/docs/module-Awards.html +1 -1
  47. package/docs/module-Config.html +1 -1
  48. package/docs/module-Content-Services-V2.html +9 -8
  49. package/docs/module-Content-Services.html +763 -0
  50. package/docs/module-Permissions.html +1 -1
  51. package/docs/module-Playlists.html +1 -1
  52. package/docs/module-Railcontent-Services.html +1 -1
  53. package/docs/module-Sanity-Services.html +32 -32
  54. package/docs/module-Session-Management.html +0 -0
  55. package/docs/module-Sessions.html +1 -1
  56. package/docs/module-User-Activity.html +7 -7
  57. package/docs/module-User-Management.html +0 -0
  58. package/docs/module-User-Permissions.html +0 -0
  59. package/docs/module-UserManagement.html +1 -1
  60. package/docs/railcontent.js.html +1 -1
  61. package/docs/sanity.js.html +5 -3
  62. package/docs/scripts/collapse.js +0 -0
  63. package/docs/scripts/commonNav.js +0 -0
  64. package/docs/scripts/linenumber.js +0 -0
  65. package/docs/scripts/nav.js +0 -0
  66. package/docs/scripts/polyfill.js +0 -0
  67. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -0
  68. package/docs/scripts/prettify/lang-css.js +0 -0
  69. package/docs/scripts/prettify/prettify.js +0 -0
  70. package/docs/scripts/search.js +0 -0
  71. package/docs/styles/jsdoc.css +0 -0
  72. package/docs/styles/prettify.css +0 -0
  73. package/docs/types.js.html +0 -0
  74. package/docs/userActivity.js.html +2 -4
  75. package/docs/user_management.js.html +1 -1
  76. package/docs/user_permissions.js.html +1 -1
  77. package/docs/user_sessions.js.html +1 -1
  78. package/docs/user_types.js.html +1 -1
  79. package/docs/user_user-management-system.js.html +1 -1
  80. package/docs/user_user-management.js.html +0 -0
  81. package/jest.config.js +0 -0
  82. package/jsdoc.json +0 -0
  83. package/link_mcs.sh +0 -0
  84. package/package.json +1 -1
  85. package/src/contentMetaData.js +29 -5
  86. package/src/contentTypeConfig.js +3 -2
  87. package/src/index.d.ts +2 -0
  88. package/src/index.js +2 -0
  89. package/src/infrastructure/http/HttpClient.ts +120 -0
  90. package/src/infrastructure/http/executors/FetchRequestExecutor.ts +45 -0
  91. package/src/infrastructure/http/index.ts +13 -0
  92. package/src/infrastructure/http/interfaces/HeaderProvider.ts +3 -0
  93. package/src/infrastructure/http/interfaces/HttpError.ts +7 -0
  94. package/src/infrastructure/http/interfaces/NetworkError.ts +6 -0
  95. package/src/infrastructure/http/interfaces/RequestExecutor.ts +5 -0
  96. package/src/infrastructure/http/interfaces/RequestOptions.ts +5 -0
  97. package/src/infrastructure/http/providers/DefaultHeaderProvider.ts +24 -0
  98. package/src/services/content.js +24 -9
  99. package/src/services/contentAggregator.js +18 -10
  100. package/src/services/contentProgress.js +0 -0
  101. package/src/services/railcontent.js +28 -0
  102. package/src/services/recommendations.js +21 -25
  103. package/src/services/userActivity.js +23 -0
  104. package/test/HttpClient.test.js +257 -0
  105. package/test/content.test.js +0 -0
  106. package/test/contentLikes.test.js +0 -0
  107. package/test/contentProgress.test.js +0 -0
  108. package/test/dataContext.test.js +0 -0
  109. package/test/forum.test.js +0 -0
  110. package/test/imageSRCBuilder.test.js +0 -0
  111. package/test/imageSRCVerify.test.js +0 -0
  112. package/test/initializeTests.js +0 -0
  113. package/test/lib/lastUpdated.test.js +0 -0
  114. package/test/live/contentProgressLive.test.js +0 -0
  115. package/test/live/railcontentLive.test.js +0 -0
  116. package/test/localStorageMock.js +0 -0
  117. package/test/log.js +0 -0
  118. package/test/mockData/mockData_fetchByRailContentIds_one_content.json +0 -0
  119. package/test/mockData/mockData_user_practices.json +0 -0
  120. package/test/sanityQueryService.test.js +0 -0
  121. package/test/streakMessage.test.js +0 -0
  122. package/test/user/permissions.test.js +0 -0
  123. package/test/userActivity.test.js +0 -0
  124. package/tools/generate-index.cjs +0 -0
@@ -393,7 +393,7 @@
393
393
  <br class="clear">
394
394
 
395
395
  <footer>
396
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
396
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
397
397
  </footer>
398
398
 
399
399
  <script>prettyPrint();</script>
@@ -956,7 +956,7 @@ Allows optional pagination, sorting, and search parameters to control the result
956
956
  <br class="clear">
957
957
 
958
958
  <footer>
959
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
959
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
960
960
  </footer>
961
961
 
962
962
  <script>prettyPrint();</script>
@@ -10270,7 +10270,7 @@ Resolves to `null` if the request fails.
10270
10270
  <br class="clear">
10271
10271
 
10272
10272
  <footer>
10273
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
10273
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
10274
10274
  </footer>
10275
10275
 
10276
10276
  <script>prettyPrint();</script>
@@ -182,7 +182,7 @@
182
182
 
183
183
  <dt class="tag-source">Source:</dt>
184
184
  <dd class="tag-source"><ul class="dummy"><li>
185
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line571">line 571</a>
185
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line572">line 572</a>
186
186
  </li></ul></dd>
187
187
 
188
188
 
@@ -837,7 +837,7 @@ If a coachId is provided, the content type must be 'coach-lessons'.</li></ul></d
837
837
 
838
838
  <dt class="tag-source">Source:</dt>
839
839
  <dd class="tag-source"><ul class="dummy"><li>
840
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line958">line 958</a>
840
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line959">line 959</a>
841
841
  </li></ul></dd>
842
842
 
843
843
 
@@ -1356,7 +1356,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
1356
1356
 
1357
1357
  <dt class="tag-source">Source:</dt>
1358
1358
  <dd class="tag-source"><ul class="dummy"><li>
1359
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1437">line 1437</a>
1359
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1438">line 1438</a>
1360
1360
  </li></ul></dd>
1361
1361
 
1362
1362
 
@@ -1690,7 +1690,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
1690
1690
 
1691
1691
  <dt class="tag-source">Source:</dt>
1692
1692
  <dd class="tag-source"><ul class="dummy"><li>
1693
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1671">line 1671</a>
1693
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1672">line 1672</a>
1694
1694
  </li></ul></dd>
1695
1695
 
1696
1696
 
@@ -2360,7 +2360,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
2360
2360
 
2361
2361
  <dt class="tag-source">Source:</dt>
2362
2362
  <dd class="tag-source"><ul class="dummy"><li>
2363
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line475">line 475</a>
2363
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line476">line 476</a>
2364
2364
  </li></ul></dd>
2365
2365
 
2366
2366
 
@@ -2549,7 +2549,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
2549
2549
 
2550
2550
  <dt class="tag-source">Source:</dt>
2551
2551
  <dd class="tag-source"><ul class="dummy"><li>
2552
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line514">line 514</a>
2552
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line515">line 515</a>
2553
2553
  </li></ul></dd>
2554
2554
 
2555
2555
 
@@ -2758,7 +2758,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
2758
2758
 
2759
2759
  <dt class="tag-source">Source:</dt>
2760
2760
  <dd class="tag-source"><ul class="dummy"><li>
2761
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1632">line 1632</a>
2761
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1633">line 1633</a>
2762
2762
  </li></ul></dd>
2763
2763
 
2764
2764
 
@@ -2923,7 +2923,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
2923
2923
 
2924
2924
  <dt class="tag-source">Source:</dt>
2925
2925
  <dd class="tag-source"><ul class="dummy"><li>
2926
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1577">line 1577</a>
2926
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1578">line 1578</a>
2927
2927
  </li></ul></dd>
2928
2928
 
2929
2929
 
@@ -3470,7 +3470,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
3470
3470
 
3471
3471
  <dt class="tag-source">Source:</dt>
3472
3472
  <dd class="tag-source"><ul class="dummy"><li>
3473
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1861">line 1861</a>
3473
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1862">line 1862</a>
3474
3474
  </li></ul></dd>
3475
3475
 
3476
3476
 
@@ -3628,7 +3628,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
3628
3628
 
3629
3629
  <dt class="tag-source">Source:</dt>
3630
3630
  <dd class="tag-source"><ul class="dummy"><li>
3631
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1028">line 1028</a>
3631
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1029">line 1029</a>
3632
3632
  </li></ul></dd>
3633
3633
 
3634
3634
 
@@ -3786,7 +3786,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
3786
3786
 
3787
3787
  <dt class="tag-source">Source:</dt>
3788
3788
  <dd class="tag-source"><ul class="dummy"><li>
3789
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1731">line 1731</a>
3789
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1732">line 1732</a>
3790
3790
  </li></ul></dd>
3791
3791
 
3792
3792
 
@@ -4371,7 +4371,7 @@ fetchAllFilterOptions('myBrand', [], 'Rock', 'John Doe', 'coach-lessons', 'Love'
4371
4371
 
4372
4372
  <dt class="tag-source">Source:</dt>
4373
4373
  <dd class="tag-source"><ul class="dummy"><li>
4374
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1249">line 1249</a>
4374
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1250">line 1250</a>
4375
4375
  </li></ul></dd>
4376
4376
 
4377
4377
 
@@ -4537,7 +4537,7 @@ These are linked through content that shares a license with the provided railcon
4537
4537
 
4538
4538
  <dt class="tag-source">Source:</dt>
4539
4539
  <dd class="tag-source"><ul class="dummy"><li>
4540
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1355">line 1355</a>
4540
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1356">line 1356</a>
4541
4541
  </li></ul></dd>
4542
4542
 
4543
4543
 
@@ -4740,7 +4740,7 @@ For v2 you need to provide page type('lessons' or 'songs') in type parameter</li
4740
4740
 
4741
4741
  <dt class="tag-source">Source:</dt>
4742
4742
  <dd class="tag-source"><ul class="dummy"><li>
4743
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line2043">line 2043</a>
4743
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line2044">line 2044</a>
4744
4744
  </li></ul></dd>
4745
4745
 
4746
4746
 
@@ -4925,7 +4925,7 @@ For v2 you need to provide page type('lessons' or 'songs') in type parameter</li
4925
4925
 
4926
4926
  <dt class="tag-source">Source:</dt>
4927
4927
  <dd class="tag-source"><ul class="dummy"><li>
4928
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1048">line 1048</a>
4928
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1049">line 1049</a>
4929
4929
  </li></ul></dd>
4930
4930
 
4931
4931
 
@@ -5107,7 +5107,7 @@ For v2 you need to provide page type('lessons' or 'songs') in type parameter</li
5107
5107
 
5108
5108
  <dt class="tag-source">Source:</dt>
5109
5109
  <dd class="tag-source"><ul class="dummy"><li>
5110
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1096">line 1096</a>
5110
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1097">line 1097</a>
5111
5111
  </li></ul></dd>
5112
5112
 
5113
5113
 
@@ -5265,7 +5265,7 @@ For v2 you need to provide page type('lessons' or 'songs') in type parameter</li
5265
5265
 
5266
5266
  <dt class="tag-source">Source:</dt>
5267
5267
  <dd class="tag-source"><ul class="dummy"><li>
5268
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1154">line 1154</a>
5268
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1155">line 1155</a>
5269
5269
  </li></ul></dd>
5270
5270
 
5271
5271
 
@@ -5423,7 +5423,7 @@ For v2 you need to provide page type('lessons' or 'songs') in type parameter</li
5423
5423
 
5424
5424
  <dt class="tag-source">Source:</dt>
5425
5425
  <dd class="tag-source"><ul class="dummy"><li>
5426
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1131">line 1131</a>
5426
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1132">line 1132</a>
5427
5427
  </li></ul></dd>
5428
5428
 
5429
5429
 
@@ -5770,7 +5770,7 @@ For v2 you need to provide page type('lessons' or 'songs') in type parameter</li
5770
5770
 
5771
5771
  <dt class="tag-source">Source:</dt>
5772
5772
  <dd class="tag-source"><ul class="dummy"><li>
5773
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1193">line 1193</a>
5773
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1194">line 1194</a>
5774
5774
  </li></ul></dd>
5775
5775
 
5776
5776
 
@@ -5929,7 +5929,7 @@ These are linked through content that shares a license with the provided railcon
5929
5929
 
5930
5930
  <dt class="tag-source">Source:</dt>
5931
5931
  <dd class="tag-source"><ul class="dummy"><li>
5932
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1342">line 1342</a>
5932
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1343">line 1343</a>
5933
5933
  </li></ul></dd>
5934
5934
 
5935
5935
 
@@ -6113,7 +6113,7 @@ These are linked through content that shares a license with the provided railcon
6113
6113
 
6114
6114
  <dt class="tag-source">Source:</dt>
6115
6115
  <dd class="tag-source"><ul class="dummy"><li>
6116
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1465">line 1465</a>
6116
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1466">line 1466</a>
6117
6117
  </li></ul></dd>
6118
6118
 
6119
6119
 
@@ -6271,7 +6271,7 @@ These are linked through content that shares a license with the provided railcon
6271
6271
 
6272
6272
  <dt class="tag-source">Source:</dt>
6273
6273
  <dd class="tag-source"><ul class="dummy"><li>
6274
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1553">line 1553</a>
6274
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1554">line 1554</a>
6275
6275
  </li></ul></dd>
6276
6276
 
6277
6277
 
@@ -6436,7 +6436,7 @@ These are linked through content that shares a license with the provided railcon
6436
6436
 
6437
6437
  <dt class="tag-source">Source:</dt>
6438
6438
  <dd class="tag-source"><ul class="dummy"><li>
6439
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1609">line 1609</a>
6439
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1610">line 1610</a>
6440
6440
  </li></ul></dd>
6441
6441
 
6442
6442
 
@@ -6601,7 +6601,7 @@ These are linked through content that shares a license with the provided railcon
6601
6601
 
6602
6602
  <dt class="tag-source">Source:</dt>
6603
6603
  <dd class="tag-source"><ul class="dummy"><li>
6604
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1398">line 1398</a>
6604
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1399">line 1399</a>
6605
6605
  </li></ul></dd>
6606
6606
 
6607
6607
 
@@ -6780,7 +6780,7 @@ These are linked through content that shares a license with the provided railcon
6780
6780
 
6781
6781
  <dt class="tag-source">Source:</dt>
6782
6782
  <dd class="tag-source"><ul class="dummy"><li>
6783
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1328">line 1328</a>
6783
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1329">line 1329</a>
6784
6784
  </li></ul></dd>
6785
6785
 
6786
6786
 
@@ -7254,7 +7254,7 @@ These are linked through content that shares a license with the provided railcon
7254
7254
 
7255
7255
  <dt class="tag-source">Source:</dt>
7256
7256
  <dd class="tag-source"><ul class="dummy"><li>
7257
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1899">line 1899</a>
7257
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1900">line 1900</a>
7258
7258
  </li></ul></dd>
7259
7259
 
7260
7260
 
@@ -7552,7 +7552,7 @@ fetchSanity(query, true)
7552
7552
 
7553
7553
  <dt class="tag-source">Source:</dt>
7554
7554
  <dd class="tag-source"><ul class="dummy"><li>
7555
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line436">line 436</a>
7555
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line437">line 437</a>
7556
7556
  </li></ul></dd>
7557
7557
 
7558
7558
 
@@ -7720,7 +7720,7 @@ fetchSanity(query, true)
7720
7720
 
7721
7721
  <dt class="tag-source">Source:</dt>
7722
7722
  <dd class="tag-source"><ul class="dummy"><li>
7723
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line2017">line 2017</a>
7723
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line2018">line 2018</a>
7724
7724
  </li></ul></dd>
7725
7725
 
7726
7726
 
@@ -8366,7 +8366,7 @@ fetchSanity(query, true)
8366
8366
 
8367
8367
  <dt class="tag-source">Source:</dt>
8368
8368
  <dd class="tag-source"><ul class="dummy"><li>
8369
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1230">line 1230</a>
8369
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1231">line 1231</a>
8370
8370
  </li></ul></dd>
8371
8371
 
8372
8372
 
@@ -8531,7 +8531,7 @@ fetchSanity(query, true)
8531
8531
 
8532
8532
  <dt class="tag-source">Source:</dt>
8533
8533
  <dd class="tag-source"><ul class="dummy"><li>
8534
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1368">line 1368</a>
8534
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line1369">line 1369</a>
8535
8535
  </li></ul></dd>
8536
8536
 
8537
8537
 
@@ -8962,7 +8962,7 @@ fetchSanity(query, true)
8962
8962
 
8963
8963
  <dt class="tag-source">Source:</dt>
8964
8964
  <dd class="tag-source"><ul class="dummy"><li>
8965
- <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line741">line 741</a>
8965
+ <a href="sanity.js.html">sanity.js</a>, <a href="sanity.js.html#line742">line 742</a>
8966
8966
  </li></ul></dd>
8967
8967
 
8968
8968
 
@@ -9595,7 +9595,7 @@ fetchSanity(query, true)
9595
9595
  <br class="clear">
9596
9596
 
9597
9597
  <footer>
9598
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
9598
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
9599
9599
  </footer>
9600
9600
 
9601
9601
  <script>prettyPrint();</script>
File without changes
@@ -562,7 +562,7 @@
562
562
  <br class="clear">
563
563
 
564
564
  <footer>
565
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
565
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
566
566
  </footer>
567
567
 
568
568
  <script>prettyPrint();</script>
@@ -100,7 +100,7 @@
100
100
 
101
101
  <dt class="tag-source">Source:</dt>
102
102
  <dd class="tag-source"><ul class="dummy"><li>
103
- <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line519">line 519</a>
103
+ <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line517">line 517</a>
104
104
  </li></ul></dd>
105
105
 
106
106
 
@@ -506,7 +506,7 @@ deletePracticeSession("2025-04-10")
506
506
 
507
507
  <dt class="tag-source">Source:</dt>
508
508
  <dd class="tag-source"><ul class="dummy"><li>
509
- <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line483">line 483</a>
509
+ <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line481">line 481</a>
510
510
  </li></ul></dd>
511
511
 
512
512
 
@@ -672,7 +672,7 @@ getPracticeNotes("2025-04-10")
672
672
 
673
673
  <dt class="tag-source">Source:</dt>
674
674
  <dd class="tag-source"><ul class="dummy"><li>
675
- <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line428">line 428</a>
675
+ <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line426">line 426</a>
676
676
  </li></ul></dd>
677
677
 
678
678
 
@@ -840,7 +840,7 @@ Returns an object containing recent practice activity.</li></ul></dd>
840
840
 
841
841
  <dt class="tag-source">Source:</dt>
842
842
  <dd class="tag-source"><ul class="dummy"><li>
843
- <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line502">line 502</a>
843
+ <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line500">line 500</a>
844
844
  </li></ul></dd>
845
845
 
846
846
 
@@ -1907,7 +1907,7 @@ If restored practices are returned, they are added back into the local context.<
1907
1907
 
1908
1908
  <dt class="tag-source">Source:</dt>
1909
1909
  <dd class="tag-source"><ul class="dummy"><li>
1910
- <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line394">line 394</a>
1910
+ <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line392">line 392</a>
1911
1911
  </li></ul></dd>
1912
1912
 
1913
1913
 
@@ -2239,7 +2239,7 @@ restoreUserPractice(123)
2239
2239
 
2240
2240
  <dt class="tag-source">Source:</dt>
2241
2241
  <dd class="tag-source"><ul class="dummy"><li>
2242
- <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line537">line 537</a>
2242
+ <a href="userActivity.js.html">userActivity.js</a>, <a href="userActivity.js.html#line535">line 535</a>
2243
2243
  </li></ul></dd>
2244
2244
 
2245
2245
 
@@ -2836,7 +2836,7 @@ updateUserPractice(456, { auto: false, category_id: 8 })
2836
2836
  <br class="clear">
2837
2837
 
2838
2838
  <footer>
2839
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2839
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2840
2840
  </footer>
2841
2841
 
2842
2842
  <script>prettyPrint();</script>
File without changes
File without changes
@@ -477,7 +477,7 @@
477
477
  <br class="clear">
478
478
 
479
479
  <footer>
480
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
480
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
481
481
  </footer>
482
482
 
483
483
  <script>prettyPrint();</script>
@@ -1331,7 +1331,7 @@ export async function fetchHandler(url, method = 'get', dataVersion = null, body
1331
1331
  <br class="clear">
1332
1332
 
1333
1333
  <footer>
1334
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
1334
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
1335
1335
  </footer>
1336
1336
 
1337
1337
  <script>prettyPrint();</script>
@@ -453,7 +453,8 @@ export async function fetchUpcomingEvents(brand, { page = 1, limit = 10 } = {})
453
453
  published_on,
454
454
  "type": _type,
455
455
  web_url_path,
456
- "permission_id": permission[]->railcontent_id,`
456
+ "permission_id": permission[]->railcontent_id,
457
+ "isLive": live_event_start_time &lt;= '${now}' &amp;&amp; live_event_end_time >= '${now}'`
457
458
  const query = buildRawQuery(
458
459
  `_type in ${typesString} &amp;&amp; brand == '${brand}' &amp;&amp; published_on > '${now}' &amp;&amp; status == 'scheduled'`,
459
460
  fields,
@@ -2395,7 +2396,8 @@ export async function fetchScheduledAndNewReleases(
2395
2396
  published_on,
2396
2397
  "type": _type,
2397
2398
  show_in_new_feed,
2398
- "permission_id": permission[]->railcontent_id
2399
+ "permission_id": permission[]->railcontent_id,
2400
+ "isLive": live_event_start_time &lt;= '${now}' &amp;&amp; live_event_end_time >= '${now}',
2399
2401
  }`
2400
2402
 
2401
2403
  return fetchSanity(query, true)
@@ -2414,7 +2416,7 @@ export async function fetchScheduledAndNewReleases(
2414
2416
  <br class="clear">
2415
2417
 
2416
2418
  <footer>
2417
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2419
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2418
2420
  </footer>
2419
2421
 
2420
2422
  <script>prettyPrint();</script>
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
@@ -411,9 +411,7 @@ export async function deletePracticeSession(day) {
411
411
  await userActivityContext.update(
412
412
  async function (localContext) {
413
413
  if (localContext.data?.[DATA_KEY_PRACTICES]?.[day]) {
414
- localContext.data[DATA_KEY_PRACTICES][day] = localContext.data[DATA_KEY_PRACTICES][day].filter(
415
- practice => !userPracticesIds.includes(practice.id)
416
- );
414
+ delete localContext.data[DATA_KEY_PRACTICES][day];
417
415
  }
418
416
  },
419
417
  async function () {
@@ -729,7 +727,7 @@ function calculateStreaks(practices, includeStreakMessage = false) {
729
727
  <br class="clear">
730
728
 
731
729
  <footer>
732
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
730
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
733
731
  </footer>
734
732
 
735
733
  <script>prettyPrint();</script>
@@ -92,7 +92,7 @@ export async function unblockUser(userId) {
92
92
  <br class="clear">
93
93
 
94
94
  <footer>
95
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
95
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
96
96
  </footer>
97
97
 
98
98
  <script>prettyPrint();</script>
@@ -97,7 +97,7 @@ export async function reset() {
97
97
  <br class="clear">
98
98
 
99
99
  <footer>
100
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
100
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
101
101
  </footer>
102
102
 
103
103
  <script>prettyPrint();</script>
@@ -126,7 +126,7 @@ export async function logout() {
126
126
  <br class="clear">
127
127
 
128
128
  <footer>
129
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
129
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
130
130
  </footer>
131
131
 
132
132
  <script>prettyPrint();</script>
@@ -175,7 +175,7 @@
175
175
  <br class="clear">
176
176
 
177
177
  <footer>
178
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
178
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
179
179
  </footer>
180
180
 
181
181
  <script>prettyPrint();</script>
@@ -65,7 +65,7 @@
65
65
  <br class="clear">
66
66
 
67
67
  <footer>
68
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Apr 10 2025 11:52:29 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
68
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Fri Apr 11 2025 17:26:43 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
69
69
  </footer>
70
70
 
71
71
  <script>prettyPrint();</script>
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.3.26",
3
+ "version": "2.4.0",
4
4
  "description": "A package for Musoras content services ",
5
5
  "main": "src/index.js",
6
6
  "type": "module",