@workos-inc/widgets 1.1.0 → 1.1.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.
- package/dist/cjs/api/api-provider.d.ts +26 -0
- package/dist/cjs/api/api-provider.d.ts.map +1 -0
- package/dist/cjs/api/api-provider.js +123 -0
- package/dist/cjs/api/api-provider.js.map +1 -0
- package/dist/cjs/api/constants.d.ts +2 -0
- package/dist/cjs/api/constants.d.ts.map +1 -0
- package/dist/cjs/api/constants.js +5 -0
- package/dist/cjs/api/constants.js.map +1 -0
- package/dist/cjs/api/endpoint.d.ts +957 -0
- package/dist/cjs/api/endpoint.d.ts.map +1 -0
- package/dist/cjs/api/endpoint.js +856 -0
- package/dist/cjs/api/endpoint.js.map +1 -0
- package/dist/cjs/api/errors.d.ts +33 -0
- package/dist/cjs/api/errors.d.ts.map +1 -0
- package/dist/cjs/api/errors.js +40 -0
- package/dist/cjs/api/errors.js.map +1 -0
- package/dist/cjs/api/index.d.ts +3 -0
- package/dist/cjs/api/index.d.ts.map +1 -0
- package/dist/cjs/api/index.js +19 -0
- package/dist/cjs/api/index.js.map +1 -0
- package/dist/cjs/api/utils.d.ts +10 -0
- package/dist/cjs/api/utils.d.ts.map +1 -0
- package/dist/cjs/api/utils.js +42 -0
- package/dist/cjs/api/utils.js.map +1 -0
- package/dist/cjs/api/widgets-api-client.d.ts +21 -0
- package/dist/cjs/api/widgets-api-client.d.ts.map +1 -0
- package/dist/cjs/api/widgets-api-client.js +61 -0
- package/dist/cjs/api/widgets-api-client.js.map +1 -0
- package/dist/cjs/lib/add-mfa-dialog.js +1 -1
- package/dist/cjs/lib/add-mfa-dialog.js.map +1 -1
- package/dist/cjs/lib/api/user.d.ts +6 -6
- package/dist/cjs/lib/api/user.js +1 -1
- package/dist/cjs/lib/change-password-dialog.js +1 -1
- package/dist/cjs/lib/change-password-dialog.js.map +1 -1
- package/dist/cjs/lib/delete-user-dialog.d.ts +1 -1
- package/dist/cjs/lib/delete-user-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/edit-user-profile-dialog.d.ts +1 -1
- package/dist/cjs/lib/edit-user-profile-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/edit-user-profile-dialog.js +1 -1
- package/dist/cjs/lib/edit-user-profile-dialog.js.map +1 -1
- package/dist/cjs/lib/edit-user-role-dialog.d.ts +1 -1
- package/dist/cjs/lib/edit-user-role-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/edit-user-role-dialog.js +1 -1
- package/dist/cjs/lib/edit-user-role-dialog.js.map +1 -1
- package/dist/cjs/lib/elevated-access.js +1 -1
- package/dist/cjs/lib/elevated-access.js.map +1 -1
- package/dist/cjs/lib/invite-user-dialog.js +1 -1
- package/dist/cjs/lib/invite-user-dialog.js.map +1 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.js +1 -1
- package/dist/cjs/lib/logout-all-sessions-dialog.js.map +1 -1
- package/dist/cjs/lib/logout-dialog.d.ts +1 -1
- package/dist/cjs/lib/logout-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/logout-dialog.js +1 -1
- package/dist/cjs/lib/logout-dialog.js.map +1 -1
- package/dist/cjs/lib/organization-switcher.d.ts +1 -1
- package/dist/cjs/lib/organization-switcher.d.ts.map +1 -1
- package/dist/cjs/lib/organization-switcher.js.map +1 -1
- package/dist/cjs/lib/resend-invite-dialog.d.ts +1 -1
- package/dist/cjs/lib/resend-invite-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/reset-mfa-dialog.js +1 -1
- package/dist/cjs/lib/reset-mfa-dialog.js.map +1 -1
- package/dist/cjs/lib/revoke-invite-dialog.d.ts +1 -1
- package/dist/cjs/lib/revoke-invite-dialog.d.ts.map +1 -1
- package/dist/cjs/lib/set-password-dialog.js +1 -1
- package/dist/cjs/lib/set-password-dialog.js.map +1 -1
- package/dist/cjs/lib/use-security-settings.js +1 -1
- package/dist/cjs/lib/use-security-settings.js.map +1 -1
- package/dist/cjs/lib/user-actions-dropdown.d.ts +1 -1
- package/dist/cjs/lib/user-actions-dropdown.d.ts.map +1 -1
- package/dist/cjs/lib/user-actions-dropdown.js +1 -1
- package/dist/cjs/lib/user-actions-dropdown.js.map +1 -1
- package/dist/cjs/lib/user-profile.d.ts +1 -1
- package/dist/cjs/lib/user-profile.d.ts.map +1 -1
- package/dist/cjs/lib/user-security.d.ts +1 -1
- package/dist/cjs/lib/user-security.d.ts.map +1 -1
- package/dist/cjs/lib/user-sessions.d.ts +1 -1
- package/dist/cjs/lib/user-sessions.d.ts.map +1 -1
- package/dist/cjs/lib/users-filter.d.ts +1 -1
- package/dist/cjs/lib/users-filter.d.ts.map +1 -1
- package/dist/cjs/lib/users-management-state.d.ts +1 -1
- package/dist/cjs/lib/users-management-state.d.ts.map +1 -1
- package/dist/cjs/lib/users-management.d.ts +1 -1
- package/dist/cjs/lib/users-management.d.ts.map +1 -1
- package/dist/cjs/lib/utils.d.ts +1 -1
- package/dist/cjs/lib/utils.d.ts.map +1 -1
- package/dist/cjs/organization-switcher.client.d.ts +1 -1
- package/dist/cjs/organization-switcher.client.d.ts.map +1 -1
- package/dist/cjs/organization-switcher.client.js +1 -1
- package/dist/cjs/organization-switcher.client.js.map +1 -1
- package/dist/cjs/user-profile.client.d.ts +1 -1
- package/dist/cjs/user-profile.client.d.ts.map +1 -1
- package/dist/cjs/user-profile.client.js +1 -1
- package/dist/cjs/user-profile.client.js.map +1 -1
- package/dist/cjs/user-security.client.d.ts +1 -1
- package/dist/cjs/user-security.client.d.ts.map +1 -1
- package/dist/cjs/user-security.client.js +1 -1
- package/dist/cjs/user-security.client.js.map +1 -1
- package/dist/cjs/user-sessions.client.js +1 -1
- package/dist/cjs/user-sessions.client.js.map +1 -1
- package/dist/cjs/users-management.client.d.ts +1 -1
- package/dist/cjs/users-management.client.d.ts.map +1 -1
- package/dist/cjs/users-management.client.js +1 -1
- package/dist/cjs/users-management.client.js.map +1 -1
- package/dist/esm/api/api-provider.d.ts +26 -0
- package/dist/esm/api/api-provider.d.ts.map +1 -0
- package/dist/esm/api/api-provider.js +94 -0
- package/dist/esm/api/api-provider.js.map +1 -0
- package/dist/esm/api/constants.d.ts +2 -0
- package/dist/esm/api/constants.d.ts.map +1 -0
- package/dist/esm/api/constants.js +2 -0
- package/dist/esm/api/constants.js.map +1 -0
- package/dist/esm/api/endpoint.d.ts +957 -0
- package/dist/esm/api/endpoint.d.ts.map +1 -0
- package/dist/esm/api/endpoint.js +774 -0
- package/dist/esm/api/endpoint.js.map +1 -0
- package/dist/esm/api/errors.d.ts +33 -0
- package/dist/esm/api/errors.d.ts.map +1 -0
- package/dist/esm/api/errors.js +34 -0
- package/dist/esm/api/errors.js.map +1 -0
- package/dist/esm/api/index.d.ts +3 -0
- package/dist/esm/api/index.d.ts.map +1 -0
- package/dist/esm/api/index.js +3 -0
- package/dist/esm/api/index.js.map +1 -0
- package/dist/esm/api/utils.d.ts +10 -0
- package/dist/esm/api/utils.d.ts.map +1 -0
- package/dist/esm/api/utils.js +36 -0
- package/dist/esm/api/utils.js.map +1 -0
- package/dist/esm/api/widgets-api-client.d.ts +21 -0
- package/dist/esm/api/widgets-api-client.d.ts.map +1 -0
- package/dist/esm/api/widgets-api-client.js +56 -0
- package/dist/esm/api/widgets-api-client.js.map +1 -0
- package/dist/esm/lib/add-mfa-dialog.js +1 -1
- package/dist/esm/lib/add-mfa-dialog.js.map +1 -1
- package/dist/esm/lib/api/user.d.ts +6 -6
- package/dist/esm/lib/api/user.js +1 -1
- package/dist/esm/lib/change-password-dialog.js +1 -1
- package/dist/esm/lib/change-password-dialog.js.map +1 -1
- package/dist/esm/lib/delete-user-dialog.d.ts +1 -1
- package/dist/esm/lib/delete-user-dialog.d.ts.map +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.d.ts +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.d.ts.map +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.js +1 -1
- package/dist/esm/lib/edit-user-profile-dialog.js.map +1 -1
- package/dist/esm/lib/edit-user-role-dialog.d.ts +1 -1
- package/dist/esm/lib/edit-user-role-dialog.d.ts.map +1 -1
- package/dist/esm/lib/edit-user-role-dialog.js +1 -1
- package/dist/esm/lib/edit-user-role-dialog.js.map +1 -1
- package/dist/esm/lib/elevated-access.js +1 -1
- package/dist/esm/lib/elevated-access.js.map +1 -1
- package/dist/esm/lib/invite-user-dialog.js +1 -1
- package/dist/esm/lib/invite-user-dialog.js.map +1 -1
- package/dist/esm/lib/logout-all-sessions-dialog.js +1 -1
- package/dist/esm/lib/logout-all-sessions-dialog.js.map +1 -1
- package/dist/esm/lib/logout-dialog.d.ts +1 -1
- package/dist/esm/lib/logout-dialog.d.ts.map +1 -1
- package/dist/esm/lib/logout-dialog.js +1 -1
- package/dist/esm/lib/logout-dialog.js.map +1 -1
- package/dist/esm/lib/organization-switcher.d.ts +1 -1
- package/dist/esm/lib/organization-switcher.d.ts.map +1 -1
- package/dist/esm/lib/organization-switcher.js.map +1 -1
- package/dist/esm/lib/resend-invite-dialog.d.ts +1 -1
- package/dist/esm/lib/resend-invite-dialog.d.ts.map +1 -1
- package/dist/esm/lib/reset-mfa-dialog.js +1 -1
- package/dist/esm/lib/reset-mfa-dialog.js.map +1 -1
- package/dist/esm/lib/revoke-invite-dialog.d.ts +1 -1
- package/dist/esm/lib/revoke-invite-dialog.d.ts.map +1 -1
- package/dist/esm/lib/set-password-dialog.js +1 -1
- package/dist/esm/lib/set-password-dialog.js.map +1 -1
- package/dist/esm/lib/use-security-settings.js +1 -1
- package/dist/esm/lib/use-security-settings.js.map +1 -1
- package/dist/esm/lib/user-actions-dropdown.d.ts +1 -1
- package/dist/esm/lib/user-actions-dropdown.d.ts.map +1 -1
- package/dist/esm/lib/user-actions-dropdown.js +1 -1
- package/dist/esm/lib/user-actions-dropdown.js.map +1 -1
- package/dist/esm/lib/user-profile.d.ts +1 -1
- package/dist/esm/lib/user-profile.d.ts.map +1 -1
- package/dist/esm/lib/user-security.d.ts +1 -1
- package/dist/esm/lib/user-security.d.ts.map +1 -1
- package/dist/esm/lib/user-sessions.d.ts +1 -1
- package/dist/esm/lib/user-sessions.d.ts.map +1 -1
- package/dist/esm/lib/users-filter.d.ts +1 -1
- package/dist/esm/lib/users-filter.d.ts.map +1 -1
- package/dist/esm/lib/users-management-state.d.ts +1 -1
- package/dist/esm/lib/users-management-state.d.ts.map +1 -1
- package/dist/esm/lib/users-management.d.ts +1 -1
- package/dist/esm/lib/users-management.d.ts.map +1 -1
- package/dist/esm/lib/utils.d.ts +1 -1
- package/dist/esm/lib/utils.d.ts.map +1 -1
- package/dist/esm/organization-switcher.client.d.ts +1 -1
- package/dist/esm/organization-switcher.client.d.ts.map +1 -1
- package/dist/esm/organization-switcher.client.js +1 -1
- package/dist/esm/organization-switcher.client.js.map +1 -1
- package/dist/esm/user-profile.client.d.ts +1 -1
- package/dist/esm/user-profile.client.d.ts.map +1 -1
- package/dist/esm/user-profile.client.js +1 -1
- package/dist/esm/user-profile.client.js.map +1 -1
- package/dist/esm/user-security.client.d.ts +1 -1
- package/dist/esm/user-security.client.d.ts.map +1 -1
- package/dist/esm/user-security.client.js +1 -1
- package/dist/esm/user-security.client.js.map +1 -1
- package/dist/esm/user-sessions.client.js +1 -1
- package/dist/esm/user-sessions.client.js.map +1 -1
- package/dist/esm/users-management.client.d.ts +1 -1
- package/dist/esm/users-management.client.d.ts.map +1 -1
- package/dist/esm/users-management.client.js +1 -1
- package/dist/esm/users-management.client.js.map +1 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +12 -4
- package/src/api/api-provider.tsx +141 -0
- package/src/api/constants.ts +1 -0
- package/src/api/endpoint.ts +3057 -0
- package/src/api/errors.ts +48 -0
- package/src/api/index.ts +2 -0
- package/src/api/utils.ts +42 -0
- package/src/api/widgets-api-client.ts +86 -0
- package/src/lib/add-mfa-dialog.tsx +1 -1
- package/src/lib/api/user.ts +1 -1
- package/src/lib/change-password-dialog.tsx +1 -1
- package/src/lib/delete-user-dialog.tsx +1 -1
- package/src/lib/edit-user-profile-dialog.tsx +1 -1
- package/src/lib/edit-user-role-dialog.tsx +1 -1
- package/src/lib/elevated-access.tsx +1 -1
- package/src/lib/invite-user-dialog.tsx +1 -1
- package/src/lib/logout-all-sessions-dialog.tsx +1 -1
- package/src/lib/logout-dialog.tsx +1 -5
- package/src/lib/organization-switcher.tsx +1 -5
- package/src/lib/resend-invite-dialog.tsx +1 -1
- package/src/lib/reset-mfa-dialog.tsx +1 -1
- package/src/lib/revoke-invite-dialog.tsx +1 -1
- package/src/lib/set-password-dialog.tsx +1 -1
- package/src/lib/use-security-settings.tsx +1 -1
- package/src/lib/user-actions-dropdown.tsx +2 -2
- package/src/lib/user-profile.tsx +1 -1
- package/src/lib/user-security.tsx +1 -1
- package/src/lib/user-sessions.tsx +1 -1
- package/src/lib/users-filter.tsx +1 -1
- package/src/lib/users-management-context.tsx +1 -1
- package/src/lib/users-management-state.ts +1 -1
- package/src/lib/users-management.tsx +1 -1
- package/src/lib/utils.ts +1 -1
- package/src/organization-switcher.client.tsx +1 -1
- package/src/user-profile.client.tsx +1 -1
- package/src/user-security.client.tsx +1 -5
- package/src/user-sessions.client.tsx +1 -1
- package/src/users-management.client.tsx +1 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
type QueryType = "query" | "mutation";
|
|
2
|
+
|
|
3
|
+
export class FetchError extends Error {
|
|
4
|
+
queryType: QueryType;
|
|
5
|
+
recordType?: string;
|
|
6
|
+
context: unknown;
|
|
7
|
+
constructor(args: {
|
|
8
|
+
message: string;
|
|
9
|
+
queryType: QueryType;
|
|
10
|
+
recordType?: string;
|
|
11
|
+
context?: unknown;
|
|
12
|
+
}) {
|
|
13
|
+
super(args.message);
|
|
14
|
+
this.name = "FetchError";
|
|
15
|
+
this.queryType = args.queryType;
|
|
16
|
+
this.recordType = args.recordType;
|
|
17
|
+
this.context = args.context;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export class ApiError extends Error {
|
|
22
|
+
status: number;
|
|
23
|
+
queryType: QueryType;
|
|
24
|
+
recordType?: string;
|
|
25
|
+
context: unknown;
|
|
26
|
+
constructor(args: {
|
|
27
|
+
message: string;
|
|
28
|
+
queryType: QueryType;
|
|
29
|
+
recordType?: string;
|
|
30
|
+
status: number;
|
|
31
|
+
context?: unknown;
|
|
32
|
+
}) {
|
|
33
|
+
super(args.message);
|
|
34
|
+
this.name = "ApiError";
|
|
35
|
+
this.status = args.status;
|
|
36
|
+
this.queryType = args.queryType;
|
|
37
|
+
this.recordType = args.recordType;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export class NoAuthTokenError extends Error {
|
|
42
|
+
context: unknown;
|
|
43
|
+
constructor(args?: { context?: unknown }) {
|
|
44
|
+
super("No auth token provided");
|
|
45
|
+
this.name = "NoAuthTokenError";
|
|
46
|
+
this.context = args?.context;
|
|
47
|
+
}
|
|
48
|
+
}
|
package/src/api/index.ts
ADDED
package/src/api/utils.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { WIDGETS_API_VERSION } from "./constants";
|
|
2
|
+
|
|
3
|
+
export function getAuthHeaders(authToken: string): HeadersInit {
|
|
4
|
+
return {
|
|
5
|
+
Authorization: `Bearer ${authToken}`,
|
|
6
|
+
"WorkOS-Widgets-Version": WIDGETS_API_VERSION,
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export function isObjectLike(value: unknown): value is Record<string, unknown> {
|
|
11
|
+
return typeof value === "object" && value !== null;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export function isErrorLike(
|
|
15
|
+
value: unknown,
|
|
16
|
+
): value is Record<string, unknown> & { message: string } {
|
|
17
|
+
return isObjectLike(value) && typeof value.message === "string";
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export async function parseErrorResponse(
|
|
21
|
+
response: Response,
|
|
22
|
+
): Promise<{ message: string; status: number }> {
|
|
23
|
+
try {
|
|
24
|
+
const json = await response.json();
|
|
25
|
+
if (!isObjectLike(json) || typeof json.message !== "string") {
|
|
26
|
+
return {
|
|
27
|
+
status: response.status,
|
|
28
|
+
message: response.statusText,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
return {
|
|
32
|
+
...json,
|
|
33
|
+
status: response.status,
|
|
34
|
+
message: json.message || response.statusText,
|
|
35
|
+
};
|
|
36
|
+
} catch {
|
|
37
|
+
return {
|
|
38
|
+
status: response.status,
|
|
39
|
+
message: response.statusText,
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { QueryKey } from "@tanstack/react-query";
|
|
2
|
+
import { useApi } from "./api-provider";
|
|
3
|
+
import { ApiError, FetchError } from "./errors";
|
|
4
|
+
import { getAuthHeaders, parseErrorResponse } from "./utils";
|
|
5
|
+
|
|
6
|
+
type WidgetsApiClient<T> = (data: {
|
|
7
|
+
url: string;
|
|
8
|
+
method: "GET" | "POST" | "PUT" | "DELETE" | "PATCH";
|
|
9
|
+
params?: Record<string, any>;
|
|
10
|
+
headers?: Record<string, any>;
|
|
11
|
+
data?: BodyType<unknown>;
|
|
12
|
+
signal?: AbortSignal;
|
|
13
|
+
}) => Promise<T>;
|
|
14
|
+
|
|
15
|
+
export const useWidgetsApiClient = <T>(): WidgetsApiClient<T> => {
|
|
16
|
+
const { authToken, baseUrl, elevatedAccess } = useApi();
|
|
17
|
+
|
|
18
|
+
return async ({ url: pathname, method, params, data }) => {
|
|
19
|
+
const url = new URL(baseUrl);
|
|
20
|
+
url.pathname = pathname;
|
|
21
|
+
|
|
22
|
+
if (params) {
|
|
23
|
+
const cleanParams = Object.fromEntries(
|
|
24
|
+
Object.entries(params).filter(([_, value]) => value !== undefined),
|
|
25
|
+
);
|
|
26
|
+
url.search = new URLSearchParams(cleanParams).toString();
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
const queryType = method.toLowerCase() === "get" ? "query" : "mutation";
|
|
30
|
+
const headers = {
|
|
31
|
+
...getAuthHeaders(await Promise.resolve(authToken)),
|
|
32
|
+
...(elevatedAccess && queryType === "mutation"
|
|
33
|
+
? { "x-elevated-access-token": elevatedAccess.token }
|
|
34
|
+
: {}),
|
|
35
|
+
"Content-Type": "application/json",
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
const response = await fetch(url, {
|
|
39
|
+
method,
|
|
40
|
+
cache: "no-store",
|
|
41
|
+
headers,
|
|
42
|
+
...(data ? { body: JSON.stringify(data) } : {}),
|
|
43
|
+
}).catch((error) => {
|
|
44
|
+
throw new FetchError({
|
|
45
|
+
message: `Failed to ${method} ${url.toString()}`,
|
|
46
|
+
queryType,
|
|
47
|
+
context: { error },
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
|
|
51
|
+
if (!response.ok) {
|
|
52
|
+
const { message, status } = await parseErrorResponse(response);
|
|
53
|
+
|
|
54
|
+
throw new ApiError({
|
|
55
|
+
message,
|
|
56
|
+
status,
|
|
57
|
+
queryType: method.toLowerCase() === "get" ? "query" : "mutation",
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return response.json();
|
|
62
|
+
};
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
export type ErrorType<ErrorData> = ErrorData;
|
|
66
|
+
|
|
67
|
+
export type BodyType<BodyData> = BodyData & { headers?: any };
|
|
68
|
+
|
|
69
|
+
export const useWidgetsApiQueryOptions = <
|
|
70
|
+
QueryOptions extends { queryKey: QK },
|
|
71
|
+
QK extends QueryKey,
|
|
72
|
+
>(
|
|
73
|
+
queryOptions: QueryOptions,
|
|
74
|
+
) => {
|
|
75
|
+
const { authTokenQueryKey, baseUrl } = useApi();
|
|
76
|
+
const queryKey = [
|
|
77
|
+
// initial query key needs to go first to allow invalidation of the query name to work
|
|
78
|
+
...queryOptions.queryKey,
|
|
79
|
+
{ authTokenQueryKey, baseUrl },
|
|
80
|
+
] as unknown as QK;
|
|
81
|
+
|
|
82
|
+
return {
|
|
83
|
+
...queryOptions,
|
|
84
|
+
queryKey: queryKey as QK,
|
|
85
|
+
};
|
|
86
|
+
};
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
useCreateTotpFactor,
|
|
22
22
|
useElevatedAccessToken,
|
|
23
23
|
useVerifyTotpFactor,
|
|
24
|
-
} from "
|
|
24
|
+
} from "../api";
|
|
25
25
|
import * as Form from "@radix-ui/react-form";
|
|
26
26
|
import { Marker } from "./marker";
|
|
27
27
|
import { CopyButton } from "./copy-button";
|
package/src/lib/api/user.ts
CHANGED
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
PrimaryButton,
|
|
12
12
|
SecondaryButton,
|
|
13
13
|
} from "./elements";
|
|
14
|
-
import { useUpdatePassword } from "
|
|
14
|
+
import { useUpdatePassword } from "../api";
|
|
15
15
|
import { SaveButton } from "./save-button";
|
|
16
16
|
|
|
17
17
|
interface ChangePasswordDialogProps extends Dialog.RootProps {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { Callout, Dialog, Flex, Text, VisuallyHidden } from "@radix-ui/themes";
|
|
4
|
-
import { getMeQueryKey, Me, useUpdateMe } from "
|
|
4
|
+
import { getMeQueryKey, Me, useUpdateMe } from "../api";
|
|
5
5
|
import { useQueryClient } from "@tanstack/react-query";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { type ReactNode } from "react";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
Skeleton,
|
|
22
22
|
} from "./elements";
|
|
23
23
|
import { getBestName } from "./utils";
|
|
24
|
-
import { Member, useRoles } from "
|
|
24
|
+
import { Member, useRoles } from "../api";
|
|
25
25
|
|
|
26
26
|
interface EditUserRoleDialogProps extends Dialog.RootProps {
|
|
27
27
|
open: boolean;
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
useMe,
|
|
6
6
|
useSendVerification,
|
|
7
7
|
useVerify,
|
|
8
|
-
} from "
|
|
8
|
+
} from "../api";
|
|
9
9
|
import { PropsWithChildren, useEffect, useRef, useState } from "react";
|
|
10
10
|
import { PrimaryButton, SecondaryButton } from "./elements";
|
|
11
11
|
import * as Otp from "./otp-input";
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
import { Label } from "./elements";
|
|
22
22
|
import { isErrorLike } from "./utils";
|
|
23
23
|
import { useInviteUser } from "./api/user";
|
|
24
|
-
import { InviteMemberInput, MemberRole, useRoles } from "
|
|
24
|
+
import { InviteMemberInput, MemberRole, useRoles } from "../api";
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
27
|
* Used to stub a fake value for the role select. It will be selected by default
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
DestructiveButton,
|
|
9
9
|
SecondaryButton,
|
|
10
10
|
} from "./elements";
|
|
11
|
-
import { getSessionsQueryKey, useRevokeAllSessions } from "
|
|
11
|
+
import { getSessionsQueryKey, useRevokeAllSessions } from "../api";
|
|
12
12
|
import { useQueryClient } from "@tanstack/react-query";
|
|
13
13
|
import { SaveButton } from "./save-button";
|
|
14
14
|
|
|
@@ -8,11 +8,7 @@ import {
|
|
|
8
8
|
DestructiveButton,
|
|
9
9
|
SecondaryButton,
|
|
10
10
|
} from "./elements";
|
|
11
|
-
import {
|
|
12
|
-
ActiveSession,
|
|
13
|
-
getSessionsQueryKey,
|
|
14
|
-
useRevokeSession,
|
|
15
|
-
} from "@repo/api";
|
|
11
|
+
import { ActiveSession, getSessionsQueryKey, useRevokeSession } from "../api";
|
|
16
12
|
import { useQueryClient } from "@tanstack/react-query";
|
|
17
13
|
import { SaveButton } from "./save-button";
|
|
18
14
|
import { parseUserAgent } from "./utils";
|
|
@@ -11,11 +11,7 @@ import {
|
|
|
11
11
|
Text,
|
|
12
12
|
VisuallyHidden,
|
|
13
13
|
} from "@radix-ui/themes";
|
|
14
|
-
import {
|
|
15
|
-
OrganizationInfo,
|
|
16
|
-
Organizations403,
|
|
17
|
-
Organizations404,
|
|
18
|
-
} from "@repo/api";
|
|
14
|
+
import { OrganizationInfo, Organizations403, Organizations404 } from "../api";
|
|
19
15
|
|
|
20
16
|
type OrganizationSwitcherVariant = "ghost" | "outline";
|
|
21
17
|
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
DestructiveButton,
|
|
9
9
|
SecondaryButton,
|
|
10
10
|
} from "./elements";
|
|
11
|
-
import { useDeleteTotpFactors } from "
|
|
11
|
+
import { useDeleteTotpFactors } from "../api";
|
|
12
12
|
import { useSecuritySettings } from "./use-security-settings";
|
|
13
13
|
import { ElevatedAccess } from "./elevated-access";
|
|
14
14
|
import { SaveButton } from "./save-button";
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
SecondaryButton,
|
|
12
12
|
} from "./elements";
|
|
13
13
|
import * as Form from "@radix-ui/react-form";
|
|
14
|
-
import { useCreatePassword } from "
|
|
14
|
+
import { useCreatePassword } from "../api";
|
|
15
15
|
import { useSecuritySettings } from "./use-security-settings";
|
|
16
16
|
import { ElevatedAccess } from "./elevated-access";
|
|
17
17
|
import { SaveButton } from "./save-button";
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { DropdownMenu } from "@radix-ui/themes";
|
|
4
4
|
import * as React from "react";
|
|
5
|
-
import { Member } from "
|
|
5
|
+
import { Member } from "../api";
|
|
6
6
|
import { DeleteUserDialog } from "./delete-user-dialog";
|
|
7
7
|
import { EditUserRoleDialog } from "./edit-user-role-dialog";
|
|
8
8
|
import {
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "./elements";
|
|
13
13
|
import { ResendInviteDialog } from "./resend-invite-dialog";
|
|
14
14
|
import { RevokeInviteDialog } from "./revoke-invite-dialog";
|
|
15
|
-
import { useRoles } from "
|
|
15
|
+
import { useRoles } from "../api";
|
|
16
16
|
|
|
17
17
|
interface UserActionsDropdownProps {
|
|
18
18
|
user: Member;
|
package/src/lib/user-profile.tsx
CHANGED
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
} from "@radix-ui/themes";
|
|
13
13
|
import clsx from "clsx";
|
|
14
14
|
import { Avatar, SecondaryButton, Skeleton } from "./elements";
|
|
15
|
-
import { Me } from "
|
|
15
|
+
import { Me } from "../api";
|
|
16
16
|
import { EditUserProfileDialog } from "./edit-user-profile-dialog";
|
|
17
17
|
import { getBestName } from "./utils";
|
|
18
18
|
import { getOAuthIcon, getOAuthName } from "./oauth-icons";
|
|
@@ -12,7 +12,7 @@ import type {
|
|
|
12
12
|
AuthenticationInformationResponseData as AuthenticationSettings,
|
|
13
13
|
PasswordVerificationMethod,
|
|
14
14
|
MfaVerificationMethod,
|
|
15
|
-
} from "
|
|
15
|
+
} from "../api";
|
|
16
16
|
import { ResetMfaDialog } from "./reset-mfa-dialog";
|
|
17
17
|
import * as CardList from "../card-list";
|
|
18
18
|
import { GenericError } from "./generic-error";
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
} from "./utils";
|
|
11
11
|
import { LogoutDialog } from "./logout-dialog";
|
|
12
12
|
import { LogoutAllSessionsDialog } from "./logout-all-sessions-dialog";
|
|
13
|
-
import { ActiveSession } from "
|
|
13
|
+
import { ActiveSession } from "../api";
|
|
14
14
|
import * as CardList from "../card-list";
|
|
15
15
|
import { IconPanel } from "./icon-panel";
|
|
16
16
|
import { useState } from "react";
|
package/src/lib/users-filter.tsx
CHANGED
|
@@ -4,7 +4,7 @@ import { Select } from "@radix-ui/themes";
|
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { SelectContent, SelectItem, SelectTrigger } from "./elements";
|
|
6
6
|
import { useUsersManagementContext } from "./users-management-context";
|
|
7
|
-
import { MemberRole } from "
|
|
7
|
+
import { MemberRole } from "../api";
|
|
8
8
|
|
|
9
9
|
const ALL_ROLES_NAME = "All";
|
|
10
10
|
const ALL_ROLES_VALUE = "null";
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
UsersManagementState,
|
|
7
7
|
useUsersManagementState,
|
|
8
8
|
} from "./users-management-state";
|
|
9
|
-
import { ListMetadata } from "
|
|
9
|
+
import { ListMetadata } from "../api";
|
|
10
10
|
|
|
11
11
|
export interface UsersManagementContextType {
|
|
12
12
|
state: UsersManagementState;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { canUseDOM } from "./utils";
|
|
3
|
-
import { ListMetadata } from "
|
|
3
|
+
import { ListMetadata } from "../api";
|
|
4
4
|
|
|
5
5
|
export function useUsersManagementState(initialState: UsersManagementState) {
|
|
6
6
|
const [[state, effects], dispatch] = React.useReducer(reducer, [
|
|
@@ -34,7 +34,7 @@ import { getBestName, getComparativeReadableDate } from "./utils";
|
|
|
34
34
|
import { USER_ROW_LIMIT } from "./constants";
|
|
35
35
|
import { useUsersManagementContext } from "./users-management-context";
|
|
36
36
|
import clsx from "clsx";
|
|
37
|
-
import { Member, MemberRole, MembersQueryResult } from "
|
|
37
|
+
import { Member, MemberRole, MembersQueryResult } from "../api";
|
|
38
38
|
import { GenericError } from "./generic-error";
|
|
39
39
|
|
|
40
40
|
interface UsersManagementProps {
|
package/src/lib/utils.ts
CHANGED
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
UserProfile as UserProfilePresentational,
|
|
8
8
|
} from "./lib/user-profile";
|
|
9
9
|
import { useIsHydrated } from "./lib/use-is-hydrated";
|
|
10
|
-
import { ApiProvider, AuthToken, useMe } from "
|
|
10
|
+
import { ApiProvider, AuthToken, useMe } from "./api";
|
|
11
11
|
import { useWorkOsApiUrl } from "./lib/widgets-context";
|
|
12
12
|
import { ErrorBoundary } from "./lib/error-boundary";
|
|
13
13
|
|
|
@@ -1,11 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import * as React from "react";
|
|
4
|
-
import {
|
|
5
|
-
ApiProvider,
|
|
6
|
-
AuthToken,
|
|
7
|
-
useAuthenticationInformation,
|
|
8
|
-
} from "@repo/api";
|
|
4
|
+
import { ApiProvider, AuthToken, useAuthenticationInformation } from "./api";
|
|
9
5
|
import {
|
|
10
6
|
UserSecurityError,
|
|
11
7
|
UserSecurityLoading,
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
UserSessions as UserSessionsPresentational,
|
|
8
8
|
} from "./lib/user-sessions";
|
|
9
9
|
import { useIsHydrated } from "./lib/use-is-hydrated";
|
|
10
|
-
import { ApiProvider, useApi, useSessions } from "
|
|
10
|
+
import { ApiProvider, useApi, useSessions } from "./api";
|
|
11
11
|
import { useWorkOsApiUrl } from "./lib/widgets-context";
|
|
12
12
|
import { ErrorBoundary } from "./lib/error-boundary";
|
|
13
13
|
import { useQuery } from "@tanstack/react-query";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
|
-
import { ApiProvider, AuthToken, useRoles } from "
|
|
3
|
+
import { ApiProvider, AuthToken, useRoles } from "./api";
|
|
4
4
|
import * as React from "react";
|
|
5
5
|
import { useUsers } from "./lib/api/user";
|
|
6
6
|
import { useIsHydrated } from "./lib/use-is-hydrated";
|