musora-content-services 2.115.0 → 2.115.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ### [2.115.2](https://github.com/railroadmedia/musora-content-services/compare/v2.115.1...v2.115.2) (2026-01-09)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * fix explore all results ([#698](https://github.com/railroadmedia/musora-content-services/issues/698)) ([e9eb8a5](https://github.com/railroadmedia/musora-content-services/commit/e9eb8a5744b1d24c2b1b8e7ba5573cd128454463))
11
+ * oops ([#693](https://github.com/railroadmedia/musora-content-services/issues/693)) ([0be66cb](https://github.com/railroadmedia/musora-content-services/commit/0be66cbaef0b33dad3074a22b9670cee4ddd0024))
12
+
13
+ ### [2.115.1](https://github.com/railroadmedia/musora-content-services/compare/v2.115.0...v2.115.1) (2026-01-09)
14
+
5
15
  ## [2.115.0](https://github.com/railroadmedia/musora-content-services/compare/v2.114.0...v2.115.0) (2026-01-09)
6
16
 
7
17
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "musora-content-services",
3
- "version": "2.115.0",
3
+ "version": "2.115.2",
4
4
  "description": "A package for Musoras content services ",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -55,10 +55,10 @@ export class LengthFilterOptions {
55
55
  }
56
56
 
57
57
  export class Tabs {
58
- static ForYou = { name: 'For You', short_name: 'For You' }
58
+ static ForYou = { name: 'For You', short_name: 'For You', value: 'tab,for you' }
59
59
  static Individuals = { name: 'Individuals', short_name: 'Individuals', value: 'type,individuals', cardType: 'big' }
60
60
  static Collections = { name: 'Collections', short_name: 'Collections', value: 'type,collections', cardType: 'big' }
61
- static ExploreAll = { name: 'Explore All', short_name: 'Explore All', icon: 'icon-filters', cardType: 'big'}
61
+ static ExploreAll = { name: 'Explore All', short_name: 'Explore All', value: 'tab,explore all', icon: 'icon-filters', cardType: 'big'}
62
62
  static All = { name: 'All', short_name: 'All', value: '' }
63
63
  static Courses = { name: 'Courses', short_name: 'Courses', value: '' }
64
64
  static SkillLevel = { name: 'Skill Level', short_name: 'SKILL LEVEL', is_group_by: true, value: 'difficulty_string' }
@@ -95,7 +95,7 @@ export async function getTabResults(brand, pageName, tabName, {
95
95
 
96
96
  // Prepare included fields
97
97
  const tabValue = Object.values(Tabs).find(
98
- tabObj => tabObj.name === tabName
98
+ tabObj => tabObj.name.toLowerCase() === tabName.toLowerCase()
99
99
  ).value
100
100
  const mergedIncludedFields = [...filteredSelectedFilters, tabValue];
101
101
 
@@ -507,7 +507,7 @@ async function saveContentProgress(contentId, collection, progress, currentSecon
507
507
 
508
508
  if (Object.keys(bubbledProgresses).length >= 0) {
509
509
  // BE bubbling/trickling currently does not work, so we utilize non-tentative pushing when learning path collection
510
- await db.contentProgress.recordProgressMany(bubbledProgresses, collection, {tentative: !isLP, skipPush: true, hideFromProgressRow})
510
+ await db.contentProgress.recordProgressMany(bubbledProgresses, collection, {tentative: !isLP, skipPush: true, fromLearningPath})
511
511
  }
512
512
 
513
513
  if (isLP) {
@@ -3,10 +3,15 @@ import { EpochMs } from '..'
3
3
 
4
4
  export default abstract class BaseModel<ExtraRaw extends object = {}> extends Model {
5
5
  declare _raw: RawRecord & ExtraRaw & {
6
+ server_record_id: number
6
7
  created_at: EpochMs
7
8
  updated_at: EpochMs
8
9
  }
9
10
 
11
+ get server_record_id() {
12
+ return this._getRaw('server_record_id') as number
13
+ }
14
+
10
15
  get created_at() {
11
16
  return this._getRaw('created_at') as EpochMs
12
17
  }
@@ -11,6 +11,7 @@ export const SYNC_TABLES = {
11
11
  const contentLikesTable = tableSchema({
12
12
  name: SYNC_TABLES.CONTENT_LIKES,
13
13
  columns: [
14
+ { name: 'server_record_id', type: 'number', isIndexed: true },
14
15
  { name: 'content_id', type: 'number', isIndexed: true },
15
16
  { name: 'created_at', type: 'number' },
16
17
  { name: 'updated_at', type: 'number' }
@@ -19,6 +20,7 @@ const contentLikesTable = tableSchema({
19
20
  const contentProgressTable = tableSchema({
20
21
  name: SYNC_TABLES.CONTENT_PROGRESS,
21
22
  columns: [
23
+ { name: 'server_record_id', type: 'number', isIndexed: true },
22
24
  { name: 'content_id', type: 'number', isIndexed: true },
23
25
  { name: 'content_brand', type: 'string', isOptional: true, isIndexed: true },
24
26
  { name: 'collection_type', type: 'string', isIndexed: true },
@@ -34,6 +36,7 @@ const contentProgressTable = tableSchema({
34
36
  const practicesTable = tableSchema({
35
37
  name: SYNC_TABLES.PRACTICES,
36
38
  columns: [
39
+ { name: 'server_record_id', type: 'number', isIndexed: true },
37
40
  { name: 'manual_id', type: 'string', isOptional: true },
38
41
  { name: 'content_id', type: 'number', isOptional: true, isIndexed: true },
39
42
  { name: 'date', type: 'string', isIndexed: true },
@@ -50,6 +53,7 @@ const practicesTable = tableSchema({
50
53
  const practiceDayNotesTable = tableSchema({
51
54
  name: SYNC_TABLES.PRACTICE_DAY_NOTES,
52
55
  columns: [
56
+ { name: 'server_record_id', type: 'number', isIndexed: true },
53
57
  { name: 'date', type: 'string', isIndexed: true },
54
58
  { name: 'notes', type: 'string' },
55
59
  { name: 'created_at', type: 'number' },
@@ -60,6 +64,7 @@ const practiceDayNotesTable = tableSchema({
60
64
  const userAwardProgressTable = tableSchema({
61
65
  name: SYNC_TABLES.USER_AWARD_PROGRESS,
62
66
  columns: [
67
+ { name: 'server_record_id', type: 'number', isIndexed: true },
63
68
  { name: 'award_id', type: 'string', isIndexed: true },
64
69
  { name: 'progress_percentage', type: 'number' },
65
70
  { name: 'completed_at', type: 'string', isOptional: true, isIndexed: true },