steelseries-sonar-sdk 0.2.0 → 0.2.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.
Files changed (188) hide show
  1. package/dist/index.js +874 -0
  2. package/package.json +7 -3
  3. package/.gitattributes +0 -8
  4. package/.github/workflows/tests.yml +0 -18
  5. package/.vscode/extensions.json +0 -8
  6. package/.vscode/settings.json +0 -33
  7. package/_.todo +0 -4
  8. package/biome.json +0 -62
  9. package/http/sonar.http +0 -104
  10. package/src/consts/fetch-options-put.ts +0 -3
  11. package/src/enums.ts +0 -88
  12. package/src/exceptions.ts +0 -45
  13. package/src/functions/audio/get-audio-data-classic.ts +0 -31
  14. package/src/functions/audio/get-audio-data-stream.ts +0 -37
  15. package/src/functions/audio/get-audio-mode.ts +0 -11
  16. package/src/functions/audio/set-audio-mode.ts +0 -12
  17. package/src/functions/audio/set-channel-mute-classic.ts +0 -35
  18. package/src/functions/audio/set-channel-mute-streamer.ts +0 -41
  19. package/src/functions/audio/set-channel-volume-classic.ts +0 -37
  20. package/src/functions/audio/set-channel-volume-streamer.ts +0 -43
  21. package/src/functions/chatmix/get-chat-mix-state.ts +0 -20
  22. package/src/functions/chatmix/set-chat-mix-balance.ts +0 -22
  23. package/src/functions/converters/convert-channel-to-api.ts +0 -19
  24. package/src/functions/converters/convert-chat-mix-balance-to-api.ts +0 -6
  25. package/src/functions/converters/convert-chat-mix-balance-to-user.ts +0 -7
  26. package/src/functions/converters/convert-profile-channel-to-api.ts +0 -19
  27. package/src/functions/converters/convert-profile-channel-to-user.ts +0 -19
  28. package/src/functions/converters/convert-volume-to-api.ts +0 -5
  29. package/src/functions/converters/convert-volume-to-user.ts +0 -6
  30. package/src/functions/devices/get-audio-devices.ts +0 -40
  31. package/src/functions/devices/set-audio-device.ts +0 -19
  32. package/src/functions/endpoint/get-app-endpoint.ts +0 -73
  33. package/src/functions/endpoint/get-sonar-endpoint-cached.ts +0 -28
  34. package/src/functions/endpoint/get-sonar-endpoint.ts +0 -88
  35. package/src/functions/profile/get-channel-profiles.ts +0 -26
  36. package/src/functions/profile/get-selected-profiles.ts +0 -17
  37. package/src/functions/profile/set-selected-profile.ts +0 -17
  38. package/src/index.ts +0 -41
  39. package/src/sonar/models/audio-settings/chatmix-data.ts +0 -6
  40. package/src/sonar/models/audio-settings/enums/audio-mode.ts +0 -4
  41. package/src/sonar/models/audio-settings/enums/chat-mix-state.ts +0 -6
  42. package/src/sonar/models/audio-settings/enums/device-data-flow.ts +0 -5
  43. package/src/sonar/models/audio-settings/enums/device-default-roles.ts +0 -6
  44. package/src/sonar/models/audio-settings/enums/device-role.ts +0 -9
  45. package/src/sonar/models/audio-settings/enums/device-state.ts +0 -8
  46. package/src/sonar/models/audio-settings/enums/sonar-channel.ts +0 -8
  47. package/src/sonar/models/audio-settings/enums/streaming-path.ts +0 -4
  48. package/src/sonar/models/audio-settings/volume-info-classic.ts +0 -4
  49. package/src/sonar/models/audio-settings/volume-info-streamer.ts +0 -10
  50. package/src/sonar/models/audio-settings/volume-settings-classic.ts +0 -13
  51. package/src/sonar/models/audio-settings/volume-settings-streamer.ts +0 -13
  52. package/src/sonar/models/config/config.ts +0 -9
  53. package/src/sonar/models/config/enums/VirtualAudioDevice.ts +0 -7
  54. package/src/sonar/models/devices/audio-device.ts +0 -17
  55. package/src/sonar/models/devices/changed-device.ts +0 -7
  56. package/src/sonar/requests/audio-devices/change-audio-device.ts +0 -37
  57. package/src/sonar/requests/audio-devices/request-audio-devices.ts +0 -42
  58. package/src/sonar/requests/chatmix/change-chat-mix-balance.ts +0 -25
  59. package/src/sonar/requests/chatmix/request-chat-mix-state.ts +0 -24
  60. package/src/sonar/requests/mode/change-audio-mode.ts +0 -24
  61. package/src/sonar/requests/mode/request-audio-mode.ts +0 -24
  62. package/src/sonar/requests/profiles/change-selected-config.ts +0 -25
  63. package/src/sonar/requests/profiles/request-configs.ts +0 -24
  64. package/src/sonar/requests/profiles/request-selected-configs.ts +0 -22
  65. package/src/sonar/requests/volume-settings/change-volume-level-classic.ts +0 -27
  66. package/src/sonar/requests/volume-settings/change-volume-level-streamer.ts +0 -29
  67. package/src/sonar/requests/volume-settings/change-volume-mute-classic.ts +0 -27
  68. package/src/sonar/requests/volume-settings/change-volume-mute-streamer.ts +0 -29
  69. package/src/sonar/requests/volume-settings/request-volume-settings-classic.ts +0 -22
  70. package/src/sonar/requests/volume-settings/request-volume-settings-streamer.ts +0 -22
  71. package/src/types/audio-device.ts +0 -7
  72. package/src/types/changed-device.ts +0 -7
  73. package/src/types/channel-volume-classic.ts +0 -4
  74. package/src/types/channel-volume-streamer-path.ts +0 -4
  75. package/src/types/channel-volume-streamer.ts +0 -6
  76. package/src/types/channel-volumes-classic.ts +0 -8
  77. package/src/types/channel-volumes-streamer.ts +0 -8
  78. package/src/types/chat-mix-data.ts +0 -7
  79. package/src/types/profile-option.ts +0 -9
  80. package/tests/e2e/audio/get-audio-data-classic.real.test.ts +0 -11
  81. package/tests/e2e/audio/get-audio-data-stream.real.test.ts +0 -11
  82. package/tests/e2e/audio/get-audio-mode.real.test.ts +0 -12
  83. package/tests/e2e/audio/set-audio-mode.real.test.ts +0 -20
  84. package/tests/e2e/audio/set-channel-mute-classic.real.test.ts +0 -18
  85. package/tests/e2e/audio/set-channel-mute-streamer.real.test.ts +0 -18
  86. package/tests/e2e/audio/set-channel-volume-classic.real.test.ts +0 -17
  87. package/tests/e2e/audio/set-channel-volume-streamer.real.test.ts +0 -22
  88. package/tests/e2e/chatmix/get-chat-mix-state.real.test.ts +0 -25
  89. package/tests/e2e/chatmix/set-chat-mix-balance.real.test.ts +0 -25
  90. package/tests/e2e/devices/get-audio-devices.real.test.ts +0 -29
  91. package/tests/e2e/devices/set-audio-device.real.test.ts +0 -32
  92. package/tests/e2e/enpoint/get-app-endpoint.real.test.ts +0 -19
  93. package/tests/e2e/enpoint/get-sonar-endpoint-cached.real.test.ts +0 -32
  94. package/tests/e2e/enpoint/get-sonar-endpoint.real.test.ts +0 -21
  95. package/tests/e2e/profiles/get-channel-profiles.real.test.ts +0 -21
  96. package/tests/e2e/profiles/get-selected-profiles.real.test.ts +0 -11
  97. package/tests/e2e/profiles/set-selected-profile.real.test.ts +0 -17
  98. package/tests/helpers/get-endpoint-e2e.ts +0 -8
  99. package/tests/unit/audio/get-audio-data-classic.test.ts +0 -57
  100. package/tests/unit/audio/get-audio-data-stream.test.ts +0 -65
  101. package/tests/unit/audio/get-audio-mode.test.ts +0 -58
  102. package/tests/unit/audio/set-audio-mode.test.ts +0 -66
  103. package/tests/unit/audio/set-channel-mute-classic.test.ts +0 -58
  104. package/tests/unit/audio/set-channel-mute-streamer.test.ts +0 -64
  105. package/tests/unit/audio/set-channel-volume-classic.test.ts +0 -58
  106. package/tests/unit/audio/set-channel-volume-streamer.test.ts +0 -64
  107. package/tests/unit/chatmix/get-chat-mix-state.test.ts +0 -70
  108. package/tests/unit/chatmix/set-chat-mix-balance.test.ts +0 -58
  109. package/tests/unit/devices/get-audio-devices.test.ts +0 -59
  110. package/tests/unit/devices/set-audio-devices.test.ts +0 -62
  111. package/tests/unit/endpoint/get-app-endpoint.test.ts +0 -72
  112. package/tests/unit/endpoint/get-sonar-endpoint-cached.test.ts +0 -93
  113. package/tests/unit/endpoint/get-sonar-endpoint.test.ts +0 -140
  114. package/tests/unit/profiles/get-channel-profiles.test.ts +0 -91
  115. package/tests/unit/profiles/get-selected-profiles.test.ts +0 -64
  116. package/tests/unit/profiles/set-selected-profile.test.ts +0 -55
  117. package/tsconfig.build.json +0 -12
  118. package/tsconfig.json +0 -36
  119. /package/{src → dist}/consts/fetch-options-put.d.ts +0 -0
  120. /package/{src → dist}/enums.d.ts +0 -0
  121. /package/{src → dist}/exceptions.d.ts +0 -0
  122. /package/{src → dist}/functions/audio/get-audio-data-classic.d.ts +0 -0
  123. /package/{src → dist}/functions/audio/get-audio-data-stream.d.ts +0 -0
  124. /package/{src → dist}/functions/audio/get-audio-mode.d.ts +0 -0
  125. /package/{src → dist}/functions/audio/set-audio-mode.d.ts +0 -0
  126. /package/{src → dist}/functions/audio/set-channel-mute-classic.d.ts +0 -0
  127. /package/{src → dist}/functions/audio/set-channel-mute-streamer.d.ts +0 -0
  128. /package/{src → dist}/functions/audio/set-channel-volume-classic.d.ts +0 -0
  129. /package/{src → dist}/functions/audio/set-channel-volume-streamer.d.ts +0 -0
  130. /package/{src → dist}/functions/chatmix/get-chat-mix-state.d.ts +0 -0
  131. /package/{src → dist}/functions/chatmix/set-chat-mix-balance.d.ts +0 -0
  132. /package/{src → dist}/functions/converters/convert-channel-to-api.d.ts +0 -0
  133. /package/{src → dist}/functions/converters/convert-chat-mix-balance-to-api.d.ts +0 -0
  134. /package/{src → dist}/functions/converters/convert-chat-mix-balance-to-user.d.ts +0 -0
  135. /package/{src → dist}/functions/converters/convert-profile-channel-to-api.d.ts +0 -0
  136. /package/{src → dist}/functions/converters/convert-profile-channel-to-user.d.ts +0 -0
  137. /package/{src → dist}/functions/converters/convert-volume-to-api.d.ts +0 -0
  138. /package/{src → dist}/functions/converters/convert-volume-to-user.d.ts +0 -0
  139. /package/{src → dist}/functions/devices/get-audio-devices.d.ts +0 -0
  140. /package/{src → dist}/functions/devices/set-audio-device.d.ts +0 -0
  141. /package/{src → dist}/functions/endpoint/get-app-endpoint.d.ts +0 -0
  142. /package/{src → dist}/functions/endpoint/get-sonar-endpoint-cached.d.ts +0 -0
  143. /package/{src → dist}/functions/endpoint/get-sonar-endpoint.d.ts +0 -0
  144. /package/{src → dist}/functions/profile/get-channel-profiles.d.ts +0 -0
  145. /package/{src → dist}/functions/profile/get-selected-profiles.d.ts +0 -0
  146. /package/{src → dist}/functions/profile/set-selected-profile.d.ts +0 -0
  147. /package/{src → dist}/index.d.ts +0 -0
  148. /package/{src → dist}/sonar/models/audio-settings/chatmix-data.d.ts +0 -0
  149. /package/{src → dist}/sonar/models/audio-settings/enums/audio-mode.d.ts +0 -0
  150. /package/{src → dist}/sonar/models/audio-settings/enums/chat-mix-state.d.ts +0 -0
  151. /package/{src → dist}/sonar/models/audio-settings/enums/device-data-flow.d.ts +0 -0
  152. /package/{src → dist}/sonar/models/audio-settings/enums/device-default-roles.d.ts +0 -0
  153. /package/{src → dist}/sonar/models/audio-settings/enums/device-role.d.ts +0 -0
  154. /package/{src → dist}/sonar/models/audio-settings/enums/device-state.d.ts +0 -0
  155. /package/{src → dist}/sonar/models/audio-settings/enums/sonar-channel.d.ts +0 -0
  156. /package/{src → dist}/sonar/models/audio-settings/enums/streaming-path.d.ts +0 -0
  157. /package/{src → dist}/sonar/models/audio-settings/volume-info-classic.d.ts +0 -0
  158. /package/{src → dist}/sonar/models/audio-settings/volume-info-streamer.d.ts +0 -0
  159. /package/{src → dist}/sonar/models/audio-settings/volume-settings-classic.d.ts +0 -0
  160. /package/{src → dist}/sonar/models/audio-settings/volume-settings-streamer.d.ts +0 -0
  161. /package/{src → dist}/sonar/models/config/config.d.ts +0 -0
  162. /package/{src → dist}/sonar/models/config/enums/VirtualAudioDevice.d.ts +0 -0
  163. /package/{src → dist}/sonar/models/devices/audio-device.d.ts +0 -0
  164. /package/{src → dist}/sonar/models/devices/changed-device.d.ts +0 -0
  165. /package/{src → dist}/sonar/requests/audio-devices/change-audio-device.d.ts +0 -0
  166. /package/{src → dist}/sonar/requests/audio-devices/request-audio-devices.d.ts +0 -0
  167. /package/{src → dist}/sonar/requests/chatmix/change-chat-mix-balance.d.ts +0 -0
  168. /package/{src → dist}/sonar/requests/chatmix/request-chat-mix-state.d.ts +0 -0
  169. /package/{src → dist}/sonar/requests/mode/change-audio-mode.d.ts +0 -0
  170. /package/{src → dist}/sonar/requests/mode/request-audio-mode.d.ts +0 -0
  171. /package/{src → dist}/sonar/requests/profiles/change-selected-config.d.ts +0 -0
  172. /package/{src → dist}/sonar/requests/profiles/request-configs.d.ts +0 -0
  173. /package/{src → dist}/sonar/requests/profiles/request-selected-configs.d.ts +0 -0
  174. /package/{src → dist}/sonar/requests/volume-settings/change-volume-level-classic.d.ts +0 -0
  175. /package/{src → dist}/sonar/requests/volume-settings/change-volume-level-streamer.d.ts +0 -0
  176. /package/{src → dist}/sonar/requests/volume-settings/change-volume-mute-classic.d.ts +0 -0
  177. /package/{src → dist}/sonar/requests/volume-settings/change-volume-mute-streamer.d.ts +0 -0
  178. /package/{src → dist}/sonar/requests/volume-settings/request-volume-settings-classic.d.ts +0 -0
  179. /package/{src → dist}/sonar/requests/volume-settings/request-volume-settings-streamer.d.ts +0 -0
  180. /package/{src → dist}/types/audio-device.d.ts +0 -0
  181. /package/{src → dist}/types/changed-device.d.ts +0 -0
  182. /package/{src → dist}/types/channel-volume-classic.d.ts +0 -0
  183. /package/{src → dist}/types/channel-volume-streamer-path.d.ts +0 -0
  184. /package/{src → dist}/types/channel-volume-streamer.d.ts +0 -0
  185. /package/{src → dist}/types/channel-volumes-classic.d.ts +0 -0
  186. /package/{src → dist}/types/channel-volumes-streamer.d.ts +0 -0
  187. /package/{src → dist}/types/chat-mix-data.d.ts +0 -0
  188. /package/{src → dist}/types/profile-option.d.ts +0 -0
@@ -1,91 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it } from 'bun:test'
2
- import { ProfileChannel } from '@/enums'
3
- import { SonarRequestException } from '@/exceptions'
4
- import { getChannelProfiles } from '@/functions/profile/get-channel-profiles'
5
- import { VirtualAudioDevice } from '@/sonar/models/config/enums/VirtualAudioDevice'
6
-
7
- let originalFetch: typeof fetch
8
-
9
- const request = (favorite?: boolean) => getChannelProfiles('http://localhost', ProfileChannel.Media, favorite)
10
-
11
- describe('getChannelProfiles', () => {
12
- beforeEach(() => {
13
- originalFetch = globalThis.fetch
14
- })
15
-
16
- afterEach(() => {
17
- globalThis.fetch = originalFetch
18
- })
19
-
20
- it('throws SonarException when response not 200', async () => {
21
- globalThis.fetch = (async () =>
22
- ({
23
- ok: false,
24
- json: async () => 'Some error occurred'
25
- }) as Response) as unknown as typeof fetch
26
-
27
- expect(request()).rejects.toThrow(SonarRequestException)
28
- })
29
-
30
- it('throws SonarException when response 200 but not data', async () => {
31
- globalThis.fetch = (async () =>
32
- ({
33
- ok: true,
34
- json: async () => ({})
35
- }) as Response) as unknown as typeof fetch
36
-
37
- expect(request()).rejects.toThrow(SonarRequestException)
38
- })
39
-
40
- it('return data when response 200', async () => {
41
- globalThis.fetch = (async () =>
42
- ({
43
- ok: true,
44
- json: async () => [
45
- {
46
- id: 'one',
47
- name: 'one',
48
- isFavorite: true,
49
- virtualAudioDevice: VirtualAudioDevice.Game,
50
- image: 'string'
51
- },
52
- {
53
- id: 'two',
54
- name: 'two',
55
- isFavorite: false,
56
- virtualAudioDevice: VirtualAudioDevice.Game,
57
- image: 'string'
58
- }
59
- ]
60
- }) as Response) as unknown as typeof fetch
61
-
62
- const response = await request()
63
- expect(response.length).toBe(2)
64
- })
65
-
66
- it('return favorites data when response 200', async () => {
67
- globalThis.fetch = (async () =>
68
- ({
69
- ok: true,
70
- json: async () => [
71
- {
72
- id: 'one',
73
- name: 'one',
74
- isFavorite: true,
75
- virtualAudioDevice: VirtualAudioDevice.Game,
76
- image: 'string'
77
- },
78
- {
79
- id: 'two',
80
- name: 'two',
81
- isFavorite: false,
82
- virtualAudioDevice: VirtualAudioDevice.Game,
83
- image: 'string'
84
- }
85
- ]
86
- }) as Response) as unknown as typeof fetch
87
-
88
- const response = await request(true)
89
- expect(response.length).toBe(1)
90
- })
91
- })
@@ -1,64 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it } from 'bun:test'
2
- import { SonarRequestException } from '@/exceptions'
3
- import { getSelectedProfiles } from '@/functions/profile/get-selected-profiles'
4
- import { VirtualAudioDevice } from '@/sonar/models/config/enums/VirtualAudioDevice'
5
-
6
- let originalFetch: typeof fetch
7
-
8
- const request = () => getSelectedProfiles('http://localhost')
9
-
10
- describe('getSelectedProfiles', () => {
11
- beforeEach(() => {
12
- originalFetch = globalThis.fetch
13
- })
14
-
15
- afterEach(() => {
16
- globalThis.fetch = originalFetch
17
- })
18
-
19
- it('throws SonarException when response not 200', async () => {
20
- globalThis.fetch = (async () =>
21
- ({
22
- ok: false,
23
- json: async () => 'Some error occurred'
24
- }) as Response) as unknown as typeof fetch
25
-
26
- expect(request()).rejects.toThrow(SonarRequestException)
27
- })
28
-
29
- it('throws SonarException when response 200 but not data', async () => {
30
- globalThis.fetch = (async () =>
31
- ({
32
- ok: true,
33
- json: async () => ({})
34
- }) as Response) as unknown as typeof fetch
35
-
36
- expect(request()).rejects.toThrow(SonarRequestException)
37
- })
38
-
39
- it('return data when response 200', async () => {
40
- globalThis.fetch = (async () =>
41
- ({
42
- ok: true,
43
- json: async () => [
44
- {
45
- id: 'one',
46
- name: 'one',
47
- isFavorite: true,
48
- virtualAudioDevice: VirtualAudioDevice.Game,
49
- image: 'string'
50
- },
51
- {
52
- id: 'two',
53
- name: 'two',
54
- isFavorite: false,
55
- virtualAudioDevice: VirtualAudioDevice.Media,
56
- image: 'string'
57
- }
58
- ]
59
- }) as Response) as unknown as typeof fetch
60
-
61
- const response = await request()
62
- expect(response.length).toBe(2)
63
- })
64
- })
@@ -1,55 +0,0 @@
1
- import { afterEach, beforeEach, describe, expect, it } from 'bun:test'
2
- import { SonarRequestException } from '@/exceptions'
3
- import { setSelectedProfile } from '@/functions/profile/set-selected-profile'
4
- import { VirtualAudioDevice } from '@/sonar/models/config/enums/VirtualAudioDevice'
5
-
6
- let originalFetch: typeof fetch
7
-
8
- const request = () => setSelectedProfile('http://localhost', 'one')
9
-
10
- describe('setSelectedProfile', () => {
11
- beforeEach(() => {
12
- originalFetch = globalThis.fetch
13
- })
14
-
15
- afterEach(() => {
16
- globalThis.fetch = originalFetch
17
- })
18
-
19
- it('throws SonarException when response not 200', async () => {
20
- globalThis.fetch = (async () =>
21
- ({
22
- ok: false,
23
- json: async () => 'Some error occurred'
24
- }) as Response) as unknown as typeof fetch
25
-
26
- expect(request()).rejects.toThrow(SonarRequestException)
27
- })
28
-
29
- it('throws SonarException when response 200 but not data', async () => {
30
- globalThis.fetch = (async () =>
31
- ({
32
- ok: true,
33
- json: async () => ({})
34
- }) as Response) as unknown as typeof fetch
35
-
36
- expect(request()).rejects.toThrow(SonarRequestException)
37
- })
38
-
39
- it('return data when response 200', async () => {
40
- globalThis.fetch = (async () =>
41
- ({
42
- ok: true,
43
- json: async () => ({
44
- id: 'one',
45
- name: 'one',
46
- isFavorite: true,
47
- virtualAudioDevice: VirtualAudioDevice.Game,
48
- image: 'string'
49
- })
50
- }) as Response) as unknown as typeof fetch
51
-
52
- const response = await request()
53
- expect(response.id).toBe('one')
54
- })
55
- })
@@ -1,12 +0,0 @@
1
- {
2
- "extends": "./tsconfig.json",
3
- "compilerOptions": {
4
- "noEmit": false,
5
- "declaration": true,
6
- "emitDeclarationOnly": true,
7
- "declarationMap": false,
8
- "outDir": "dist",
9
- "rootDir": "src"
10
- },
11
- "exclude": ["tests"]
12
- }
package/tsconfig.json DELETED
@@ -1,36 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- // Environment setup & latest features
4
- "lib": ["ESNext"],
5
- "target": "ESNext",
6
- "module": "Preserve",
7
- "moduleDetection": "force",
8
- "jsx": "react-jsx",
9
- "allowJs": true,
10
-
11
- // Bundler mode
12
- "moduleResolution": "bundler",
13
- "allowImportingTsExtensions": true,
14
- "verbatimModuleSyntax": true,
15
- "noEmit": true,
16
-
17
- // Best practices
18
- "strict": true,
19
- "skipLibCheck": true,
20
- "noFallthroughCasesInSwitch": true,
21
- "noUncheckedIndexedAccess": true,
22
- "noImplicitOverride": true,
23
-
24
- // Some stricter flags (disabled by default)
25
- "noUnusedLocals": false,
26
- "noUnusedParameters": false,
27
- "noPropertyAccessFromIndexSignature": false,
28
-
29
- // Path alias for '@' to 'src/'
30
- "baseUrl": ".",
31
- "paths": {
32
- "@/*": ["src/*"]
33
- }
34
- },
35
- "exclude": ["dist"]
36
- }
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