@workos-inc/widgets 1.1.4 → 1.2.0
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/LICENSE +21 -0
- package/dist/cjs/lib/organization-switcher.d.ts +10 -1
- package/dist/cjs/lib/organization-switcher.d.ts.map +1 -1
- package/dist/cjs/lib/organization-switcher.js +31 -3
- package/dist/cjs/lib/organization-switcher.js.map +1 -1
- package/dist/cjs/workos-widgets.client.d.ts +6 -0
- package/dist/cjs/workos-widgets.client.d.ts.map +1 -1
- package/dist/cjs/workos-widgets.client.js +23 -3
- package/dist/cjs/workos-widgets.client.js.map +1 -1
- package/dist/esm/lib/organization-switcher.d.ts +10 -1
- package/dist/esm/lib/organization-switcher.d.ts.map +1 -1
- package/dist/esm/lib/organization-switcher.js +31 -3
- package/dist/esm/lib/organization-switcher.js.map +1 -1
- package/dist/esm/workos-widgets.client.d.ts +6 -0
- package/dist/esm/workos-widgets.client.d.ts.map +1 -1
- package/dist/esm/workos-widgets.client.js +25 -5
- package/dist/esm/workos-widgets.client.js.map +1 -1
- package/package.json +40 -47
- package/src/api/api-provider.tsx +0 -158
- package/src/api/constants.ts +0 -1
- package/src/api/endpoint.ts +0 -3097
- package/src/api/errors.ts +0 -48
- package/src/api/index.ts +0 -2
- package/src/api/utils.ts +0 -42
- package/src/api/widgets-api-client.ts +0 -87
- package/src/card-list.tsx +0 -26
- package/src/index.ts +0 -9
- package/src/lib/add-mfa-dialog.tsx +0 -379
- package/src/lib/api/config.ts +0 -9
- package/src/lib/api/user.ts +0 -98
- package/src/lib/change-password-dialog.tsx +0 -290
- package/src/lib/constants.ts +0 -3
- package/src/lib/copy-button.tsx +0 -53
- package/src/lib/delete-user-dialog.tsx +0 -110
- package/src/lib/edit-user-profile-dialog.tsx +0 -181
- package/src/lib/edit-user-role-dialog.tsx +0 -178
- package/src/lib/elements.tsx +0 -428
- package/src/lib/elevated-access.tsx +0 -261
- package/src/lib/error-boundary.tsx +0 -166
- package/src/lib/errors.ts +0 -49
- package/src/lib/generic-error.tsx +0 -70
- package/src/lib/icon-panel.tsx +0 -26
- package/src/lib/icons.tsx +0 -21
- package/src/lib/invite-user-dialog.tsx +0 -327
- package/src/lib/logout-all-sessions-dialog.tsx +0 -82
- package/src/lib/logout-dialog.tsx +0 -85
- package/src/lib/marker.tsx +0 -39
- package/src/lib/oauth-icons.tsx +0 -138
- package/src/lib/organization-switcher.tsx +0 -156
- package/src/lib/otp-input.tsx +0 -276
- package/src/lib/resend-invite-dialog.tsx +0 -145
- package/src/lib/reset-mfa-dialog.tsx +0 -104
- package/src/lib/revoke-invite-dialog.tsx +0 -111
- package/src/lib/save-button.tsx +0 -113
- package/src/lib/search-provider.tsx +0 -51
- package/src/lib/set-password-dialog.tsx +0 -204
- package/src/lib/use-dialog-close.tsx +0 -19
- package/src/lib/use-is-hydrated.ts +0 -13
- package/src/lib/use-layout-effect.ts +0 -6
- package/src/lib/use-security-settings.tsx +0 -49
- package/src/lib/user-actions-dropdown.tsx +0 -157
- package/src/lib/user-profile.tsx +0 -227
- package/src/lib/user-security.tsx +0 -187
- package/src/lib/user-sessions.tsx +0 -204
- package/src/lib/users-filter.tsx +0 -62
- package/src/lib/users-management-context.tsx +0 -74
- package/src/lib/users-management-state.ts +0 -165
- package/src/lib/users-management.tsx +0 -594
- package/src/lib/users-search.tsx +0 -73
- package/src/lib/utils.ts +0 -131
- package/src/lib/widgets-context.ts +0 -29
- package/src/organization-switcher.client.tsx +0 -81
- package/src/user-profile.client.tsx +0 -55
- package/src/user-security.client.tsx +0 -55
- package/src/user-sessions.client.tsx +0 -100
- package/src/users-management.client.tsx +0 -73
- package/src/workos-widgets.client.tsx +0 -75
- /package/{src → dist/css}/base.css +0 -0
- /package/{src → dist/css}/lib/card-list.css +0 -0
- /package/{src → dist/css}/lib/marker.css +0 -0
- /package/{src → dist/css}/lib/save-button.css +0 -0
- /package/{src → dist/css}/styles.css +0 -0
- /package/{src → dist/css}/users-management.css +0 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2024 WorkOS
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -7,11 +7,20 @@ export type OrganizationSwitcherPassthroughProps = {
|
|
|
7
7
|
variant?: OrganizationSwitcherVariant;
|
|
8
8
|
organizationLabel?: string | null;
|
|
9
9
|
children?: React.ReactNode;
|
|
10
|
+
/**
|
|
11
|
+
* Choose where to truncate organization name in the trigger and dropdown
|
|
12
|
+
* items.
|
|
13
|
+
*
|
|
14
|
+
* - `right`: Truncate the right side of the organization name
|
|
15
|
+
* - `middle`: Truncate the middle of the organization name, trying to keep
|
|
16
|
+
* words whole
|
|
17
|
+
*/
|
|
18
|
+
truncateBehavior?: "right" | "middle";
|
|
10
19
|
};
|
|
11
20
|
export interface OrganizationSwitcherProps extends OrganizationSwitcherPassthroughProps {
|
|
12
21
|
organizations: OrganizationInfo[];
|
|
13
22
|
}
|
|
14
|
-
export declare const OrganizationSwitcher: ({ organizations, switchToOrganization, variant, organizationLabel, children, }: OrganizationSwitcherProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
23
|
+
export declare const OrganizationSwitcher: ({ organizations, switchToOrganization, variant, organizationLabel, truncateBehavior, children, }: OrganizationSwitcherProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
15
24
|
export declare function OrganizationSwitcherLoading({ variant, organizations, }: {
|
|
16
25
|
variant?: OrganizationSwitcherVariant;
|
|
17
26
|
organizations: OrganizationInfo[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization-switcher.d.ts","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE9E,KAAK,2BAA2B,GAAG,OAAO,GAAG,SAAS,CAAC;AAGvD,MAAM,MAAM,oCAAoC,GAAG;IACjD,oBAAoB,EAAE,CAAC,EACrB,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IAEX,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"organization-switcher.d.ts","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE9E,KAAK,2BAA2B,GAAG,OAAO,GAAG,SAAS,CAAC;AAGvD,MAAM,MAAM,oCAAoC,GAAG;IACjD,oBAAoB,EAAE,CAAC,EACrB,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IAEX,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,yBACf,SAAQ,oCAAoC;IAC5C,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC;AAED,eAAO,MAAM,oBAAoB,qGAO9B,yBAAyB,mDA8F3B,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,EAC1C,OAAmB,EACnB,aAAa,GACd,EAAE;IACD,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC,2CAgBA;AAED,UAAU,8BAA8B;IACtC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;CAC5C;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,8BAA8B,QAG1E"}
|
|
@@ -7,17 +7,17 @@ exports.OrganizationSwitcherError = OrganizationSwitcherError;
|
|
|
7
7
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
8
|
const react_icons_1 = require("@radix-ui/react-icons");
|
|
9
9
|
const themes_1 = require("@radix-ui/themes");
|
|
10
|
-
const OrganizationSwitcher = ({ organizations, switchToOrganization, variant = "outline", organizationLabel = "Organizations", children, }) => {
|
|
10
|
+
const OrganizationSwitcher = ({ organizations, switchToOrganization, variant = "outline", organizationLabel = "Organizations", truncateBehavior = "right", children, }) => {
|
|
11
11
|
const currentOrganization = organizations.find((organization) => organization.current);
|
|
12
12
|
// Possible if the user has no organizations - we should figure out what to do in this case
|
|
13
13
|
if (!currentOrganization) {
|
|
14
14
|
return null;
|
|
15
15
|
}
|
|
16
|
-
return ((0, jsx_runtime_1.jsxs)(themes_1.DropdownMenu.Root, { children: [(0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.Trigger, { children: (0, jsx_runtime_1.jsx)(themes_1.Button, { color: "gray", variant: variant, className: "OrganizationSwitcherTrigger", children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { align: "center", justify: "between", gap: "2", flexGrow: "1", children: [(0, jsx_runtime_1.jsx)(
|
|
16
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.DropdownMenu.Root, { children: [(0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.Trigger, { children: (0, jsx_runtime_1.jsx)(themes_1.Button, { color: "gray", variant: variant, className: "OrganizationSwitcherTrigger", children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { align: "center", justify: "between", gap: "2", flexGrow: "1", overflow: "hidden", minWidth: "0", children: [(0, jsx_runtime_1.jsx)(TruncatedOrganizationName, { organizationName: currentOrganization.name, truncateBehavior: truncateBehavior }), (0, jsx_runtime_1.jsx)(themes_1.Flex, { asChild: true, flexShrink: "0", children: (0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.TriggerIcon, {}) })] }) }) }), (0, jsx_runtime_1.jsxs)(themes_1.DropdownMenu.Content, { children: [(0, jsx_runtime_1.jsxs)(themes_1.DropdownMenu.Group, { children: [organizationLabel ? ((0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.Label, { children: (0, jsx_runtime_1.jsx)(themes_1.Text, { children: organizationLabel }) })) : null, organizations.map((organization) => ((0, jsx_runtime_1.jsx)(themes_1.Flex, { asChild: true, pr: "2", maxWidth: "280px", minWidth: "180px", children: (0, jsx_runtime_1.jsx)(themes_1.DropdownMenu.Item, { onClick: () => {
|
|
17
17
|
if (organization.id !== currentOrganization.id) {
|
|
18
18
|
switchToOrganization({ organizationId: organization.id });
|
|
19
19
|
}
|
|
20
|
-
}, children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { justify: "between", align: "center", gap: "4", flexGrow: "1", overflow: "hidden", children: [(0, jsx_runtime_1.
|
|
20
|
+
}, children: (0, jsx_runtime_1.jsxs)(themes_1.Flex, { justify: "between", align: "center", gap: "4", flexGrow: "1", overflow: "hidden", children: [(0, jsx_runtime_1.jsx)(TruncatedOrganizationName, { organizationName: organization.name, truncateBehavior: truncateBehavior }), organization.current && ((0, jsx_runtime_1.jsx)(themes_1.VisuallyHidden, { children: " (current)" })), (0, jsx_runtime_1.jsx)(themes_1.Flex, { "aria-hidden": true, align: "center", justify: "center", flexShrink: "0", children: organization.current ? ((0, jsx_runtime_1.jsx)(react_icons_1.CheckIcon, { width: "18px", height: "18px" })) : (
|
|
21
21
|
// make the extra space for
|
|
22
22
|
(0, jsx_runtime_1.jsx)(themes_1.Box, { width: "18px", height: "18px" })) })] }) }) }, organization.id)))] }), children] })] }));
|
|
23
23
|
};
|
|
@@ -32,4 +32,32 @@ function OrganizationSwitcherError(_) {
|
|
|
32
32
|
// TODO: consider other error state options
|
|
33
33
|
return null;
|
|
34
34
|
}
|
|
35
|
+
const MAX_TRUNCATED_SUFFIX_LENGTH = 10;
|
|
36
|
+
const MIN_TRUNCATED_SUFFIX_LENGTH = 3;
|
|
37
|
+
const WHITE_SPACE_REGEX = /\s/;
|
|
38
|
+
const getSplitPosition = (organizationName) => {
|
|
39
|
+
if (organizationName.length <= MAX_TRUNCATED_SUFFIX_LENGTH) {
|
|
40
|
+
return organizationName.length;
|
|
41
|
+
}
|
|
42
|
+
for (let i = organizationName.length - MAX_TRUNCATED_SUFFIX_LENGTH; i < organizationName.length - MIN_TRUNCATED_SUFFIX_LENGTH; i++) {
|
|
43
|
+
if (WHITE_SPACE_REGEX.test(organizationName[i - 1])) {
|
|
44
|
+
return i;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
return organizationName.length - MAX_TRUNCATED_SUFFIX_LENGTH;
|
|
48
|
+
};
|
|
49
|
+
const splitOrganizationName = (organizationName) => {
|
|
50
|
+
const splitPosition = getSplitPosition(organizationName);
|
|
51
|
+
return [
|
|
52
|
+
organizationName.slice(0, splitPosition),
|
|
53
|
+
organizationName.slice(splitPosition),
|
|
54
|
+
];
|
|
55
|
+
};
|
|
56
|
+
const TruncatedOrganizationName = ({ organizationName, truncateBehavior, }) => {
|
|
57
|
+
if (truncateBehavior === "right") {
|
|
58
|
+
return (0, jsx_runtime_1.jsx)(themes_1.Text, { truncate: true, children: organizationName });
|
|
59
|
+
}
|
|
60
|
+
const [organizationNameLeft, organizationNameRight] = splitOrganizationName(organizationName);
|
|
61
|
+
return ((0, jsx_runtime_1.jsxs)(themes_1.Flex, { overflow: "hidden", children: [(0, jsx_runtime_1.jsx)(themes_1.VisuallyHidden, { children: (0, jsx_runtime_1.jsx)(themes_1.Text, { children: organizationName }) }), (0, jsx_runtime_1.jsx)(themes_1.Text, { "aria-hidden": true, truncate: true, style: { whiteSpace: "pre" }, children: organizationNameLeft }), (0, jsx_runtime_1.jsx)(themes_1.Text, { "aria-hidden": true, children: organizationNameRight })] }));
|
|
62
|
+
};
|
|
35
63
|
//# sourceMappingURL=organization-switcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization-switcher.js","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;
|
|
1
|
+
{"version":3,"file":"organization-switcher.js","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { GetPropDefTypes, themePropDefs } from "@radix-ui/themes/props";
|
|
2
|
+
import { QueryClient } from "@tanstack/react-query";
|
|
2
3
|
import * as React from "react";
|
|
3
4
|
import type { Elements } from "./lib/elements";
|
|
4
5
|
export interface WorkOsWidgetsProps {
|
|
@@ -12,6 +13,11 @@ export interface WorkOsWidgetsProps {
|
|
|
12
13
|
apiHostname?: string;
|
|
13
14
|
port?: number | null;
|
|
14
15
|
https?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Optional query client for users who are already using Tanstack Query. If
|
|
18
|
+
* not provided, a new query client will be created and mounted internally.
|
|
19
|
+
*/
|
|
20
|
+
queryClient?: QueryClient;
|
|
15
21
|
}
|
|
16
22
|
export declare const WorkOsWidgets: React.FC<WorkOsWidgetsProps>;
|
|
17
23
|
//# sourceMappingURL=workos-widgets.client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workos-widgets.client.d.ts","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"workos-widgets.client.d.ts","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EACL,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK/C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,aAAa,CAAC,EAAE,SAAS,CAAC,GAAG;QAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgDtD,CAAC"}
|
|
@@ -36,8 +36,8 @@ const React = __importStar(require("react"));
|
|
|
36
36
|
const utils_1 = require("./lib/utils");
|
|
37
37
|
const config_1 = require("./lib/api/config");
|
|
38
38
|
const widgets_context_1 = require("./lib/widgets-context");
|
|
39
|
-
|
|
40
|
-
const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, ...radixThemesProps } = {}, style = {}, children, apiHostname = config_1.DEFAULT_API_HOSTNAME, port = null, https = true, }) => {
|
|
39
|
+
let queryClientInternal;
|
|
40
|
+
const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, ...radixThemesProps } = {}, style = {}, children, apiHostname = config_1.DEFAULT_API_HOSTNAME, port = null, https = true, queryClient, }) => {
|
|
41
41
|
const customStyle = (fontFamily
|
|
42
42
|
? {
|
|
43
43
|
"--default-font-family": fontFamily,
|
|
@@ -54,7 +54,27 @@ const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, ...radix
|
|
|
54
54
|
return `https://${config_1.DEFAULT_API_HOSTNAME}`;
|
|
55
55
|
}
|
|
56
56
|
}, [apiHostname, https, port]);
|
|
57
|
-
return ((0, jsx_runtime_1.jsx)(
|
|
57
|
+
return ((0, jsx_runtime_1.jsx)(QueryClientProviderImpl, { client: queryClient, children: (0, jsx_runtime_1.jsx)(themes_1.Theme, { ...radixThemesProps, style: customStyle, className: (0, clsx_1.default)((0, utils_1.namespaceClassNames)("root"), className), children: (0, jsx_runtime_1.jsx)(widgets_context_1.WidgetsContext.Provider, { value: { elements, apiBaseUrl }, children: children }) }) }));
|
|
58
58
|
};
|
|
59
59
|
exports.WorkOsWidgets = WorkOsWidgets;
|
|
60
|
+
const QueryClientProviderImpl = ({ client: providedClient, children, }) => {
|
|
61
|
+
let queryClient;
|
|
62
|
+
if (providedClient) {
|
|
63
|
+
queryClient = providedClient;
|
|
64
|
+
}
|
|
65
|
+
else if (queryClientInternal) {
|
|
66
|
+
queryClient = queryClientInternal;
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
queryClientInternal = new react_query_1.QueryClient();
|
|
70
|
+
queryClient = queryClientInternal;
|
|
71
|
+
}
|
|
72
|
+
const client = (0, react_query_1.useQueryClient)(queryClient);
|
|
73
|
+
if (Object.is(client, providedClient)) {
|
|
74
|
+
// No need for a new context provider if the user provided the client to
|
|
75
|
+
// their own provider, which has already mounted the client.
|
|
76
|
+
return (0, jsx_runtime_1.jsx)(jsx_runtime_1.Fragment, { children: children });
|
|
77
|
+
}
|
|
78
|
+
return (0, jsx_runtime_1.jsx)(react_query_1.QueryClientProvider, { client: client, children: children });
|
|
79
|
+
};
|
|
60
80
|
//# sourceMappingURL=workos-widgets.client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workos-widgets.client.js","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAAwD;AAExD,
|
|
1
|
+
{"version":3,"file":"workos-widgets.client.js","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAAwD;AAExD,uDAI+B;AAC/B,gDAAsB;AACtB,6CAA+B;AAC/B,uCAAkD;AAClD,6CAAwD;AAExD,2DAAuD;AAEvD,IAAI,mBAA4C,CAAC;AAoB1C,MAAM,aAAa,GAAiC,CAAC,EAC1D,QAAQ,GAAG,EAAE,EACb,SAAS,EACT,KAAK,EAAE,EAAE,UAAU,EAAE,GAAG,gBAAgB,EAAE,GAAG,EAAE,EAC/C,KAAK,GAAG,EAAE,EACV,QAAQ,EACR,WAAW,GAAG,6BAAoB,EAClC,IAAI,GAAG,IAAI,EACX,KAAK,GAAG,IAAI,EACZ,WAAW,GACZ,EAAE,EAAE;IACH,MAAM,WAAW,GAAG,CAClB,UAAU;QACR,CAAC,CAAC;YACE,uBAAuB,EAAE,UAAU;YACnC,GAAG,KAAK;SACT;QACH,CAAC,CAAC,KAAK,CACa,CAAC;IAEzB,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACpC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,GAAG,CACjB,GAAG,EACH,GAAG,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,MAAM,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CACxE,CAAC;YACF,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CACX,8HAA8H,CAC/H,CAAC;YACF,OAAO,WAAW,6BAAoB,EAAE,CAAC;QAC3C,CAAC;IACH,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;IAE/B,OAAO,CACL,uBAAC,uBAAuB,IAAC,MAAM,EAAE,WAAW,YAC1C,uBAAC,cAAW,OACN,gBAAgB,EACpB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,IAAA,cAAE,EAAC,IAAA,2BAAmB,EAAC,MAAM,CAAC,EAAE,SAAS,CAAC,YAErD,uBAAC,gCAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YACrD,QAAQ,GACe,GACd,GACU,CAC3B,CAAC;AACJ,CAAC,CAAC;AAhDW,QAAA,aAAa,iBAgDxB;AAEF,MAAM,uBAAuB,GAAG,CAAC,EAC/B,MAAM,EAAE,cAAc,EACtB,QAAQ,GAIT,EAAE,EAAE;IACH,IAAI,WAAwB,CAAC;IAC7B,IAAI,cAAc,EAAE,CAAC;QACnB,WAAW,GAAG,cAAc,CAAC;IAC/B,CAAC;SAAM,IAAI,mBAAmB,EAAE,CAAC;QAC/B,WAAW,GAAG,mBAAmB,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,mBAAmB,GAAG,IAAI,yBAAW,EAAE,CAAC;QACxC,WAAW,GAAG,mBAAmB,CAAC;IACpC,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,4BAAc,EAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,CAAC,EAAE,CAAC;QACtC,wEAAwE;QACxE,4DAA4D;QAC5D,OAAO,2DAAG,QAAQ,GAAI,CAAC;IACzB,CAAC;IAED,OAAO,uBAAC,iCAAmB,IAAC,MAAM,EAAE,MAAM,YAAG,QAAQ,GAAuB,CAAC;AAC/E,CAAC,CAAC"}
|
|
@@ -7,11 +7,20 @@ export type OrganizationSwitcherPassthroughProps = {
|
|
|
7
7
|
variant?: OrganizationSwitcherVariant;
|
|
8
8
|
organizationLabel?: string | null;
|
|
9
9
|
children?: React.ReactNode;
|
|
10
|
+
/**
|
|
11
|
+
* Choose where to truncate organization name in the trigger and dropdown
|
|
12
|
+
* items.
|
|
13
|
+
*
|
|
14
|
+
* - `right`: Truncate the right side of the organization name
|
|
15
|
+
* - `middle`: Truncate the middle of the organization name, trying to keep
|
|
16
|
+
* words whole
|
|
17
|
+
*/
|
|
18
|
+
truncateBehavior?: "right" | "middle";
|
|
10
19
|
};
|
|
11
20
|
export interface OrganizationSwitcherProps extends OrganizationSwitcherPassthroughProps {
|
|
12
21
|
organizations: OrganizationInfo[];
|
|
13
22
|
}
|
|
14
|
-
export declare const OrganizationSwitcher: ({ organizations, switchToOrganization, variant, organizationLabel, children, }: OrganizationSwitcherProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
23
|
+
export declare const OrganizationSwitcher: ({ organizations, switchToOrganization, variant, organizationLabel, truncateBehavior, children, }: OrganizationSwitcherProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
15
24
|
export declare function OrganizationSwitcherLoading({ variant, organizations, }: {
|
|
16
25
|
variant?: OrganizationSwitcherVariant;
|
|
17
26
|
organizations: OrganizationInfo[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization-switcher.d.ts","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE9E,KAAK,2BAA2B,GAAG,OAAO,GAAG,SAAS,CAAC;AAGvD,MAAM,MAAM,oCAAoC,GAAG;IACjD,oBAAoB,EAAE,CAAC,EACrB,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IAEX,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"organization-switcher.d.ts","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,QAAQ,CAAC;AAE9E,KAAK,2BAA2B,GAAG,OAAO,GAAG,SAAS,CAAC;AAGvD,MAAM,MAAM,oCAAoC,GAAG;IACjD,oBAAoB,EAAE,CAAC,EACrB,cAAc,GACf,EAAE;QACD,cAAc,EAAE,MAAM,CAAC;KACxB,KAAK,IAAI,CAAC;IAEX,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,OAAO,GAAG,QAAQ,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,yBACf,SAAQ,oCAAoC;IAC5C,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC;AAED,eAAO,MAAM,oBAAoB,qGAO9B,yBAAyB,mDA8F3B,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,EAC1C,OAAmB,EACnB,aAAa,GACd,EAAE;IACD,OAAO,CAAC,EAAE,2BAA2B,CAAC;IACtC,aAAa,EAAE,gBAAgB,EAAE,CAAC;CACnC,2CAgBA;AAED,UAAU,8BAA8B;IACtC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,CAAC;CAC5C;AAED,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,8BAA8B,QAG1E"}
|
|
@@ -2,17 +2,17 @@
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { CheckIcon } from "@radix-ui/react-icons";
|
|
4
4
|
import { Box, Button, ChevronDownIcon, DropdownMenu, Flex, Skeleton, Text, VisuallyHidden, } from "@radix-ui/themes";
|
|
5
|
-
export const OrganizationSwitcher = ({ organizations, switchToOrganization, variant = "outline", organizationLabel = "Organizations", children, }) => {
|
|
5
|
+
export const OrganizationSwitcher = ({ organizations, switchToOrganization, variant = "outline", organizationLabel = "Organizations", truncateBehavior = "right", children, }) => {
|
|
6
6
|
const currentOrganization = organizations.find((organization) => organization.current);
|
|
7
7
|
// Possible if the user has no organizations - we should figure out what to do in this case
|
|
8
8
|
if (!currentOrganization) {
|
|
9
9
|
return null;
|
|
10
10
|
}
|
|
11
|
-
return (_jsxs(DropdownMenu.Root, { children: [_jsx(DropdownMenu.Trigger, { children: _jsx(Button, { color: "gray", variant: variant, className: "OrganizationSwitcherTrigger", children: _jsxs(Flex, { align: "center", justify: "between", gap: "2", flexGrow: "1", children: [_jsx(
|
|
11
|
+
return (_jsxs(DropdownMenu.Root, { children: [_jsx(DropdownMenu.Trigger, { children: _jsx(Button, { color: "gray", variant: variant, className: "OrganizationSwitcherTrigger", children: _jsxs(Flex, { align: "center", justify: "between", gap: "2", flexGrow: "1", overflow: "hidden", minWidth: "0", children: [_jsx(TruncatedOrganizationName, { organizationName: currentOrganization.name, truncateBehavior: truncateBehavior }), _jsx(Flex, { asChild: true, flexShrink: "0", children: _jsx(DropdownMenu.TriggerIcon, {}) })] }) }) }), _jsxs(DropdownMenu.Content, { children: [_jsxs(DropdownMenu.Group, { children: [organizationLabel ? (_jsx(DropdownMenu.Label, { children: _jsx(Text, { children: organizationLabel }) })) : null, organizations.map((organization) => (_jsx(Flex, { asChild: true, pr: "2", maxWidth: "280px", minWidth: "180px", children: _jsx(DropdownMenu.Item, { onClick: () => {
|
|
12
12
|
if (organization.id !== currentOrganization.id) {
|
|
13
13
|
switchToOrganization({ organizationId: organization.id });
|
|
14
14
|
}
|
|
15
|
-
}, children: _jsxs(Flex, { justify: "between", align: "center", gap: "4", flexGrow: "1", overflow: "hidden", children: [
|
|
15
|
+
}, children: _jsxs(Flex, { justify: "between", align: "center", gap: "4", flexGrow: "1", overflow: "hidden", children: [_jsx(TruncatedOrganizationName, { organizationName: organization.name, truncateBehavior: truncateBehavior }), organization.current && (_jsx(VisuallyHidden, { children: " (current)" })), _jsx(Flex, { "aria-hidden": true, align: "center", justify: "center", flexShrink: "0", children: organization.current ? (_jsx(CheckIcon, { width: "18px", height: "18px" })) : (
|
|
16
16
|
// make the extra space for
|
|
17
17
|
_jsx(Box, { width: "18px", height: "18px" })) })] }) }) }, organization.id)))] }), children] })] }));
|
|
18
18
|
};
|
|
@@ -26,4 +26,32 @@ export function OrganizationSwitcherError(_) {
|
|
|
26
26
|
// TODO: consider other error state options
|
|
27
27
|
return null;
|
|
28
28
|
}
|
|
29
|
+
const MAX_TRUNCATED_SUFFIX_LENGTH = 10;
|
|
30
|
+
const MIN_TRUNCATED_SUFFIX_LENGTH = 3;
|
|
31
|
+
const WHITE_SPACE_REGEX = /\s/;
|
|
32
|
+
const getSplitPosition = (organizationName) => {
|
|
33
|
+
if (organizationName.length <= MAX_TRUNCATED_SUFFIX_LENGTH) {
|
|
34
|
+
return organizationName.length;
|
|
35
|
+
}
|
|
36
|
+
for (let i = organizationName.length - MAX_TRUNCATED_SUFFIX_LENGTH; i < organizationName.length - MIN_TRUNCATED_SUFFIX_LENGTH; i++) {
|
|
37
|
+
if (WHITE_SPACE_REGEX.test(organizationName[i - 1])) {
|
|
38
|
+
return i;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return organizationName.length - MAX_TRUNCATED_SUFFIX_LENGTH;
|
|
42
|
+
};
|
|
43
|
+
const splitOrganizationName = (organizationName) => {
|
|
44
|
+
const splitPosition = getSplitPosition(organizationName);
|
|
45
|
+
return [
|
|
46
|
+
organizationName.slice(0, splitPosition),
|
|
47
|
+
organizationName.slice(splitPosition),
|
|
48
|
+
];
|
|
49
|
+
};
|
|
50
|
+
const TruncatedOrganizationName = ({ organizationName, truncateBehavior, }) => {
|
|
51
|
+
if (truncateBehavior === "right") {
|
|
52
|
+
return _jsx(Text, { truncate: true, children: organizationName });
|
|
53
|
+
}
|
|
54
|
+
const [organizationNameLeft, organizationNameRight] = splitOrganizationName(organizationName);
|
|
55
|
+
return (_jsxs(Flex, { overflow: "hidden", children: [_jsx(VisuallyHidden, { children: _jsx(Text, { children: organizationName }) }), _jsx(Text, { "aria-hidden": true, truncate: true, style: { whiteSpace: "pre" }, children: organizationNameLeft }), _jsx(Text, { "aria-hidden": true, children: organizationNameRight })] }));
|
|
56
|
+
};
|
|
29
57
|
//# sourceMappingURL=organization-switcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"organization-switcher.js","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EACL,GAAG,EACH,MAAM,EACN,eAAe,EACf,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,IAAI,EACJ,cAAc,GACf,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"organization-switcher.js","sourceRoot":"","sources":["../../../src/lib/organization-switcher.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { GetPropDefTypes, themePropDefs } from "@radix-ui/themes/props";
|
|
2
|
+
import { QueryClient } from "@tanstack/react-query";
|
|
2
3
|
import * as React from "react";
|
|
3
4
|
import type { Elements } from "./lib/elements";
|
|
4
5
|
export interface WorkOsWidgetsProps {
|
|
@@ -12,6 +13,11 @@ export interface WorkOsWidgetsProps {
|
|
|
12
13
|
apiHostname?: string;
|
|
13
14
|
port?: number | null;
|
|
14
15
|
https?: boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Optional query client for users who are already using Tanstack Query. If
|
|
18
|
+
* not provided, a new query client will be created and mounted internally.
|
|
19
|
+
*/
|
|
20
|
+
queryClient?: QueryClient;
|
|
15
21
|
}
|
|
16
22
|
export declare const WorkOsWidgets: React.FC<WorkOsWidgetsProps>;
|
|
17
23
|
//# sourceMappingURL=workos-widgets.client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workos-widgets.client.d.ts","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"workos-widgets.client.d.ts","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC7E,OAAO,EACL,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAE/B,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK/C,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,KAAK,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,aAAa,CAAC,EAAE,SAAS,CAAC,GAAG;QAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgDtD,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
3
|
import { Theme as RadixThemes } from "@radix-ui/themes";
|
|
4
|
-
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
|
|
4
|
+
import { QueryClient, QueryClientProvider, useQueryClient, } from "@tanstack/react-query";
|
|
5
5
|
import cx from "clsx";
|
|
6
6
|
import * as React from "react";
|
|
7
7
|
import { namespaceClassNames } from "./lib/utils";
|
|
8
8
|
import { DEFAULT_API_HOSTNAME } from "./lib/api/config";
|
|
9
9
|
import { WidgetsContext } from "./lib/widgets-context";
|
|
10
|
-
|
|
11
|
-
export const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, ...radixThemesProps } = {}, style = {}, children, apiHostname = DEFAULT_API_HOSTNAME, port = null, https = true, }) => {
|
|
10
|
+
let queryClientInternal;
|
|
11
|
+
export const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, ...radixThemesProps } = {}, style = {}, children, apiHostname = DEFAULT_API_HOSTNAME, port = null, https = true, queryClient, }) => {
|
|
12
12
|
const customStyle = (fontFamily
|
|
13
13
|
? {
|
|
14
14
|
"--default-font-family": fontFamily,
|
|
@@ -25,6 +25,26 @@ export const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, .
|
|
|
25
25
|
return `https://${DEFAULT_API_HOSTNAME}`;
|
|
26
26
|
}
|
|
27
27
|
}, [apiHostname, https, port]);
|
|
28
|
-
return (_jsx(
|
|
28
|
+
return (_jsx(QueryClientProviderImpl, { client: queryClient, children: _jsx(RadixThemes, { ...radixThemesProps, style: customStyle, className: cx(namespaceClassNames("root"), className), children: _jsx(WidgetsContext.Provider, { value: { elements, apiBaseUrl }, children: children }) }) }));
|
|
29
|
+
};
|
|
30
|
+
const QueryClientProviderImpl = ({ client: providedClient, children, }) => {
|
|
31
|
+
let queryClient;
|
|
32
|
+
if (providedClient) {
|
|
33
|
+
queryClient = providedClient;
|
|
34
|
+
}
|
|
35
|
+
else if (queryClientInternal) {
|
|
36
|
+
queryClient = queryClientInternal;
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
queryClientInternal = new QueryClient();
|
|
40
|
+
queryClient = queryClientInternal;
|
|
41
|
+
}
|
|
42
|
+
const client = useQueryClient(queryClient);
|
|
43
|
+
if (Object.is(client, providedClient)) {
|
|
44
|
+
// No need for a new context provider if the user provided the client to
|
|
45
|
+
// their own provider, which has already mounted the client.
|
|
46
|
+
return _jsx(_Fragment, { children: children });
|
|
47
|
+
}
|
|
48
|
+
return _jsx(QueryClientProvider, { client: client, children: children });
|
|
29
49
|
};
|
|
30
50
|
//# sourceMappingURL=workos-widgets.client.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workos-widgets.client.js","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAExD,OAAO,
|
|
1
|
+
{"version":3,"file":"workos-widgets.client.js","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,59 +1,39 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@workos-inc/widgets",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.2.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
|
-
".":
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
".": {
|
|
8
|
+
"import": {
|
|
9
|
+
"types": "./dist/esm/index.d.ts",
|
|
10
|
+
"default": "./dist/esm/index.js"
|
|
11
|
+
},
|
|
12
|
+
"require": {
|
|
13
|
+
"types": "./dist/cjs/index.d.ts",
|
|
14
|
+
"default": "./dist/cjs/index.js"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"./*": {
|
|
18
|
+
"import": {
|
|
19
|
+
"types": "./dist/esm/*.client.d.ts",
|
|
20
|
+
"default": "./dist/esm/*.client.js"
|
|
21
|
+
},
|
|
22
|
+
"require": {
|
|
23
|
+
"types": "./dist/cjs/*.client.d.ts",
|
|
24
|
+
"default": "./dist/cjs/*.client.js"
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"./*.css": "./dist/css/*.css"
|
|
10
28
|
},
|
|
11
29
|
"files": [
|
|
12
30
|
"dist",
|
|
13
|
-
"src",
|
|
14
31
|
"CHANGELOG.md",
|
|
15
32
|
"LICENSE",
|
|
16
33
|
"README.md"
|
|
17
34
|
],
|
|
18
35
|
"publishConfig": {
|
|
19
|
-
"access": "public"
|
|
20
|
-
"main": "./dist/cjs/index.js",
|
|
21
|
-
"module": "./dist/esm/index.js",
|
|
22
|
-
"types": "./dist/esm/index.d.ts",
|
|
23
|
-
"exports": {
|
|
24
|
-
".": {
|
|
25
|
-
"import": {
|
|
26
|
-
"types": "./dist/esm/index.d.ts",
|
|
27
|
-
"default": "./dist/esm/index.js"
|
|
28
|
-
},
|
|
29
|
-
"require": {
|
|
30
|
-
"types": "./dist/cjs/index.d.ts",
|
|
31
|
-
"default": "./dist/cjs/index.js"
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
"./*": {
|
|
35
|
-
"import": {
|
|
36
|
-
"types": "./dist/esm/*.client.d.ts",
|
|
37
|
-
"default": "./dist/esm/*.client.js"
|
|
38
|
-
},
|
|
39
|
-
"require": {
|
|
40
|
-
"types": "./dist/cjs/*.client.d.ts",
|
|
41
|
-
"default": "./dist/cjs/*.client.js"
|
|
42
|
-
}
|
|
43
|
-
},
|
|
44
|
-
"./*.css": {
|
|
45
|
-
"import": "./src/*.css",
|
|
46
|
-
"require": "./src/*.css"
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
"scripts": {
|
|
51
|
-
"build": "npm run clean:dist && tsc -b ./tsconfig.cjs.json ./tsconfig.esm.json",
|
|
52
|
-
"build:ci": "tsc --noEmit",
|
|
53
|
-
"clean": "rm -rf .turbo && rm -rf node_modules && npm run clean:dist",
|
|
54
|
-
"clean:dist": "rm -rf dist",
|
|
55
|
-
"prepublishOnly": "pnpm clean:dist && pnpm build && node ../../scripts/copy-readme.js",
|
|
56
|
-
"generate-api": "orval --config ./orval.config.ts"
|
|
36
|
+
"access": "public"
|
|
57
37
|
},
|
|
58
38
|
"sideEffects": false,
|
|
59
39
|
"dependencies": {
|
|
@@ -74,15 +54,16 @@
|
|
|
74
54
|
},
|
|
75
55
|
"devDependencies": {
|
|
76
56
|
"@radix-ui/themes": "^3.2.1",
|
|
77
|
-
"@repo/typescript-config": "workspace:*",
|
|
78
57
|
"@tanstack/react-query": "^5.59.20",
|
|
79
58
|
"@types/node": "^20.16.6",
|
|
80
59
|
"@types/react": "^18.3.12",
|
|
81
60
|
"@types/react-dom": "^18.3.1",
|
|
61
|
+
"fast-glob": "^3.3.3",
|
|
82
62
|
"orval": "^7.5.0",
|
|
83
63
|
"react": "^18.3.1",
|
|
84
64
|
"react-dom": "^18.3.1",
|
|
85
|
-
"typescript": "^5.6.2"
|
|
65
|
+
"typescript": "^5.6.2",
|
|
66
|
+
"@repo/typescript-config": "0.0.0"
|
|
86
67
|
},
|
|
87
68
|
"typesVersions": {
|
|
88
69
|
"*": {
|
|
@@ -90,5 +71,17 @@
|
|
|
90
71
|
"./src/api/*"
|
|
91
72
|
]
|
|
92
73
|
}
|
|
93
|
-
}
|
|
94
|
-
|
|
74
|
+
},
|
|
75
|
+
"scripts": {
|
|
76
|
+
"build": "pnpm build:js && pnpm build:css",
|
|
77
|
+
"build:js": "pnpm clean:dist && tsc -b ./tsconfig.cjs.json ./tsconfig.esm.json",
|
|
78
|
+
"build:css": "node ./scripts/build-css.js",
|
|
79
|
+
"build:ci": "pnpm build:css && tsc --noEmit",
|
|
80
|
+
"clean": "rm -rf .turbo && rm -rf node_modules && pnpm clean:dist",
|
|
81
|
+
"clean:dist": "rm -rf dist",
|
|
82
|
+
"generate-api": "orval --config ./orval.config.ts"
|
|
83
|
+
},
|
|
84
|
+
"main": "./dist/cjs/index.js",
|
|
85
|
+
"module": "./dist/esm/index.js",
|
|
86
|
+
"types": "./dist/esm/index.d.ts"
|
|
87
|
+
}
|