shoal-web-sdk 0.0.48 → 0.0.50

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.
@@ -1,5 +1,5 @@
1
1
  import type { Client, Options as Options2, TDataShape } from './client';
2
- import type { AddEdgesData, AddEdgesErrors, AddEdgesResponses, AddNodesData, AddNodesErrors, AddNodesResponses, CreateAccountIdentityData, CreateAccountIdentityErrors, CreateAccountIdentityResponses, CreateEnvironmentData, CreateEnvironmentErrors, CreateEnvironmentResponses, CreateProjectData, CreateProjectErrors, CreateProjectResponses, CreateSpaceData, CreateSpaceErrors, CreateSpaceResponses, FetchKindeOrganisationBillingAgreementsData, FetchKindeOrganisationBillingAgreementsErrors, FetchKindeOrganisationBillingAgreementsResponses, GetConnectedAppUrlData, GetConnectedAppUrlErrors, GetConnectedAppUrlResponses, GetEnvironmentOverviewData, GetEnvironmentOverviewErrors, GetEnvironmentOverviewResponses, GetGraphOverviewData, GetGraphOverviewErrors, GetGraphOverviewResponses, GetProjectOverviewData, GetProjectOverviewErrors, GetProjectOverviewResponses, GetServiceHealthData, GetServiceHealthResponses, GetSpaceOverviewData, GetSpaceOverviewErrors, GetSpaceOverviewResponses, GetUserIdentitiesData, GetUserIdentitiesErrors, GetUserIdentitiesResponses, GetUserProfileData, GetUserProfileErrors, GetUserProfileResponses, ListInstallationBranchesData, ListInstallationBranchesErrors, ListInstallationBranchesResponses, ListInstallationRepositoriesData, ListInstallationRepositoriesErrors, ListInstallationRepositoriesResponses, ListUserInstallationsData, ListUserInstallationsErrors, ListUserInstallationsResponses, RemoveEdgesData, RemoveEdgesErrors, RemoveEdgesResponses, RemoveNodesData, RemoveNodesErrors, RemoveNodesResponses, RequestAccountPasswordResetData, RequestAccountPasswordResetErrors, RequestAccountPasswordResetResponses } from './types.gen';
2
+ import type { AddEdgesData, AddEdgesErrors, AddEdgesResponses, AddNodesData, AddNodesErrors, AddNodesResponses, CreateEnvironmentData, CreateEnvironmentErrors, CreateEnvironmentResponses, CreateProjectData, CreateProjectErrors, CreateProjectResponses, CreateSpaceData, CreateSpaceErrors, CreateSpaceResponses, FetchKindeOrganisationBillingAgreementsData, FetchKindeOrganisationBillingAgreementsErrors, FetchKindeOrganisationBillingAgreementsResponses, GetConnectedAppUrlData, GetConnectedAppUrlErrors, GetConnectedAppUrlResponses, GetEnvironmentOverviewData, GetEnvironmentOverviewErrors, GetEnvironmentOverviewResponses, GetGraphOverviewData, GetGraphOverviewErrors, GetGraphOverviewResponses, GetProjectOverviewData, GetProjectOverviewErrors, GetProjectOverviewResponses, GetServiceHealthData, GetServiceHealthResponses, GetSpaceOverviewData, GetSpaceOverviewErrors, GetSpaceOverviewResponses, GetUserIdentitiesData, GetUserIdentitiesErrors, GetUserIdentitiesResponses, GetUserProfileData, GetUserProfileErrors, GetUserProfileResponses, ListInstallationBranchesData, ListInstallationBranchesErrors, ListInstallationBranchesResponses, ListInstallationRepositoriesData, ListInstallationRepositoriesErrors, ListInstallationRepositoriesResponses, ListUserInstallationsData, ListUserInstallationsErrors, ListUserInstallationsResponses, RemoveEdgesData, RemoveEdgesErrors, RemoveEdgesResponses, RemoveNodesData, RemoveNodesErrors, RemoveNodesResponses, RequestAccountPasswordResetData, RequestAccountPasswordResetErrors, RequestAccountPasswordResetResponses, UpdateConnectedAppTokenData, UpdateConnectedAppTokenErrors, UpdateConnectedAppTokenResponses } from './types.gen';
3
3
  export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {
4
4
  /**
5
5
  * You can provide a client instance returned by `createClient()` instead of
@@ -29,14 +29,14 @@ export declare const getUserProfile: <ThrowOnError extends boolean = false>(opti
29
29
  * Fetch the users identities.
30
30
  */
31
31
  export declare const getUserIdentities: <ThrowOnError extends boolean = false>(options?: Options<GetUserIdentitiesData, ThrowOnError>) => import("./client").RequestResult<GetUserIdentitiesResponses, GetUserIdentitiesErrors, ThrowOnError, "fields">;
32
- /**
33
- * Create an identity for the authenticated user.
34
- */
35
- export declare const createAccountIdentity: <ThrowOnError extends boolean = false>(options: Options<CreateAccountIdentityData, ThrowOnError>) => import("./client").RequestResult<CreateAccountIdentityResponses, CreateAccountIdentityErrors, ThrowOnError, "fields">;
36
32
  /**
37
33
  * Fetch a connected app authorization URL for the authenticated user.
38
34
  */
39
35
  export declare const getConnectedAppUrl: <ThrowOnError extends boolean = false>(options: Options<GetConnectedAppUrlData, ThrowOnError>) => import("./client").RequestResult<GetConnectedAppUrlResponses, GetConnectedAppUrlErrors, ThrowOnError, "fields">;
36
+ /**
37
+ * Exchange a connected app session for an access token and update the user's identity.
38
+ */
39
+ export declare const updateConnectedAppToken: <ThrowOnError extends boolean = false>(options: Options<UpdateConnectedAppTokenData, ThrowOnError>) => import("./client").RequestResult<UpdateConnectedAppTokenResponses, UpdateConnectedAppTokenErrors, ThrowOnError, "fields">;
40
40
  /**
41
41
  * List repositories accessible to a GitHub App installation.
42
42
  */
@@ -61,36 +61,32 @@ export const getUserIdentities = (options) => {
61
61
  });
62
62
  };
63
63
  /**
64
- * Create an identity for the authenticated user.
64
+ * Fetch a connected app authorization URL for the authenticated user.
65
65
  */
66
- export const createAccountIdentity = (options) => {
67
- return (options.client ?? client).post({
66
+ export const getConnectedAppUrl = (options) => {
67
+ return (options.client ?? client).get({
68
68
  security: [
69
69
  {
70
70
  scheme: 'bearer',
71
71
  type: 'http'
72
72
  }
73
73
  ],
74
- url: '/auth/account/identities',
75
- ...options,
76
- headers: {
77
- 'Content-Type': 'application/json',
78
- ...options.headers
79
- }
74
+ url: '/auth/account/connected-app-url',
75
+ ...options
80
76
  });
81
77
  };
82
78
  /**
83
- * Fetch a connected app authorization URL for the authenticated user.
79
+ * Exchange a connected app session for an access token and update the user's identity.
84
80
  */
85
- export const getConnectedAppUrl = (options) => {
86
- return (options.client ?? client).get({
81
+ export const updateConnectedAppToken = (options) => {
82
+ return (options.client ?? client).patch({
87
83
  security: [
88
84
  {
89
85
  scheme: 'bearer',
90
86
  type: 'http'
91
87
  }
92
88
  ],
93
- url: '/auth/account/connected-app-url',
89
+ url: '/auth/account/connected-app-token/{sessionId}',
94
90
  ...options
95
91
  });
96
92
  };
@@ -106,10 +106,6 @@ export type GitHubBranch = {
106
106
  sha: string;
107
107
  url: string;
108
108
  };
109
- [key: string]: unknown | string | boolean | {
110
- sha: string;
111
- url: string;
112
- } | undefined;
113
109
  };
114
110
  export type GitHubBranchesResponse = {
115
111
  branches: Array<GitHubBranch>;
@@ -356,14 +352,18 @@ export type Page = number;
356
352
  * Page size (max 100).
357
353
  */
358
354
  export type Limit = number;
359
- /**
360
- * When true, fetch all pages and return the full list (branches only).
361
- */
362
- export type All = boolean;
363
355
  /**
364
356
  * Connected app key code reference from Kinde.
365
357
  */
366
358
  export type KeyCodeRef = string;
359
+ /**
360
+ * Connected app session ID returned by Kinde.
361
+ */
362
+ export type SessionId = string;
363
+ /**
364
+ * Connected app key reference code.
365
+ */
366
+ export type AppKeyRefCode = 'github-app';
367
367
  /**
368
368
  * GitHub OAuth access token for the authenticated Kinde user.
369
369
  */
@@ -464,15 +464,20 @@ export type GetUserIdentitiesResponses = {
464
464
  200: AccountIdentities;
465
465
  };
466
466
  export type GetUserIdentitiesResponse = GetUserIdentitiesResponses[keyof GetUserIdentitiesResponses];
467
- export type CreateAccountIdentityData = {
468
- body: CreateAccountIdentityRequest;
467
+ export type GetConnectedAppUrlData = {
468
+ body?: never;
469
469
  path?: never;
470
- query?: never;
471
- url: '/auth/account/identities';
470
+ query: {
471
+ /**
472
+ * Connected app key code reference from Kinde.
473
+ */
474
+ key_code_ref: string;
475
+ };
476
+ url: '/auth/account/connected-app-url';
472
477
  };
473
- export type CreateAccountIdentityErrors = {
478
+ export type GetConnectedAppUrlErrors = {
474
479
  /**
475
- * Invalid request body.
480
+ * Invalid request parameters.
476
481
  */
477
482
  400: ErrorResponse;
478
483
  /**
@@ -483,31 +488,40 @@ export type CreateAccountIdentityErrors = {
483
488
  * Invalid credentials.
484
489
  */
485
490
  403: ErrorResponse;
491
+ /**
492
+ * Related content not found.
493
+ */
494
+ 404: ErrorResponse;
486
495
  /**
487
496
  * Unexpected error.
488
497
  */
489
498
  500: ErrorResponse;
490
499
  };
491
- export type CreateAccountIdentityError = CreateAccountIdentityErrors[keyof CreateAccountIdentityErrors];
492
- export type CreateAccountIdentityResponses = {
500
+ export type GetConnectedAppUrlError = GetConnectedAppUrlErrors[keyof GetConnectedAppUrlErrors];
501
+ export type GetConnectedAppUrlResponses = {
493
502
  /**
494
- * Identity created successfully.
503
+ * Connected app URL and session id.
495
504
  */
496
- 201: CreateAccountIdentityResponse;
505
+ 200: ConnectedAppUrlResponse;
497
506
  };
498
- export type CreateAccountIdentityResponse2 = CreateAccountIdentityResponses[keyof CreateAccountIdentityResponses];
499
- export type GetConnectedAppUrlData = {
507
+ export type GetConnectedAppUrlResponse = GetConnectedAppUrlResponses[keyof GetConnectedAppUrlResponses];
508
+ export type UpdateConnectedAppTokenData = {
500
509
  body?: never;
501
- path?: never;
510
+ path: {
511
+ /**
512
+ * Connected app session ID returned by Kinde.
513
+ */
514
+ sessionId: string;
515
+ };
502
516
  query: {
503
517
  /**
504
- * Connected app key code reference from Kinde.
518
+ * Connected app key reference code.
505
519
  */
506
- key_code_ref: string;
520
+ app_key_ref_code: 'github-app';
507
521
  };
508
- url: '/auth/account/connected-app-url';
522
+ url: '/auth/account/connected-app-token/{sessionId}';
509
523
  };
510
- export type GetConnectedAppUrlErrors = {
524
+ export type UpdateConnectedAppTokenErrors = {
511
525
  /**
512
526
  * Invalid request parameters.
513
527
  */
@@ -520,23 +534,18 @@ export type GetConnectedAppUrlErrors = {
520
534
  * Invalid credentials.
521
535
  */
522
536
  403: ErrorResponse;
523
- /**
524
- * Related content not found.
525
- */
526
- 404: ErrorResponse;
527
537
  /**
528
538
  * Unexpected error.
529
539
  */
530
540
  500: ErrorResponse;
531
541
  };
532
- export type GetConnectedAppUrlError = GetConnectedAppUrlErrors[keyof GetConnectedAppUrlErrors];
533
- export type GetConnectedAppUrlResponses = {
542
+ export type UpdateConnectedAppTokenError = UpdateConnectedAppTokenErrors[keyof UpdateConnectedAppTokenErrors];
543
+ export type UpdateConnectedAppTokenResponses = {
534
544
  /**
535
- * Connected app URL and session id.
545
+ * Token accepted and user identity updated.
536
546
  */
537
- 200: ConnectedAppUrlResponse;
547
+ 202: unknown;
538
548
  };
539
- export type GetConnectedAppUrlResponse = GetConnectedAppUrlResponses[keyof GetConnectedAppUrlResponses];
540
549
  export type ListInstallationRepositoriesData = {
541
550
  body?: never;
542
551
  path: {
@@ -608,10 +617,6 @@ export type ListInstallationBranchesData = {
608
617
  * Page size (max 100).
609
618
  */
610
619
  limit?: number;
611
- /**
612
- * When true, fetch all pages and return the full list (branches only).
613
- */
614
- all?: boolean;
615
620
  };
616
621
  url: '/auth/installations/{installationID}/branches';
617
622
  };
@@ -638,7 +643,7 @@ export type ListInstallationBranchesResponses = {
638
643
  /**
639
644
  * Branches for the repository.
640
645
  */
641
- 200: GitHubBranchesResponse | GitHubBranchesAllResponse;
646
+ 200: GitHubBranchesResponse;
642
647
  };
643
648
  export type ListInstallationBranchesResponse = ListInstallationBranchesResponses[keyof ListInstallationBranchesResponses];
644
649
  export type ListUserInstallationsData = {
@@ -1,6 +1,6 @@
1
1
  import { useMutation } from "@tanstack/react-query";
2
2
  import { GetSuccessResponse } from "../util";
3
- import { GetServiceHealthData, RequestAccountPasswordResetData, RequestAccountPasswordResetResponses, GetUserProfileData, GetUserIdentitiesData, CreateAccountIdentityData, CreateAccountIdentityResponses, GetConnectedAppUrlData, ListInstallationRepositoriesData, ListInstallationBranchesData, ListUserInstallationsData, CreateSpaceData, CreateSpaceResponses, GetSpaceOverviewData, FetchKindeOrganisationBillingAgreementsData, CreateProjectData, CreateProjectResponses, GetProjectOverviewData, CreateEnvironmentData, CreateEnvironmentResponses, GetEnvironmentOverviewData, GetGraphOverviewData, RemoveNodesData, RemoveNodesResponses, AddNodesData, AddNodesResponses, RemoveEdgesData, RemoveEdgesResponses, AddEdgesData, AddEdgesResponses } from "../../sdk/types.gen";
3
+ import { GetServiceHealthData, RequestAccountPasswordResetData, RequestAccountPasswordResetResponses, GetUserProfileData, GetUserIdentitiesData, GetConnectedAppUrlData, UpdateConnectedAppTokenData, UpdateConnectedAppTokenResponses, ListInstallationRepositoriesData, ListInstallationBranchesData, ListUserInstallationsData, CreateSpaceData, CreateSpaceResponses, GetSpaceOverviewData, FetchKindeOrganisationBillingAgreementsData, CreateProjectData, CreateProjectResponses, GetProjectOverviewData, CreateEnvironmentData, CreateEnvironmentResponses, GetEnvironmentOverviewData, GetGraphOverviewData, RemoveNodesData, RemoveNodesResponses, AddNodesData, AddNodesResponses, RemoveEdgesData, RemoveEdgesResponses, AddEdgesData, AddEdgesResponses } from "../../sdk/types.gen";
4
4
  export declare const useGetServiceHealth: (options?: Omit<GetServiceHealthData, "url"> & {
5
5
  enabled?: boolean;
6
6
  }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").HealthResponse | undefined, Error>;
@@ -15,20 +15,20 @@ export declare const useGetUserProfile: (options?: Omit<GetUserProfileData, "url
15
15
  export declare const useGetUserIdentities: (options?: Omit<GetUserIdentitiesData, "url"> & {
16
16
  enabled?: boolean;
17
17
  }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").AccountIdentities | undefined, Error>;
18
- export declare const useCreateAccountIdentity: (config?: {
19
- onSuccess?: (data: GetSuccessResponse<CreateAccountIdentityResponses>) => void;
20
- onError?: Parameters<typeof useMutation>["0"]["onError"];
21
- retry?: boolean;
22
- }) => import("@tanstack/react-query").UseMutationResult<import("../../sdk/types.gen").CreateAccountIdentityResponse | undefined, unknown, Omit<CreateAccountIdentityData, "url">, unknown>;
23
18
  export declare const useGetConnectedAppUrl: (options: Omit<GetConnectedAppUrlData, "url"> & {
24
19
  enabled?: boolean;
25
20
  }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").ConnectedAppUrlResponse | undefined, Error>;
21
+ export declare const useUpdateConnectedAppToken: (config?: {
22
+ onSuccess?: (data: GetSuccessResponse<UpdateConnectedAppTokenResponses>) => void;
23
+ onError?: Parameters<typeof useMutation>["0"]["onError"];
24
+ retry?: boolean;
25
+ }) => import("@tanstack/react-query").UseMutationResult<unknown, unknown, Omit<UpdateConnectedAppTokenData, "url">, unknown>;
26
26
  export declare const useListInstallationRepositories: (options: Omit<ListInstallationRepositoriesData, "url"> & {
27
27
  enabled?: boolean;
28
28
  }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").GitHubRepositoriesResponse | undefined, Error>;
29
29
  export declare const useListInstallationBranches: (options: Omit<ListInstallationBranchesData, "url"> & {
30
30
  enabled?: boolean;
31
- }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").GitHubBranchesResponse | import("../../sdk/types.gen").GitHubBranchesAllResponse | undefined, Error>;
31
+ }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").GitHubBranchesResponse | undefined, Error>;
32
32
  export declare const useListUserInstallations: (options?: Omit<ListUserInstallationsData, "url"> & {
33
33
  enabled?: boolean;
34
34
  }) => import("@tanstack/react-query").UseQueryResult<import("../../sdk/types.gen").UserGithubInstallationsResponse | undefined, Error>;
@@ -2,7 +2,7 @@
2
2
  import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query";
3
3
  import { isPromise } from "../util";
4
4
  import { useToken } from "../../provider/token-provider";
5
- import { getServiceHealth, requestAccountPasswordReset, getUserProfile, getUserIdentities, createAccountIdentity, getConnectedAppUrl, listInstallationRepositories, listInstallationBranches, listUserInstallations, createSpace, getSpaceOverview, fetchKindeOrganisationBillingAgreements, createProject, getProjectOverview, createEnvironment, getEnvironmentOverview, getGraphOverview, removeNodes, addNodes, removeEdges, addEdges } from "../../sdk/sdk.gen";
5
+ import { getServiceHealth, requestAccountPasswordReset, getUserProfile, getUserIdentities, getConnectedAppUrl, updateConnectedAppToken, listInstallationRepositories, listInstallationBranches, listUserInstallations, createSpace, getSpaceOverview, fetchKindeOrganisationBillingAgreements, createProject, getProjectOverview, createEnvironment, getEnvironmentOverview, getGraphOverview, removeNodes, addNodes, removeEdges, addEdges } from "../../sdk/sdk.gen";
6
6
  export const useGetServiceHealth = (options) => {
7
7
  const token = useToken();
8
8
  let { enabled, ...rest } = options || { enabled: true };
@@ -85,25 +85,6 @@ export const useGetUserIdentities = (options) => {
85
85
  staleTime: 600000
86
86
  });
87
87
  };
88
- export const useCreateAccountIdentity = (config) => {
89
- const token = useToken();
90
- const queryClient = useQueryClient();
91
- const opts = { throwOnError: true, url: "/auth/account/identities" };
92
- const funcer = async (options) => {
93
- const auth = isPromise(token) ? (await token) || "" : token || "";
94
- const res = await createAccountIdentity({ ...opts, ...options, auth });
95
- return res?.data;
96
- };
97
- return useMutation({
98
- mutationFn: funcer,
99
- onSuccess: (res, options, c, ctx) => {
100
- queryClient.invalidateQueries({ queryKey: ["account", "identities"] });
101
- config?.onSuccess && config.onSuccess(res);
102
- },
103
- onError: config?.onError,
104
- retry: config?.retry
105
- });
106
- };
107
88
  export const useGetConnectedAppUrl = (options) => {
108
89
  const token = useToken();
109
90
  let { enabled, ...rest } = options || { enabled: true };
@@ -125,6 +106,25 @@ export const useGetConnectedAppUrl = (options) => {
125
106
  staleTime: 600000
126
107
  });
127
108
  };
109
+ export const useUpdateConnectedAppToken = (config) => {
110
+ const token = useToken();
111
+ const queryClient = useQueryClient();
112
+ const opts = { throwOnError: true, url: "/auth/account/connected-app-token/{sessionId}" };
113
+ const funcer = async (options) => {
114
+ const auth = isPromise(token) ? (await token) || "" : token || "";
115
+ const res = await updateConnectedAppToken({ ...opts, ...options, auth });
116
+ return res?.data;
117
+ };
118
+ return useMutation({
119
+ mutationFn: funcer,
120
+ onSuccess: (res, options, c, ctx) => {
121
+ queryClient.invalidateQueries({ queryKey: ["account", "connected-app-token", options?.path?.sessionId] });
122
+ config?.onSuccess && config.onSuccess(res);
123
+ },
124
+ onError: config?.onError,
125
+ retry: config?.retry
126
+ });
127
+ };
128
128
  export const useListInstallationRepositories = (options) => {
129
129
  const token = useToken();
130
130
  let { enabled, ...rest } = options || { enabled: true };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shoal-web-sdk",
3
- "version": "0.0.48",
3
+ "version": "0.0.50",
4
4
  "main": "index.js",
5
5
  "scripts": {
6
6
  "build-hooks": "npx tsx tanstack-codegen/generator.ts",