musora-content-services 1.6.8 → 1.6.9

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 (176) hide show
  1. package/.github/workflows/conventional-commits.yaml +0 -0
  2. package/.github/workflows/docs.js.yml +0 -0
  3. package/.github/workflows/node.js.yml +0 -0
  4. package/.github/workflows/sync-docs.yml +0 -0
  5. package/.prettierignore +0 -0
  6. package/.prettierrc +0 -0
  7. package/CHANGELOG.md +2 -0
  8. package/README.md +0 -0
  9. package/babel.config.cjs +0 -0
  10. package/docs/algolia.js.html +0 -0
  11. package/docs/config.js.html +0 -0
  12. package/docs/fonts/Montserrat/Montserrat-Bold.eot +0 -0
  13. package/docs/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
  14. package/docs/fonts/Montserrat/Montserrat-Bold.woff +0 -0
  15. package/docs/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
  16. package/docs/fonts/Montserrat/Montserrat-Regular.eot +0 -0
  17. package/docs/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
  18. package/docs/fonts/Montserrat/Montserrat-Regular.woff +0 -0
  19. package/docs/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
  20. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
  21. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -0
  22. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
  23. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
  24. package/docs/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
  25. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
  26. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -0
  27. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
  28. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
  29. package/docs/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
  30. package/docs/index.html +0 -0
  31. package/docs/module-Config.html +0 -0
  32. package/docs/module-Railcontent-Services.html +0 -0
  33. package/docs/module-Sanity-Services.html +0 -0
  34. package/docs/module-Search-Engine-Services.html +0 -0
  35. package/docs/railcontent.js.html +0 -0
  36. package/docs/sanity.js.html +0 -0
  37. package/docs/scripts/collapse.js +0 -0
  38. package/docs/scripts/commonNav.js +0 -0
  39. package/docs/scripts/linenumber.js +0 -0
  40. package/docs/scripts/nav.js +0 -0
  41. package/docs/scripts/polyfill.js +0 -0
  42. package/docs/scripts/prettify/Apache-License-2.0.txt +0 -0
  43. package/docs/scripts/prettify/lang-css.js +0 -0
  44. package/docs/scripts/prettify/prettify.js +0 -0
  45. package/docs/scripts/search.js +0 -0
  46. package/docs/styles/jsdoc.css +0 -0
  47. package/docs/styles/prettify.css +0 -0
  48. package/docs/v2/ContentOrganization.html +2 -2
  49. package/docs/v2/Forums.html +3 -3
  50. package/docs/v2/Gamification.html +2 -2
  51. package/docs/v2/TestUser.html +260 -0
  52. package/docs/v2/UserManagementSystem.html +2 -2
  53. package/docs/v2/api_types.js.html +2 -2
  54. package/docs/v2/config.js.html +2 -2
  55. package/docs/v2/content-org_content-org.js.html +2 -2
  56. package/docs/v2/content-org_guided-courses.ts.html +2 -2
  57. package/docs/v2/content-org_learning-paths.ts.html +123 -0
  58. package/docs/v2/content-org_playlists-types.js.html +2 -2
  59. package/docs/v2/content-org_playlists.js.html +2 -2
  60. package/docs/v2/content.js.html +56 -53
  61. package/docs/v2/fonts/Montserrat/Montserrat-Bold.eot +0 -0
  62. package/docs/v2/fonts/Montserrat/Montserrat-Bold.ttf +0 -0
  63. package/docs/v2/fonts/Montserrat/Montserrat-Bold.woff +0 -0
  64. package/docs/v2/fonts/Montserrat/Montserrat-Bold.woff2 +0 -0
  65. package/docs/v2/fonts/Montserrat/Montserrat-Regular.eot +0 -0
  66. package/docs/v2/fonts/Montserrat/Montserrat-Regular.ttf +0 -0
  67. package/docs/v2/fonts/Montserrat/Montserrat-Regular.woff +0 -0
  68. package/docs/v2/fonts/Montserrat/Montserrat-Regular.woff2 +0 -0
  69. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.eot +0 -0
  70. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.svg +0 -0
  71. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.ttf +0 -0
  72. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff +0 -0
  73. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-light-webfont.woff2 +0 -0
  74. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.eot +0 -0
  75. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.svg +0 -0
  76. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.ttf +0 -0
  77. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff +0 -0
  78. package/docs/v2/fonts/Source-Sans-Pro/sourcesanspro-regular-webfont.woff2 +0 -0
  79. package/docs/v2/forums_categories.ts.html +2 -2
  80. package/docs/v2/forums_discussions.js.html +0 -0
  81. package/docs/v2/forums_forum.js.html +0 -0
  82. package/docs/v2/forums_forums.ts.html +86 -3
  83. package/docs/v2/forums_posts.ts.html +102 -2
  84. package/docs/v2/forums_threads.ts.html +2 -2
  85. package/docs/v2/gamification_awards.js.html +0 -0
  86. package/docs/v2/gamification_awards.ts.html +2 -2
  87. package/docs/v2/gamification_gamification.js.html +2 -2
  88. package/docs/v2/gamification_types.js.html +0 -0
  89. package/docs/v2/global.html +357 -2
  90. package/docs/v2/index.html +2 -2
  91. package/docs/v2/liveTesting.ts.html +102 -0
  92. package/docs/v2/module-Accounts.html +648 -25
  93. package/docs/v2/module-Awards.html +2 -2
  94. package/docs/v2/module-Categories.html +0 -0
  95. package/docs/v2/module-Config.html +2 -2
  96. package/docs/v2/module-Content-Services-V2.html +38 -319
  97. package/docs/v2/module-ForumCategories.html +0 -0
  98. package/docs/v2/module-ForumDiscussions.html +0 -0
  99. package/docs/v2/module-Forums.html +4161 -729
  100. package/docs/v2/module-GuidedCourses.html +1198 -2
  101. package/docs/v2/module-Interests.html +2 -2
  102. package/docs/v2/module-Onboarding.html +670 -0
  103. package/docs/v2/module-Payments.html +2 -2
  104. package/docs/v2/module-Permissions.html +2 -2
  105. package/docs/v2/module-Playlists.html +2 -2
  106. package/docs/v2/module-Railcontent-Services.html +6 -6
  107. package/docs/v2/module-Sanity-Services.html +325 -29
  108. package/docs/v2/module-Sessions.html +2 -2
  109. package/docs/v2/module-Threads.html +0 -0
  110. package/docs/v2/module-UserActivity.html +2 -2
  111. package/docs/v2/module-UserChat.html +2 -2
  112. package/docs/v2/module-UserManagement.html +448 -4
  113. package/docs/v2/module-UserMemberships.html +284 -11
  114. package/docs/v2/module-UserNotifications.html +2 -2
  115. package/docs/v2/module-UserProfile.html +2 -2
  116. package/docs/v2/railcontent.js.html +2 -21
  117. package/docs/v2/sanity.js.html +111 -32
  118. package/docs/v2/scripts/collapse.js +0 -0
  119. package/docs/v2/scripts/commonNav.js +0 -0
  120. package/docs/v2/scripts/linenumber.js +0 -0
  121. package/docs/v2/scripts/nav.js +0 -0
  122. package/docs/v2/scripts/polyfill.js +0 -0
  123. package/docs/v2/scripts/prettify/Apache-License-2.0.txt +0 -0
  124. package/docs/v2/scripts/prettify/lang-css.js +0 -0
  125. package/docs/v2/scripts/prettify/prettify.js +0 -0
  126. package/docs/v2/scripts/search.js +0 -0
  127. package/docs/v2/styles/jsdoc.css +0 -0
  128. package/docs/v2/styles/prettify.css +0 -0
  129. package/docs/v2/userActivity.js.html +2 -2
  130. package/docs/v2/user_account.ts.html +84 -37
  131. package/docs/v2/user_chat.js.html +2 -2
  132. package/docs/v2/user_interests.js.html +2 -2
  133. package/docs/v2/user_management.js.html +42 -5
  134. package/docs/v2/user_memberships.js.html +2 -2
  135. package/docs/v2/user_memberships.ts.html +292 -0
  136. package/docs/v2/user_notifications.js.html +2 -2
  137. package/docs/v2/user_onboarding.ts.html +183 -0
  138. package/docs/v2/user_payments.ts.html +3 -3
  139. package/docs/v2/user_permissions.js.html +2 -2
  140. package/docs/v2/user_profile.js.html +2 -2
  141. package/docs/v2/user_sessions.js.html +2 -2
  142. package/docs/v2/user_types.js.html +8 -2
  143. package/docs/v2/user_user-management-system.js.html +2 -2
  144. package/jest.config.js +0 -0
  145. package/jsdoc.json +0 -0
  146. package/package.json +1 -1
  147. package/src/contentMetaData.js +0 -0
  148. package/src/filterBuilder.js +0 -0
  149. package/src/index.d.ts +0 -0
  150. package/src/index.js +0 -0
  151. package/src/services/algolia.js +0 -0
  152. package/src/services/config.js +0 -0
  153. package/src/services/contentLikes.js +0 -0
  154. package/src/services/contentProgress.js +0 -0
  155. package/src/services/dataContext.js +0 -0
  156. package/src/services/imageSRCBuilder.js +1 -1
  157. package/src/services/imageSRCVerify.js +1 -1
  158. package/src/services/lastUpdated.js +0 -0
  159. package/src/services/railcontent.js +0 -0
  160. package/src/services/recommendations.js +0 -0
  161. package/src/services/userPermissions.js +0 -0
  162. package/test/config.test.js +0 -0
  163. package/test/contentLikes.test.js +0 -0
  164. package/test/contentProgress.test.js +0 -0
  165. package/test/dataContext.test.js +0 -0
  166. package/test/imageSRCBuilder.test.js +1 -1
  167. package/test/imageSRCVerify.test.js +4 -4
  168. package/test/initializeTests.js +0 -0
  169. package/test/lastUpdated.test.js +0 -0
  170. package/test/live/contentProgressLive.test.js +0 -0
  171. package/test/live/railcontentLive.test.js +0 -0
  172. package/test/localStorageMock.js +0 -0
  173. package/test/log.js +0 -0
  174. package/test/sanityQueryService.test.js +0 -0
  175. package/test/userPermissions.test.js +0 -0
  176. package/tools/generate-index.cjs +0 -0
@@ -29,7 +29,7 @@
29
29
  <nav >
30
30
 
31
31
 
32
- <h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-Accounts.html">Accounts</a><ul class='methods'><li data-type='method'><a href="module-Accounts.html#~confirmEmailChange">confirmEmailChange</a></li><li data-type='method'><a href="module-Accounts.html#~requestEmailChange">requestEmailChange</a></li><li data-type='method'><a href="module-Accounts.html#~resetPassword">resetPassword</a></li><li data-type='method'><a href="module-Accounts.html#~sendAccountSetupEmail">sendAccountSetupEmail</a></li><li data-type='method'><a href="module-Accounts.html#~sendPasswordResetEmail">sendPasswordResetEmail</a></li><li data-type='method'><a href="module-Accounts.html#~setupAccount">setupAccount</a></li><li data-type='method'><a href="module-Accounts.html#~status">status</a></li></ul></li><li><a href="module-Awards.html">Awards</a><ul class='methods'><li data-type='method'><a href="module-Awards.html#~fetchAwardsForUser">fetchAwardsForUser</a></li><li data-type='method'><a href="module-Awards.html#~fetchCertificate">fetchCertificate</a></li><li data-type='method'><a href="module-Awards.html#~getAwardDataForGuidedContent">getAwardDataForGuidedContent</a></li></ul></li><li><a href="module-Config.html">Config</a><ul class='methods'><li data-type='method'><a href="module-Config.html#.initializeService">initializeService</a></li></ul></li><li><a href="module-Content-Services-V2.html">Content-Services-V2</a><ul class='methods'><li data-type='method'><a href="module-Content-Services-V2.html#.getContentRows">getContentRows</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getNewAndUpcoming">getNewAndUpcoming</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getRecent">getRecent</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getRecentForTab">getRecentForTab</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getRecommendedForYou">getRecommendedForYou</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getScheduleContentRows">getScheduleContentRows</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getTabResults">getTabResults</a></li></ul></li><li><a href="module-Forums.html">Forums</a><ul class='methods'><li data-type='method'><a href="module-Forums.html#~createForumCategory">createForumCategory</a></li><li data-type='method'><a href="module-Forums.html#~createPost">createPost</a></li><li data-type='method'><a href="module-Forums.html#~createThread">createThread</a></li><li data-type='method'><a href="module-Forums.html#~deletePost">deletePost</a></li><li data-type='method'><a href="module-Forums.html#~deleteThread">deleteThread</a></li><li data-type='method'><a href="module-Forums.html#~fetchCommunityGuidelines">fetchCommunityGuidelines</a></li><li data-type='method'><a href="module-Forums.html#~fetchFollowedThreads">fetchFollowedThreads</a></li><li data-type='method'><a href="module-Forums.html#~fetchForumCategories">fetchForumCategories</a></li><li data-type='method'><a href="module-Forums.html#~fetchLatestThreads">fetchLatestThreads</a></li><li data-type='method'><a href="module-Forums.html#~fetchPosts">fetchPosts</a></li><li data-type='method'><a href="module-Forums.html#~fetchThreads">fetchThreads</a></li><li data-type='method'><a href="module-Forums.html#~followThread">followThread</a></li><li data-type='method'><a href="module-Forums.html#~lockThread">lockThread</a></li><li data-type='method'><a href="module-Forums.html#~pinThread">pinThread</a></li><li data-type='method'><a href="module-Forums.html#~unfollowThread">unfollowThread</a></li><li data-type='method'><a href="module-Forums.html#~unlockThread">unlockThread</a></li><li data-type='method'><a href="module-Forums.html#~unpinThread">unpinThread</a></li><li data-type='method'><a href="module-Forums.html#~updateForumCategory">updateForumCategory</a></li><li data-type='method'><a href="module-Forums.html#~updateThread">updateThread</a></li></ul></li><li></li><li></li><li><a href="module-GuidedCourses.html">GuidedCourses</a></li><li><a href="module-Interests.html">Interests</a><ul class='methods'><li data-type='method'><a href="module-Interests.html#.fetchInterests">fetchInterests</a></li><li data-type='method'><a href="module-Interests.html#.fetchUninterests">fetchUninterests</a></li><li data-type='method'><a href="module-Interests.html#.markContentAsInterested">markContentAsInterested</a></li><li data-type='method'><a href="module-Interests.html#.markContentAsNotInterested">markContentAsNotInterested</a></li><li data-type='method'><a href="module-Interests.html#.removeContentAsInterested">removeContentAsInterested</a></li><li data-type='method'><a href="module-Interests.html#.removeContentAsNotInterested">removeContentAsNotInterested</a></li></ul></li><li><a href="module-Payments.html">Payments</a><ul class='methods'><li data-type='method'><a href="module-Payments.html#~fetchCustomerPayments">fetchCustomerPayments</a></li></ul></li><li><a href="module-Permissions.html">Permissions</a><ul class='methods'><li data-type='method'><a href="module-Permissions.html#.fetchUserPermissions">fetchUserPermissions</a></li><li data-type='method'><a href="module-Permissions.html#.reset">reset</a></li></ul></li><li><a href="module-Playlists.html">Playlists</a><ul class='methods'><li data-type='method'><a href="module-Playlists.html#.addItemToPlaylist">addItemToPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.createPlaylist">createPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.deletePlaylist">deletePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.duplicatePlaylist">duplicatePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.fetchPlaylist">fetchPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.fetchPlaylistItems">fetchPlaylistItems</a></li><li data-type='method'><a href="module-Playlists.html#.fetchUserPlaylists">fetchUserPlaylists</a></li><li data-type='method'><a href="module-Playlists.html#.togglePlaylistPrivate">togglePlaylistPrivate</a></li><li data-type='method'><a href="module-Playlists.html#.undeletePlaylist">undeletePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.updatePlaylist">updatePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~deleteItemsFromPlaylist">deleteItemsFromPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~likePlaylist">likePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~reportPlaylist">reportPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~restoreItemFromPlaylist">restoreItemFromPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~unlikePlaylist">unlikePlaylist</a></li></ul></li><li><a href="module-Railcontent-Services.html">Railcontent-Services</a><ul class='methods'><li data-type='method'><a href="module-Railcontent-Services.html#.assignModeratorToComment">assignModeratorToComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.closeComment">closeComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.createComment">createComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.deleteComment">deleteComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.editComment">editComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchAllCompletedStates">fetchAllCompletedStates</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCarouselCardData">fetchCarouselCardData</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchComment">fetchComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCommentRelies">fetchCommentRelies</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchComments">fetchComments</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCompletedContent">fetchCompletedContent</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCompletedState">fetchCompletedState</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchContentInProgress">fetchContentInProgress</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchContentPageUserData">fetchContentPageUserData</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchNextContentDataForParent">fetchNextContentDataForParent</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchRecentUserActivities">fetchRecentUserActivities</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchSongsInProgress">fetchSongsInProgress</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchTopComment">fetchTopComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchUserAward">fetchUserAward</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchUserBadges">fetchUserBadges</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchUserPracticeNotes">fetchUserPracticeNotes</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.likeComment">likeComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.openComment">openComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentComplete">postContentComplete</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentReset">postContentReset</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentRestore">postContentRestore</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentStart">postContentStart</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.replyToComment">replyToComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.reportComment">reportComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.restoreComment">restoreComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.setStudentViewForUser">setStudentViewForUser</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.unassignModeratorToComment">unassignModeratorToComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.unlikeComment">unlikeComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#~fetchLastInteractedChild">fetchLastInteractedChild</a></li></ul></li><li><a href="module-Sanity-Services.html">Sanity-Services</a><ul class='methods'><li data-type='method'><a href="module-Sanity-Services.html#.fetchAll">fetchAll</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchAllFilterOptions">fetchAllFilterOptions</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchAllPacks">fetchAllPacks</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchArtistLessons">fetchArtistLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchArtists">fetchArtists</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchByRailContentId">fetchByRailContentId</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchByRailContentIds">fetchByRailContentIds</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchByReference">fetchByReference</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchCoachLessons">fetchCoachLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchComingSoon">fetchComingSoon</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchCommentModContentData">fetchCommentModContentData</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchFoundation">fetchFoundation</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchGenreLessons">fetchGenreLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchLeaving">fetchLeaving</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchLessonContent">fetchLessonContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchLessonsFeaturingThisContent">fetchLessonsFeaturingThisContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMetadata">fetchMetadata</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethod">fetchMethod</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodChildren">fetchMethodChildren</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodChildrenIds">fetchMethodChildrenIds</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodPreviousNextLesson">fetchMethodPreviousNextLesson</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchNewReleases">fetchNewReleases</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchNextPreviousLesson">fetchNextPreviousLesson</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchOtherSongVersions">fetchOtherSongVersions</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchPackAll">fetchPackAll</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchPackData">fetchPackData</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchRelatedLessons">fetchRelatedLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchRelatedRecommendedContent">fetchRelatedRecommendedContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchRelatedSongs">fetchRelatedSongs</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchReturning">fetchReturning</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSanity">fetchSanity</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchScheduledReleases">fetchScheduledReleases</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchShowsData">fetchShowsData</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSiblingContent">fetchSiblingContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSongArtistCount">fetchSongArtistCount</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSongById">fetchSongById</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchUpcomingEvents">fetchUpcomingEvents</a></li><li data-type='method'><a href="module-Sanity-Services.html#.jumpToContinueContent">jumpToContinueContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#~fetchRelatedByLicense">fetchRelatedByLicense</a></li><li data-type='method'><a href="module-Sanity-Services.html#~getQueryFromPage">getQueryFromPage</a></li></ul></li><li><a href="module-Sessions.html">Sessions</a><ul class='methods'><li data-type='method'><a href="module-Sessions.html#.login">login</a></li><li data-type='method'><a href="module-Sessions.html#.logout">logout</a></li></ul></li><li><a href="module-UserActivity.html">UserActivity</a><ul class='methods'><li data-type='method'><a href="module-UserActivity.html#.calculateLongestStreaks">calculateLongestStreaks</a></li><li data-type='method'><a href="module-UserActivity.html#.createPracticeNotes">createPracticeNotes</a></li><li data-type='method'><a href="module-UserActivity.html#.deletePracticeSession">deletePracticeSession</a></li><li data-type='method'><a href="module-UserActivity.html#.deleteUserActivity">deleteUserActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.getPracticeNotes">getPracticeNotes</a></li><li data-type='method'><a href="module-UserActivity.html#.getPracticeSessions">getPracticeSessions</a></li><li data-type='method'><a href="module-UserActivity.html#.getProgressRows">getProgressRows</a></li><li data-type='method'><a href="module-UserActivity.html#.getRecentActivity">getRecentActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.getUserMonthlyStats">getUserMonthlyStats</a></li><li data-type='method'><a href="module-UserActivity.html#.getUserWeeklyStats">getUserWeeklyStats</a></li><li data-type='method'><a href="module-UserActivity.html#.pinProgressRow">pinProgressRow</a></li><li data-type='method'><a href="module-UserActivity.html#.recordUserActivity">recordUserActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.recordUserPractice">recordUserPractice</a></li><li data-type='method'><a href="module-UserActivity.html#.removeUserPractice">removeUserPractice</a></li><li data-type='method'><a href="module-UserActivity.html#.restorePracticeSession">restorePracticeSession</a></li><li data-type='method'><a href="module-UserActivity.html#.restoreUserActivity">restoreUserActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.restoreUserPractice">restoreUserPractice</a></li><li data-type='method'><a href="module-UserActivity.html#.unpinProgressRow">unpinProgressRow</a></li><li data-type='method'><a href="module-UserActivity.html#.updatePracticeNotes">updatePracticeNotes</a></li><li data-type='method'><a href="module-UserActivity.html#.updateUserPractice">updateUserPractice</a></li></ul></li><li><a href="module-UserChat.html">UserChat</a><ul class='methods'><li data-type='method'><a href="module-UserChat.html#.fetchChatSettings">fetchChatSettings</a></li></ul></li><li><a href="module-UserManagement.html">UserManagement</a><ul class='methods'><li data-type='method'><a href="module-UserManagement.html#.blockUser">blockUser</a></li><li data-type='method'><a href="module-UserManagement.html#.blockedUsers">blockedUsers</a></li><li data-type='method'><a href="module-UserManagement.html#.deletePicture">deletePicture</a></li><li data-type='method'><a href="module-UserManagement.html#.getUserData">getUserData</a></li><li data-type='method'><a href="module-UserManagement.html#.isDisplayNameAvailable">isDisplayNameAvailable</a></li><li data-type='method'><a href="module-UserManagement.html#.unblockUser">unblockUser</a></li><li data-type='method'><a href="module-UserManagement.html#.updateDisplayName">updateDisplayName</a></li><li data-type='method'><a href="module-UserManagement.html#.uploadPicture">uploadPicture</a></li><li data-type='method'><a href="module-UserManagement.html#.uploadPictureFromS3">uploadPictureFromS3</a></li></ul></li><li><a href="module-UserMemberships.html">UserMemberships</a><ul class='methods'><li data-type='method'><a href="module-UserMemberships.html#.fetchMemberships">fetchMemberships</a></li><li data-type='method'><a href="module-UserMemberships.html#.fetchRechargeTokens">fetchRechargeTokens</a></li><li data-type='method'><a href="module-UserMemberships.html#.upgradeSubscription">upgradeSubscription</a></li></ul></li><li><a href="module-UserNotifications.html">UserNotifications</a><ul class='methods'><li data-type='method'><a href="module-UserNotifications.html#.deleteNotification">deleteNotification</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchLiveEventPollingState">fetchLiveEventPollingState</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchNotificationSettings">fetchNotificationSettings</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchNotifications">fetchNotifications</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchUnreadCount">fetchUnreadCount</a></li><li data-type='method'><a href="module-UserNotifications.html#.markAllNotificationsAsRead">markAllNotificationsAsRead</a></li><li data-type='method'><a href="module-UserNotifications.html#.markNotificationAsRead">markNotificationAsRead</a></li><li data-type='method'><a href="module-UserNotifications.html#.markNotificationAsUnread">markNotificationAsUnread</a></li><li data-type='method'><a href="module-UserNotifications.html#.pauseLiveEventPolling">pauseLiveEventPolling</a></li><li data-type='method'><a href="module-UserNotifications.html#.restoreNotification">restoreNotification</a></li><li data-type='method'><a href="module-UserNotifications.html#.startLiveEventPolling">startLiveEventPolling</a></li><li data-type='method'><a href="module-UserNotifications.html#.updateNotificationSetting">updateNotificationSetting</a></li></ul></li><li><a href="module-UserProfile.html">UserProfile</a><ul class='methods'><li data-type='method'><a href="module-UserProfile.html#.deleteProfilePicture">deleteProfilePicture</a></li><li data-type='method'><a href="module-UserProfile.html#.otherStats">otherStats</a></li></ul></li></ul><h3>Namespaces</h3><ul><li><a href="ContentOrganization.html">ContentOrganization</a></li><li><a href="Forums.html">Forums</a></li><li><a href="Gamification.html">Gamification</a></li><li><a href="UserManagementSystem.html">UserManagementSystem</a></li></ul><h3><a href="global.html">Global</a></h3>
32
+ <h2><a href="index.html">Home</a></h2><h3>Modules</h3><ul><li><a href="module-Accounts.html">Accounts</a><ul class='methods'><li data-type='method'><a href="module-Accounts.html#~confirmEmailChange">confirmEmailChange</a></li><li data-type='method'><a href="module-Accounts.html#~deleteAccount">deleteAccount</a></li><li data-type='method'><a href="module-Accounts.html#~numberOfActiveUsers">numberOfActiveUsers</a></li><li data-type='method'><a href="module-Accounts.html#~requestEmailChange">requestEmailChange</a></li><li data-type='method'><a href="module-Accounts.html#~resetPassword">resetPassword</a></li><li data-type='method'><a href="module-Accounts.html#~sendAccountSetupEmail">sendAccountSetupEmail</a></li><li data-type='method'><a href="module-Accounts.html#~sendPasswordResetEmail">sendPasswordResetEmail</a></li><li data-type='method'><a href="module-Accounts.html#~setupAccount">setupAccount</a></li><li data-type='method'><a href="module-Accounts.html#~status">status</a></li></ul></li><li><a href="module-Awards.html">Awards</a><ul class='methods'><li data-type='method'><a href="module-Awards.html#~fetchAwardsForUser">fetchAwardsForUser</a></li><li data-type='method'><a href="module-Awards.html#~fetchCertificate">fetchCertificate</a></li><li data-type='method'><a href="module-Awards.html#~getAwardDataForGuidedContent">getAwardDataForGuidedContent</a></li></ul></li><li><a href="module-Config.html">Config</a><ul class='methods'><li data-type='method'><a href="module-Config.html#.initializeService">initializeService</a></li></ul></li><li><a href="module-Content-Services-V2.html">Content-Services-V2</a><ul class='methods'><li data-type='method'><a href="module-Content-Services-V2.html#.getContentRows">getContentRows</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getLegacyMethods">getLegacyMethods</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getNewAndUpcoming">getNewAndUpcoming</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getRecent">getRecent</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getRecommendedForYou">getRecommendedForYou</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getScheduleContentRows">getScheduleContentRows</a></li><li data-type='method'><a href="module-Content-Services-V2.html#.getTabResults">getTabResults</a></li></ul></li><li><a href="module-Forums.html">Forums</a><ul class='methods'><li data-type='method'><a href="module-Forums.html#~createForumCategory">createForumCategory</a></li><li data-type='method'><a href="module-Forums.html#~createPost">createPost</a></li><li data-type='method'><a href="module-Forums.html#~createThread">createThread</a></li><li data-type='method'><a href="module-Forums.html#~deletePost">deletePost</a></li><li data-type='method'><a href="module-Forums.html#~deleteThread">deleteThread</a></li><li data-type='method'><a href="module-Forums.html#~fetchCommunityGuidelines">fetchCommunityGuidelines</a></li><li data-type='method'><a href="module-Forums.html#~fetchFollowedThreads">fetchFollowedThreads</a></li><li data-type='method'><a href="module-Forums.html#~fetchForumCategories">fetchForumCategories</a></li><li data-type='method'><a href="module-Forums.html#~fetchLatestThreads">fetchLatestThreads</a></li><li data-type='method'><a href="module-Forums.html#~fetchPosts">fetchPosts</a></li><li data-type='method'><a href="module-Forums.html#~fetchThreads">fetchThreads</a></li><li data-type='method'><a href="module-Forums.html#~followThread">followThread</a></li><li data-type='method'><a href="module-Forums.html#~jumpToPost">jumpToPost</a></li><li data-type='method'><a href="module-Forums.html#~likePost">likePost</a></li><li data-type='method'><a href="module-Forums.html#~lockThread">lockThread</a></li><li data-type='method'><a href="module-Forums.html#~pinThread">pinThread</a></li><li data-type='method'><a href="module-Forums.html#~search">search</a></li><li data-type='method'><a href="module-Forums.html#~unfollowThread">unfollowThread</a></li><li data-type='method'><a href="module-Forums.html#~unlikePost">unlikePost</a></li><li data-type='method'><a href="module-Forums.html#~unlockThread">unlockThread</a></li><li data-type='method'><a href="module-Forums.html#~unpinThread">unpinThread</a></li><li data-type='method'><a href="module-Forums.html#~updateForumCategory">updateForumCategory</a></li><li data-type='method'><a href="module-Forums.html#~updatePost">updatePost</a></li><li data-type='method'><a href="module-Forums.html#~updateThread">updateThread</a></li></ul></li><li></li><li></li><li><a href="module-GuidedCourses.html">GuidedCourses</a><ul class='methods'><li data-type='method'><a href="module-GuidedCourses.html#~getActivePath">getActivePath</a></li><li data-type='method'><a href="module-GuidedCourses.html#~getDailySession">getDailySession</a></li><li data-type='method'><a href="module-GuidedCourses.html#~updateActivePath">updateActivePath</a></li><li data-type='method'><a href="module-GuidedCourses.html#~updateDailySession">updateDailySession</a></li></ul></li><li></li><li><a href="module-Interests.html">Interests</a><ul class='methods'><li data-type='method'><a href="module-Interests.html#.fetchInterests">fetchInterests</a></li><li data-type='method'><a href="module-Interests.html#.fetchUninterests">fetchUninterests</a></li><li data-type='method'><a href="module-Interests.html#.markContentAsInterested">markContentAsInterested</a></li><li data-type='method'><a href="module-Interests.html#.markContentAsNotInterested">markContentAsNotInterested</a></li><li data-type='method'><a href="module-Interests.html#.removeContentAsInterested">removeContentAsInterested</a></li><li data-type='method'><a href="module-Interests.html#.removeContentAsNotInterested">removeContentAsNotInterested</a></li></ul></li><li><a href="module-Onboarding.html">Onboarding</a><ul class='methods'><li data-type='method'><a href="module-Onboarding.html#~startOnboarding">startOnboarding</a></li><li data-type='method'><a href="module-Onboarding.html#~updateOnboarding">updateOnboarding</a></li><li data-type='method'><a href="module-Onboarding.html#~userOnboardingForBrand">userOnboardingForBrand</a></li></ul></li><li><a href="module-Payments.html">Payments</a><ul class='methods'><li data-type='method'><a href="module-Payments.html#~fetchCustomerPayments">fetchCustomerPayments</a></li></ul></li><li><a href="module-Permissions.html">Permissions</a><ul class='methods'><li data-type='method'><a href="module-Permissions.html#.fetchUserPermissions">fetchUserPermissions</a></li><li data-type='method'><a href="module-Permissions.html#.reset">reset</a></li></ul></li><li><a href="module-Playlists.html">Playlists</a><ul class='methods'><li data-type='method'><a href="module-Playlists.html#.addItemToPlaylist">addItemToPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.createPlaylist">createPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.deletePlaylist">deletePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.duplicatePlaylist">duplicatePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.fetchPlaylist">fetchPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.fetchPlaylistItems">fetchPlaylistItems</a></li><li data-type='method'><a href="module-Playlists.html#.fetchUserPlaylists">fetchUserPlaylists</a></li><li data-type='method'><a href="module-Playlists.html#.togglePlaylistPrivate">togglePlaylistPrivate</a></li><li data-type='method'><a href="module-Playlists.html#.undeletePlaylist">undeletePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#.updatePlaylist">updatePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~deleteItemsFromPlaylist">deleteItemsFromPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~likePlaylist">likePlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~reportPlaylist">reportPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~restoreItemFromPlaylist">restoreItemFromPlaylist</a></li><li data-type='method'><a href="module-Playlists.html#~unlikePlaylist">unlikePlaylist</a></li></ul></li><li><a href="module-Railcontent-Services.html">Railcontent-Services</a><ul class='methods'><li data-type='method'><a href="module-Railcontent-Services.html#.assignModeratorToComment">assignModeratorToComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.closeComment">closeComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.createComment">createComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.deleteComment">deleteComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.editComment">editComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchAllCompletedStates">fetchAllCompletedStates</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCarouselCardData">fetchCarouselCardData</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchComment">fetchComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCommentRelies">fetchCommentRelies</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchComments">fetchComments</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCompletedContent">fetchCompletedContent</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchCompletedState">fetchCompletedState</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchContentInProgress">fetchContentInProgress</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchContentPageUserData">fetchContentPageUserData</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchNextContentDataForParent">fetchNextContentDataForParent</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchRecentUserActivities">fetchRecentUserActivities</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchSongsInProgress">fetchSongsInProgress</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchTopComment">fetchTopComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchUserAward">fetchUserAward</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchUserBadges">fetchUserBadges</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.fetchUserPracticeNotes">fetchUserPracticeNotes</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.likeComment">likeComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.openComment">openComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentComplete">postContentComplete</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentReset">postContentReset</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentRestore">postContentRestore</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.postContentStart">postContentStart</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.replyToComment">replyToComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.reportComment">reportComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.restoreComment">restoreComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.setStudentViewForUser">setStudentViewForUser</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.unassignModeratorToComment">unassignModeratorToComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#.unlikeComment">unlikeComment</a></li><li data-type='method'><a href="module-Railcontent-Services.html#~fetchLastInteractedChild">fetchLastInteractedChild</a></li></ul></li><li><a href="module-Sanity-Services.html">Sanity-Services</a><ul class='methods'><li data-type='method'><a href="module-Sanity-Services.html#.fetchAll">fetchAll</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchAllFilterOptions">fetchAllFilterOptions</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchAllPacks">fetchAllPacks</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchArtistLessons">fetchArtistLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchArtists">fetchArtists</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchByRailContentId">fetchByRailContentId</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchByRailContentIds">fetchByRailContentIds</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchByReference">fetchByReference</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchCoachLessons">fetchCoachLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchComingSoon">fetchComingSoon</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchCommentModContentData">fetchCommentModContentData</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchFoundation">fetchFoundation</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchGenreLessons">fetchGenreLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchLeaving">fetchLeaving</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchLessonContent">fetchLessonContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchLessonsFeaturingThisContent">fetchLessonsFeaturingThisContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMetadata">fetchMetadata</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethod">fetchMethod</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodChildren">fetchMethodChildren</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodChildrenIds">fetchMethodChildrenIds</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodPreviousNextLesson">fetchMethodPreviousNextLesson</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodV2IntroVideo">fetchMethodV2IntroVideo</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchMethodV2Structure">fetchMethodV2Structure</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchNewReleases">fetchNewReleases</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchNextPreviousLesson">fetchNextPreviousLesson</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchOtherSongVersions">fetchOtherSongVersions</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchPackAll">fetchPackAll</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchPackData">fetchPackData</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchRelatedLessons">fetchRelatedLessons</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchRelatedRecommendedContent">fetchRelatedRecommendedContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchRelatedSongs">fetchRelatedSongs</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchReturning">fetchReturning</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSanity">fetchSanity</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchScheduledReleases">fetchScheduledReleases</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchShowsData">fetchShowsData</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSiblingContent">fetchSiblingContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSongArtistCount">fetchSongArtistCount</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchSongById">fetchSongById</a></li><li data-type='method'><a href="module-Sanity-Services.html#.fetchUpcomingEvents">fetchUpcomingEvents</a></li><li data-type='method'><a href="module-Sanity-Services.html#.jumpToContinueContent">jumpToContinueContent</a></li><li data-type='method'><a href="module-Sanity-Services.html#~fetchRelatedByLicense">fetchRelatedByLicense</a></li><li data-type='method'><a href="module-Sanity-Services.html#~getQueryFromPage">getQueryFromPage</a></li></ul></li><li><a href="module-Sessions.html">Sessions</a><ul class='methods'><li data-type='method'><a href="module-Sessions.html#.login">login</a></li><li data-type='method'><a href="module-Sessions.html#.logout">logout</a></li></ul></li><li><a href="module-UserActivity.html">UserActivity</a><ul class='methods'><li data-type='method'><a href="module-UserActivity.html#.calculateLongestStreaks">calculateLongestStreaks</a></li><li data-type='method'><a href="module-UserActivity.html#.createPracticeNotes">createPracticeNotes</a></li><li data-type='method'><a href="module-UserActivity.html#.deletePracticeSession">deletePracticeSession</a></li><li data-type='method'><a href="module-UserActivity.html#.deleteUserActivity">deleteUserActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.getPracticeNotes">getPracticeNotes</a></li><li data-type='method'><a href="module-UserActivity.html#.getPracticeSessions">getPracticeSessions</a></li><li data-type='method'><a href="module-UserActivity.html#.getProgressRows">getProgressRows</a></li><li data-type='method'><a href="module-UserActivity.html#.getRecentActivity">getRecentActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.getUserMonthlyStats">getUserMonthlyStats</a></li><li data-type='method'><a href="module-UserActivity.html#.getUserWeeklyStats">getUserWeeklyStats</a></li><li data-type='method'><a href="module-UserActivity.html#.pinProgressRow">pinProgressRow</a></li><li data-type='method'><a href="module-UserActivity.html#.recordUserActivity">recordUserActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.recordUserPractice">recordUserPractice</a></li><li data-type='method'><a href="module-UserActivity.html#.removeUserPractice">removeUserPractice</a></li><li data-type='method'><a href="module-UserActivity.html#.restorePracticeSession">restorePracticeSession</a></li><li data-type='method'><a href="module-UserActivity.html#.restoreUserActivity">restoreUserActivity</a></li><li data-type='method'><a href="module-UserActivity.html#.restoreUserPractice">restoreUserPractice</a></li><li data-type='method'><a href="module-UserActivity.html#.unpinProgressRow">unpinProgressRow</a></li><li data-type='method'><a href="module-UserActivity.html#.updatePracticeNotes">updatePracticeNotes</a></li><li data-type='method'><a href="module-UserActivity.html#.updateUserPractice">updateUserPractice</a></li></ul></li><li><a href="module-UserChat.html">UserChat</a><ul class='methods'><li data-type='method'><a href="module-UserChat.html#.fetchChatSettings">fetchChatSettings</a></li></ul></li><li><a href="module-UserManagement.html">UserManagement</a><ul class='methods'><li data-type='method'><a href="module-UserManagement.html#.blockUser">blockUser</a></li><li data-type='method'><a href="module-UserManagement.html#.blockedUsers">blockedUsers</a></li><li data-type='method'><a href="module-UserManagement.html#.deletePicture">deletePicture</a></li><li data-type='method'><a href="module-UserManagement.html#.getUserData">getUserData</a></li><li data-type='method'><a href="module-UserManagement.html#.getUserSignature">getUserSignature</a></li><li data-type='method'><a href="module-UserManagement.html#.isUsernameAvailable">isUsernameAvailable</a></li><li data-type='method'><a href="module-UserManagement.html#.setUserSignature">setUserSignature</a></li><li data-type='method'><a href="module-UserManagement.html#.toggleSignaturePrivate">toggleSignaturePrivate</a></li><li data-type='method'><a href="module-UserManagement.html#.unblockUser">unblockUser</a></li><li data-type='method'><a href="module-UserManagement.html#.updateDisplayName">updateDisplayName</a></li><li data-type='method'><a href="module-UserManagement.html#.uploadPicture">uploadPicture</a></li><li data-type='method'><a href="module-UserManagement.html#.uploadPictureFromS3">uploadPictureFromS3</a></li></ul></li><li><a href="module-UserMemberships.html">UserMemberships</a><ul class='methods'><li data-type='method'><a href="module-UserMemberships.html#~fetchMemberships">fetchMemberships</a></li><li data-type='method'><a href="module-UserMemberships.html#~fetchRechargeTokens">fetchRechargeTokens</a></li><li data-type='method'><a href="module-UserMemberships.html#~restorePurchases">restorePurchases</a></li><li data-type='method'><a href="module-UserMemberships.html#~upgradeSubscription">upgradeSubscription</a></li></ul></li><li><a href="module-UserNotifications.html">UserNotifications</a><ul class='methods'><li data-type='method'><a href="module-UserNotifications.html#.deleteNotification">deleteNotification</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchLiveEventPollingState">fetchLiveEventPollingState</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchNotificationSettings">fetchNotificationSettings</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchNotifications">fetchNotifications</a></li><li data-type='method'><a href="module-UserNotifications.html#.fetchUnreadCount">fetchUnreadCount</a></li><li data-type='method'><a href="module-UserNotifications.html#.markAllNotificationsAsRead">markAllNotificationsAsRead</a></li><li data-type='method'><a href="module-UserNotifications.html#.markNotificationAsRead">markNotificationAsRead</a></li><li data-type='method'><a href="module-UserNotifications.html#.markNotificationAsUnread">markNotificationAsUnread</a></li><li data-type='method'><a href="module-UserNotifications.html#.pauseLiveEventPolling">pauseLiveEventPolling</a></li><li data-type='method'><a href="module-UserNotifications.html#.restoreNotification">restoreNotification</a></li><li data-type='method'><a href="module-UserNotifications.html#.startLiveEventPolling">startLiveEventPolling</a></li><li data-type='method'><a href="module-UserNotifications.html#.updateNotificationSetting">updateNotificationSetting</a></li></ul></li><li><a href="module-UserProfile.html">UserProfile</a><ul class='methods'><li data-type='method'><a href="module-UserProfile.html#.deleteProfilePicture">deleteProfilePicture</a></li><li data-type='method'><a href="module-UserProfile.html#.otherStats">otherStats</a></li></ul></li></ul><h3>Namespaces</h3><ul><li><a href="ContentOrganization.html">ContentOrganization</a></li><li><a href="Forums.html">Forums</a></li><li><a href="Gamification.html">Gamification</a></li><li><a href="UserManagementSystem.html">UserManagementSystem</a></li></ul><h3>Interfaces</h3><ul><li><a href="TestUser.html">TestUser</a></li></ul><h3>Global</h3><ul><li><a href="global.html#createTestUser">createTestUser</a></li></ul>
33
33
 
34
34
  </nav>
35
35
 
@@ -56,6 +56,7 @@ import {
56
56
  descriptionField,
57
57
  resourcesField,
58
58
  contentTypeConfig,
59
+ getIntroVideoFields,
59
60
  DEFAULT_FIELDS,
60
61
  getFieldsForContentType,
61
62
  filtersToGroq,
@@ -66,7 +67,6 @@ import {
66
67
  getFieldsForContentTypeWithFilteredChildren,
67
68
  getChildFieldsForContentType,
68
69
  SONG_TYPES,
69
- recentTypes
70
70
  } from '../contentTypeConfig.js'
71
71
  import {fetchSimilarItems, recommendations} from './recommendations.js'
72
72
  import { processMetadata, typeWithSortOrder } from '../contentMetaData.js'
@@ -421,7 +421,7 @@ export async function fetchUpcomingEvents(brand, { page = 1, limit = 10 } = {})
421
421
  live_event_end_time,
422
422
  "isLive": live_event_start_time &lt;= '${now}' &amp;&amp; live_event_end_time >= '${now}'`
423
423
  const query = buildRawQuery(
424
- `defined(live_event_start_time) &amp;&amp; (!defined(live_event_end_time) || live_event_end_time >= '${now}' ) &amp;&amp; brand == '${brand}' &amp;&amp; published_on > '${now}' &amp;&amp; status == 'scheduled'`,
424
+ `defined(live_event_start_time) &amp;&amp; live_event_start_time >= '${now}' &amp;&amp; (!defined(live_event_end_time) || live_event_end_time >= '${now}' ) &amp;&amp; brand == '${brand}' &amp;&amp; status == 'scheduled'`,
425
425
  fields,
426
426
  {
427
427
  sortOrder: 'published_on asc',
@@ -543,6 +543,8 @@ export async function fetchByRailContentIds(ids, contentType = undefined, brand
543
543
  live_event_start_time,
544
544
  live_event_end_time,
545
545
  }`
546
+
547
+ console.log('ids query', query)
546
548
  const customPostProcess = (results) => {
547
549
  const now = getSanityDate(new Date(), false);
548
550
  const liveProcess = (result) => {
@@ -710,7 +712,7 @@ export async function fetchAll(
710
712
  'head_shot_picture_url': thumbnail_url.asset->url,
711
713
  'web_url_path': '/${brand}/${webUrlPath}/'+name+'?included_fieds[]=type,${type}',
712
714
  'all_lessons_count': count(*[${lessonsFilterWithRestrictions}]._id),
713
- 'lessons': *[${lessonsFilterWithRestrictions}]{
715
+ 'children': *[${lessonsFilterWithRestrictions}]{
714
716
  ${fieldsString},
715
717
  ${groupBy}
716
718
  }[0...20]
@@ -730,7 +732,7 @@ export async function fetchAll(
730
732
  'head_shot_picture_url': thumbnail_url.asset->url,
731
733
  'web_url_path': select(defined(web_url_path)=> web_url_path +'?included_fieds[]=type,${type}',!defined(web_url_path)=> '/${brand}${webUrlPath}/'+name+'/${webUrlPathType}'),
732
734
  'all_lessons_count': count(*[${lessonsFilterWithRestrictions}]._id),
733
- 'lessons': *[${lessonsFilterWithRestrictions}]{
735
+ 'children': *[${lessonsFilterWithRestrictions}]{
734
736
  ${fieldsString},
735
737
  'lesson_count': coalesce(count(child[${childrenFilter}]->), 0) ,
736
738
  ${groupBy}
@@ -740,8 +742,8 @@ export async function fetchAll(
740
742
  filter = `brand == "${brand}" ${typeFilter} ${searchFilter} ${includedFieldsFilter} ${progressFilter} ${customFilter}`
741
743
  const childrenFilter = await new FilterBuilder(``, { isChildrenFilter: true }).buildFilter()
742
744
  entityFieldsString = ` ${fieldsString},
743
- 'lesson_count': coalesce(count(child[${childrenFilter}]->), 0) ,
744
- 'length_in_seconds': coalesce(
745
+ 'lesson_count': coalesce(count(child[${childrenFilter}]->), 0) ,
746
+ 'length_in_seconds': coalesce(
745
747
  math::sum(
746
748
  select(
747
749
  child[${childrenFilter}]->length_in_seconds
@@ -795,17 +797,17 @@ async function getProgressFilter(progress, progressIds) {
795
797
  }
796
798
 
797
799
  export function getSortOrder(sort = '-published_on', brand, groupBy) {
798
- // Determine the sort order
800
+ const sanitizedSort = sort?.trim() || '-published_on'
801
+ let isDesc = sanitizedSort.startsWith('-')
802
+ const sortField = isDesc ? sanitizedSort.substring(1) : sanitizedSort
803
+
799
804
  let sortOrder = ''
800
- let isDesc = sort.startsWith('-')
801
- sort = isDesc ? sort.substring(1) : sort
802
- switch (sort) {
805
+
806
+ switch (sortField) {
803
807
  case 'slug':
804
808
  sortOrder = groupBy ? 'name' : '!defined(title), lower(title)'
805
809
  break
806
- case 'name':
807
- sortOrder = sort
808
- break
810
+
809
811
  case 'popularity':
810
812
  if (groupBy == 'artist' || groupBy == 'genre') {
811
813
  sortOrder = isDesc ? `coalesce(popularity.${brand}, -1)` : 'popularity'
@@ -813,15 +815,17 @@ export function getSortOrder(sort = '-published_on', brand, groupBy) {
813
815
  sortOrder = isDesc ? 'coalesce(popularity, -1)' : 'popularity'
814
816
  }
815
817
  break
818
+
816
819
  case 'recommended':
817
820
  sortOrder = 'published_on'
818
821
  isDesc = true
819
822
  break
820
- case 'published_on':
823
+
821
824
  default:
822
- sortOrder = 'published_on'
825
+ sortOrder = sortField
823
826
  break
824
827
  }
828
+
825
829
  sortOrder += isDesc ? ' desc' : ' asc'
826
830
  return sortOrder
827
831
  }
@@ -1187,8 +1191,8 @@ export async function fetchLessonContent(railContentId, { addParent = false } =
1187
1191
  defined(live_event_start_time) => {
1188
1192
  "live_event_start_time": live_event_start_time,
1189
1193
  "live_event_end_time": live_event_end_time,
1190
- "live_event_youtube_id": live_event_youtube_id,
1191
- "videoId": coalesce(live_event_youtube_id, video.external_id),
1194
+ "live_event_stream_id": live_event_stream_id,
1195
+ "videoId": coalesce(live_event_stream_id, video.external_id),
1192
1196
  "live_event_is_global": live_global_event == true
1193
1197
  }
1194
1198
  )
@@ -1389,12 +1393,10 @@ export async function fetchAllPacks(
1389
1393
  const sortOrder = getSortOrder(sort, brand)
1390
1394
  const filter = `(_type == 'pack' || _type == 'semester-pack') &amp;&amp; brand == '${brand}' &amp;&amp; title match "${searchTerm}*"`
1391
1395
  const filterParams = {}
1392
- const fields = getFieldsForContentType('pack')
1393
1396
  const start = (page - 1) * limit
1394
1397
  const end = start + limit
1395
1398
 
1396
- const query = await buildQuery(filter, filterParams, getFieldsForContentType('pack'), {
1397
- logo_image_url: 'logo_image_url.asset->url',
1399
+ const query = await buildQuery(filter, filterParams, await getFieldsForContentTypeWithFilteredChildren('pack'), {
1398
1400
  sortOrder: sortOrder,
1399
1401
  start,
1400
1402
  end,
@@ -1450,7 +1452,7 @@ export async function fetchLiveEvent(brand, forcedContentId = null) {
1450
1452
  'id': railcontent_id,
1451
1453
  live_event_start_time,
1452
1454
  live_event_end_time,
1453
- live_event_youtube_id,
1455
+ live_event_stream_id,
1454
1456
  railcontent_id,
1455
1457
  published_on,
1456
1458
  'event_coach_url' : instructor[0]->web_url_path,
@@ -1460,14 +1462,14 @@ export async function fetchLiveEvent(brand, forcedContentId = null) {
1460
1462
  ${artistOrInstructorName()},
1461
1463
  difficulty_string,
1462
1464
  "instructors": ${instructorField},
1463
- 'videoId': coalesce(live_event_youtube_id, video.external_id),
1465
+ 'videoId': coalesce(live_event_stream_id, video.external_id),
1464
1466
  } | order(live_event_start_time)[0...1]`
1465
1467
  : `*[status == 'scheduled' &amp;&amp; brand == '${brand}' &amp;&amp; defined(live_event_start_time) &amp;&amp; live_event_start_time &lt;= '${getSanityDate(startDateTemp, false)}' &amp;&amp; live_event_end_time >= '${getSanityDate(endDateTemp, false)}']{
1466
1468
  'slug': slug.current,
1467
1469
  'id': railcontent_id,
1468
1470
  live_event_start_time,
1469
1471
  live_event_end_time,
1470
- live_event_youtube_id,
1472
+ live_event_stream_id,
1471
1473
  railcontent_id,
1472
1474
  published_on,
1473
1475
  'event_coach_url' : instructor[0]->web_url_path,
@@ -1480,7 +1482,7 @@ export async function fetchLiveEvent(brand, forcedContentId = null) {
1480
1482
  name,
1481
1483
  web_url_path,
1482
1484
  },
1483
- 'videoId': coalesce(live_event_youtube_id, video.external_id),
1485
+ 'videoId': coalesce(live_event_stream_id, video.external_id),
1484
1486
  } | order(live_event_start_time)[0...1]`
1485
1487
 
1486
1488
  return await fetchSanity(query, false, { processNeedAccess: false })
@@ -2066,10 +2068,10 @@ async function buildQuery(
2066
2068
  function buildEntityAndTotalQuery(
2067
2069
  filter = '',
2068
2070
  fields = '...',
2069
- { sortOrder = 'published_on desc', start = 0, end = 10, isSingle = false }
2071
+ { sortOrder = 'published_on desc', start = 0, end = 10, isSingle = false, withoutPagination = false }
2070
2072
  ) {
2071
2073
  const sortString = sortOrder ? ` | order(${sortOrder})` : ''
2072
- const countString = isSingle ? '[0...1]' : `[${start}...${end}]`
2074
+ const countString = isSingle ? '[0...1]' : (withoutPagination ? ``: `[${start}...${end}]`)
2073
2075
  const query = `{
2074
2076
  "entity": *[${filter}] ${sortString}${countString}
2075
2077
  {
@@ -2183,7 +2185,9 @@ export async function fetchTabData(
2183
2185
  page = 1,
2184
2186
  limit = 10,
2185
2187
  sort = '-published_on',
2186
- includedFields = []
2188
+ includedFields = [],
2189
+ progressIds = undefined,
2190
+ progress = 'all',
2187
2191
  } = {}
2188
2192
  ) {
2189
2193
  const start = (page - 1) * limit
@@ -2194,6 +2198,23 @@ export async function fetchTabData(
2194
2198
 
2195
2199
  let sortOrder = getSortOrder(sort, brand, '')
2196
2200
 
2201
+ switch (progress) {
2202
+ case 'recent':
2203
+ progressIds = await getAllStartedOrCompleted({ brand, onlyIds: true });
2204
+ sortOrder = null;
2205
+ break;
2206
+ case 'incomplete':
2207
+ progressIds = await getAllStarted();
2208
+ sortOrder = null;
2209
+ break;
2210
+ case 'completed':
2211
+ progressIds = await getAllCompleted();
2212
+ sortOrder = null;
2213
+ break;
2214
+ }
2215
+
2216
+ // limits the results to supplied progressIds for started &amp; completed filters
2217
+ const progressFilter = await getProgressFilter(progress, progressIds)
2197
2218
  const fieldsString = getFieldsForContentType('tab-data');
2198
2219
  const now = getSanityDate(new Date())
2199
2220
 
@@ -2202,8 +2223,8 @@ export async function fetchTabData(
2202
2223
  let entityFieldsString = ''
2203
2224
  let filter = ''
2204
2225
 
2205
- filter = `brand == "${brand}" ${includedFieldsFilter}`
2206
- const childrenFilter = await new FilterBuilder(``, { isChildrenFilter: true, pullFutureContent: true }).buildFilter()
2226
+ filter = `brand == "${brand}" ${includedFieldsFilter} ${progressFilter}`
2227
+ const childrenFilter = await new FilterBuilder(``, { isChildrenFilter: true }).buildFilter()
2207
2228
  const childrenFields = await getChildFieldsForContentType('tab-data')
2208
2229
  const lessonCountFilter = await new FilterBuilder(`_id in ^.child[]._ref`).buildFilter()
2209
2230
  entityFieldsString =
@@ -2228,9 +2249,36 @@ export async function fetchTabData(
2228
2249
 
2229
2250
  let results = await fetchSanity(query, true);
2230
2251
 
2252
+ if (['recent', 'incomplete', 'completed'].includes(progress) &amp;&amp; results.entity.length > 1) {
2253
+ const orderMap = new Map(progressIds.map((id, index) => [id, index]))
2254
+ results.entity = results.entity
2255
+ .sort((a, b) => {
2256
+ const aIdx = orderMap.get(a.id) ?? Number.MAX_SAFE_INTEGER;
2257
+ const bIdx = orderMap.get(b.id) ?? Number.MAX_SAFE_INTEGER;
2258
+ return aIdx - bIdx || new Date(b.published_on) - new Date(a.published_on);
2259
+ })
2260
+ .slice(start, end);
2261
+ }
2262
+
2231
2263
  return results;
2232
2264
  }
2233
2265
 
2266
+ export async function fetchRecent(
2267
+ brand,
2268
+ pageName,
2269
+ { page = 1, limit = 10, sort = '-published_on', includedFields = [], progress = 'recent' } = {}
2270
+ ) {
2271
+ const mergedIncludedFields = [...includedFields, `tab,all`]
2272
+ const results = await fetchTabData(brand, pageName, {
2273
+ page,
2274
+ limit,
2275
+ sort,
2276
+ includedFields: mergedIncludedFields,
2277
+ progress: progress.toLowerCase(),
2278
+ })
2279
+ return results.entity
2280
+ }
2281
+
2234
2282
  export async function fetchScheduledAndNewReleases(
2235
2283
  brand,
2236
2284
  { page = 1, limit = 20, sort = '-published_on' } = {}
@@ -2247,7 +2295,7 @@ export async function fetchScheduledAndNewReleases(
2247
2295
  const sortOrder = getSortOrder(sort, brand)
2248
2296
 
2249
2297
  const query = `
2250
- *[_type in [${typesString}] &amp;&amp; brand == '${brand}' &amp;&amp; ((status in ['published','scheduled'] &amp;&amp; published_on > '${now}')||(show_in_new_feed == true)) ]
2298
+ *[_type in [${typesString}] &amp;&amp; brand == '${brand}' &amp;&amp; ((status in ['published','scheduled'] )||(show_in_new_feed == true)) ]
2251
2299
  [${start}...${end}]
2252
2300
  | order(published_on asc) {
2253
2301
  "id": railcontent_id,
@@ -2280,6 +2328,37 @@ export async function fetchShows(brand, type, sort = 'sort') {
2280
2328
  })
2281
2329
  return fetchSanity(query, true)
2282
2330
  }
2331
+
2332
+ /**
2333
+ * Fetch the method intro video for a given brand.
2334
+ * @param brand
2335
+ * @returns {Promise&lt;*|null>}
2336
+ */
2337
+ export async function fetchMethodV2IntroVideo(brand) {
2338
+ const type = "method-intro";
2339
+ const filter = `_type == '${type}' &amp;&amp; brand == '${brand}'`;
2340
+ const fields = getIntroVideoFields();
2341
+
2342
+ const query = `*[${filter}] { ${fields.join(", ")} }`;
2343
+ return fetchSanity(query, false);
2344
+ }
2345
+
2346
+ /**
2347
+ * Fetch the structure (just ids) of the Method for a given brand.
2348
+ * @param brand
2349
+ * @returns {Promise&lt;*|null>}
2350
+ */
2351
+ export async function fetchMethodV2Structure(brand) {
2352
+ const _type = "method-v2";
2353
+ const query = `*[_type == '${_type}' &amp;&amp; brand == '${brand}'][0...1]{
2354
+ 'sanity_id': _id,
2355
+ 'learningPaths': child[]->{
2356
+ 'id': railcontent_id,
2357
+ 'children': child[]->railcontent_id
2358
+ }
2359
+ }`;
2360
+ return await fetchSanity(query, false);
2361
+ }
2283
2362
  </code></pre>
2284
2363
  </article>
2285
2364
  </section>
@@ -2294,7 +2373,7 @@ export async function fetchShows(brand, type, sort = 'sort') {
2294
2373
  <br class="clear">
2295
2374
 
2296
2375
  <footer>
2297
- Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Thu Oct 02 2025 11:46:05 GMT+0300 (Eastern European Summer Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2376
+ Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 4.0.3</a> on Tue Nov 04 2025 18:21:55 GMT+0000 (Coordinated Universal Time) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
2298
2377
  </footer>
2299
2378
 
2300
2379
  <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