@workos-inc/widgets 1.8.2 → 1.9.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.
Files changed (88) hide show
  1. package/CHANGELOG.md +5 -0
  2. package/dist/cjs/api/api-provider.cjs.map +1 -1
  3. package/dist/cjs/api/api-provider.d.cts +1 -1
  4. package/dist/cjs/api/endpoint.cjs +702 -623
  5. package/dist/cjs/api/endpoint.cjs.map +1 -1
  6. package/dist/cjs/api/endpoint.d.cts +810 -729
  7. package/dist/cjs/directory-sync.client.cjs +143 -0
  8. package/dist/cjs/directory-sync.client.cjs.map +1 -0
  9. package/dist/cjs/directory-sync.client.d.cts +26 -0
  10. package/dist/cjs/experimental/api/fetch.cjs +309 -252
  11. package/dist/cjs/experimental/api/fetch.cjs.map +1 -1
  12. package/dist/cjs/experimental/api/fetch.d.cts +809 -731
  13. package/dist/cjs/experimental/api/react-query.cjs +695 -613
  14. package/dist/cjs/experimental/api/react-query.cjs.map +1 -1
  15. package/dist/cjs/experimental/api/react-query.d.cts +1355 -1250
  16. package/dist/cjs/experimental/api/swr.cjs +660 -583
  17. package/dist/cjs/experimental/api/swr.cjs.map +1 -1
  18. package/dist/cjs/experimental/api/swr.d.cts +1307 -1212
  19. package/dist/cjs/index.cjs +5 -0
  20. package/dist/cjs/index.cjs.map +1 -1
  21. package/dist/cjs/index.d.cts +2 -0
  22. package/dist/cjs/lib/api-keys/api-keys-context.cjs +1 -1
  23. package/dist/cjs/lib/api-keys/api-keys-context.cjs.map +1 -1
  24. package/dist/cjs/lib/api-keys/api-keys-table.cjs +7 -5
  25. package/dist/cjs/lib/api-keys/api-keys-table.cjs.map +1 -1
  26. package/dist/cjs/lib/directory-sync.cjs +288 -0
  27. package/dist/cjs/lib/directory-sync.cjs.map +1 -0
  28. package/dist/cjs/lib/directory-sync.d.cts +72 -0
  29. package/dist/cjs/lib/identity-providers.cjs +57 -1
  30. package/dist/cjs/lib/identity-providers.cjs.map +1 -1
  31. package/dist/cjs/lib/identity-providers.d.cts +5 -3
  32. package/dist/cjs/lib/pipes.cjs +9 -9
  33. package/dist/cjs/lib/pipes.cjs.map +1 -1
  34. package/dist/cjs/lib/reset-mfa-dialog.cjs +2 -1
  35. package/dist/cjs/lib/reset-mfa-dialog.cjs.map +1 -1
  36. package/dist/cjs/lib/use-permissions.cjs.map +1 -1
  37. package/dist/cjs/lib/use-permissions.d.cts +1 -1
  38. package/dist/cjs/lib/users-management-context.cjs +1 -1
  39. package/dist/cjs/lib/users-management-context.cjs.map +1 -1
  40. package/dist/cjs/lib/users-management.cjs +3 -3
  41. package/dist/cjs/lib/users-management.cjs.map +1 -1
  42. package/dist/cjs/lib/utils.cjs +9 -0
  43. package/dist/cjs/lib/utils.cjs.map +1 -1
  44. package/dist/cjs/lib/utils.d.cts +16 -2
  45. package/dist/esm/api/api-provider.d.ts +1 -1
  46. package/dist/esm/api/api-provider.js.map +1 -1
  47. package/dist/esm/api/endpoint.d.ts +810 -729
  48. package/dist/esm/api/endpoint.js +691 -618
  49. package/dist/esm/api/endpoint.js.map +1 -1
  50. package/dist/esm/directory-sync.client.d.ts +26 -0
  51. package/dist/esm/directory-sync.client.js +121 -0
  52. package/dist/esm/directory-sync.client.js.map +1 -0
  53. package/dist/esm/experimental/api/fetch.d.ts +809 -731
  54. package/dist/esm/experimental/api/fetch.js +300 -247
  55. package/dist/esm/experimental/api/fetch.js.map +1 -1
  56. package/dist/esm/experimental/api/react-query.d.ts +1355 -1250
  57. package/dist/esm/experimental/api/react-query.js +683 -608
  58. package/dist/esm/experimental/api/react-query.js.map +1 -1
  59. package/dist/esm/experimental/api/swr.d.ts +1307 -1212
  60. package/dist/esm/experimental/api/swr.js +649 -578
  61. package/dist/esm/experimental/api/swr.js.map +1 -1
  62. package/dist/esm/index.d.ts +2 -0
  63. package/dist/esm/index.js +6 -0
  64. package/dist/esm/index.js.map +1 -1
  65. package/dist/esm/lib/api-keys/api-keys-context.js +1 -1
  66. package/dist/esm/lib/api-keys/api-keys-context.js.map +1 -1
  67. package/dist/esm/lib/api-keys/api-keys-table.js +7 -5
  68. package/dist/esm/lib/api-keys/api-keys-table.js.map +1 -1
  69. package/dist/esm/lib/directory-sync.d.ts +72 -0
  70. package/dist/esm/lib/directory-sync.js +259 -0
  71. package/dist/esm/lib/directory-sync.js.map +1 -0
  72. package/dist/esm/lib/identity-providers.d.ts +5 -3
  73. package/dist/esm/lib/identity-providers.js +55 -1
  74. package/dist/esm/lib/identity-providers.js.map +1 -1
  75. package/dist/esm/lib/pipes.js +9 -10
  76. package/dist/esm/lib/pipes.js.map +1 -1
  77. package/dist/esm/lib/reset-mfa-dialog.js +2 -1
  78. package/dist/esm/lib/reset-mfa-dialog.js.map +1 -1
  79. package/dist/esm/lib/use-permissions.d.ts +1 -1
  80. package/dist/esm/lib/use-permissions.js.map +1 -1
  81. package/dist/esm/lib/users-management-context.js +1 -1
  82. package/dist/esm/lib/users-management-context.js.map +1 -1
  83. package/dist/esm/lib/users-management.js +5 -4
  84. package/dist/esm/lib/users-management.js.map +1 -1
  85. package/dist/esm/lib/utils.d.ts +16 -2
  86. package/dist/esm/lib/utils.js +8 -0
  87. package/dist/esm/lib/utils.js.map +1 -1
  88. package/package.json +3 -3
@@ -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,121 @@
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(DirectorySyncPresentational, { ...props, state: DirectoryState.unlinked });
46
+ }
47
+ return /* @__PURE__ */ jsx(
48
+ ErrorBoundary,
49
+ {
50
+ fallbackRender: ({ error: error2 }) => /* @__PURE__ */ jsx(DirectorySyncError, { error: error2, ...props }),
51
+ children: directories.data.map((directory) => {
52
+ const { id, state, type, metadata, updatedAt } = directory;
53
+ const commonProps = { ...props, type, metadata, lastSyncAt: updatedAt };
54
+ switch (state) {
55
+ case DirectoryState.invalid_credentials:
56
+ return /* @__PURE__ */ jsx(
57
+ DirectorySyncPresentational,
58
+ {
59
+ ...commonProps,
60
+ state,
61
+ errorMessage: "Your directory credentials are invalid or have expired. Please re-authenticate to resume syncing."
62
+ },
63
+ id
64
+ );
65
+ case DirectoryState.linked:
66
+ return /* @__PURE__ */ jsx(
67
+ DirectorySyncPresentational,
68
+ {
69
+ ...commonProps,
70
+ state
71
+ },
72
+ id
73
+ );
74
+ case DirectoryState.validating:
75
+ return /* @__PURE__ */ jsx(
76
+ DirectorySyncPresentational,
77
+ {
78
+ ...commonProps,
79
+ state
80
+ },
81
+ id
82
+ );
83
+ case DirectoryState.deleting:
84
+ return /* @__PURE__ */ jsx(
85
+ DirectorySyncPresentational,
86
+ {
87
+ ...commonProps,
88
+ state
89
+ },
90
+ id
91
+ );
92
+ case DirectoryState.unlinked:
93
+ return /* @__PURE__ */ jsx(
94
+ DirectorySyncPresentational,
95
+ {
96
+ ...commonProps,
97
+ state
98
+ },
99
+ id
100
+ );
101
+ case DirectoryState.requires_type:
102
+ return /* @__PURE__ */ jsx(
103
+ DirectorySyncPresentational,
104
+ {
105
+ ...commonProps,
106
+ state,
107
+ errorMessage: "Your directory requires additional configuration. Please complete setup to begin syncing."
108
+ },
109
+ id
110
+ );
111
+ }
112
+ })
113
+ }
114
+ );
115
+ };
116
+ export {
117
+ DirectorySync,
118
+ DirectorySyncError,
119
+ DirectorySyncLoading
120
+ };
121
+ //# 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 {...props} state={DirectoryState.unlinked} />\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, updatedAt } = directory;\n const commonProps = { ...props, type, metadata, lastSyncAt: updatedAt };\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,oBAAC,+BAA6B,GAAG,OAAO,OAAO,eAAe,UAAU;AAAA,EAE5E;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,UAAU,IAAI;AACjD,cAAM,cAAc,EAAE,GAAG,OAAO,MAAM,UAAU,YAAY,UAAU;AAEtE,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"]}