@bitbaum/accountkit 0.0.0-stage → 0.8.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 (84) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +214 -2
  3. package/dist/AccountMenu.d.ts +76 -0
  4. package/dist/AccountMenu.d.ts.map +1 -0
  5. package/dist/AccountMenu.js +156 -0
  6. package/dist/AccountMenu.js.map +1 -0
  7. package/dist/SignInError.d.ts +50 -0
  8. package/dist/SignInError.d.ts.map +1 -0
  9. package/dist/SignInError.js +34 -0
  10. package/dist/SignInError.js.map +1 -0
  11. package/dist/auth/client.d.ts +19 -0
  12. package/dist/auth/client.d.ts.map +1 -0
  13. package/dist/auth/client.js +17 -0
  14. package/dist/auth/client.js.map +1 -0
  15. package/dist/auth/factor.d.ts +9 -0
  16. package/dist/auth/factor.d.ts.map +1 -0
  17. package/dist/auth/factor.js +107 -0
  18. package/dist/auth/factor.js.map +1 -0
  19. package/dist/auth/index.d.ts +6 -0
  20. package/dist/auth/index.d.ts.map +1 -0
  21. package/dist/auth/index.js +6 -0
  22. package/dist/auth/index.js.map +1 -0
  23. package/dist/auth/labels.d.ts +126 -0
  24. package/dist/auth/labels.d.ts.map +1 -0
  25. package/dist/auth/labels.js +143 -0
  26. package/dist/auth/labels.js.map +1 -0
  27. package/dist/auth/limits.d.ts +28 -0
  28. package/dist/auth/limits.d.ts.map +1 -0
  29. package/dist/auth/limits.js +90 -0
  30. package/dist/auth/limits.js.map +1 -0
  31. package/dist/auth/mail.d.ts +10 -0
  32. package/dist/auth/mail.d.ts.map +1 -0
  33. package/dist/auth/mail.js +45 -0
  34. package/dist/auth/mail.js.map +1 -0
  35. package/dist/auth/methods.d.ts +71 -0
  36. package/dist/auth/methods.d.ts.map +1 -0
  37. package/dist/auth/methods.js +92 -0
  38. package/dist/auth/methods.js.map +1 -0
  39. package/dist/auth/next.d.ts +73 -0
  40. package/dist/auth/next.d.ts.map +1 -0
  41. package/dist/auth/next.js +131 -0
  42. package/dist/auth/next.js.map +1 -0
  43. package/dist/auth/react.d.ts +178 -0
  44. package/dist/auth/react.d.ts.map +1 -0
  45. package/dist/auth/react.js +405 -0
  46. package/dist/auth/react.js.map +1 -0
  47. package/dist/auth/recovery.d.ts +17 -0
  48. package/dist/auth/recovery.d.ts.map +1 -0
  49. package/dist/auth/recovery.js +85 -0
  50. package/dist/auth/recovery.js.map +1 -0
  51. package/dist/auth/roles.d.ts +19 -0
  52. package/dist/auth/roles.d.ts.map +1 -0
  53. package/dist/auth/roles.js +29 -0
  54. package/dist/auth/roles.js.map +1 -0
  55. package/dist/auth/schema.d.ts +1923 -0
  56. package/dist/auth/schema.d.ts.map +1 -0
  57. package/dist/auth/schema.js +120 -0
  58. package/dist/auth/schema.js.map +1 -0
  59. package/dist/auth/server.d.ts +56 -0
  60. package/dist/auth/server.d.ts.map +1 -0
  61. package/dist/auth/server.js +230 -0
  62. package/dist/auth/server.js.map +1 -0
  63. package/dist/auth/translations.d.ts +9 -0
  64. package/dist/auth/translations.d.ts.map +1 -0
  65. package/dist/auth/translations.js +629 -0
  66. package/dist/auth/translations.js.map +1 -0
  67. package/dist/identity.d.ts +50 -0
  68. package/dist/identity.d.ts.map +1 -0
  69. package/dist/identity.js +76 -0
  70. package/dist/identity.js.map +1 -0
  71. package/dist/index.d.ts +4 -0
  72. package/dist/index.d.ts.map +1 -0
  73. package/dist/index.js +4 -0
  74. package/dist/index.js.map +1 -0
  75. package/dist/orangecat.d.ts +333 -0
  76. package/dist/orangecat.d.ts.map +1 -0
  77. package/dist/orangecat.js +508 -0
  78. package/dist/orangecat.js.map +1 -0
  79. package/dist/paths.d.ts +3 -0
  80. package/dist/paths.d.ts.map +1 -0
  81. package/dist/paths.js +11 -0
  82. package/dist/paths.js.map +1 -0
  83. package/package.json +145 -4
  84. package/styles.css +408 -0
@@ -0,0 +1,29 @@
1
+ /**
2
+ * What a person is to this product. One account, one role, held in the app's
3
+ * own `users` table — customers, the people who help them, professionals,
4
+ * staff and admins all sign in the same way (fleet STACK.md, "Identity").
5
+ *
6
+ * Adding a role is one line here. A role is never chosen by the person it
7
+ * describes: sign-up ignores it, and only `pnpm run role:grant` changes it.
8
+ */
9
+ export const ROLES = [
10
+ "customer",
11
+ "helper",
12
+ "professional",
13
+ "staff",
14
+ "admin",
15
+ ];
16
+ export const DEFAULT_ROLE = "customer";
17
+ export function isRole(value) {
18
+ return (typeof value === "string" && ROLES.includes(value));
19
+ }
20
+ /** Roles that may see other people's records. Everyone else sees only their own. */
21
+ const STAFF = ["staff", "admin"];
22
+ export function isStaff(role) {
23
+ return isRole(role) && STAFF.includes(role);
24
+ }
25
+ /** Only an admin may change roles, and nobody may change their own. */
26
+ export function mayGrantRole(actor, targetId) {
27
+ return actor.role === "admin" && actor.id !== targetId;
28
+ }
29
+ //# sourceMappingURL=roles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"roles.js","sourceRoot":"","sources":["../../src/auth/roles.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,UAAU;IACV,QAAQ;IACR,cAAc;IACd,OAAO;IACP,OAAO;CACC,CAAC;AAGX,MAAM,CAAC,MAAM,YAAY,GAAS,UAAU,CAAC;AAE7C,MAAM,UAAU,MAAM,CAAC,KAAc;IACnC,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ,IAAK,KAA2B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAC1E,CAAC;AACJ,CAAC;AAED,oFAAoF;AACpF,MAAM,KAAK,GAAoB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAElD,MAAM,UAAU,OAAO,CAAC,IAAa;IACnC,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,YAAY,CAC1B,KAAoC,EACpC,QAAgB;IAEhB,OAAO,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC;AACzD,CAAC"}