@seamapi/http 0.1.0 → 0.2.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.
Files changed (122) hide show
  1. package/dist/connect.cjs +773 -366
  2. package/dist/connect.cjs.map +1 -1
  3. package/dist/connect.d.cts +225 -143
  4. package/lib/params-serializer.d.ts +5 -0
  5. package/lib/params-serializer.js +42 -0
  6. package/lib/params-serializer.js.map +1 -0
  7. package/lib/seam/connect/auth.d.ts +3 -2
  8. package/lib/seam/connect/auth.js +55 -4
  9. package/lib/seam/connect/auth.js.map +1 -1
  10. package/lib/seam/connect/client.d.ts +10 -22
  11. package/lib/seam/connect/client.js +17 -77
  12. package/lib/seam/connect/client.js.map +1 -1
  13. package/lib/seam/connect/index.d.ts +3 -1
  14. package/lib/seam/connect/index.js +3 -1
  15. package/lib/seam/connect/index.js.map +1 -1
  16. package/lib/seam/connect/{client-options.d.ts → options.d.ts} +9 -7
  17. package/lib/seam/connect/{client-options.js → options.js} +5 -10
  18. package/lib/seam/connect/options.js.map +1 -0
  19. package/lib/seam/connect/parse-options.d.ts +6 -2
  20. package/lib/seam/connect/parse-options.js +34 -16
  21. package/lib/seam/connect/parse-options.js.map +1 -1
  22. package/lib/seam/connect/routes/access-codes-unmanaged.d.ts +10 -9
  23. package/lib/seam/connect/routes/access-codes-unmanaged.js +26 -14
  24. package/lib/seam/connect/routes/access-codes-unmanaged.js.map +1 -1
  25. package/lib/seam/connect/routes/access-codes.d.ts +15 -14
  26. package/lib/seam/connect/routes/access-codes.js +29 -17
  27. package/lib/seam/connect/routes/access-codes.js.map +1 -1
  28. package/lib/seam/connect/routes/acs-access-groups.d.ts +13 -12
  29. package/lib/seam/connect/routes/acs-access-groups.js +26 -14
  30. package/lib/seam/connect/routes/acs-access-groups.js.map +1 -1
  31. package/lib/seam/connect/routes/acs-credentials.d.ts +9 -8
  32. package/lib/seam/connect/routes/acs-credentials.js +26 -14
  33. package/lib/seam/connect/routes/acs-credentials.js.map +1 -1
  34. package/lib/seam/connect/routes/acs-systems.d.ts +9 -8
  35. package/lib/seam/connect/routes/acs-systems.js +29 -17
  36. package/lib/seam/connect/routes/acs-systems.js.map +1 -1
  37. package/lib/seam/connect/routes/acs-users.d.ts +18 -11
  38. package/lib/seam/connect/routes/acs-users.js +40 -14
  39. package/lib/seam/connect/routes/acs-users.js.map +1 -1
  40. package/lib/seam/connect/routes/acs.d.ts +5 -4
  41. package/lib/seam/connect/routes/acs.js +26 -14
  42. package/lib/seam/connect/routes/acs.js.map +1 -1
  43. package/lib/seam/connect/routes/action-attempts.d.ts +7 -6
  44. package/lib/seam/connect/routes/action-attempts.js +26 -14
  45. package/lib/seam/connect/routes/action-attempts.js.map +1 -1
  46. package/lib/seam/connect/routes/client-sessions.d.ts +13 -9
  47. package/lib/seam/connect/routes/client-sessions.js +33 -14
  48. package/lib/seam/connect/routes/client-sessions.js.map +1 -1
  49. package/lib/seam/connect/routes/connect-webviews.d.ts +11 -10
  50. package/lib/seam/connect/routes/connect-webviews.js +29 -17
  51. package/lib/seam/connect/routes/connect-webviews.js.map +1 -1
  52. package/lib/seam/connect/routes/connected-accounts.d.ts +8 -7
  53. package/lib/seam/connect/routes/connected-accounts.js +26 -14
  54. package/lib/seam/connect/routes/connected-accounts.js.map +1 -1
  55. package/lib/seam/connect/routes/devices-unmanaged.d.ts +8 -7
  56. package/lib/seam/connect/routes/devices-unmanaged.js +26 -14
  57. package/lib/seam/connect/routes/devices-unmanaged.js.map +1 -1
  58. package/lib/seam/connect/routes/devices.d.ts +10 -9
  59. package/lib/seam/connect/routes/devices.js +26 -14
  60. package/lib/seam/connect/routes/devices.js.map +1 -1
  61. package/lib/seam/connect/routes/events.d.ts +7 -6
  62. package/lib/seam/connect/routes/events.js +26 -14
  63. package/lib/seam/connect/routes/events.js.map +1 -1
  64. package/lib/seam/connect/routes/locks.d.ts +9 -8
  65. package/lib/seam/connect/routes/locks.js +26 -14
  66. package/lib/seam/connect/routes/locks.js.map +1 -1
  67. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.d.ts +10 -9
  68. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.js +26 -14
  69. package/lib/seam/connect/routes/noise-sensors-noise-thresholds.js.map +1 -1
  70. package/lib/seam/connect/routes/noise-sensors.d.ts +5 -4
  71. package/lib/seam/connect/routes/noise-sensors.js +26 -14
  72. package/lib/seam/connect/routes/noise-sensors.js.map +1 -1
  73. package/lib/seam/connect/routes/thermostats-climate-setting-schedules.d.ts +10 -9
  74. package/lib/seam/connect/routes/thermostats-climate-setting-schedules.js +26 -14
  75. package/lib/seam/connect/routes/thermostats-climate-setting-schedules.js.map +1 -1
  76. package/lib/seam/connect/routes/thermostats.d.ts +13 -12
  77. package/lib/seam/connect/routes/thermostats.js +26 -14
  78. package/lib/seam/connect/routes/thermostats.js.map +1 -1
  79. package/lib/seam/connect/routes/webhooks.d.ts +9 -8
  80. package/lib/seam/connect/routes/webhooks.js +26 -14
  81. package/lib/seam/connect/routes/webhooks.js.map +1 -1
  82. package/lib/seam/connect/routes/workspaces.d.ts +8 -7
  83. package/lib/seam/connect/routes/workspaces.js +26 -14
  84. package/lib/seam/connect/routes/workspaces.js.map +1 -1
  85. package/lib/seam/connect/seam-http.d.ts +24 -0
  86. package/lib/seam/connect/seam-http.js +82 -0
  87. package/lib/seam/connect/seam-http.js.map +1 -0
  88. package/package.json +9 -4
  89. package/src/lib/params-serializer.ts +55 -0
  90. package/src/lib/seam/connect/auth.ts +94 -6
  91. package/src/lib/seam/connect/client.ts +22 -127
  92. package/src/lib/seam/connect/env.d.ts +11 -0
  93. package/src/lib/seam/connect/index.ts +3 -1
  94. package/src/lib/seam/connect/{client-options.ts → options.ts} +14 -19
  95. package/src/lib/seam/connect/parse-options.ts +50 -23
  96. package/src/lib/seam/connect/routes/access-codes-unmanaged.ts +44 -31
  97. package/src/lib/seam/connect/routes/access-codes.ts +48 -48
  98. package/src/lib/seam/connect/routes/acs-access-groups.ts +49 -40
  99. package/src/lib/seam/connect/routes/acs-credentials.ts +40 -28
  100. package/src/lib/seam/connect/routes/acs-systems.ts +40 -30
  101. package/src/lib/seam/connect/routes/acs-users.ts +70 -36
  102. package/src/lib/seam/connect/routes/acs.ts +33 -17
  103. package/src/lib/seam/connect/routes/action-attempts.ts +36 -22
  104. package/src/lib/seam/connect/routes/client-sessions.ts +58 -30
  105. package/src/lib/seam/connect/routes/connect-webviews.ts +45 -34
  106. package/src/lib/seam/connect/routes/connected-accounts.ts +40 -25
  107. package/src/lib/seam/connect/routes/devices-unmanaged.ts +39 -25
  108. package/src/lib/seam/connect/routes/devices.ts +39 -31
  109. package/src/lib/seam/connect/routes/events.ts +36 -22
  110. package/src/lib/seam/connect/routes/locks.ts +38 -28
  111. package/src/lib/seam/connect/routes/noise-sensors-noise-thresholds.ts +47 -31
  112. package/src/lib/seam/connect/routes/noise-sensors.ts +33 -17
  113. package/src/lib/seam/connect/routes/thermostats-climate-setting-schedules.ts +47 -31
  114. package/src/lib/seam/connect/routes/thermostats.ts +42 -40
  115. package/src/lib/seam/connect/routes/webhooks.ts +38 -28
  116. package/src/lib/seam/connect/routes/workspaces.ts +38 -25
  117. package/src/lib/seam/connect/seam-http.ts +141 -0
  118. package/lib/seam/connect/axios.d.ts +0 -3
  119. package/lib/seam/connect/axios.js +0 -19
  120. package/lib/seam/connect/axios.js.map +0 -1
  121. package/lib/seam/connect/client-options.js.map +0 -1
  122. package/src/lib/seam/connect/axios.ts +0 -25
@@ -2,34 +2,46 @@
2
2
  * Automatically generated by generate-routes.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
- import { createAxiosClient } from '../../../../lib/seam/connect/axios.js';
6
- import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/client-options.js';
5
+ import { warnOnInsecureuserIdentifierKey } from '../../../../lib/seam/connect/auth.js';
6
+ import { createClient } from '../../../../lib/seam/connect/client.js';
7
+ import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/options.js';
7
8
  import { parseOptions } from '../../../../lib/seam/connect/parse-options.js';
9
+ import { SeamHttpClientSessions } from './client-sessions.js';
8
10
  export class SeamHttpAcsUsers {
9
- constructor(apiKeyOrOptions) {
10
- const options = parseOptions(apiKeyOrOptions);
11
- this.client = createAxiosClient(options);
11
+ constructor(apiKeyOrOptions = {}) {
12
+ const clientOptions = parseOptions(apiKeyOrOptions);
13
+ this.client = createClient(clientOptions);
12
14
  }
13
15
  static fromClient(client, options = {}) {
14
- const opts = { ...options, client };
15
- if (!isSeamHttpOptionsWithClient(opts)) {
16
+ const constructorOptions = { ...options, client };
17
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
16
18
  throw new SeamHttpInvalidOptionsError('Missing client');
17
19
  }
18
- return new SeamHttpAcsUsers(opts);
20
+ return new SeamHttpAcsUsers(constructorOptions);
19
21
  }
20
22
  static fromApiKey(apiKey, options = {}) {
21
- const opts = { ...options, apiKey };
22
- if (!isSeamHttpOptionsWithApiKey(opts)) {
23
+ const constructorOptions = { ...options, apiKey };
24
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
23
25
  throw new SeamHttpInvalidOptionsError('Missing apiKey');
24
26
  }
25
- return new SeamHttpAcsUsers(opts);
27
+ return new SeamHttpAcsUsers(constructorOptions);
26
28
  }
27
29
  static fromClientSessionToken(clientSessionToken, options = {}) {
28
- const opts = { ...options, clientSessionToken };
29
- if (!isSeamHttpOptionsWithClientSessionToken(opts)) {
30
+ const constructorOptions = { ...options, clientSessionToken };
31
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
30
32
  throw new SeamHttpInvalidOptionsError('Missing clientSessionToken');
31
33
  }
32
- return new SeamHttpAcsUsers(opts);
34
+ return new SeamHttpAcsUsers(constructorOptions);
35
+ }
36
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
37
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
38
+ const clientOptions = parseOptions({ ...options, publishableKey });
39
+ const client = createClient(clientOptions);
40
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
41
+ const { token } = await clientSessions.getOrCreate({
42
+ user_identifier_key: userIdentifierKey,
43
+ });
44
+ return SeamHttpAcsUsers.fromClientSessionToken(token, options);
33
45
  }
34
46
  async addToAccessGroup(body) {
35
47
  await this.client.request({
@@ -76,6 +88,20 @@ export class SeamHttpAcsUsers {
76
88
  data: body,
77
89
  });
78
90
  }
91
+ async suspend(body) {
92
+ await this.client.request({
93
+ url: '/acs/users/suspend',
94
+ method: 'post',
95
+ data: body,
96
+ });
97
+ }
98
+ async unsuspend(body) {
99
+ await this.client.request({
100
+ url: '/acs/users/unsuspend',
101
+ method: 'post',
102
+ data: body,
103
+ });
104
+ }
79
105
  async update(body) {
80
106
  await this.client.request({
81
107
  url: '/acs/users/update',
@@ -1 +1 @@
1
- {"version":3,"file":"acs-users.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/acs-users.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acs-users.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/acs-users.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
- import type { Axios } from 'axios';
2
- import { type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/client-options.js';
1
+ import { type Client } from '../../../../lib/seam/connect/client.js';
2
+ import { type SeamHttpFromPublishableKeyOptions, type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/options.js';
3
3
  import { SeamHttpAcsAccessGroups } from './acs-access-groups.js';
4
4
  import { SeamHttpAcsCredentials } from './acs-credentials.js';
5
5
  import { SeamHttpAcsSystems } from './acs-systems.js';
6
6
  import { SeamHttpAcsUsers } from './acs-users.js';
7
7
  export declare class SeamHttpAcs {
8
- client: Axios;
9
- constructor(apiKeyOrOptions: string | SeamHttpOptions);
8
+ client: Client;
9
+ constructor(apiKeyOrOptions?: string | SeamHttpOptions);
10
10
  static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit<SeamHttpOptionsWithClient, 'client'>): SeamHttpAcs;
11
11
  static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit<SeamHttpOptionsWithApiKey, 'apiKey'>): SeamHttpAcs;
12
12
  static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit<SeamHttpOptionsWithClientSessionToken, 'clientSessionToken'>): SeamHttpAcs;
13
+ static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise<SeamHttpAcs>;
13
14
  get accessGroups(): SeamHttpAcsAccessGroups;
14
15
  get credentials(): SeamHttpAcsCredentials;
15
16
  get systems(): SeamHttpAcsSystems;
@@ -2,38 +2,50 @@
2
2
  * Automatically generated by generate-routes.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
- import { createAxiosClient } from '../../../../lib/seam/connect/axios.js';
6
- import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/client-options.js';
5
+ import { warnOnInsecureuserIdentifierKey } from '../../../../lib/seam/connect/auth.js';
6
+ import { createClient } from '../../../../lib/seam/connect/client.js';
7
+ import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/options.js';
7
8
  import { parseOptions } from '../../../../lib/seam/connect/parse-options.js';
8
9
  import { SeamHttpAcsAccessGroups } from './acs-access-groups.js';
9
10
  import { SeamHttpAcsCredentials } from './acs-credentials.js';
10
11
  import { SeamHttpAcsSystems } from './acs-systems.js';
11
12
  import { SeamHttpAcsUsers } from './acs-users.js';
13
+ import { SeamHttpClientSessions } from './client-sessions.js';
12
14
  export class SeamHttpAcs {
13
- constructor(apiKeyOrOptions) {
14
- const options = parseOptions(apiKeyOrOptions);
15
- this.client = createAxiosClient(options);
15
+ constructor(apiKeyOrOptions = {}) {
16
+ const clientOptions = parseOptions(apiKeyOrOptions);
17
+ this.client = createClient(clientOptions);
16
18
  }
17
19
  static fromClient(client, options = {}) {
18
- const opts = { ...options, client };
19
- if (!isSeamHttpOptionsWithClient(opts)) {
20
+ const constructorOptions = { ...options, client };
21
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
20
22
  throw new SeamHttpInvalidOptionsError('Missing client');
21
23
  }
22
- return new SeamHttpAcs(opts);
24
+ return new SeamHttpAcs(constructorOptions);
23
25
  }
24
26
  static fromApiKey(apiKey, options = {}) {
25
- const opts = { ...options, apiKey };
26
- if (!isSeamHttpOptionsWithApiKey(opts)) {
27
+ const constructorOptions = { ...options, apiKey };
28
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
27
29
  throw new SeamHttpInvalidOptionsError('Missing apiKey');
28
30
  }
29
- return new SeamHttpAcs(opts);
31
+ return new SeamHttpAcs(constructorOptions);
30
32
  }
31
33
  static fromClientSessionToken(clientSessionToken, options = {}) {
32
- const opts = { ...options, clientSessionToken };
33
- if (!isSeamHttpOptionsWithClientSessionToken(opts)) {
34
+ const constructorOptions = { ...options, clientSessionToken };
35
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
34
36
  throw new SeamHttpInvalidOptionsError('Missing clientSessionToken');
35
37
  }
36
- return new SeamHttpAcs(opts);
38
+ return new SeamHttpAcs(constructorOptions);
39
+ }
40
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
41
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
42
+ const clientOptions = parseOptions({ ...options, publishableKey });
43
+ const client = createClient(clientOptions);
44
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
45
+ const { token } = await clientSessions.getOrCreate({
46
+ user_identifier_key: userIdentifierKey,
47
+ });
48
+ return SeamHttpAcs.fromClientSessionToken(token, options);
37
49
  }
38
50
  get accessGroups() {
39
51
  return SeamHttpAcsAccessGroups.fromClient(this.client);
@@ -1 +1 @@
1
- {"version":3,"file":"acs.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/acs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,uCAAuC,EACvC,2BAA2B,GAK5B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEhE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAA;AAEjD,MAAM,OAAO,WAAW;IAGtB,YAAY,eAAyC;QACnD,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,MAAM,CAAC,sBAAsB,CAC3B,kBAA+E,EAC/E,UAGI,EAAE;QAEN,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,kBAAkB,EAAE,CAAA;QAC/C,IAAI,CAAC,uCAAuC,CAAC,IAAI,CAAC,EAAE;YAClD,MAAM,IAAI,2BAA2B,CAAC,4BAA4B,CAAC,CAAA;SACpE;QACD,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED,IAAI,YAAY;QACd,OAAO,uBAAuB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,WAAW;QACb,OAAO,sBAAsB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACvD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACnD,CAAC;IAED,IAAI,KAAK;QACP,OAAO,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACjD,CAAC;CACF"}
1
+ {"version":3,"file":"acs.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/acs.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,18 @@
1
1
  import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect';
2
- import type { Axios } from 'axios';
3
2
  import type { SetNonNullable } from 'type-fest';
4
- import { type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/client-options.js';
3
+ import { type Client } from '../../../../lib/seam/connect/client.js';
4
+ import { type SeamHttpFromPublishableKeyOptions, type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/options.js';
5
5
  export declare class SeamHttpActionAttempts {
6
- client: Axios;
7
- constructor(apiKeyOrOptions: string | SeamHttpOptions);
6
+ client: Client;
7
+ constructor(apiKeyOrOptions?: string | SeamHttpOptions);
8
8
  static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit<SeamHttpOptionsWithClient, 'client'>): SeamHttpActionAttempts;
9
9
  static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit<SeamHttpOptionsWithApiKey, 'apiKey'>): SeamHttpActionAttempts;
10
10
  static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit<SeamHttpOptionsWithClientSessionToken, 'clientSessionToken'>): SeamHttpActionAttempts;
11
+ static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise<SeamHttpActionAttempts>;
11
12
  get(body: ActionAttemptsGetBody): Promise<ActionAttemptsGetResponse['action_attempt']>;
12
13
  list(body: ActionAttemptsListBody): Promise<ActionAttemptsListResponse['action_attempts']>;
13
14
  }
14
- export type ActionAttemptsGetBody = SetNonNullable<Required<RouteRequestBody<'/action_attempts/get'>>>;
15
+ export type ActionAttemptsGetBody = RouteRequestBody<'/action_attempts/get'>;
15
16
  export type ActionAttemptsGetResponse = SetNonNullable<Required<RouteResponse<'/action_attempts/get'>>>;
16
- export type ActionAttemptsListBody = SetNonNullable<Required<RouteRequestBody<'/action_attempts/list'>>>;
17
+ export type ActionAttemptsListBody = RouteRequestBody<'/action_attempts/list'>;
17
18
  export type ActionAttemptsListResponse = SetNonNullable<Required<RouteResponse<'/action_attempts/list'>>>;
@@ -2,34 +2,46 @@
2
2
  * Automatically generated by generate-routes.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
- import { createAxiosClient } from '../../../../lib/seam/connect/axios.js';
6
- import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/client-options.js';
5
+ import { warnOnInsecureuserIdentifierKey } from '../../../../lib/seam/connect/auth.js';
6
+ import { createClient } from '../../../../lib/seam/connect/client.js';
7
+ import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/options.js';
7
8
  import { parseOptions } from '../../../../lib/seam/connect/parse-options.js';
9
+ import { SeamHttpClientSessions } from './client-sessions.js';
8
10
  export class SeamHttpActionAttempts {
9
- constructor(apiKeyOrOptions) {
10
- const options = parseOptions(apiKeyOrOptions);
11
- this.client = createAxiosClient(options);
11
+ constructor(apiKeyOrOptions = {}) {
12
+ const clientOptions = parseOptions(apiKeyOrOptions);
13
+ this.client = createClient(clientOptions);
12
14
  }
13
15
  static fromClient(client, options = {}) {
14
- const opts = { ...options, client };
15
- if (!isSeamHttpOptionsWithClient(opts)) {
16
+ const constructorOptions = { ...options, client };
17
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
16
18
  throw new SeamHttpInvalidOptionsError('Missing client');
17
19
  }
18
- return new SeamHttpActionAttempts(opts);
20
+ return new SeamHttpActionAttempts(constructorOptions);
19
21
  }
20
22
  static fromApiKey(apiKey, options = {}) {
21
- const opts = { ...options, apiKey };
22
- if (!isSeamHttpOptionsWithApiKey(opts)) {
23
+ const constructorOptions = { ...options, apiKey };
24
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
23
25
  throw new SeamHttpInvalidOptionsError('Missing apiKey');
24
26
  }
25
- return new SeamHttpActionAttempts(opts);
27
+ return new SeamHttpActionAttempts(constructorOptions);
26
28
  }
27
29
  static fromClientSessionToken(clientSessionToken, options = {}) {
28
- const opts = { ...options, clientSessionToken };
29
- if (!isSeamHttpOptionsWithClientSessionToken(opts)) {
30
+ const constructorOptions = { ...options, clientSessionToken };
31
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
30
32
  throw new SeamHttpInvalidOptionsError('Missing clientSessionToken');
31
33
  }
32
- return new SeamHttpActionAttempts(opts);
34
+ return new SeamHttpActionAttempts(constructorOptions);
35
+ }
36
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
37
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
38
+ const clientOptions = parseOptions({ ...options, publishableKey });
39
+ const client = createClient(clientOptions);
40
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
41
+ const { token } = await clientSessions.getOrCreate({
42
+ user_identifier_key: userIdentifierKey,
43
+ });
44
+ return SeamHttpActionAttempts.fromClientSessionToken(token, options);
33
45
  }
34
46
  async get(body) {
35
47
  const { data } = await this.client.request({
@@ -1 +1 @@
1
- {"version":3,"file":"action-attempts.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/action-attempts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,uCAAuC,EACvC,2BAA2B,GAK5B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEhE,MAAM,OAAO,sBAAsB;IAGjC,YAAY,eAAyC;QACnD,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,sBAAsB,CAC3B,kBAA+E,EAC/E,UAGI,EAAE;QAEN,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,kBAAkB,EAAE,CAAA;QAC/C,IAAI,CAAC,uCAAuC,CAAC,IAAI,CAAC,EAAE;YAClD,MAAM,IAAI,2BAA2B,CAAC,4BAA4B,CAAC,CAAA;SACpE;QACD,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,GAAG,CACP,IAA2B;QAE3B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA4B;YACpE,GAAG,EAAE,sBAAsB;YAC3B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CACR,IAA4B;QAE5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA6B;YACrE,GAAG,EAAE,uBAAuB;YAC5B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,eAAe,CAAA;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"action-attempts.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/action-attempts.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,30 @@
1
1
  import type { RouteRequestBody, RouteResponse } from '@seamapi/types/connect';
2
- import type { Axios } from 'axios';
3
2
  import type { SetNonNullable } from 'type-fest';
4
- import { type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/client-options.js';
3
+ import { type Client } from '../../../../lib/seam/connect/client.js';
4
+ import { type SeamHttpFromPublishableKeyOptions, type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/options.js';
5
5
  export declare class SeamHttpClientSessions {
6
- client: Axios;
7
- constructor(apiKeyOrOptions: string | SeamHttpOptions);
6
+ client: Client;
7
+ constructor(apiKeyOrOptions?: string | SeamHttpOptions);
8
8
  static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit<SeamHttpOptionsWithClient, 'client'>): SeamHttpClientSessions;
9
9
  static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit<SeamHttpOptionsWithApiKey, 'apiKey'>): SeamHttpClientSessions;
10
10
  static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit<SeamHttpOptionsWithClientSessionToken, 'clientSessionToken'>): SeamHttpClientSessions;
11
+ static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise<SeamHttpClientSessions>;
11
12
  create(body: ClientSessionsCreateBody): Promise<ClientSessionsCreateResponse['client_session']>;
12
13
  delete(body: ClientSessionsDeleteBody): Promise<void>;
13
14
  get(body: ClientSessionsGetBody): Promise<ClientSessionsGetResponse['client_session']>;
15
+ getOrCreate(body: ClientSessionsGetOrCreateBody): Promise<ClientSessionsGetOrCreateResponse['client_session']>;
14
16
  grantAccess(body: ClientSessionsGrantAccessBody): Promise<ClientSessionsGrantAccessResponse['client_session']>;
15
17
  list(body: ClientSessionsListBody): Promise<ClientSessionsListResponse['client_sessions']>;
16
18
  }
17
- export type ClientSessionsCreateBody = SetNonNullable<Required<RouteRequestBody<'/client_sessions/create'>>>;
19
+ export type ClientSessionsCreateBody = RouteRequestBody<'/client_sessions/create'>;
18
20
  export type ClientSessionsCreateResponse = SetNonNullable<Required<RouteResponse<'/client_sessions/create'>>>;
19
- export type ClientSessionsDeleteBody = SetNonNullable<Required<RouteRequestBody<'/client_sessions/delete'>>>;
21
+ export type ClientSessionsDeleteBody = RouteRequestBody<'/client_sessions/delete'>;
20
22
  export type ClientSessionsDeleteResponse = SetNonNullable<Required<RouteResponse<'/client_sessions/delete'>>>;
21
- export type ClientSessionsGetBody = SetNonNullable<Required<RouteRequestBody<'/client_sessions/get'>>>;
23
+ export type ClientSessionsGetBody = RouteRequestBody<'/client_sessions/get'>;
22
24
  export type ClientSessionsGetResponse = SetNonNullable<Required<RouteResponse<'/client_sessions/get'>>>;
23
- export type ClientSessionsGrantAccessBody = SetNonNullable<Required<RouteRequestBody<'/client_sessions/grant_access'>>>;
25
+ export type ClientSessionsGetOrCreateBody = RouteRequestBody<'/client_sessions/get_or_create'>;
26
+ export type ClientSessionsGetOrCreateResponse = SetNonNullable<Required<RouteResponse<'/client_sessions/get_or_create'>>>;
27
+ export type ClientSessionsGrantAccessBody = RouteRequestBody<'/client_sessions/grant_access'>;
24
28
  export type ClientSessionsGrantAccessResponse = SetNonNullable<Required<RouteResponse<'/client_sessions/grant_access'>>>;
25
- export type ClientSessionsListBody = SetNonNullable<Required<RouteRequestBody<'/client_sessions/list'>>>;
29
+ export type ClientSessionsListBody = RouteRequestBody<'/client_sessions/list'>;
26
30
  export type ClientSessionsListResponse = SetNonNullable<Required<RouteResponse<'/client_sessions/list'>>>;
@@ -2,34 +2,45 @@
2
2
  * Automatically generated by generate-routes.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
- import { createAxiosClient } from '../../../../lib/seam/connect/axios.js';
6
- import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/client-options.js';
5
+ import { warnOnInsecureuserIdentifierKey } from '../../../../lib/seam/connect/auth.js';
6
+ import { createClient } from '../../../../lib/seam/connect/client.js';
7
+ import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/options.js';
7
8
  import { parseOptions } from '../../../../lib/seam/connect/parse-options.js';
8
9
  export class SeamHttpClientSessions {
9
- constructor(apiKeyOrOptions) {
10
- const options = parseOptions(apiKeyOrOptions);
11
- this.client = createAxiosClient(options);
10
+ constructor(apiKeyOrOptions = {}) {
11
+ const clientOptions = parseOptions(apiKeyOrOptions);
12
+ this.client = createClient(clientOptions);
12
13
  }
13
14
  static fromClient(client, options = {}) {
14
- const opts = { ...options, client };
15
- if (!isSeamHttpOptionsWithClient(opts)) {
15
+ const constructorOptions = { ...options, client };
16
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
16
17
  throw new SeamHttpInvalidOptionsError('Missing client');
17
18
  }
18
- return new SeamHttpClientSessions(opts);
19
+ return new SeamHttpClientSessions(constructorOptions);
19
20
  }
20
21
  static fromApiKey(apiKey, options = {}) {
21
- const opts = { ...options, apiKey };
22
- if (!isSeamHttpOptionsWithApiKey(opts)) {
22
+ const constructorOptions = { ...options, apiKey };
23
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
23
24
  throw new SeamHttpInvalidOptionsError('Missing apiKey');
24
25
  }
25
- return new SeamHttpClientSessions(opts);
26
+ return new SeamHttpClientSessions(constructorOptions);
26
27
  }
27
28
  static fromClientSessionToken(clientSessionToken, options = {}) {
28
- const opts = { ...options, clientSessionToken };
29
- if (!isSeamHttpOptionsWithClientSessionToken(opts)) {
29
+ const constructorOptions = { ...options, clientSessionToken };
30
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
30
31
  throw new SeamHttpInvalidOptionsError('Missing clientSessionToken');
31
32
  }
32
- return new SeamHttpClientSessions(opts);
33
+ return new SeamHttpClientSessions(constructorOptions);
34
+ }
35
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
36
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
37
+ const clientOptions = parseOptions({ ...options, publishableKey });
38
+ const client = createClient(clientOptions);
39
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
40
+ const { token } = await clientSessions.getOrCreate({
41
+ user_identifier_key: userIdentifierKey,
42
+ });
43
+ return SeamHttpClientSessions.fromClientSessionToken(token, options);
33
44
  }
34
45
  async create(body) {
35
46
  const { data } = await this.client.request({
@@ -54,6 +65,14 @@ export class SeamHttpClientSessions {
54
65
  });
55
66
  return data.client_session;
56
67
  }
68
+ async getOrCreate(body) {
69
+ const { data } = await this.client.request({
70
+ url: '/client_sessions/get_or_create',
71
+ method: 'post',
72
+ data: body,
73
+ });
74
+ return data.client_session;
75
+ }
57
76
  async grantAccess(body) {
58
77
  const { data } = await this.client.request({
59
78
  url: '/client_sessions/grant_access',
@@ -1 +1 @@
1
- {"version":3,"file":"client-sessions.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/client-sessions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,uCAAuC,EACvC,2BAA2B,GAK5B,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEhE,MAAM,OAAO,sBAAsB;IAGjC,YAAY,eAAyC;QACnD,MAAM,OAAO,GAAG,YAAY,CAAC,eAAe,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,EAAE;YACtC,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,sBAAsB,CAC3B,kBAA+E,EAC/E,UAGI,EAAE;QAEN,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,kBAAkB,EAAE,CAAA;QAC/C,IAAI,CAAC,uCAAuC,CAAC,IAAI,CAAC,EAAE;YAClD,MAAM,IAAI,2BAA2B,CAAC,4BAA4B,CAAC,CAAA;SACpE;QACD,OAAO,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,KAAK,CAAC,MAAM,CACV,IAA8B;QAE9B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA+B;YACvE,GAAG,EAAE,yBAAyB;YAC9B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAA8B;QACzC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA+B;YACtD,GAAG,EAAE,yBAAyB;YAC9B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CACP,IAA2B;QAE3B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA4B;YACpE,GAAG,EAAE,sBAAsB;YAC3B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAAmC;QAEnC,MAAM,EAAE,IAAI,EAAE,GACZ,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAoC;YAC3D,GAAG,EAAE,+BAA+B;YACpC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACJ,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CACR,IAA4B;QAE5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA6B;YACrE,GAAG,EAAE,uBAAuB;YAC5B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,eAAe,CAAA;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"client-sessions.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/client-sessions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAAE,+BAA+B,EAAE,MAAM,0BAA0B,CAAA;AAC1E,OAAO,EAAe,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACtE,OAAO,EACL,2BAA2B,EAC3B,2BAA2B,EAC3B,uCAAuC,EAEvC,2BAA2B,GAK5B,MAAM,6BAA6B,CAAA;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAEhE,MAAM,OAAO,sBAAsB;IAGjC,YAAY,kBAA4C,EAAE;QACxD,MAAM,aAAa,GAAG,YAAY,CAAC,eAAe,CAAC,CAAA;QACnD,IAAI,CAAC,MAAM,GAAG,YAAY,CAAC,aAAa,CAAC,CAAA;IAC3C,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,kBAAkB,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACjD,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,EAAE;YACpD,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,CAAC,UAAU,CACf,MAA2C,EAC3C,UAAqD,EAAE;QAEvD,MAAM,kBAAkB,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;QACjD,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,EAAE;YACpD,MAAM,IAAI,2BAA2B,CAAC,gBAAgB,CAAC,CAAA;SACxD;QACD,OAAO,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,CAAC,sBAAsB,CAC3B,kBAA+E,EAC/E,UAGI,EAAE;QAEN,MAAM,kBAAkB,GAAG,EAAE,GAAG,OAAO,EAAE,kBAAkB,EAAE,CAAA;QAC7D,IAAI,CAAC,uCAAuC,CAAC,kBAAkB,CAAC,EAAE;YAChE,MAAM,IAAI,2BAA2B,CAAC,4BAA4B,CAAC,CAAA;SACpE;QACD,OAAO,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;IACvD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAC7B,cAAsB,EACtB,iBAAyB,EACzB,UAA6C,EAAE;QAE/C,+BAA+B,CAAC,iBAAiB,CAAC,CAAA;QAClD,MAAM,aAAa,GAAG,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,cAAc,EAAE,CAAC,CAAA;QAClE,MAAM,MAAM,GAAG,YAAY,CAAC,aAAa,CAAC,CAAA;QAC1C,MAAM,cAAc,GAAG,sBAAsB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QAChE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC;YACjD,mBAAmB,EAAE,iBAAiB;SACvC,CAAC,CAAA;QACF,OAAO,sBAAsB,CAAC,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACtE,CAAC;IAED,KAAK,CAAC,MAAM,CACV,IAA8B;QAE9B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA+B;YACvE,GAAG,EAAE,yBAAyB;YAC9B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,IAA8B;QACzC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA+B;YACtD,GAAG,EAAE,yBAAyB;YAC9B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;IACJ,CAAC;IAED,KAAK,CAAC,GAAG,CACP,IAA2B;QAE3B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA4B;YACpE,GAAG,EAAE,sBAAsB;YAC3B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAAmC;QAEnC,MAAM,EAAE,IAAI,EAAE,GACZ,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAoC;YAC3D,GAAG,EAAE,gCAAgC;YACrC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACJ,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,WAAW,CACf,IAAmC;QAEnC,MAAM,EAAE,IAAI,EAAE,GACZ,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAoC;YAC3D,GAAG,EAAE,+BAA+B;YACpC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACJ,OAAO,IAAI,CAAC,cAAc,CAAA;IAC5B,CAAC;IAED,KAAK,CAAC,IAAI,CACR,IAA4B;QAE5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAA6B;YACrE,GAAG,EAAE,uBAAuB;YAC5B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;QACF,OAAO,IAAI,CAAC,eAAe,CAAA;IAC7B,CAAC;CACF"}
@@ -1,26 +1,27 @@
1
1
  import type { RouteRequestBody, RouteRequestParams, RouteResponse } from '@seamapi/types/connect';
2
- import type { Axios } from 'axios';
3
2
  import type { SetNonNullable } from 'type-fest';
4
- import { type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/client-options.js';
3
+ import { type Client } from '../../../../lib/seam/connect/client.js';
4
+ import { type SeamHttpFromPublishableKeyOptions, type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/options.js';
5
5
  export declare class SeamHttpConnectWebviews {
6
- client: Axios;
7
- constructor(apiKeyOrOptions: string | SeamHttpOptions);
6
+ client: Client;
7
+ constructor(apiKeyOrOptions?: string | SeamHttpOptions);
8
8
  static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit<SeamHttpOptionsWithClient, 'client'>): SeamHttpConnectWebviews;
9
9
  static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit<SeamHttpOptionsWithApiKey, 'apiKey'>): SeamHttpConnectWebviews;
10
10
  static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit<SeamHttpOptionsWithClientSessionToken, 'clientSessionToken'>): SeamHttpConnectWebviews;
11
+ static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise<SeamHttpConnectWebviews>;
11
12
  create(body: ConnectWebviewsCreateBody): Promise<ConnectWebviewsCreateResponse['connect_webview']>;
12
13
  delete(body: ConnectWebviewsDeleteBody): Promise<void>;
13
14
  get(body: ConnectWebviewsGetBody): Promise<ConnectWebviewsGetResponse['connect_webview']>;
14
- list(params?: ConnectWebviewsListParams): Promise<ConnectWebviewsListResponse['connect_webviews']>;
15
+ list(body: ConnectWebviewsListBody): Promise<ConnectWebviewsListResponse['connect_webviews']>;
15
16
  view(params?: ConnectWebviewsViewParams): Promise<void>;
16
17
  }
17
- export type ConnectWebviewsCreateBody = SetNonNullable<Required<RouteRequestBody<'/connect_webviews/create'>>>;
18
+ export type ConnectWebviewsCreateBody = RouteRequestBody<'/connect_webviews/create'>;
18
19
  export type ConnectWebviewsCreateResponse = SetNonNullable<Required<RouteResponse<'/connect_webviews/create'>>>;
19
- export type ConnectWebviewsDeleteBody = SetNonNullable<Required<RouteRequestBody<'/connect_webviews/delete'>>>;
20
+ export type ConnectWebviewsDeleteBody = RouteRequestBody<'/connect_webviews/delete'>;
20
21
  export type ConnectWebviewsDeleteResponse = SetNonNullable<Required<RouteResponse<'/connect_webviews/delete'>>>;
21
- export type ConnectWebviewsGetBody = SetNonNullable<Required<RouteRequestBody<'/connect_webviews/get'>>>;
22
+ export type ConnectWebviewsGetBody = RouteRequestBody<'/connect_webviews/get'>;
22
23
  export type ConnectWebviewsGetResponse = SetNonNullable<Required<RouteResponse<'/connect_webviews/get'>>>;
23
- export type ConnectWebviewsListParams = SetNonNullable<Required<RouteRequestParams<'/connect_webviews/list'>>>;
24
+ export type ConnectWebviewsListBody = RouteRequestBody<'/connect_webviews/list'>;
24
25
  export type ConnectWebviewsListResponse = SetNonNullable<Required<RouteResponse<'/connect_webviews/list'>>>;
25
- export type ConnectWebviewsViewParams = SetNonNullable<Required<RouteRequestParams<'/connect_webviews/view'>>>;
26
+ export type ConnectWebviewsViewParams = RouteRequestParams<'/connect_webviews/view'>;
26
27
  export type ConnectWebviewsViewResponse = SetNonNullable<Required<RouteResponse<'/connect_webviews/view'>>>;
@@ -2,34 +2,46 @@
2
2
  * Automatically generated by generate-routes.ts.
3
3
  * Do not edit this file or add other files to this directory.
4
4
  */
5
- import { createAxiosClient } from '../../../../lib/seam/connect/axios.js';
6
- import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/client-options.js';
5
+ import { warnOnInsecureuserIdentifierKey } from '../../../../lib/seam/connect/auth.js';
6
+ import { createClient } from '../../../../lib/seam/connect/client.js';
7
+ import { isSeamHttpOptionsWithApiKey, isSeamHttpOptionsWithClient, isSeamHttpOptionsWithClientSessionToken, SeamHttpInvalidOptionsError, } from '../../../../lib/seam/connect/options.js';
7
8
  import { parseOptions } from '../../../../lib/seam/connect/parse-options.js';
9
+ import { SeamHttpClientSessions } from './client-sessions.js';
8
10
  export class SeamHttpConnectWebviews {
9
- constructor(apiKeyOrOptions) {
10
- const options = parseOptions(apiKeyOrOptions);
11
- this.client = createAxiosClient(options);
11
+ constructor(apiKeyOrOptions = {}) {
12
+ const clientOptions = parseOptions(apiKeyOrOptions);
13
+ this.client = createClient(clientOptions);
12
14
  }
13
15
  static fromClient(client, options = {}) {
14
- const opts = { ...options, client };
15
- if (!isSeamHttpOptionsWithClient(opts)) {
16
+ const constructorOptions = { ...options, client };
17
+ if (!isSeamHttpOptionsWithClient(constructorOptions)) {
16
18
  throw new SeamHttpInvalidOptionsError('Missing client');
17
19
  }
18
- return new SeamHttpConnectWebviews(opts);
20
+ return new SeamHttpConnectWebviews(constructorOptions);
19
21
  }
20
22
  static fromApiKey(apiKey, options = {}) {
21
- const opts = { ...options, apiKey };
22
- if (!isSeamHttpOptionsWithApiKey(opts)) {
23
+ const constructorOptions = { ...options, apiKey };
24
+ if (!isSeamHttpOptionsWithApiKey(constructorOptions)) {
23
25
  throw new SeamHttpInvalidOptionsError('Missing apiKey');
24
26
  }
25
- return new SeamHttpConnectWebviews(opts);
27
+ return new SeamHttpConnectWebviews(constructorOptions);
26
28
  }
27
29
  static fromClientSessionToken(clientSessionToken, options = {}) {
28
- const opts = { ...options, clientSessionToken };
29
- if (!isSeamHttpOptionsWithClientSessionToken(opts)) {
30
+ const constructorOptions = { ...options, clientSessionToken };
31
+ if (!isSeamHttpOptionsWithClientSessionToken(constructorOptions)) {
30
32
  throw new SeamHttpInvalidOptionsError('Missing clientSessionToken');
31
33
  }
32
- return new SeamHttpConnectWebviews(opts);
34
+ return new SeamHttpConnectWebviews(constructorOptions);
35
+ }
36
+ static async fromPublishableKey(publishableKey, userIdentifierKey, options = {}) {
37
+ warnOnInsecureuserIdentifierKey(userIdentifierKey);
38
+ const clientOptions = parseOptions({ ...options, publishableKey });
39
+ const client = createClient(clientOptions);
40
+ const clientSessions = SeamHttpClientSessions.fromClient(client);
41
+ const { token } = await clientSessions.getOrCreate({
42
+ user_identifier_key: userIdentifierKey,
43
+ });
44
+ return SeamHttpConnectWebviews.fromClientSessionToken(token, options);
33
45
  }
34
46
  async create(body) {
35
47
  const { data } = await this.client.request({
@@ -54,11 +66,11 @@ export class SeamHttpConnectWebviews {
54
66
  });
55
67
  return data.connect_webview;
56
68
  }
57
- async list(params) {
69
+ async list(body) {
58
70
  const { data } = await this.client.request({
59
71
  url: '/connect_webviews/list',
60
- method: 'get',
61
- params,
72
+ method: 'post',
73
+ data: body,
62
74
  });
63
75
  return data.connect_webviews;
64
76
  }
@@ -1 +1 @@
1
- {"version":3,"file":"connect-webviews.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/connect-webviews.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connect-webviews.js","sourceRoot":"","sources":["../../../../src/lib/seam/connect/routes/connect-webviews.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,21 @@
1
1
  import type { RouteRequestBody, RouteRequestParams, RouteResponse } from '@seamapi/types/connect';
2
- import type { Axios } from 'axios';
3
2
  import type { SetNonNullable } from 'type-fest';
4
- import { type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/client-options.js';
3
+ import { type Client } from '../../../../lib/seam/connect/client.js';
4
+ import { type SeamHttpFromPublishableKeyOptions, type SeamHttpOptions, type SeamHttpOptionsWithApiKey, type SeamHttpOptionsWithClient, type SeamHttpOptionsWithClientSessionToken } from '../../../../lib/seam/connect/options.js';
5
5
  export declare class SeamHttpConnectedAccounts {
6
- client: Axios;
7
- constructor(apiKeyOrOptions: string | SeamHttpOptions);
6
+ client: Client;
7
+ constructor(apiKeyOrOptions?: string | SeamHttpOptions);
8
8
  static fromClient(client: SeamHttpOptionsWithClient['client'], options?: Omit<SeamHttpOptionsWithClient, 'client'>): SeamHttpConnectedAccounts;
9
9
  static fromApiKey(apiKey: SeamHttpOptionsWithApiKey['apiKey'], options?: Omit<SeamHttpOptionsWithApiKey, 'apiKey'>): SeamHttpConnectedAccounts;
10
10
  static fromClientSessionToken(clientSessionToken: SeamHttpOptionsWithClientSessionToken['clientSessionToken'], options?: Omit<SeamHttpOptionsWithClientSessionToken, 'clientSessionToken'>): SeamHttpConnectedAccounts;
11
+ static fromPublishableKey(publishableKey: string, userIdentifierKey: string, options?: SeamHttpFromPublishableKeyOptions): Promise<SeamHttpConnectedAccounts>;
11
12
  delete(body: ConnectedAccountsDeleteBody): Promise<void>;
12
13
  get(body: ConnectedAccountsGetBody): Promise<ConnectedAccountsGetResponse['connected_account']>;
13
14
  list(params?: ConnectedAccountsListParams): Promise<ConnectedAccountsListResponse['connected_accounts']>;
14
15
  }
15
- export type ConnectedAccountsDeleteBody = SetNonNullable<Required<RouteRequestBody<'/connected_accounts/delete'>>>;
16
+ export type ConnectedAccountsDeleteBody = RouteRequestBody<'/connected_accounts/delete'>;
16
17
  export type ConnectedAccountsDeleteResponse = SetNonNullable<Required<RouteResponse<'/connected_accounts/delete'>>>;
17
- export type ConnectedAccountsGetBody = SetNonNullable<Required<RouteRequestBody<'/connected_accounts/get'>>>;
18
+ export type ConnectedAccountsGetBody = RouteRequestBody<'/connected_accounts/get'>;
18
19
  export type ConnectedAccountsGetResponse = SetNonNullable<Required<RouteResponse<'/connected_accounts/get'>>>;
19
- export type ConnectedAccountsListParams = SetNonNullable<Required<RouteRequestParams<'/connected_accounts/list'>>>;
20
+ export type ConnectedAccountsListParams = RouteRequestParams<'/connected_accounts/list'>;
20
21
  export type ConnectedAccountsListResponse = SetNonNullable<Required<RouteResponse<'/connected_accounts/list'>>>;