@workos-inc/widgets 0.0.0-pre.1 → 0.0.0-pre.3

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 (181) hide show
  1. package/dist/cjs/lib/api/role.d.ts.map +1 -1
  2. package/dist/cjs/lib/api/role.js +35 -14
  3. package/dist/cjs/lib/api/role.js.map +1 -1
  4. package/dist/cjs/lib/api/user.d.ts.map +1 -1
  5. package/dist/cjs/lib/api/user.js +105 -67
  6. package/dist/cjs/lib/api/user.js.map +1 -1
  7. package/dist/cjs/lib/constants.d.ts +2 -1
  8. package/dist/cjs/lib/constants.d.ts.map +1 -1
  9. package/dist/cjs/lib/constants.js +3 -2
  10. package/dist/cjs/lib/constants.js.map +1 -1
  11. package/dist/cjs/lib/delete-user-dialog.d.ts.map +1 -1
  12. package/dist/cjs/lib/delete-user-dialog.js +1 -1
  13. package/dist/cjs/lib/delete-user-dialog.js.map +1 -1
  14. package/dist/cjs/lib/edit-user-details-dialog.d.ts.map +1 -1
  15. package/dist/cjs/lib/edit-user-details-dialog.js +3 -5
  16. package/dist/cjs/lib/edit-user-details-dialog.js.map +1 -1
  17. package/dist/cjs/lib/elements.d.ts +23 -12
  18. package/dist/cjs/lib/elements.d.ts.map +1 -1
  19. package/dist/cjs/lib/elements.js +104 -30
  20. package/dist/cjs/lib/elements.js.map +1 -1
  21. package/dist/cjs/lib/error-boundary.d.ts +58 -0
  22. package/dist/cjs/lib/error-boundary.d.ts.map +1 -0
  23. package/dist/cjs/lib/error-boundary.js +113 -0
  24. package/dist/cjs/lib/error-boundary.js.map +1 -0
  25. package/dist/cjs/lib/errors.d.ts +34 -0
  26. package/dist/cjs/lib/errors.d.ts.map +1 -0
  27. package/dist/cjs/lib/errors.js +40 -0
  28. package/dist/cjs/lib/errors.js.map +1 -0
  29. package/dist/cjs/lib/invite-user-dialog.d.ts.map +1 -1
  30. package/dist/cjs/lib/invite-user-dialog.js +4 -4
  31. package/dist/cjs/lib/invite-user-dialog.js.map +1 -1
  32. package/dist/cjs/lib/resend-invite-dialog.d.ts.map +1 -1
  33. package/dist/cjs/lib/resend-invite-dialog.js +2 -2
  34. package/dist/cjs/lib/resend-invite-dialog.js.map +1 -1
  35. package/dist/cjs/lib/revoke-invite-dialog.d.ts.map +1 -1
  36. package/dist/cjs/lib/revoke-invite-dialog.js +1 -1
  37. package/dist/cjs/lib/revoke-invite-dialog.js.map +1 -1
  38. package/dist/cjs/lib/use-layout-effect.d.ts +4 -0
  39. package/dist/cjs/lib/use-layout-effect.d.ts.map +1 -0
  40. package/dist/cjs/lib/use-layout-effect.js +8 -0
  41. package/dist/cjs/lib/use-layout-effect.js.map +1 -0
  42. package/dist/cjs/lib/user-actions-dropdown.d.ts.map +1 -1
  43. package/dist/cjs/lib/user-actions-dropdown.js +2 -9
  44. package/dist/cjs/lib/user-actions-dropdown.js.map +1 -1
  45. package/dist/cjs/lib/users-filter.d.ts +1 -0
  46. package/dist/cjs/lib/users-filter.d.ts.map +1 -1
  47. package/dist/cjs/lib/users-filter.js +2 -9
  48. package/dist/cjs/lib/users-filter.js.map +1 -1
  49. package/dist/cjs/lib/users-management-context.d.ts +2 -2
  50. package/dist/cjs/lib/users-management-context.d.ts.map +1 -1
  51. package/dist/cjs/lib/users-management.d.ts +9 -6
  52. package/dist/cjs/lib/users-management.d.ts.map +1 -1
  53. package/dist/cjs/lib/users-management.js +77 -20
  54. package/dist/cjs/lib/users-management.js.map +1 -1
  55. package/dist/cjs/lib/users-search.d.ts +1 -1
  56. package/dist/cjs/lib/users-search.d.ts.map +1 -1
  57. package/dist/cjs/lib/users-search.js +3 -9
  58. package/dist/cjs/lib/users-search.js.map +1 -1
  59. package/dist/cjs/lib/utils.d.ts +2 -0
  60. package/dist/cjs/lib/utils.d.ts.map +1 -1
  61. package/dist/cjs/lib/utils.js +18 -0
  62. package/dist/cjs/lib/utils.js.map +1 -1
  63. package/dist/cjs/users-management.client.d.ts +1 -1
  64. package/dist/cjs/users-management.client.d.ts.map +1 -1
  65. package/dist/cjs/users-management.client.js +15 -5
  66. package/dist/cjs/users-management.client.js.map +1 -1
  67. package/dist/cjs/workos-widgets.client.d.ts.map +1 -1
  68. package/dist/cjs/workos-widgets.client.js +2 -1
  69. package/dist/cjs/workos-widgets.client.js.map +1 -1
  70. package/dist/esm/lib/api/role.d.ts.map +1 -1
  71. package/dist/esm/lib/api/role.js +35 -14
  72. package/dist/esm/lib/api/role.js.map +1 -1
  73. package/dist/esm/lib/api/user.d.ts.map +1 -1
  74. package/dist/esm/lib/api/user.js +105 -67
  75. package/dist/esm/lib/api/user.js.map +1 -1
  76. package/dist/esm/lib/constants.d.ts +2 -1
  77. package/dist/esm/lib/constants.d.ts.map +1 -1
  78. package/dist/esm/lib/constants.js +2 -1
  79. package/dist/esm/lib/constants.js.map +1 -1
  80. package/dist/esm/lib/delete-user-dialog.d.ts.map +1 -1
  81. package/dist/esm/lib/delete-user-dialog.js +2 -2
  82. package/dist/esm/lib/delete-user-dialog.js.map +1 -1
  83. package/dist/esm/lib/edit-user-details-dialog.d.ts.map +1 -1
  84. package/dist/esm/lib/edit-user-details-dialog.js +4 -6
  85. package/dist/esm/lib/edit-user-details-dialog.js.map +1 -1
  86. package/dist/esm/lib/elements.d.ts +23 -12
  87. package/dist/esm/lib/elements.d.ts.map +1 -1
  88. package/dist/esm/lib/elements.js +81 -30
  89. package/dist/esm/lib/elements.js.map +1 -1
  90. package/dist/esm/lib/error-boundary.d.ts +58 -0
  91. package/dist/esm/lib/error-boundary.d.ts.map +1 -0
  92. package/dist/esm/lib/error-boundary.js +86 -0
  93. package/dist/esm/lib/error-boundary.js.map +1 -0
  94. package/dist/esm/lib/errors.d.ts +34 -0
  95. package/dist/esm/lib/errors.d.ts.map +1 -0
  96. package/dist/esm/lib/errors.js +34 -0
  97. package/dist/esm/lib/errors.js.map +1 -0
  98. package/dist/esm/lib/invite-user-dialog.d.ts.map +1 -1
  99. package/dist/esm/lib/invite-user-dialog.js +4 -4
  100. package/dist/esm/lib/invite-user-dialog.js.map +1 -1
  101. package/dist/esm/lib/resend-invite-dialog.d.ts.map +1 -1
  102. package/dist/esm/lib/resend-invite-dialog.js +3 -3
  103. package/dist/esm/lib/resend-invite-dialog.js.map +1 -1
  104. package/dist/esm/lib/revoke-invite-dialog.d.ts.map +1 -1
  105. package/dist/esm/lib/revoke-invite-dialog.js +2 -2
  106. package/dist/esm/lib/revoke-invite-dialog.js.map +1 -1
  107. package/dist/esm/lib/use-layout-effect.d.ts +4 -0
  108. package/dist/esm/lib/use-layout-effect.d.ts.map +1 -0
  109. package/dist/esm/lib/use-layout-effect.js +5 -0
  110. package/dist/esm/lib/use-layout-effect.js.map +1 -0
  111. package/dist/esm/lib/user-actions-dropdown.d.ts.map +1 -1
  112. package/dist/esm/lib/user-actions-dropdown.js +3 -10
  113. package/dist/esm/lib/user-actions-dropdown.js.map +1 -1
  114. package/dist/esm/lib/users-filter.d.ts +1 -0
  115. package/dist/esm/lib/users-filter.d.ts.map +1 -1
  116. package/dist/esm/lib/users-filter.js +4 -11
  117. package/dist/esm/lib/users-filter.js.map +1 -1
  118. package/dist/esm/lib/users-management-context.d.ts +2 -2
  119. package/dist/esm/lib/users-management-context.d.ts.map +1 -1
  120. package/dist/esm/lib/users-management.d.ts +9 -6
  121. package/dist/esm/lib/users-management.d.ts.map +1 -1
  122. package/dist/esm/lib/users-management.js +74 -22
  123. package/dist/esm/lib/users-management.js.map +1 -1
  124. package/dist/esm/lib/users-search.d.ts +1 -1
  125. package/dist/esm/lib/users-search.d.ts.map +1 -1
  126. package/dist/esm/lib/users-search.js +5 -11
  127. package/dist/esm/lib/users-search.js.map +1 -1
  128. package/dist/esm/lib/utils.d.ts +2 -0
  129. package/dist/esm/lib/utils.d.ts.map +1 -1
  130. package/dist/esm/lib/utils.js +13 -0
  131. package/dist/esm/lib/utils.js.map +1 -1
  132. package/dist/esm/users-management.client.d.ts +1 -1
  133. package/dist/esm/users-management.client.d.ts.map +1 -1
  134. package/dist/esm/users-management.client.js +16 -6
  135. package/dist/esm/users-management.client.js.map +1 -1
  136. package/dist/esm/workos-widgets.client.d.ts.map +1 -1
  137. package/dist/esm/workos-widgets.client.js +2 -1
  138. package/dist/esm/workos-widgets.client.js.map +1 -1
  139. package/dist/tsconfig.cjs.tsbuildinfo +1 -1
  140. package/dist/tsconfig.esm.tsbuildinfo +1 -1
  141. package/package.json +8 -3
  142. package/src/base.css +111 -0
  143. package/src/lib/api/role.ts +39 -16
  144. package/src/lib/api/user.ts +119 -75
  145. package/src/lib/constants.ts +2 -1
  146. package/src/lib/delete-user-dialog.tsx +7 -3
  147. package/src/lib/edit-user-details-dialog.tsx +15 -10
  148. package/src/lib/elements.tsx +254 -70
  149. package/src/lib/error-boundary.tsx +166 -0
  150. package/src/lib/errors.ts +49 -0
  151. package/src/lib/invite-user-dialog.tsx +22 -13
  152. package/src/lib/resend-invite-dialog.tsx +11 -5
  153. package/src/lib/revoke-invite-dialog.tsx +7 -3
  154. package/src/lib/use-layout-effect.ts +6 -0
  155. package/src/lib/user-actions-dropdown.tsx +8 -16
  156. package/src/lib/users-filter.tsx +13 -73
  157. package/src/lib/users-management-context.tsx +1 -1
  158. package/src/lib/users-management.tsx +339 -184
  159. package/src/lib/users-search.tsx +5 -63
  160. package/src/lib/utils.ts +21 -0
  161. package/src/users-management.client.tsx +37 -16
  162. package/src/users-management.css +4 -0
  163. package/src/workos-widgets.client.tsx +2 -1
  164. package/dist/cjs/lib/label.d.ts +0 -7
  165. package/dist/cjs/lib/label.d.ts.map +0 -1
  166. package/dist/cjs/lib/label.js +0 -9
  167. package/dist/cjs/lib/label.js.map +0 -1
  168. package/dist/cjs/lib/pagination.d.ts +0 -8
  169. package/dist/cjs/lib/pagination.d.ts.map +0 -1
  170. package/dist/cjs/lib/pagination.js +0 -67
  171. package/dist/cjs/lib/pagination.js.map +0 -1
  172. package/dist/esm/lib/label.d.ts +0 -7
  173. package/dist/esm/lib/label.d.ts.map +0 -1
  174. package/dist/esm/lib/label.js +0 -6
  175. package/dist/esm/lib/label.js.map +0 -1
  176. package/dist/esm/lib/pagination.d.ts +0 -8
  177. package/dist/esm/lib/pagination.d.ts.map +0 -1
  178. package/dist/esm/lib/pagination.js +0 -40
  179. package/dist/esm/lib/pagination.js.map +0 -1
  180. package/src/lib/label.tsx +0 -14
  181. package/src/lib/pagination.tsx +0 -69
@@ -1 +1 @@
1
- {"version":3,"file":"users-search.js","sourceRoot":"","sources":["../../../src/lib/users-search.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"users-search.js","sourceRoot":"","sources":["../../../src/lib/users-search.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,qEAA+D;AAC/D,uDAAwE;AACxE,6CAA8C;AAC9C,6CAA+B;AAC/B,+CAAoD;AACpD,yCAAsD;AACtD,uDAAqD;AACrD,yEAAuE;AACvE,mCAA6B;AAIhB,QAAA,WAAW,GAAG,KAAK,CAAC,UAAU,CACzC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IAC/B,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,EAAE,GAC1D,IAAA,kCAAgB,GAAE,CAAC;IACrB,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAA,oDAAyB,GAAE,CAAC;IAEjD,MAAM,MAAM,GAAG,IAAA,mCAAoB,EAAC,CAAC,KAAK,EAAE,EAAE;QAC5C,QAAQ,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7D,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,WAAW,EAAE,CAAC;QACd,MAAM,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CACL,wBAAC,oBAAS,IACR,GAAG,EAAE,IAAA,oCAAe,EAAC,QAAQ,EAAE,GAAG,CAAC,EACnC,SAAS,EAAE,IAAA,UAAE,EAAC,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,EAC1C,YAAY,EAAC,KAAK,EAClB,WAAW,EAAC,0BAA0B,EACtC,KAAK,EAAE,WAAW,EAClB,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;YAClB,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YACjC,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,EACD,SAAS,EAAE,CAAC,KAAK,EAAE,EAAE;YACnB,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC3B,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,WAAW,EAAE,CAAC;YAChB,CAAC;QACH,CAAC,KACG,KAAK,aAET,uBAAC,wBAAa,IAAC,IAAI,EAAC,MAAM,YACxB,uBAAC,iCAAmB,mBAAa,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,KAAK,EAAC,IAAI,GAAG,GACnD,EAEhB,uBAAC,wBAAa,IAAC,IAAI,EAAC,OAAO,YACxB,WAAW,IAAI,CACd,uBAAC,mBAAU,IACT,IAAI,EAAC,GAAG,EACR,KAAK,EAAC,MAAM,EACZ,OAAO,EAAC,OAAO,EACf,MAAM,EAAC,MAAM,EACb,OAAO,EAAE,WAAW,gBACT,cAAc,EACzB,KAAK,EAAC,cAAc,YAEpB,uBAAC,wBAAU,mBAAa,MAAM,GAAG,GACtB,CACd,GACa,IACN,CACb,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -12,4 +12,6 @@ export declare function parseErrorResponse(response: Response): Promise<{
12
12
  message: string;
13
13
  status: number;
14
14
  }>;
15
+ export declare function namespaceClassName(className: string): string;
16
+ export declare function cx(baseClass: string | null | string[], ...classes: (string | false | null | undefined)[]): string;
15
17
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,eAAO,MAAM,SAAS,SAIrB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,GACT,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC,iBAEtC;AAED,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,IAAI,EACT,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,MAAM,CAwCR;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE7E;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAExD;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAoB9C"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAGvC,eAAO,MAAM,SAAS,SAIrB,CAAC;AAEF,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,GACT,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC,iBAEtC;AAED,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,IAAI,EACT,IAAI,EAAE,IAAI,EACV,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAC9B,MAAM,CAwCR;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAE7E;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,CAExD;AAED,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAoB9C;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,UAEnD;AAED,wBAAgB,EAAE,CAChB,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,EAAE,EACnC,GAAG,OAAO,EAAE,CAAC,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,GAChD,MAAM,CAUR"}
@@ -1,4 +1,7 @@
1
1
  "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
2
5
  Object.defineProperty(exports, "__esModule", { value: true });
3
6
  exports.canUseDOM = void 0;
4
7
  exports.getBestName = getBestName;
@@ -6,6 +9,10 @@ exports.getComparativeReadableDate = getComparativeReadableDate;
6
9
  exports.isObjectLike = isObjectLike;
7
10
  exports.isErrorLike = isErrorLike;
8
11
  exports.parseErrorResponse = parseErrorResponse;
12
+ exports.namespaceClassName = namespaceClassName;
13
+ exports.cx = cx;
14
+ const clsx_1 = __importDefault(require("clsx"));
15
+ const constants_1 = require("./constants");
9
16
  exports.canUseDOM = !!(typeof window !== "undefined" &&
10
17
  window.document &&
11
18
  window.document.createElement);
@@ -75,4 +82,15 @@ async function parseErrorResponse(response) {
75
82
  };
76
83
  }
77
84
  }
85
+ function namespaceClassName(className) {
86
+ return `${constants_1.WIDGETS_CLASS_NAMESPACE}-${className}`;
87
+ }
88
+ function cx(baseClass, ...classes) {
89
+ if (baseClass) {
90
+ return (0, clsx_1.default)(typeof baseClass === "string"
91
+ ? namespaceClassName(baseClass)
92
+ : baseClass.map(namespaceClassName), ...classes);
93
+ }
94
+ return (0, clsx_1.default)(...classes);
95
+ }
78
96
  //# sourceMappingURL=utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/lib/utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as React from "react";
2
2
  export interface UsersManagementProps {
3
- authToken: string | null | undefined;
3
+ authToken: string | (() => Promise<string>) | null | undefined;
4
4
  }
5
5
  export declare const UsersManagement: React.FC<UsersManagementProps>;
6
6
  //# sourceMappingURL=users-management.client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"users-management.client.d.ts","sourceRoot":"","sources":["../../src/users-management.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAc/B,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACtC;AAQD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgC1D,CAAC"}
1
+ {"version":3,"file":"users-management.client.d.ts","sourceRoot":"","sources":["../../src/users-management.client.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAmB/B,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;CAChE;AAQD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAgD1D,CAAC"}
@@ -33,6 +33,7 @@ const use_is_hydrated_1 = require("./lib/use-is-hydrated");
33
33
  const users_management_1 = require("./lib/users-management");
34
34
  const users_management_context_1 = require("./lib/users-management-context");
35
35
  const users_management_state_1 = require("./lib/users-management-state");
36
+ const error_boundary_1 = require("./lib/error-boundary");
36
37
  const initialState = {
37
38
  pagination: null,
38
39
  role: null,
@@ -42,16 +43,25 @@ const UsersManagement = ({ authToken = null, }) => {
42
43
  const isHydrated = (0, use_is_hydrated_1.useIsHydrated)();
43
44
  const [state, dispatch] = (0, users_management_state_1.useUsersManagementState)(initialState);
44
45
  const context = React.useMemo(() => ({
45
- authToken,
46
+ authToken: typeof authToken === "string"
47
+ ? () => Promise.resolve(authToken)
48
+ : authToken,
46
49
  state,
47
50
  dispatch,
48
51
  }), [authToken, state, dispatch]);
49
52
  const rolesQuery = (0, role_1.useRoles)(context);
50
53
  const usersQuery = (0, user_1.useUsers)(context);
51
- const isFetching = usersQuery.isFetching || rolesQuery.isFetching;
52
- const isLoading = usersQuery.isLoading || rolesQuery.isLoading;
53
- const isPending = usersQuery.isPlaceholderData || rolesQuery.isPlaceholderData;
54
- return ((0, jsx_runtime_1.jsx)(users_management_context_1.UsersManagementContextProvider, { value: context, children: (0, jsx_runtime_1.jsx)(users_management_1.UsersManagement, { userData: usersQuery.data, rolesData: rolesQuery.data, isInitialLoading: (isFetching && isLoading) || !isHydrated, isPending: isPending }) }));
54
+ if (usersQuery.isLoading ||
55
+ rolesQuery.isLoading ||
56
+ usersQuery.isPending ||
57
+ // render loading state on the server to prevent FOUC or hydration mismatch
58
+ !isHydrated) {
59
+ return (0, jsx_runtime_1.jsx)(users_management_1.UsersManagementLoading, {});
60
+ }
61
+ if (usersQuery.isError || rolesQuery.isError) {
62
+ return ((0, jsx_runtime_1.jsx)(users_management_1.UsersManagementError, { error: usersQuery.error || rolesQuery.isError }));
63
+ }
64
+ return ((0, jsx_runtime_1.jsx)(error_boundary_1.ErrorBoundary, { FallbackComponent: users_management_1.UsersManagementError, children: (0, jsx_runtime_1.jsx)(users_management_context_1.UsersManagementContextProvider, { value: context, children: (0, jsx_runtime_1.jsx)(users_management_1.UsersManagement, { userData: usersQuery.data, rolesData: rolesQuery.data, isPending: usersQuery.isFetching, disableRolesFilter: rolesQuery.isPending || rolesQuery.isFetching }) }) }));
55
65
  };
56
66
  exports.UsersManagement = UsersManagement;
57
67
  //# sourceMappingURL=users-management.client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"users-management.client.js","sourceRoot":"","sources":["../../src/users-management.client.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAA+B;AAC/B,yCAA0C;AAC1C,yCAA0C;AAC1C,2DAAsD;AACtD,6DAA0F;AAC1F,6EAGwC;AACxC,yEAGsC;AAMtC,MAAM,YAAY,GAAyB;IACzC,UAAU,EAAE,IAAI;IAChB,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,IAAI;CAClB,CAAC;AAEK,MAAM,eAAe,GAAmC,CAAC,EAC9D,SAAS,GAAG,IAAI,GACjB,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,IAAA,+BAAa,GAAE,CAAC;IAEnC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gDAAuB,EAAC,YAAY,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAC3B,GAAG,EAAE,CAAC,CAAC;QACL,SAAS;QACT,KAAK;QACL,QAAQ;KACT,CAAC,EACF,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAC7B,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,eAAQ,EAAC,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,IAAA,eAAQ,EAAC,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,UAAU,CAAC,UAAU,CAAC;IAClE,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,CAAC;IAC/D,MAAM,SAAS,GACb,UAAU,CAAC,iBAAiB,IAAI,UAAU,CAAC,iBAAiB,CAAC;IAE/D,OAAO,CACL,uBAAC,yDAA8B,IAAC,KAAK,EAAE,OAAO,YAC5C,uBAAC,kCAA6B,IAC5B,QAAQ,EAAE,UAAU,CAAC,IAAI,EACzB,SAAS,EAAE,UAAU,CAAC,IAAI,EAC1B,gBAAgB,EAAE,CAAC,UAAU,IAAI,SAAS,CAAC,IAAI,CAAC,UAAU,EAC1D,SAAS,EAAE,SAAS,GACpB,GAC6B,CAClC,CAAC;AACJ,CAAC,CAAC;AAhCW,QAAA,eAAe,mBAgC1B"}
1
+ {"version":3,"file":"users-management.client.js","sourceRoot":"","sources":["../../src/users-management.client.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAA+B;AAC/B,yCAA0C;AAC1C,yCAA0C;AAC1C,2DAAsD;AACtD,6DAIgC;AAChC,6EAGwC;AACxC,yEAGsC;AACtC,yDAAqD;AAMrD,MAAM,YAAY,GAAyB;IACzC,UAAU,EAAE,IAAI;IAChB,IAAI,EAAE,IAAI;IACV,WAAW,EAAE,IAAI;CAClB,CAAC;AAEK,MAAM,eAAe,GAAmC,CAAC,EAC9D,SAAS,GAAG,IAAI,GACjB,EAAE,EAAE;IACH,MAAM,UAAU,GAAG,IAAA,+BAAa,GAAE,CAAC;IACnC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,IAAA,gDAAuB,EAAC,YAAY,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAC3B,GAAG,EAAE,CAAC,CAAC;QACL,SAAS,EACP,OAAO,SAAS,KAAK,QAAQ;YAC3B,CAAC,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC;YAClC,CAAC,CAAC,SAAS;QACf,KAAK;QACL,QAAQ;KACT,CAAC,EACF,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAC7B,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,eAAQ,EAAC,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,IAAA,eAAQ,EAAC,OAAO,CAAC,CAAC;IAErC,IACE,UAAU,CAAC,SAAS;QACpB,UAAU,CAAC,SAAS;QACpB,UAAU,CAAC,SAAS;QACpB,2EAA2E;QAC3E,CAAC,UAAU,EACX,CAAC;QACD,OAAO,uBAAC,yCAAsB,KAAG,CAAC;IACpC,CAAC;IAED,IAAI,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QAC7C,OAAO,CACL,uBAAC,uCAAoB,IAAC,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,OAAO,GAAI,CACxE,CAAC;IACJ,CAAC;IAED,OAAO,CACL,uBAAC,8BAAa,IAAC,iBAAiB,EAAE,uCAAoB,YACpD,uBAAC,yDAA8B,IAAC,KAAK,EAAE,OAAO,YAC5C,uBAAC,kCAA6B,IAC5B,QAAQ,EAAE,UAAU,CAAC,IAAI,EACzB,SAAS,EAAE,UAAU,CAAC,IAAI,EAC1B,SAAS,EAAE,UAAU,CAAC,UAAU,EAChC,kBAAkB,EAAE,UAAU,CAAC,SAAS,IAAI,UAAU,CAAC,UAAU,GACjE,GAC6B,GACnB,CACjB,CAAC;AACJ,CAAC,CAAC;AAhDW,QAAA,eAAe,mBAgD1B"}
@@ -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;AAE7E,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/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;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA+CtD,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;AAE7E,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;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA+CtD,CAAC"}
@@ -29,6 +29,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
29
29
  const themes_1 = require("@radix-ui/themes");
30
30
  const react_query_1 = require("@tanstack/react-query");
31
31
  const React = __importStar(require("react"));
32
+ const utils_1 = require("./lib/utils");
32
33
  const config_1 = require("./lib/api/config");
33
34
  const widgets_context_1 = require("./lib/widgets-context");
34
35
  const queryClient = new react_query_1.QueryClient();
@@ -49,7 +50,7 @@ const WorkOsWidgets = ({ elements = {}, className, theme: { fontFamily, ...radix
49
50
  return `https://${config_1.DEFAULT_API_HOSTNAME}`;
50
51
  }
51
52
  }, [apiHostname, https, port]);
52
- return ((0, jsx_runtime_1.jsx)(react_query_1.QueryClientProvider, { client: queryClient, children: (0, jsx_runtime_1.jsx)(themes_1.Theme, { ...radixThemesProps, style: customStyle, className: className, children: (0, jsx_runtime_1.jsx)(widgets_context_1.WidgetsContext.Provider, { value: { elements, apiBaseUrl }, children: children }) }) }));
53
+ return ((0, jsx_runtime_1.jsx)(react_query_1.QueryClientProvider, { client: queryClient, children: (0, jsx_runtime_1.jsx)(themes_1.Theme, { ...radixThemesProps, style: customStyle, className: (0, utils_1.cx)("root", className), children: (0, jsx_runtime_1.jsx)(widgets_context_1.WidgetsContext.Provider, { value: { elements, apiBaseUrl }, children: children }) }) }));
53
54
  };
54
55
  exports.WorkOsWidgets = WorkOsWidgets;
55
56
  //# 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,uDAAyE;AACzE,6CAA+B;AAC/B,6CAAwD;AAExD,2DAAuD;AAEvD,MAAM,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;AAe/B,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,GACb,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,iCAAmB,IAAC,MAAM,EAAE,WAAW,YACtC,uBAAC,cAAW,OACN,gBAAgB,EACpB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,SAAS,YAEpB,uBAAC,gCAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YACrD,QAAQ,GACe,GACd,GACM,CACvB,CAAC;AACJ,CAAC,CAAC;AA/CW,QAAA,aAAa,iBA+CxB"}
1
+ {"version":3,"file":"workos-widgets.client.js","sourceRoot":"","sources":["../../src/workos-widgets.client.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEb,6CAAwD;AAExD,uDAAyE;AACzE,6CAA+B;AAC/B,uCAAiC;AACjC,6CAAwD;AAExD,2DAAuD;AAEvD,MAAM,WAAW,GAAG,IAAI,yBAAW,EAAE,CAAC;AAe/B,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,GACb,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,iCAAmB,IAAC,MAAM,EAAE,WAAW,YACtC,uBAAC,cAAW,OACN,gBAAgB,EACpB,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,IAAA,UAAE,EAAC,MAAM,EAAE,SAAS,CAAC,YAEhC,uBAAC,gCAAc,CAAC,QAAQ,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,YACrD,QAAQ,GACe,GACd,GACM,CACvB,CAAC;AACJ,CAAC,CAAC;AA/CW,QAAA,aAAa,iBA+CxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/role.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAE3B,MAAM,6BAA6B,CAAC;AAKrC,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,QAAQ,oBAAqB,0BAA0B,yEASnE,CAAC;AAEF,eAAO,MAAM,OAAO,SACZ,MAAM,mBACK,0BAA0B,gEA8B5C,CAAC"}
1
+ {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/role.ts"],"names":[],"mappings":"AACA,OAAO,EACL,0BAA0B,EAE3B,MAAM,6BAA6B,CAAC;AAOrC,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;CAClB;AAID,eAAO,MAAM,QAAQ,oBAAqB,0BAA0B,yEASnE,CAAC;AAEF,eAAO,MAAM,OAAO,SACZ,MAAM,mBACK,0BAA0B,gEA8B5C,CAAC"}
@@ -3,6 +3,8 @@ import { useUsersManagementContext, } from "../users-management-context";
3
3
  import { useWorkOsApiUrl } from "../widgets-context";
4
4
  import { API_ENDPOINTS } from "./config";
5
5
  import { WIDGETS_API_VERSION } from "../constants";
6
+ import { parseErrorResponse } from "../utils";
7
+ import { ApiError, FetchError, NoAuthTokenError } from "../errors";
6
8
  export const useRoles = (initialContext) => {
7
9
  const { authToken } = useUsersManagementContext(initialContext);
8
10
  const baseUrl = useWorkOsApiUrl();
@@ -21,7 +23,7 @@ export const useRole = (slug, initialContext) => {
21
23
  queryKey: ["role", slug],
22
24
  queryFn: () => {
23
25
  if (!authToken) {
24
- throw new Error("No auth token provided");
26
+ throw new NoAuthTokenError();
25
27
  }
26
28
  const getRoleOrFetch = async (attempts = 0) => {
27
29
  if (attempts >= 3) {
@@ -46,37 +48,56 @@ export const useRole = (slug, initialContext) => {
46
48
  */
47
49
  const fetchRoles = async ({ authToken, baseUrl, }) => {
48
50
  if (!authToken) {
49
- throw new Error("No auth token provided");
51
+ throw new NoAuthTokenError();
50
52
  }
51
53
  const url = new URL(`${baseUrl}/${API_ENDPOINTS.USER_ROLES}`);
52
54
  const response = await fetch(url, {
53
55
  cache: "no-store",
54
- headers: getAuthHeaders(authToken),
56
+ headers: getAuthHeaders(await authToken()),
55
57
  }).catch((error) => {
56
- console.error(error);
57
- // TODO: handle fetch errors
58
- throw new Error("Failed to fetch roles");
58
+ throw new FetchError({
59
+ message: "Failed to fetch roles",
60
+ queryType: "query",
61
+ recordType: "users",
62
+ context: { error },
63
+ });
59
64
  });
60
65
  if (!response.ok) {
61
- // TODO: handle this case
62
- throw new Error("Failed to fetch roles");
66
+ const { message, status } = await parseErrorResponse(response);
67
+ throw new ApiError({
68
+ message,
69
+ status,
70
+ queryType: "query",
71
+ recordType: "users",
72
+ });
63
73
  }
64
74
  const data = await response.json();
65
75
  return data;
66
76
  };
67
77
  const fetchRole = async (slug, { authToken, baseUrl, }) => {
78
+ if (!authToken) {
79
+ throw new NoAuthTokenError();
80
+ }
68
81
  const url = new URL(`${baseUrl}/${API_ENDPOINTS.USER_ROLES}/${slug}`);
69
82
  const response = await fetch(url, {
70
83
  cache: "no-store",
71
- headers: getAuthHeaders(authToken),
84
+ headers: getAuthHeaders(await authToken()),
72
85
  }).catch((error) => {
73
- console.error(error);
74
- // TODO: handle fetch errors
75
- throw new Error("Failed to fetch role");
86
+ throw new FetchError({
87
+ message: "Failed to fetch roles",
88
+ queryType: "query",
89
+ recordType: "users",
90
+ context: { error },
91
+ });
76
92
  });
77
93
  if (!response.ok) {
78
- // TODO: handle this case
79
- throw new Error("Failed to fetch role");
94
+ const { message, status } = await parseErrorResponse(response);
95
+ throw new ApiError({
96
+ message,
97
+ status,
98
+ queryType: "query",
99
+ recordType: "users",
100
+ });
80
101
  }
81
102
  return response.json();
82
103
  };
@@ -1 +1 @@
1
- {"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/lib/api/role.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role.js","sourceRoot":"","sources":["../../../../src/lib/api/role.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/user.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,6BAA6B,CAAC;AAMrC,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,mBAAmB,GACnB,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,SAAS,GACT,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,CAAC;AAEnE,KAAK,cAAc,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;AAWxC,eAAO,MAAM,QAAQ,aAAc,0BAA0B,0EA2B5D,CAAC;AAEF,eAAO,MAAM,OAAO,WACV,MAAM,mBACG,0BAA0B,gEAS5C,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAAW;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;QAsNsB,MAAM;aAAW,OAAO;;QA3MrC,MAAM;UACJ;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE;WAQ9B,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,aAAa,UAAW;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,oGAcA,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,yFAcA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW;IACzC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,yFAcA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW;IACzC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,yFAcA,CAAC"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../../../src/lib/api/user.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,0BAA0B,EAChC,MAAM,6BAA6B,CAAC;AAOrC,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,mBAAmB,GACnB,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,SAAS,GACT,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,OAAO,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,CAAC;AAEnE,KAAK,cAAc,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;AAExC,eAAO,MAAM,QAAQ,aAAc,0BAA0B,0EA2B5D,CAAC;AAEF,eAAO,MAAM,OAAO,WACV,MAAM,mBACG,0BAA0B,gEAS5C,CAAC;AAEF,eAAO,MAAM,iBAAiB,UAAW;IACvC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC;QAoPsB,MAAM;aAAW,OAAO;;QAzOrC,MAAM;UACJ;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE;WAQ9B,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAED,eAAO,MAAM,aAAa,UAAW;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,oGAcA,CAAC;AAEF,eAAO,MAAM,aAAa,UAAW;IACnC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,yFAcA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW;IACzC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,yFAcA,CAAC;AAEF,eAAO,MAAM,mBAAmB,UAAW;IACzC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACpC,yFAcA,CAAC"}
@@ -4,14 +4,7 @@ import { parseErrorResponse } from "../utils";
4
4
  import { useWorkOsApiUrl } from "../widgets-context";
5
5
  import { API_ENDPOINTS } from "./config";
6
6
  import { USER_ROW_LIMIT, WIDGETS_API_VERSION } from "../constants";
7
- class InviteUserError extends Error {
8
- status;
9
- constructor(args) {
10
- super(args.message);
11
- this.name = "InviteUserError";
12
- this.status = args.status;
13
- }
14
- }
7
+ import { ApiError, FetchError, NoAuthTokenError } from "../errors";
15
8
  export const useUsers = (context) => {
16
9
  const { authToken, state: { pagination, role, searchQuery }, } = useUsersManagementContext(context);
17
10
  const baseUrl = useWorkOsApiUrl();
@@ -118,7 +111,7 @@ export const useResendUserInvite = (args) => {
118
111
  */
119
112
  async function fetchUsers({ baseUrl, authToken, limit, role, before, after, searchQuery, }) {
120
113
  if (!authToken) {
121
- throw new Error("No auth token provided");
114
+ throw new NoAuthTokenError();
122
115
  }
123
116
  const url = new URL(`${baseUrl}/${API_ENDPOINTS.USERS}`);
124
117
  url.searchParams.set("limit", limit.toString());
@@ -136,15 +129,23 @@ async function fetchUsers({ baseUrl, authToken, limit, role, before, after, sear
136
129
  }
137
130
  const response = await fetch(url, {
138
131
  cache: "no-store",
139
- headers: getAuthHeaders(authToken),
132
+ headers: getAuthHeaders(await authToken()),
140
133
  }).catch((error) => {
141
- console.error(error);
142
- // TODO: handle fetch errors
143
- throw new Error("Failed to fetch users");
134
+ throw new FetchError({
135
+ message: "Failed to fetch users",
136
+ queryType: "query",
137
+ recordType: "users",
138
+ context: { error },
139
+ });
144
140
  });
145
141
  if (!response.ok) {
146
- // TODO: handle this case
147
- throw new Error("Failed to fetch users");
142
+ const { message, status } = await parseErrorResponse(response);
143
+ throw new ApiError({
144
+ message,
145
+ status,
146
+ queryType: "query",
147
+ recordType: "users",
148
+ });
148
149
  }
149
150
  // TODO validate the response
150
151
  const json = await response.json();
@@ -153,19 +154,27 @@ async function fetchUsers({ baseUrl, authToken, limit, role, before, after, sear
153
154
  }
154
155
  const fetchUser = async (userId, { authToken, baseUrl }) => {
155
156
  if (!authToken) {
156
- throw new Error("No auth token provided");
157
+ throw new NoAuthTokenError();
157
158
  }
158
159
  const response = await fetch(`${baseUrl}/${API_ENDPOINTS.USERS}/${userId}`, {
159
- headers: getAuthHeaders(authToken),
160
+ headers: getAuthHeaders(await authToken()),
160
161
  cache: "no-store",
161
162
  }).catch((error) => {
162
- console.error(error);
163
- // TODO: handle fetch errors
164
- throw new Error("Failed to fetch user");
163
+ throw new FetchError({
164
+ message: "Failed to fetch user",
165
+ queryType: "query",
166
+ recordType: "users",
167
+ context: { error },
168
+ });
165
169
  });
166
170
  if (!response.ok) {
167
- // TODO: handle this case
168
- throw new Error("Failed to fetch user");
171
+ const { message, status } = await parseErrorResponse(response);
172
+ throw new ApiError({
173
+ message,
174
+ status,
175
+ queryType: "query",
176
+ recordType: "users",
177
+ });
169
178
  }
170
179
  // TODO validate the response
171
180
  const json = await response.json();
@@ -173,56 +182,65 @@ const fetchUser = async (userId, { authToken, baseUrl }) => {
173
182
  };
174
183
  const updateUserRole = async (userId, { authToken, baseUrl, data, }) => {
175
184
  if (!authToken) {
176
- // TODO handle this case
177
- throw new Error("No auth token");
185
+ throw new NoAuthTokenError();
178
186
  }
179
187
  const response = await fetch(`${baseUrl}/${API_ENDPOINTS.USERS}/${userId}`, {
180
188
  method: "POST",
181
189
  headers: {
182
190
  "Content-Type": "application/json",
183
- ...getAuthHeaders(authToken),
191
+ ...getAuthHeaders(await authToken()),
184
192
  },
185
193
  body: JSON.stringify(data),
186
194
  }).catch((error) => {
187
- console.error(error);
188
- // TODO: handle fetch errors
189
- throw new Error("Failed to update user");
195
+ throw new FetchError({
196
+ message: "Failed to update user",
197
+ queryType: "mutation",
198
+ recordType: "users",
199
+ context: { error },
200
+ });
190
201
  });
191
202
  if (!response.ok) {
192
- throw new Error("Failed to update user");
203
+ const { message, status } = await parseErrorResponse(response);
204
+ throw new ApiError({
205
+ message,
206
+ status,
207
+ queryType: "mutation",
208
+ recordType: "users",
209
+ });
193
210
  }
194
211
  // TODO validate the response
195
212
  const json = await response.json();
196
213
  return json;
197
214
  };
198
- const inviteUser = async ({ authToken, baseUrl, ...data }) => {
215
+ const inviteUser = async ({ authToken, baseUrl, email, role, }) => {
199
216
  if (!authToken) {
200
- // TODO handle this case
201
- throw new Error("No auth token");
202
- }
203
- if (!data.role) {
204
- throw new Error("Role required to invite user");
217
+ throw new NoAuthTokenError();
205
218
  }
206
219
  const response = await fetch(`${baseUrl}/${API_ENDPOINTS.USER_INVITE}`, {
207
220
  method: "POST",
208
221
  headers: {
209
222
  "Content-Type": "application/json",
210
- ...getAuthHeaders(authToken),
223
+ ...getAuthHeaders(await authToken()),
211
224
  },
212
225
  body: JSON.stringify({
213
- email: data.email,
214
- roles: [data.role],
226
+ email,
227
+ roles: [role],
215
228
  }),
216
229
  }).catch((error) => {
217
- console.error(error);
218
- // TODO: handle fetch errors
219
- throw new Error("Failed to invite user");
230
+ throw new FetchError({
231
+ message: "Failed to invite user",
232
+ queryType: "mutation",
233
+ recordType: "users",
234
+ context: { error },
235
+ });
220
236
  });
221
237
  if (!response.ok) {
222
238
  const { message, status } = await parseErrorResponse(response);
223
- throw new InviteUserError({
239
+ throw new ApiError({
224
240
  message,
225
241
  status,
242
+ queryType: "mutation",
243
+ recordType: "users",
226
244
  });
227
245
  }
228
246
  // TODO validate the response
@@ -231,21 +249,27 @@ const inviteUser = async ({ authToken, baseUrl, ...data }) => {
231
249
  };
232
250
  const deleteUser = async (userId, { authToken, baseUrl }) => {
233
251
  if (!authToken) {
234
- // TODO handle this case
235
- throw new Error("No auth token");
252
+ throw new NoAuthTokenError();
236
253
  }
237
254
  const response = await fetch(`${baseUrl}/${API_ENDPOINTS.USERS}/${userId}`, {
238
255
  method: "DELETE",
239
- headers: getAuthHeaders(authToken),
256
+ headers: getAuthHeaders(await authToken()),
240
257
  }).catch((error) => {
241
- console.error(error);
242
- // TODO: handle fetch errors
243
- throw new Error("Failed to delete user. Please try again.");
258
+ throw new FetchError({
259
+ message: "Failed to delete user. Please try again.",
260
+ queryType: "mutation",
261
+ recordType: "users",
262
+ context: { error },
263
+ });
244
264
  });
245
265
  if (!response.ok) {
246
- console.error(response);
247
- // TODO: handle server errors
248
- throw new Error("Failed to delete user. Please try again.");
266
+ const { message, status } = await parseErrorResponse(response);
267
+ throw new ApiError({
268
+ message,
269
+ status,
270
+ queryType: "mutation",
271
+ recordType: "users",
272
+ });
249
273
  }
250
274
  // TODO validate the response
251
275
  const json = await response.json();
@@ -253,20 +277,27 @@ const deleteUser = async (userId, { authToken, baseUrl }) => {
253
277
  };
254
278
  const revokeUserInvite = async (userId, { authToken, baseUrl }) => {
255
279
  if (!authToken) {
256
- // TODO handle this case
257
- throw new Error("No auth token");
280
+ throw new NoAuthTokenError();
258
281
  }
259
282
  const response = await fetch(`${baseUrl}/${API_ENDPOINTS.USER_INVITES}/${userId}`, {
260
283
  method: "DELETE",
261
- headers: getAuthHeaders(authToken),
284
+ headers: getAuthHeaders(await authToken()),
262
285
  }).catch((error) => {
263
- console.error(error);
264
- // TODO: handle fetch errors
265
- throw new Error("Failed to resend user invite. Please try again.");
286
+ throw new FetchError({
287
+ message: "Failed to resend user invite. Please try again.",
288
+ queryType: "mutation",
289
+ recordType: "users",
290
+ context: { error },
291
+ });
266
292
  });
267
293
  if (!response.ok) {
268
- // TODO: handle server errors
269
- throw new Error("Failed to resend user invite. Please try again.");
294
+ const { message, status } = await parseErrorResponse(response);
295
+ throw new ApiError({
296
+ message,
297
+ status,
298
+ queryType: "mutation",
299
+ recordType: "users",
300
+ });
270
301
  }
271
302
  // TODO validate the response
272
303
  const json = await response.json();
@@ -274,20 +305,27 @@ const revokeUserInvite = async (userId, { authToken, baseUrl }) => {
274
305
  };
275
306
  const resendUserInvite = async (userId, { authToken, baseUrl }) => {
276
307
  if (!authToken) {
277
- // TODO handle this case
278
- throw new Error("No auth token");
308
+ throw new NoAuthTokenError();
279
309
  }
280
310
  const response = await fetch(`${baseUrl}/${API_ENDPOINTS.USER_INVITES_RESEND(userId)}`, {
281
311
  method: "POST",
282
- headers: getAuthHeaders(authToken),
312
+ headers: getAuthHeaders(await authToken()),
283
313
  }).catch((error) => {
284
- console.error(error);
285
- // TODO: handle fetch errors
286
- throw new Error("Failed to resend user invite. Please try again.");
314
+ throw new FetchError({
315
+ message: "Failed to resend user invite. Please try again.",
316
+ queryType: "mutation",
317
+ recordType: "users",
318
+ context: { error },
319
+ });
287
320
  });
288
321
  if (!response.ok) {
289
- // TODO: handle server errors
290
- throw new Error("Failed to resend user invite. Please try again.");
322
+ const { message, status } = await parseErrorResponse(response);
323
+ throw new ApiError({
324
+ message,
325
+ status,
326
+ queryType: "mutation",
327
+ recordType: "users",
328
+ });
291
329
  }
292
330
  // TODO validate the response
293
331
  const json = await response.json();