musora-content-services 2.166.0 → 2.167.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,52 @@
1
+ {
2
+ "permissions": {
3
+ "allow": [
4
+ "Bash(npx jest *)",
5
+ "Bash(npx tsc *)",
6
+ "Skill(counselors)",
7
+ "Bash(counselors ls *)",
8
+ "Bash(counselors groups *)",
9
+ "Bash(counselors run *)",
10
+ "Bash(npm test *)",
11
+ "Bash(gh pr *)",
12
+ "Bash(gh api *)",
13
+ "Bash(mkdir -p /tmp/pr-review-v2)",
14
+ "Read(//tmp/pr-review-v2/**)",
15
+ "Bash(cat /home/alesevero/railenvironment/applications/musora-content-services/AGENTS.md)",
16
+ "Bash(echo \"no AGENTS.md\")",
17
+ "Bash(echo \"exit=$?\")",
18
+ "Bash(git checkout *)",
19
+ "Skill(pr)",
20
+ "Skill(create-decision)",
21
+ "mcp__github__pull_request_read",
22
+ "mcp__github__push_files",
23
+ "Bash(git push *)",
24
+ "mcp__github__create_pull_request",
25
+ "mcp__github__search_pull_requests",
26
+ "Bash(git commit *)",
27
+ "Bash(git add *)"
28
+ ]
29
+ },
30
+ "model": "sonnet",
31
+ "enabledMcpjsonServers": [
32
+ "atlassian",
33
+ "figma",
34
+ "google-workspace",
35
+ "snowflake",
36
+ "aws",
37
+ "hex",
38
+ "sanity",
39
+ "mysql",
40
+ "slack",
41
+ "langfuse",
42
+ "chrome-devtools",
43
+ "railway",
44
+ "github",
45
+ "asana"
46
+ ],
47
+ "disabledMcpjsonServers": [
48
+ "nightwatch",
49
+ "1password"
50
+ ],
51
+ "effortLevel": "medium"
52
+ }
package/CHANGELOG.md CHANGED
@@ -2,6 +2,26 @@
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.167.1](https://github.com/railroadmedia/musora-content-services/compare/v2.167.0...v2.167.1) (2026-07-13)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **accounts:** allow confirmation email for extra options ([5437d11](https://github.com/railroadmedia/musora-content-services/commit/5437d114437dbe5b4e316ebc440ce957cd9a496c))
11
+
12
+ ## [2.167.0](https://github.com/railroadmedia/musora-content-services/compare/v2.165.5...v2.167.0) (2026-07-13)
13
+
14
+
15
+ ### Features
16
+
17
+ * **BEHLPT-186:** subscription upgrade endpoints ([#1003](https://github.com/railroadmedia/musora-content-services/issues/1003)) ([9da55f2](https://github.com/railroadmedia/musora-content-services/commit/9da55f24708976190317a3b69381acbccce2f33c))
18
+
19
+
20
+ ### Bug Fixes
21
+
22
+ * **BR-658:** add playbass logo for ceritificates ([#1006](https://github.com/railroadmedia/musora-content-services/issues/1006)) ([da52391](https://github.com/railroadmedia/musora-content-services/commit/da5239178c3526c685b84220009f1f4e0774deb9))
23
+ * **BR-671:** fix Latin/World style search ([#1002](https://github.com/railroadmedia/musora-content-services/issues/1002)) ([25fdff8](https://github.com/railroadmedia/musora-content-services/commit/25fdff80c6279e8568ea057ac250f7e057717ccf))
24
+
5
25
  ## [2.166.0](https://github.com/railroadmedia/musora-content-services/compare/v2.165.5...v2.166.0) (2026-07-02)
6
26
 
7
27
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "musora-content-services",
3
- "version": "2.166.0",
3
+ "version": "2.167.1",
4
4
  "description": "A package for Musoras content services ",
5
5
  "main": "src/index.js",
6
6
  "type": "module",
@@ -21,15 +21,18 @@
21
21
 
22
22
  /** @type {AwardAssets} */
23
23
  export const AWARD_ASSETS = {
24
- ribbon: "https://d3fzm1tzeyr5n3.cloudfront.net/challenges/gold_ribbon.png",
25
- musoraLogo: "https://d3fzm1tzeyr5n3.cloudfront.net/challenges/on_musora.png",
26
- musoraBgLogo: "https://d3fzm1tzeyr5n3.cloudfront.net/challenges/certificate_logo.png",
24
+ ribbon: 'https://d3fzm1tzeyr5n3.cloudfront.net/challenges/gold_ribbon.png',
25
+ musoraLogo: 'https://d3fzm1tzeyr5n3.cloudfront.net/challenges/on_musora.png',
26
+ musoraBgLogo: 'https://d3fzm1tzeyr5n3.cloudfront.net/challenges/certificate_logo.png',
27
27
 
28
28
  brandLogos: {
29
- drumeo: "https://dpwjbsxqtam5n.cloudfront.net/logos/logo-blue.png",
30
- singeo: "https://d21xeg6s76swyd.cloudfront.net/sales/2021/singeo-logo.png",
31
- guitareo: "https://d122ay5chh2hr5.cloudfront.net/sales/guitareo-logo-green.png",
32
- pianote: "https://d21q7xesnoiieh.cloudfront.net/fit-in/marketing/pianote/membership/homepage/2023/pianote-logo-red.png",
33
- musora: "https://d3fzm1tzeyr5n3.cloudfront.net/challenges/on_musora.png"
34
- }
29
+ drumeo: 'https://dpwjbsxqtam5n.cloudfront.net/logos/logo-blue.png',
30
+ singeo: 'https://d21xeg6s76swyd.cloudfront.net/sales/2021/singeo-logo.png',
31
+ guitareo: 'https://d122ay5chh2hr5.cloudfront.net/sales/guitareo-logo-green.png',
32
+ pianote:
33
+ 'https://d21q7xesnoiieh.cloudfront.net/fit-in/marketing/pianote/membership/homepage/2023/pianote-logo-red.png',
34
+ playbass:
35
+ 'https://d21q7xesnoiieh.cloudfront.net/fit-in/1400x0/filters:quality(95)/marketing/musora/membership/homepage/2026/logo-playbass2.svg',
36
+ musora: 'https://d3fzm1tzeyr5n3.cloudfront.net/challenges/on_musora.png',
37
+ },
35
38
  }
@@ -22,17 +22,27 @@ export async function status(email: string): Promise<{ requires_setup: boolean }
22
22
  )
23
23
  }
24
24
 
25
+ export interface SendAccountSetupEmailOptions {
26
+ has_skipped_paywall?: boolean
27
+ [key: string]: any
28
+ }
29
+
25
30
  /**
26
- * @param {string} email - The email address to send the account setup email to.
31
+ * @param {Send} email - The email address to send the account setup email to.
27
32
  * @returns {Promise<void>} - A promise that resolves when the email is sent or an HttpError if the request fails.
28
33
  * @throws {HttpError} - Throws HttpError if the request fails.
29
34
  */
30
- export async function sendAccountSetupEmail(email: string, token?: string): Promise<void> {
35
+ export async function sendAccountSetupEmail(
36
+ email: string,
37
+ token?: string,
38
+ options: SendAccountSetupEmailOptions = { has_skipped_paywall: false }
39
+ ): Promise<void> {
31
40
  const httpClient = new HttpClient(globalConfig.baseUrl)
32
41
  return httpClient.post<void>(
33
42
  `/api/user-management-system/v1/accounts/${encodeURIComponent(email)}/send-setup-email`,
34
43
  {
35
44
  token,
45
+ ...options,
36
46
  }
37
47
  )
38
48
  }
@@ -23,6 +23,7 @@ export interface MembershipData {
23
23
  export interface UserMembershipResponse {
24
24
  user_membership_data: MembershipData[]
25
25
  can_upgrade_membership: boolean // pre multiUserAccount data
26
+ need_lifetime_upgrade: boolean
26
27
  sub_account_data: MultiUserAccountResponse // post multiUserAccount data
27
28
  upgrade_options: UpgradeOption[] // post multiuser account data
28
29
  }
@@ -27,7 +27,7 @@ describe('sendAccountSetupEmail', () => {
27
27
 
28
28
  expect(mockPost).toHaveBeenCalledWith(
29
29
  '/api/user-management-system/v1/accounts/user%40example.com/send-setup-email',
30
- { token: 'abc123' }
30
+ { token: 'abc123', has_skipped_paywall: false }
31
31
  )
32
32
  })
33
33
 
@@ -38,7 +38,7 @@ describe('sendAccountSetupEmail', () => {
38
38
 
39
39
  expect(mockPost).toHaveBeenCalledWith(
40
40
  '/api/user-management-system/v1/accounts/user%40example.com/send-setup-email',
41
- { token: undefined }
41
+ { token: undefined, has_skipped_paywall: false }
42
42
  )
43
43
  })
44
44
 
@@ -49,7 +49,18 @@ describe('sendAccountSetupEmail', () => {
49
49
 
50
50
  expect(mockPost).toHaveBeenCalledWith(
51
51
  '/api/user-management-system/v1/accounts/user%2Btag%40example.com/send-setup-email',
52
- { token: 'tok' }
52
+ { token: 'tok', has_skipped_paywall: false }
53
+ )
54
+ })
55
+
56
+ it('posts has_skipped_paywall true when set in options', async () => {
57
+ mockPost.mockResolvedValueOnce(undefined)
58
+
59
+ await sendAccountSetupEmail('user@example.com', 'abc123', { has_skipped_paywall: true })
60
+
61
+ expect(mockPost).toHaveBeenCalledWith(
62
+ '/api/user-management-system/v1/accounts/user%40example.com/send-setup-email',
63
+ { token: 'abc123', has_skipped_paywall: true }
53
64
  )
54
65
  })
55
66
  })