@workos-inc/widgets 1.8.2 → 1.9.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 (113) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/cjs/admin-portal-domain-verification.client.cjs.map +1 -1
  3. package/dist/cjs/admin-portal-sso-connection.client.cjs +4 -7
  4. package/dist/cjs/admin-portal-sso-connection.client.cjs.map +1 -1
  5. package/dist/cjs/api/api-provider.cjs.map +1 -1
  6. package/dist/cjs/api/api-provider.d.cts +1 -1
  7. package/dist/cjs/api/endpoint.cjs +741 -771
  8. package/dist/cjs/api/endpoint.cjs.map +1 -1
  9. package/dist/cjs/api/endpoint.d.cts +860 -813
  10. package/dist/cjs/directory-sync.client.cjs +156 -0
  11. package/dist/cjs/directory-sync.client.cjs.map +1 -0
  12. package/dist/cjs/directory-sync.client.d.cts +26 -0
  13. package/dist/cjs/experimental/api/fetch.cjs +327 -411
  14. package/dist/cjs/experimental/api/fetch.cjs.map +1 -1
  15. package/dist/cjs/experimental/api/fetch.d.cts +832 -798
  16. package/dist/cjs/experimental/api/react-query.cjs +747 -777
  17. package/dist/cjs/experimental/api/react-query.cjs.map +1 -1
  18. package/dist/cjs/experimental/api/react-query.d.cts +1378 -1263
  19. package/dist/cjs/experimental/api/swr.cjs +720 -742
  20. package/dist/cjs/experimental/api/swr.cjs.map +1 -1
  21. package/dist/cjs/experimental/api/swr.d.cts +1218 -1175
  22. package/dist/cjs/index.cjs +5 -0
  23. package/dist/cjs/index.cjs.map +1 -1
  24. package/dist/cjs/index.d.cts +2 -0
  25. package/dist/cjs/lib/add-mfa-dialog.cjs +18 -16
  26. package/dist/cjs/lib/add-mfa-dialog.cjs.map +1 -1
  27. package/dist/cjs/lib/admin-portal-sso-connection.cjs +0 -8
  28. package/dist/cjs/lib/admin-portal-sso-connection.cjs.map +1 -1
  29. package/dist/cjs/lib/admin-portal-sso-connection.d.cts +1 -2
  30. package/dist/cjs/lib/api-keys/api-keys-context.cjs +1 -1
  31. package/dist/cjs/lib/api-keys/api-keys-context.cjs.map +1 -1
  32. package/dist/cjs/lib/api-keys/api-keys-table.cjs +7 -5
  33. package/dist/cjs/lib/api-keys/api-keys-table.cjs.map +1 -1
  34. package/dist/cjs/lib/directory-sync.cjs +288 -0
  35. package/dist/cjs/lib/directory-sync.cjs.map +1 -0
  36. package/dist/cjs/lib/directory-sync.d.cts +72 -0
  37. package/dist/cjs/lib/identity-providers.cjs +57 -1
  38. package/dist/cjs/lib/identity-providers.cjs.map +1 -1
  39. package/dist/cjs/lib/identity-providers.d.cts +5 -3
  40. package/dist/cjs/lib/pipes.cjs +9 -9
  41. package/dist/cjs/lib/pipes.cjs.map +1 -1
  42. package/dist/cjs/lib/provider-icon.cjs.map +1 -1
  43. package/dist/cjs/lib/provider-icon.d.cts +2 -2
  44. package/dist/cjs/lib/reset-mfa-dialog.cjs +2 -1
  45. package/dist/cjs/lib/reset-mfa-dialog.cjs.map +1 -1
  46. package/dist/cjs/lib/use-permissions.cjs.map +1 -1
  47. package/dist/cjs/lib/use-permissions.d.cts +1 -1
  48. package/dist/cjs/lib/users-management-context.cjs +1 -1
  49. package/dist/cjs/lib/users-management-context.cjs.map +1 -1
  50. package/dist/cjs/lib/users-management.cjs +3 -3
  51. package/dist/cjs/lib/users-management.cjs.map +1 -1
  52. package/dist/cjs/lib/utils.cjs +9 -0
  53. package/dist/cjs/lib/utils.cjs.map +1 -1
  54. package/dist/cjs/lib/utils.d.cts +16 -2
  55. package/dist/cjs/workos-widgets.client.cjs +13 -1
  56. package/dist/cjs/workos-widgets.client.cjs.map +1 -1
  57. package/dist/esm/admin-portal-domain-verification.client.js +2 -2
  58. package/dist/esm/admin-portal-domain-verification.client.js.map +1 -1
  59. package/dist/esm/admin-portal-sso-connection.client.js +6 -9
  60. package/dist/esm/admin-portal-sso-connection.client.js.map +1 -1
  61. package/dist/esm/api/api-provider.d.ts +1 -1
  62. package/dist/esm/api/api-provider.js.map +1 -1
  63. package/dist/esm/api/endpoint.d.ts +860 -813
  64. package/dist/esm/api/endpoint.js +727 -751
  65. package/dist/esm/api/endpoint.js.map +1 -1
  66. package/dist/esm/directory-sync.client.d.ts +26 -0
  67. package/dist/esm/directory-sync.client.js +134 -0
  68. package/dist/esm/directory-sync.client.js.map +1 -0
  69. package/dist/esm/experimental/api/fetch.d.ts +832 -798
  70. package/dist/esm/experimental/api/fetch.js +319 -391
  71. package/dist/esm/experimental/api/fetch.js.map +1 -1
  72. package/dist/esm/experimental/api/react-query.d.ts +1378 -1263
  73. package/dist/esm/experimental/api/react-query.js +730 -757
  74. package/dist/esm/experimental/api/react-query.js.map +1 -1
  75. package/dist/esm/experimental/api/swr.d.ts +1218 -1175
  76. package/dist/esm/experimental/api/swr.js +706 -722
  77. package/dist/esm/experimental/api/swr.js.map +1 -1
  78. package/dist/esm/index.d.ts +2 -0
  79. package/dist/esm/index.js +6 -0
  80. package/dist/esm/index.js.map +1 -1
  81. package/dist/esm/lib/add-mfa-dialog.js +18 -16
  82. package/dist/esm/lib/add-mfa-dialog.js.map +1 -1
  83. package/dist/esm/lib/admin-portal-sso-connection.d.ts +1 -2
  84. package/dist/esm/lib/admin-portal-sso-connection.js +0 -8
  85. package/dist/esm/lib/admin-portal-sso-connection.js.map +1 -1
  86. package/dist/esm/lib/api-keys/api-keys-context.js +1 -1
  87. package/dist/esm/lib/api-keys/api-keys-context.js.map +1 -1
  88. package/dist/esm/lib/api-keys/api-keys-table.js +7 -5
  89. package/dist/esm/lib/api-keys/api-keys-table.js.map +1 -1
  90. package/dist/esm/lib/directory-sync.d.ts +72 -0
  91. package/dist/esm/lib/directory-sync.js +259 -0
  92. package/dist/esm/lib/directory-sync.js.map +1 -0
  93. package/dist/esm/lib/identity-providers.d.ts +5 -3
  94. package/dist/esm/lib/identity-providers.js +55 -1
  95. package/dist/esm/lib/identity-providers.js.map +1 -1
  96. package/dist/esm/lib/pipes.js +9 -10
  97. package/dist/esm/lib/pipes.js.map +1 -1
  98. package/dist/esm/lib/provider-icon.d.ts +2 -2
  99. package/dist/esm/lib/provider-icon.js.map +1 -1
  100. package/dist/esm/lib/reset-mfa-dialog.js +2 -1
  101. package/dist/esm/lib/reset-mfa-dialog.js.map +1 -1
  102. package/dist/esm/lib/use-permissions.d.ts +1 -1
  103. package/dist/esm/lib/use-permissions.js.map +1 -1
  104. package/dist/esm/lib/users-management-context.js +1 -1
  105. package/dist/esm/lib/users-management-context.js.map +1 -1
  106. package/dist/esm/lib/users-management.js +5 -4
  107. package/dist/esm/lib/users-management.js.map +1 -1
  108. package/dist/esm/lib/utils.d.ts +16 -2
  109. package/dist/esm/lib/utils.js +8 -0
  110. package/dist/esm/lib/utils.js.map +1 -1
  111. package/dist/esm/workos-widgets.client.js +13 -1
  112. package/dist/esm/workos-widgets.client.js.map +1 -1
  113. package/package.json +2 -2
@@ -0,0 +1,26 @@
1
+ import * as React from 'react';
2
+ export { DirectorySyncError, DirectorySyncErrorProps, DirectorySyncLoading, DirectorySyncLoadingProps } from './lib/directory-sync.js';
3
+ import { AuthToken } from './api/api-provider.js';
4
+ import { WidgetRootDomProps } from './lib/utils.js';
5
+ import './api/endpoint.js';
6
+ import '@tanstack/react-query';
7
+ import './api/widgets-api-client.js';
8
+ import 'react/jsx-runtime';
9
+ import './lib/elements.js';
10
+ import '@radix-ui/themes';
11
+ import '@radix-ui/themes/props';
12
+ import './dialog-C15qCLN3.js';
13
+ import '@radix-ui/themes/components/dialog';
14
+ import './alert-dialog-BlG3_awx.js';
15
+ import '@radix-ui/themes/components/alert-dialog';
16
+ import './dropdown-menu-BQ5LtvdR.js';
17
+ import '@radix-ui/themes/components/dropdown-menu';
18
+ import './select-KR89Qnvm.js';
19
+ import '@radix-ui/themes/components/select';
20
+
21
+ interface DirectorySyncProps extends WidgetRootDomProps {
22
+ authToken: AuthToken;
23
+ }
24
+ declare const DirectorySync: React.FC<DirectorySyncProps>;
25
+
26
+ export { DirectorySync, type DirectorySyncProps };
@@ -0,0 +1,134 @@
1
+ "use client";
2
+ import { jsx } from "react/jsx-runtime";
3
+ import {
4
+ DirectorySyncError,
5
+ DirectorySyncLoading,
6
+ DirectorySync as DirectorySyncPresentational
7
+ } from "./lib/directory-sync.js";
8
+ import { ApiProvider, useApiReady } from "./api/api-provider.js";
9
+ import { useWorkOsApiUrl } from "./lib/widgets-context.js";
10
+ import { ErrorBoundary } from "./lib/error-boundary.js";
11
+ import { DirectoryState, useListDirectories } from "./api/endpoint.js";
12
+ import { usePermissions } from "./lib/use-permissions.js";
13
+ const DirectorySync = ({
14
+ authToken,
15
+ ...domProps
16
+ }) => {
17
+ const baseUrl = useWorkOsApiUrl();
18
+ return /* @__PURE__ */ jsx(
19
+ ErrorBoundary,
20
+ {
21
+ fallbackRender: ({ error }) => /* @__PURE__ */ jsx(DirectorySyncError, { ...domProps, error }),
22
+ children: /* @__PURE__ */ jsx(
23
+ ApiProvider,
24
+ {
25
+ widgetType: "directory-sync",
26
+ authToken,
27
+ baseUrl,
28
+ children: /* @__PURE__ */ jsx(DirectorySyncImpl, { ...domProps })
29
+ }
30
+ )
31
+ }
32
+ );
33
+ };
34
+ const DirectorySyncImpl = (props) => {
35
+ const isApiReady = useApiReady();
36
+ const { data: directories, isLoading, isError, error } = useListDirectories();
37
+ const permissionsQuery = usePermissions("widgets:dsync:manage");
38
+ if (!isApiReady || isLoading || permissionsQuery.isLoading) {
39
+ return /* @__PURE__ */ jsx(DirectorySyncLoading, { ...props });
40
+ }
41
+ if (permissionsQuery.isError || isError) {
42
+ return /* @__PURE__ */ jsx(DirectorySyncError, { error: permissionsQuery.error || error, ...props });
43
+ }
44
+ if (!directories?.data?.length) {
45
+ return /* @__PURE__ */ jsx(
46
+ DirectorySyncPresentational,
47
+ {
48
+ ...props,
49
+ state: DirectoryState.unlinked,
50
+ link: directories?.link
51
+ }
52
+ );
53
+ }
54
+ return /* @__PURE__ */ jsx(
55
+ ErrorBoundary,
56
+ {
57
+ fallbackRender: ({ error: error2 }) => /* @__PURE__ */ jsx(DirectorySyncError, { error: error2, ...props }),
58
+ children: directories.data.map((directory) => {
59
+ const { id, state, type, metadata, lastSyncRunAt } = directory;
60
+ const commonProps = {
61
+ ...props,
62
+ type,
63
+ metadata,
64
+ lastSyncAt: lastSyncRunAt ?? null,
65
+ link: directories.link
66
+ };
67
+ switch (state) {
68
+ case DirectoryState.invalid_credentials:
69
+ return /* @__PURE__ */ jsx(
70
+ DirectorySyncPresentational,
71
+ {
72
+ ...commonProps,
73
+ state,
74
+ errorMessage: "Your directory credentials are invalid or have expired. Please re-authenticate to resume syncing."
75
+ },
76
+ id
77
+ );
78
+ case DirectoryState.linked:
79
+ return /* @__PURE__ */ jsx(
80
+ DirectorySyncPresentational,
81
+ {
82
+ ...commonProps,
83
+ state
84
+ },
85
+ id
86
+ );
87
+ case DirectoryState.validating:
88
+ return /* @__PURE__ */ jsx(
89
+ DirectorySyncPresentational,
90
+ {
91
+ ...commonProps,
92
+ state
93
+ },
94
+ id
95
+ );
96
+ case DirectoryState.deleting:
97
+ return /* @__PURE__ */ jsx(
98
+ DirectorySyncPresentational,
99
+ {
100
+ ...commonProps,
101
+ state
102
+ },
103
+ id
104
+ );
105
+ case DirectoryState.unlinked:
106
+ return /* @__PURE__ */ jsx(
107
+ DirectorySyncPresentational,
108
+ {
109
+ ...commonProps,
110
+ state
111
+ },
112
+ id
113
+ );
114
+ case DirectoryState.requires_type:
115
+ return /* @__PURE__ */ jsx(
116
+ DirectorySyncPresentational,
117
+ {
118
+ ...commonProps,
119
+ state,
120
+ errorMessage: "Your directory requires additional configuration. Please complete setup to begin syncing."
121
+ },
122
+ id
123
+ );
124
+ }
125
+ })
126
+ }
127
+ );
128
+ };
129
+ export {
130
+ DirectorySync,
131
+ DirectorySyncError,
132
+ DirectorySyncLoading
133
+ };
134
+ //# sourceMappingURL=directory-sync.client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/directory-sync.client.tsx"],"sourcesContent":["\"use client\";\n\nimport * as React from \"react\";\nimport {\n DirectorySyncError,\n DirectorySyncLoading,\n DirectorySync as DirectorySyncPresentational,\n} from \"./lib/directory-sync.js\";\nimport type {\n DirectorySyncErrorProps,\n DirectorySyncLoadingProps,\n} from \"./lib/directory-sync.js\";\nimport { ApiProvider, AuthToken, useApiReady } from \"./api/api-provider.js\";\nimport { useWorkOsApiUrl } from \"./lib/widgets-context.js\";\nimport { ErrorBoundary } from \"./lib/error-boundary.js\";\nimport type { WidgetRootDomProps } from \"./lib/utils.js\";\nimport { DirectoryState, useListDirectories } from \"./api/endpoint.js\";\nimport { usePermissions } from \"./lib/use-permissions.js\";\ninterface DirectorySyncProps extends WidgetRootDomProps {\n authToken: AuthToken;\n}\n\nconst DirectorySync: React.FC<DirectorySyncProps> = ({\n authToken,\n ...domProps\n}) => {\n const baseUrl = useWorkOsApiUrl();\n\n return (\n <ErrorBoundary\n fallbackRender={({ error }) => (\n <DirectorySyncError {...domProps} error={error} />\n )}\n >\n <ApiProvider\n widgetType=\"directory-sync\"\n authToken={authToken}\n baseUrl={baseUrl}\n >\n <DirectorySyncImpl {...domProps} />\n </ApiProvider>\n </ErrorBoundary>\n );\n};\n\nconst DirectorySyncImpl = (props: WidgetRootDomProps) => {\n const isApiReady = useApiReady();\n const { data: directories, isLoading, isError, error } = useListDirectories();\n const permissionsQuery = usePermissions(\"widgets:dsync:manage\");\n\n if (!isApiReady || isLoading || permissionsQuery.isLoading) {\n return <DirectorySyncLoading {...props} />;\n }\n\n if (permissionsQuery.isError || isError) {\n return (\n <DirectorySyncError error={permissionsQuery.error || error} {...props} />\n );\n }\n\n if (!directories?.data?.length) {\n return (\n <DirectorySyncPresentational\n {...props}\n state={DirectoryState.unlinked}\n link={directories?.link}\n />\n );\n }\n\n return (\n <ErrorBoundary\n fallbackRender={({ error }) => (\n <DirectorySyncError error={error} {...props} />\n )}\n >\n {directories.data.map((directory) => {\n const { id, state, type, metadata, lastSyncRunAt } = directory;\n const commonProps = {\n ...props,\n type,\n metadata,\n lastSyncAt: lastSyncRunAt ?? null,\n link: directories.link,\n };\n\n switch (state) {\n case DirectoryState.invalid_credentials:\n return (\n <DirectorySyncPresentational\n key={id}\n {...commonProps}\n state={state}\n errorMessage=\"Your directory credentials are invalid or have expired. Please re-authenticate to resume syncing.\"\n />\n );\n case DirectoryState.linked:\n return (\n <DirectorySyncPresentational\n key={id}\n {...commonProps}\n state={state}\n />\n );\n case DirectoryState.validating:\n return (\n <DirectorySyncPresentational\n key={id}\n {...commonProps}\n state={state}\n />\n );\n case DirectoryState.deleting:\n return (\n <DirectorySyncPresentational\n key={id}\n {...commonProps}\n state={state}\n />\n );\n case DirectoryState.unlinked:\n return (\n <DirectorySyncPresentational\n key={id}\n {...commonProps}\n state={state}\n />\n );\n case DirectoryState.requires_type:\n return (\n <DirectorySyncPresentational\n key={id}\n {...commonProps}\n state={state}\n errorMessage=\"Your directory requires additional configuration. Please complete setup to begin syncing.\"\n />\n );\n }\n })}\n </ErrorBoundary>\n );\n};\n\nexport type {\n DirectorySyncProps,\n DirectorySyncLoadingProps,\n DirectorySyncErrorProps,\n};\nexport { DirectorySync, DirectorySyncLoading, DirectorySyncError };\n"],"mappings":";AA+BQ;AA5BR;AAAA,EACE;AAAA,EACA;AAAA,EACA,iBAAiB;AAAA,OACZ;AAKP,SAAS,aAAwB,mBAAmB;AACpD,SAAS,uBAAuB;AAChC,SAAS,qBAAqB;AAE9B,SAAS,gBAAgB,0BAA0B;AACnD,SAAS,sBAAsB;AAK/B,MAAM,gBAA8C,CAAC;AAAA,EACnD;AAAA,EACA,GAAG;AACL,MAAM;AACJ,QAAM,UAAU,gBAAgB;AAEhC,SACE;AAAA,IAAC;AAAA;AAAA,MACC,gBAAgB,CAAC,EAAE,MAAM,MACvB,oBAAC,sBAAoB,GAAG,UAAU,OAAc;AAAA,MAGlD;AAAA,QAAC;AAAA;AAAA,UACC,YAAW;AAAA,UACX;AAAA,UACA;AAAA,UAEA,8BAAC,qBAAmB,GAAG,UAAU;AAAA;AAAA,MACnC;AAAA;AAAA,EACF;AAEJ;AAEA,MAAM,oBAAoB,CAAC,UAA8B;AACvD,QAAM,aAAa,YAAY;AAC/B,QAAM,EAAE,MAAM,aAAa,WAAW,SAAS,MAAM,IAAI,mBAAmB;AAC5E,QAAM,mBAAmB,eAAe,sBAAsB;AAE9D,MAAI,CAAC,cAAc,aAAa,iBAAiB,WAAW;AAC1D,WAAO,oBAAC,wBAAsB,GAAG,OAAO;AAAA,EAC1C;AAEA,MAAI,iBAAiB,WAAW,SAAS;AACvC,WACE,oBAAC,sBAAmB,OAAO,iBAAiB,SAAS,OAAQ,GAAG,OAAO;AAAA,EAE3E;AAEA,MAAI,CAAC,aAAa,MAAM,QAAQ;AAC9B,WACE;AAAA,MAAC;AAAA;AAAA,QACE,GAAG;AAAA,QACJ,OAAO,eAAe;AAAA,QACtB,MAAM,aAAa;AAAA;AAAA,IACrB;AAAA,EAEJ;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,gBAAgB,CAAC,EAAE,OAAAA,OAAM,MACvB,oBAAC,sBAAmB,OAAOA,QAAQ,GAAG,OAAO;AAAA,MAG9C,sBAAY,KAAK,IAAI,CAAC,cAAc;AACnC,cAAM,EAAE,IAAI,OAAO,MAAM,UAAU,cAAc,IAAI;AACrD,cAAM,cAAc;AAAA,UAClB,GAAG;AAAA,UACH;AAAA,UACA;AAAA,UACA,YAAY,iBAAiB;AAAA,UAC7B,MAAM,YAAY;AAAA,QACpB;AAEA,gBAAQ,OAAO;AAAA,UACb,KAAK,eAAe;AAClB,mBACE;AAAA,cAAC;AAAA;AAAA,gBAEE,GAAG;AAAA,gBACJ;AAAA,gBACA,cAAa;AAAA;AAAA,cAHR;AAAA,YAIP;AAAA,UAEJ,KAAK,eAAe;AAClB,mBACE;AAAA,cAAC;AAAA;AAAA,gBAEE,GAAG;AAAA,gBACJ;AAAA;AAAA,cAFK;AAAA,YAGP;AAAA,UAEJ,KAAK,eAAe;AAClB,mBACE;AAAA,cAAC;AAAA;AAAA,gBAEE,GAAG;AAAA,gBACJ;AAAA;AAAA,cAFK;AAAA,YAGP;AAAA,UAEJ,KAAK,eAAe;AAClB,mBACE;AAAA,cAAC;AAAA;AAAA,gBAEE,GAAG;AAAA,gBACJ;AAAA;AAAA,cAFK;AAAA,YAGP;AAAA,UAEJ,KAAK,eAAe;AAClB,mBACE;AAAA,cAAC;AAAA;AAAA,gBAEE,GAAG;AAAA,gBACJ;AAAA;AAAA,cAFK;AAAA,YAGP;AAAA,UAEJ,KAAK,eAAe;AAClB,mBACE;AAAA,cAAC;AAAA;AAAA,gBAEE,GAAG;AAAA,gBACJ;AAAA,gBACA,cAAa;AAAA;AAAA,cAHR;AAAA,YAIP;AAAA,QAEN;AAAA,MACF,CAAC;AAAA;AAAA,EACH;AAEJ;","names":["error"]}