diff --git a/.changeset/nice-buttons-happen.md b/.changeset/nice-buttons-happen.md new file mode 100644 index 0000000..6d5dc25 --- /dev/null +++ b/.changeset/nice-buttons-happen.md @@ -0,0 +1,5 @@ +--- +'@mermaidchart/sdk': patch +--- + +Add `analyticsID`, `avatarUrl`, `mermaidTheme`, and `mermaidLook` return types to `getUser()` diff --git a/packages/cli/src/commander.test.ts b/packages/cli/src/commander.test.ts index 0691575..336fac6 100644 --- a/packages/cli/src/commander.test.ts +++ b/packages/cli/src/commander.test.ts @@ -59,6 +59,8 @@ beforeAll(async () => { const mockedMCUser = { fullName: 'My Test User', emailAddress: 'my-test-user@test.invalid', + analyticsID: '00000000-0000-0000-0000-0000000000aa', + avatarUrl: null, } as const satisfies MCUser; const mockedProjects = [ { diff --git a/packages/sdk/src/index.e2e.test.ts b/packages/sdk/src/index.e2e.test.ts index ff85b99..afac069 100644 --- a/packages/sdk/src/index.e2e.test.ts +++ b/packages/sdk/src/index.e2e.test.ts @@ -79,6 +79,16 @@ describe('getUser', () => { const user = await client.getUser(); expect(user).toHaveProperty('emailAddress'); + expect(user).toHaveProperty('analyticsID'); + expect(typeof user.analyticsID).toBe('string'); + expect(user.analyticsID.length).toBeGreaterThan(0); + expect(user.avatarUrl === null || typeof user.avatarUrl === 'string').toBe(true); + if (user.mermaidTheme !== undefined) { + expect(typeof user.mermaidTheme).toBe('string'); + } + if (user.mermaidLook !== undefined) { + expect(typeof user.mermaidLook).toBe('string'); + } }); }); diff --git a/packages/sdk/src/index.test.ts b/packages/sdk/src/index.test.ts index a3d9b3b..20d24d8 100644 --- a/packages/sdk/src/index.test.ts +++ b/packages/sdk/src/index.test.ts @@ -37,6 +37,8 @@ describe('MermaidChart', () => { return { fullName: 'Test User', emailAddress: 'test@invalid.invalid', + analyticsID: '00000000-0000-0000-0000-0000000000aa', + avatarUrl: null, }; }); }); diff --git a/packages/sdk/src/types.ts b/packages/sdk/src/types.ts index 08e4578..1e95651 100644 --- a/packages/sdk/src/types.ts +++ b/packages/sdk/src/types.ts @@ -22,6 +22,10 @@ export interface AuthState { export interface MCUser { fullName: string; emailAddress: string; + analyticsID: string; + avatarUrl: string | null; + mermaidTheme?: string; + mermaidLook?: string; } export interface AICreditsUsage {