musora-content-services 2.165.5 → 2.167.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.
- package/.agent/decisions/2026-04-28-tma-275-mcs-sanity-add-a-v2-url-segmen.md +0 -0
- package/.agent/decisions/2026-05-19-content-progress-ts-part-2.md +0 -0
- package/.agent/decisions/2026-05-20-live-event-fetch-permissions-id.md +0 -0
- package/.claude/settings.local.json +19 -47
- package/.coderabbit.yaml +0 -0
- package/.editorconfig +0 -0
- package/.github/pull_request_template.md +0 -0
- package/.github/workflows/automated-testing.yml +0 -0
- package/.github/workflows/conventional-commits.yaml +0 -0
- package/.github/workflows/docs.js.yml +0 -0
- package/.prettierignore +0 -0
- package/.prettierrc +0 -0
- package/CHANGELOG.md +25 -0
- package/CLAUDE.md +0 -0
- package/README.md +0 -0
- package/babel.config.cjs +0 -0
- package/codecov.yml +0 -0
- package/jest.config.js +0 -0
- package/jest.integration.config.js +0 -0
- package/jest.live.config.js +0 -0
- package/jsdoc.json +0 -0
- package/package.json +1 -1
- package/src/constants/award-assets.js +12 -9
- package/src/constants/membership-permissions.ts +0 -0
- package/src/contentMetaData.js +0 -0
- package/src/contentTypeConfig.js +8 -1
- package/src/filterBuilder.js +0 -0
- package/src/index.d.ts +0 -0
- package/src/index.js +0 -0
- package/src/infrastructure/http/HttpClient.ts +0 -0
- package/src/infrastructure/http/executors/FetchRequestExecutor.ts +0 -0
- package/src/infrastructure/http/index.ts +0 -0
- package/src/infrastructure/http/interfaces/HeaderProvider.ts +0 -0
- package/src/infrastructure/http/interfaces/HttpError.ts +0 -0
- package/src/infrastructure/http/interfaces/NetworkError.ts +0 -0
- package/src/infrastructure/http/interfaces/RequestExecutor.ts +0 -0
- package/src/infrastructure/http/interfaces/RequestOptions.ts +0 -0
- package/src/infrastructure/http/providers/DefaultHeaderProvider.ts +0 -0
- package/src/infrastructure/sanity/README.md +0 -0
- package/src/infrastructure/sanity/SanityClient.ts +0 -0
- package/src/infrastructure/sanity/clients/ContentClient.ts +0 -0
- package/src/infrastructure/sanity/examples/usage.ts +0 -0
- package/src/infrastructure/sanity/executors/FetchQueryExecutor.ts +0 -0
- package/src/infrastructure/sanity/index.ts +0 -0
- package/src/infrastructure/sanity/interfaces/ConfigProvider.ts +0 -0
- package/src/infrastructure/sanity/interfaces/FetchByIdOptions.ts +0 -0
- package/src/infrastructure/sanity/interfaces/QueryExecutor.ts +0 -0
- package/src/infrastructure/sanity/interfaces/SanityConfig.ts +0 -0
- package/src/infrastructure/sanity/interfaces/SanityError.ts +0 -0
- package/src/infrastructure/sanity/interfaces/SanityQuery.ts +0 -0
- package/src/infrastructure/sanity/interfaces/SanityResponse.ts +0 -0
- package/src/infrastructure/sanity/providers/DefaultConfigProvider.ts +0 -0
- package/src/lib/ads/monoid.ts +0 -0
- package/src/lib/ads/semigroup.ts +0 -0
- package/src/lib/brands.ts +0 -0
- package/src/lib/lastUpdated.js +0 -0
- package/src/lib/sanity/decorators/base.ts +0 -0
- package/src/lib/sanity/decorators/examples.ts +0 -0
- package/src/lib/sanity/decorators/navigate-to.ts +0 -0
- package/src/lib/sanity/decorators/need-access.ts +0 -0
- package/src/lib/sanity/decorators/need-lifetime-upgrade.ts +0 -0
- package/src/lib/sanity/decorators/page-type.ts +0 -0
- package/src/lib/sanity/field-access.ts +0 -0
- package/src/lib/sanity/filter.ts +0 -0
- package/src/lib/sanity/query.ts +0 -0
- package/src/services/api/types.js +0 -0
- package/src/services/api/types.ts +0 -0
- package/src/services/awards/award-callbacks.js +0 -0
- package/src/services/awards/award-query.js +0 -0
- package/src/services/awards/internal/.indexignore +0 -0
- package/src/services/awards/internal/award-definitions.js +0 -0
- package/src/services/awards/internal/award-events.js +0 -0
- package/src/services/awards/internal/award-manager.js +0 -0
- package/src/services/awards/internal/certificate-builder.js +0 -0
- package/src/services/awards/internal/completion-data-generator.js +0 -0
- package/src/services/awards/internal/content-progress-observer.js +0 -0
- package/src/services/awards/internal/image-utils.js +0 -0
- package/src/services/awards/internal/message-generator.js +0 -0
- package/src/services/awards/internal/types.js +0 -0
- package/src/services/awards/types.d.ts +0 -0
- package/src/services/awards/types.js +0 -0
- package/src/services/config.js +0 -0
- package/src/services/content/artist.ts +0 -0
- package/src/services/content/content.ts +0 -0
- package/src/services/content/genre.ts +0 -0
- package/src/services/content/instructor.ts +0 -0
- package/src/services/content-org/content-org.js +0 -0
- package/src/services/content-org/guided-courses.ts +0 -0
- package/src/services/content-org/learning-paths.ts +0 -0
- package/src/services/content-org/playlists-types.js +0 -0
- package/src/services/content-org/playlists.js +0 -0
- package/src/services/content.js +0 -0
- package/src/services/contentAggregator.js +0 -0
- package/src/services/contentLikes.js +0 -0
- package/src/services/contentProgress.js +0 -0
- package/src/services/dataContext.js +0 -0
- package/src/services/dateUtils.js +0 -0
- package/src/services/endScreen/README.md +0 -0
- package/src/services/endScreen/endScreen.ts +0 -0
- package/src/services/endScreen/types.ts +0 -0
- package/src/services/eventsAPI.js +0 -0
- package/src/services/forums/categories.ts +0 -0
- package/src/services/forums/forums.ts +0 -0
- package/src/services/forums/posts.ts +0 -0
- package/src/services/forums/threads.ts +0 -0
- package/src/services/gamification/awards.ts +0 -0
- package/src/services/gamification/gamification.js +0 -0
- package/src/services/imageSRCBuilder.js +0 -0
- package/src/services/imageSRCVerify.js +0 -0
- package/src/services/liveTesting.ts +0 -0
- package/src/services/multi-user-accounts/multi-user-accounts.ts +3 -1
- package/src/services/offline/activities.ts +0 -0
- package/src/services/offline/practices.ts +0 -0
- package/src/services/offline/progress.ts +0 -0
- package/src/services/permissions/PermissionsAdapter.ts +0 -0
- package/src/services/permissions/PermissionsAdapterFactory.ts +0 -0
- package/src/services/permissions/PermissionsV1Adapter.ts +0 -0
- package/src/services/permissions/PermissionsV2Adapter.ts +0 -0
- package/src/services/permissions/README.md +0 -0
- package/src/services/permissions/index.ts +0 -0
- package/src/services/permissions/permissions.ts +0 -0
- package/src/services/permissions/types.d.ts +0 -0
- package/src/services/progress/.indexignore +0 -0
- package/src/services/progress/collections.ts +0 -0
- package/src/services/progress/index.ts +0 -0
- package/src/services/progress/internal/bubble.ts +1 -1
- package/src/services/progress/internal/queries.ts +25 -7
- package/src/services/progress/state.ts +32 -47
- package/src/services/progress/types.ts +0 -0
- package/src/services/progress/utils.ts +0 -0
- package/src/services/progress-events.js +0 -0
- package/src/services/progress-row/base.js +0 -0
- package/src/services/progress-row/rows/.indexignore +0 -0
- package/src/services/progress-row/rows/content-card.js +0 -0
- package/src/services/progress-row/rows/method-card.js +0 -0
- package/src/services/progress-row/rows/playlist-card.js +0 -0
- package/src/services/railcontent.js +0 -0
- package/src/services/recommendations.js +0 -0
- package/src/services/reporting/README.md +0 -0
- package/src/services/reporting/reporting.ts +0 -0
- package/src/services/reporting/types.ts +0 -0
- package/src/services/search.ts +0 -0
- package/src/services/sentry/.indexignore +0 -0
- package/src/services/sentry/index.ts +0 -0
- package/src/services/state.ts +0 -0
- package/src/services/sync/.indexignore +0 -0
- package/src/services/sync/adapters/factory.ts +0 -0
- package/src/services/sync/adapters/lokijs.ts +0 -0
- package/src/services/sync/adapters/sqlite.ts +0 -0
- package/src/services/sync/context/index.ts +0 -0
- package/src/services/sync/context/providers/base.ts +0 -0
- package/src/services/sync/context/providers/connectivity.ts +0 -0
- package/src/services/sync/context/providers/durability.ts +0 -0
- package/src/services/sync/context/providers/index.ts +0 -0
- package/src/services/sync/context/providers/session.ts +0 -0
- package/src/services/sync/context/providers/tabs.ts +0 -0
- package/src/services/sync/context/providers/visibility.ts +0 -0
- package/src/services/sync/database/factory.ts +0 -0
- package/src/services/sync/debug.ts +0 -0
- package/src/services/sync/effects/index.ts +0 -0
- package/src/services/sync/effects/logout-warning.ts +0 -0
- package/src/services/sync/effects/push-failure-notification.ts +0 -0
- package/src/services/sync/errors/boundary.ts +0 -0
- package/src/services/sync/errors/index.ts +0 -0
- package/src/services/sync/errors/validators.ts +0 -0
- package/src/services/sync/fetch.ts +0 -0
- package/src/services/sync/index.ts +0 -0
- package/src/services/sync/manager.ts +0 -0
- package/src/services/sync/models/Base.ts +0 -0
- package/src/services/sync/models/ContentLike.ts +0 -0
- package/src/services/sync/models/ContentProgress.ts +0 -0
- package/src/services/sync/models/Practice.ts +0 -0
- package/src/services/sync/models/PracticeDayNote.ts +0 -0
- package/src/services/sync/models/UserAwardProgress.ts +0 -0
- package/src/services/sync/models/index.ts +0 -0
- package/src/services/sync/repositories/base.ts +0 -0
- package/src/services/sync/repositories/content-likes.ts +0 -0
- package/src/services/sync/repositories/content-progress.ts +0 -0
- package/src/services/sync/repositories/index.ts +0 -0
- package/src/services/sync/repositories/practice-day-notes.ts +0 -0
- package/src/services/sync/repositories/practices.ts +0 -0
- package/src/services/sync/repositories/user-award-progress.ts +0 -0
- package/src/services/sync/repository-proxy.ts +0 -0
- package/src/services/sync/resolver.ts +0 -0
- package/src/services/sync/retry.ts +0 -0
- package/src/services/sync/run-scope.ts +0 -0
- package/src/services/sync/schema/index.ts +0 -0
- package/src/services/sync/serializers/index.ts +0 -0
- package/src/services/sync/serializers/model.ts +0 -0
- package/src/services/sync/serializers/raw.ts +0 -0
- package/src/services/sync/stale-record-cleanup.ts +0 -0
- package/src/services/sync/store/index.ts +0 -0
- package/src/services/sync/store/push-coalescer.ts +0 -0
- package/src/services/sync/store-configs.ts +0 -0
- package/src/services/sync/strategies/base.ts +0 -0
- package/src/services/sync/strategies/index.ts +0 -0
- package/src/services/sync/strategies/initial.ts +0 -0
- package/src/services/sync/strategies/polling.ts +0 -0
- package/src/services/sync/telemetry/flood-prevention.ts +0 -0
- package/src/services/sync/telemetry/index.ts +0 -0
- package/src/services/sync/telemetry/sampling.ts +0 -0
- package/src/services/sync/utils/event-emitter.ts +0 -0
- package/src/services/sync/utils/index.ts +0 -0
- package/src/services/sync/utils/throttle.ts +0 -0
- package/src/services/sync/utils/timers.ts +0 -0
- package/src/services/types.js +0 -0
- package/src/services/urlBuilder.ts +0 -0
- package/src/services/user/account.ts +0 -0
- package/src/services/user/chat.js +0 -0
- package/src/services/user/interests.js +0 -0
- package/src/services/user/management.js +0 -0
- package/src/services/user/memberships.ts +5 -2
- package/src/services/user/notifications.js +0 -0
- package/src/services/user/onboarding.ts +0 -0
- package/src/services/user/payments.ts +0 -0
- package/src/services/user/playerSettings.ts +0 -0
- package/src/services/user/profile.ts +0 -0
- package/src/services/user/sessions.js +0 -0
- package/src/services/user/streakCalculator.ts +0 -0
- package/src/services/user/types.js +0 -0
- package/src/services/user/user-management-system.js +0 -0
- package/src/services/userActivity.js +0 -0
- package/src/services/whoLiked.ts +0 -0
- package/test/initializeTests.js +0 -0
- package/test/integration/awards/award-exclusion-handling.test.ts +0 -0
- package/test/integration/awards/internal/image-utils.test.ts +0 -0
- package/test/integration/content-progress/__mocks__/mocks.ts +0 -0
- package/test/integration/content-progress/contentProgress.test.ts +0 -0
- package/test/integration/content-progress/e2eOfflineProgress.test.ts +0 -0
- package/test/integration/content-progress/e2eProgress.test.ts +0 -0
- package/test/integration/content-progress/getters.test.ts +0 -0
- package/test/integration/content-progress/helpers.test.ts +0 -0
- package/test/integration/content-progress/offlineContentProgress.test.ts +0 -0
- package/test/integration/forums.test.ts +0 -0
- package/test/integration/infrastructure/FetchRequestExecutor.test.ts +0 -0
- package/test/integration/initializeTestDB.ts +0 -0
- package/test/integration/learning-paths.test.ts +0 -0
- package/test/integration/notifications.test.ts +0 -0
- package/test/integration/progress-row/content-card.test.ts +0 -0
- package/test/integration/sync/adapters/idb-errors.test.ts +0 -0
- package/test/integration/sync/adapters/sqlite-errors.test.ts +0 -0
- package/test/integration/sync/fetch.test.ts +0 -0
- package/test/integration/sync/repositories/content-likes.test.ts +0 -0
- package/test/integration/sync/repositories/practices.test.ts +0 -0
- package/test/integration/sync/repositories/progress.test.ts +0 -0
- package/test/integration/sync/repositories/user-award-progress.static.test.ts +0 -0
- package/test/integration/sync/repositories/user-award-progress.test.ts +0 -0
- package/test/integration/sync/store/cross-user-protection.test.ts +0 -0
- package/test/integration/sync/store/store-idb.test.ts +0 -0
- package/test/integration/sync/store/store.test.ts +0 -0
- package/test/integration/user/permissions.test.js +0 -0
- package/test/integration/userActivity.test.ts +0 -0
- package/test/live/README.md +0 -0
- package/test/live/content.test.js +0 -0
- package/test/localStorageMock.js +0 -0
- package/test/log.js +0 -0
- package/test/mockData/award-definitions.js +0 -0
- package/test/mockData/mockData_fetchByRailContentIds_one_content.json +0 -0
- package/test/mockData/mockData_progress_content.json +0 -0
- package/test/mockData/mockData_sanity_progress_content.json +0 -0
- package/test/mockData/mockData_user_practices.json +0 -0
- package/test/setupConsole.js +0 -0
- package/test/setupNetworkGuard.js +0 -0
- package/test/setupTimers.js +0 -0
- package/test/unit/HttpClient.test.ts +0 -0
- package/test/unit/awards/award-alacarte-observer.test.ts +0 -0
- package/test/unit/awards/award-auto-refresh.test.ts +0 -0
- package/test/unit/awards/award-calculations.test.ts +0 -0
- package/test/unit/awards/award-callbacks.test.ts +0 -0
- package/test/unit/awards/award-certificate-display.test.ts +0 -0
- package/test/unit/awards/award-collection-edge-cases.test.ts +0 -0
- package/test/unit/awards/award-collection-filtering.test.ts +0 -0
- package/test/unit/awards/award-completion-flow.test.ts +0 -0
- package/test/unit/awards/award-multi-lesson.test.ts +0 -0
- package/test/unit/awards/award-observer-integration.test.ts +0 -0
- package/test/unit/awards/award-query-messages.test.ts +0 -0
- package/test/unit/awards/award-user-collection.test.ts +0 -0
- package/test/unit/awards/duplicate-prevention.test.ts +0 -0
- package/test/unit/awards/helpers/completion-mock.ts +0 -0
- package/test/unit/awards/helpers/index.ts +0 -0
- package/test/unit/awards/helpers/mock-setup.ts +0 -0
- package/test/unit/awards/helpers/progress-emitter.ts +0 -0
- package/test/unit/awards/message-generator.test.ts +0 -0
- package/test/unit/content-progress/bubbleTrickle.test.ts +0 -0
- package/test/unit/content-progress/helpers.test.ts +0 -0
- package/test/unit/content-progress/navigateTo.test.ts +0 -0
- package/test/unit/contentLikes.test.ts +0 -0
- package/test/unit/contentMetaData.test.ts +0 -0
- package/test/unit/dataContext.test.ts +0 -0
- package/test/unit/dateUtils.test.ts +0 -0
- package/test/unit/endScreen.test.js +0 -0
- package/test/unit/imageSRCBuilder.test.ts +0 -0
- package/test/unit/imageSRCVerify.test.ts +0 -0
- package/test/unit/infrastructure/DefaultHeaderProvider.test.ts +0 -0
- package/test/unit/infrastructure/sanity/ContentClient.test.ts +0 -0
- package/test/unit/infrastructure/sanity/DefaultConfigProvider.test.ts +0 -0
- package/test/unit/infrastructure/sanity/FetchQueryExecutor.test.ts +0 -0
- package/test/unit/infrastructure/sanity/SanityClient.test.ts +0 -0
- package/test/unit/lib/__snapshots__/filter.test.ts.snap +0 -0
- package/test/unit/lib/filter.test.ts +0 -0
- package/test/unit/lib/lastUpdated.test.ts +0 -0
- package/test/unit/lib/query.test.ts +0 -0
- package/test/unit/lib/sanity/decorators/base.test.ts +0 -0
- package/test/unit/lib/sanity/decorators/navigate-to.test.ts +0 -0
- package/test/unit/lib/sanity/decorators/need-access.test.ts +0 -0
- package/test/unit/lib/sanity/decorators/need-lifetime-upgrade.test.ts +0 -0
- package/test/unit/lib/sanity/decorators/page-type.test.ts +0 -0
- package/test/unit/playerSettings.test.ts +0 -0
- package/test/unit/progress-row/content-card.test.ts +0 -0
- package/test/unit/progress-row/playlist-card.test.ts +0 -0
- package/test/unit/progressRows.test.ts +0 -0
- package/test/unit/recommendations.test.js +0 -0
- package/test/unit/sanityQueryService.test.ts +0 -0
- package/test/unit/search.test.ts +0 -0
- package/test/unit/sentry.test.ts +0 -0
- package/test/unit/services/progress-internal/bubble.test.ts +0 -0
- package/test/unit/services/progress.test.ts +0 -0
- package/test/unit/streakMessage.test.ts +0 -0
- package/test/unit/sync/context.test.ts +0 -0
- package/test/unit/sync/effects/logout-warning.test.ts +0 -0
- package/test/unit/sync/effects/push-failure-notification.test.ts +0 -0
- package/test/unit/sync/errors/sync-errors.test.ts +0 -0
- package/test/unit/sync/errors/validators.test.ts +0 -0
- package/test/unit/sync/helpers/TestModel.ts +0 -0
- package/test/unit/sync/helpers/index.ts +0 -0
- package/test/unit/sync/manager.test.ts +0 -0
- package/test/unit/sync/models/user-award-progress.test.ts +0 -0
- package/test/unit/sync/resolver.test.ts +0 -0
- package/test/unit/sync/retry.test.ts +0 -0
- package/test/unit/sync/run-scope.test.ts +0 -0
- package/test/unit/sync/stale-record-cleanup.test.ts +0 -0
- package/test/unit/sync/store/push-coalescer.test.ts +0 -0
- package/test/unit/sync/store-configs.test.ts +0 -0
- package/test/unit/sync/telemetry/sync-telemetry.test.ts +0 -0
- package/test/unit/sync/utils/event-emitter.test.ts +0 -0
- package/test/unit/sync/utils/throttle.test.ts +0 -0
- package/test/unit/url-builder.test.ts +0 -0
- package/test/unit/user/account.test.ts +0 -0
- package/test/unit/user/permissions.test.js +0 -0
- package/tools/generate-index.cjs +0 -0
- package/tsconfig.json +0 -0
- package/usage/sanity/decorators/examples.ts +0 -0
|
File without changes
|
package/test/unit/search.test.ts
CHANGED
|
File without changes
|
package/test/unit/sentry.test.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/tools/generate-index.cjs
CHANGED
|
File without changes
|
package/tsconfig.json
CHANGED
|
File without changes
|
|
File without changes
|