hazo_auth 7.0.2 → 9.0.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 (145) hide show
  1. package/README.md +34 -0
  2. package/SETUP_CHECKLIST.md +31 -0
  3. package/cli-src/lib/AGENTS.md +26 -0
  4. package/cli-src/lib/app_logger.ts +3 -7
  5. package/cli-src/lib/auth/auth_types.ts +3 -0
  6. package/cli-src/lib/auth/auth_utils.server.ts +2 -1
  7. package/cli-src/lib/auth/ensure_anon_id.server.ts +2 -1
  8. package/cli-src/lib/auth/hazo_get_auth.server.ts +30 -4
  9. package/cli-src/lib/config/hazo_auth_core_config.ts +44 -0
  10. package/cli-src/lib/cookies_config.server.ts +13 -10
  11. package/cli-src/lib/hazo_connect_setup.server.ts +19 -11
  12. package/cli-src/lib/legal/legal_docs_config.server.ts +61 -0
  13. package/cli-src/lib/legal/legal_docs_reader.server.ts +36 -0
  14. package/cli-src/lib/legal/legal_docs_service.ts +197 -0
  15. package/cli-src/lib/legal/legal_docs_types.ts +31 -0
  16. package/cli-src/lib/services/email_service.ts +22 -11
  17. package/cli-src/lib/services/firm_service.ts +2 -1
  18. package/cli-src/lib/services/otp_service.ts +3 -2
  19. package/cli-src/lib/services/profile_picture_service.ts +2 -1
  20. package/cli-src/lib/services/registration_service.ts +16 -1
  21. package/cli-src/lib/services/relationship_service.ts +5 -4
  22. package/cli-src/lib/services/session_token_service.ts +3 -2
  23. package/cli-src/lib/utils/api_route_helpers.ts +4 -59
  24. package/cli-src/lib/utils/get_origin_url.ts +5 -61
  25. package/cli-src/lib/utils.ts +4 -10
  26. package/config/hazo_auth_config.example.ini +6 -0
  27. package/dist/client.d.ts +1 -0
  28. package/dist/client.d.ts.map +1 -1
  29. package/dist/client.js +3 -0
  30. package/dist/components/layouts/index.d.ts +1 -0
  31. package/dist/components/layouts/index.d.ts.map +1 -1
  32. package/dist/components/layouts/index.js +2 -0
  33. package/dist/components/layouts/legal/index.d.ts +5 -0
  34. package/dist/components/layouts/legal/index.d.ts.map +1 -0
  35. package/dist/components/layouts/legal/index.js +4 -0
  36. package/dist/components/layouts/legal/legal_acceptance_gate.d.ts +7 -0
  37. package/dist/components/layouts/legal/legal_acceptance_gate.d.ts.map +1 -0
  38. package/dist/components/layouts/legal/legal_acceptance_gate.js +84 -0
  39. package/dist/components/layouts/legal/legal_doc_checkbox_list.d.ts +9 -0
  40. package/dist/components/layouts/legal/legal_doc_checkbox_list.d.ts.map +1 -0
  41. package/dist/components/layouts/legal/legal_doc_checkbox_list.js +11 -0
  42. package/dist/components/layouts/legal/legal_doc_combined_view.d.ts +9 -0
  43. package/dist/components/layouts/legal/legal_doc_combined_view.d.ts.map +1 -0
  44. package/dist/components/layouts/legal/legal_doc_combined_view.js +11 -0
  45. package/dist/components/layouts/legal/legal_doc_drawer.d.ts +8 -0
  46. package/dist/components/layouts/legal/legal_doc_drawer.d.ts.map +1 -0
  47. package/dist/components/layouts/legal/legal_doc_drawer.js +55 -0
  48. package/dist/components/layouts/register/hooks/use_register_form.d.ts +5 -1
  49. package/dist/components/layouts/register/hooks/use_register_form.d.ts.map +1 -1
  50. package/dist/components/layouts/register/hooks/use_register_form.js +25 -10
  51. package/dist/components/layouts/register/index.d.ts.map +1 -1
  52. package/dist/components/layouts/register/index.js +21 -1
  53. package/dist/components/layouts/user_management/index.d.ts.map +1 -1
  54. package/dist/components/layouts/user_management/index.js +45 -7
  55. package/dist/components/ui/input-otp.d.ts +2 -2
  56. package/dist/index.d.ts +1 -0
  57. package/dist/index.d.ts.map +1 -1
  58. package/dist/lib/app_logger.d.ts +2 -3
  59. package/dist/lib/app_logger.d.ts.map +1 -1
  60. package/dist/lib/app_logger.js +3 -5
  61. package/dist/lib/auth/auth_types.d.ts +2 -0
  62. package/dist/lib/auth/auth_types.d.ts.map +1 -1
  63. package/dist/lib/auth/auth_types.js +0 -2
  64. package/dist/lib/auth/auth_utils.server.d.ts.map +1 -1
  65. package/dist/lib/auth/auth_utils.server.js +2 -1
  66. package/dist/lib/auth/ensure_anon_id.server.d.ts.map +1 -1
  67. package/dist/lib/auth/ensure_anon_id.server.js +2 -1
  68. package/dist/lib/auth/hazo_get_auth.server.d.ts.map +1 -1
  69. package/dist/lib/auth/hazo_get_auth.server.js +30 -4
  70. package/dist/lib/config/hazo_auth_core_config.d.ts +44 -0
  71. package/dist/lib/config/hazo_auth_core_config.d.ts.map +1 -0
  72. package/dist/lib/config/hazo_auth_core_config.js +40 -0
  73. package/dist/lib/cookies_config.server.d.ts.map +1 -1
  74. package/dist/lib/cookies_config.server.js +12 -7
  75. package/dist/lib/hazo_connect_setup.server.d.ts.map +1 -1
  76. package/dist/lib/hazo_connect_setup.server.js +18 -5
  77. package/dist/lib/legal/legal_docs_config.server.d.ts +22 -0
  78. package/dist/lib/legal/legal_docs_config.server.d.ts.map +1 -0
  79. package/dist/lib/legal/legal_docs_config.server.js +52 -0
  80. package/dist/lib/legal/legal_docs_reader.server.d.ts +15 -0
  81. package/dist/lib/legal/legal_docs_reader.server.d.ts.map +1 -0
  82. package/dist/lib/legal/legal_docs_reader.server.js +24 -0
  83. package/dist/lib/legal/legal_docs_service.d.ts +49 -0
  84. package/dist/lib/legal/legal_docs_service.d.ts.map +1 -0
  85. package/dist/lib/legal/legal_docs_service.js +141 -0
  86. package/dist/lib/legal/legal_docs_types.d.ts +25 -0
  87. package/dist/lib/legal/legal_docs_types.d.ts.map +1 -0
  88. package/dist/lib/legal/legal_docs_types.js +2 -0
  89. package/dist/lib/services/email_service.d.ts +1 -1
  90. package/dist/lib/services/email_service.d.ts.map +1 -1
  91. package/dist/lib/services/email_service.js +21 -9
  92. package/dist/lib/services/firm_service.d.ts.map +1 -1
  93. package/dist/lib/services/firm_service.js +2 -1
  94. package/dist/lib/services/otp_service.d.ts.map +1 -1
  95. package/dist/lib/services/otp_service.js +3 -2
  96. package/dist/lib/services/profile_picture_service.d.ts.map +1 -1
  97. package/dist/lib/services/profile_picture_service.js +2 -1
  98. package/dist/lib/services/registration_service.d.ts +5 -0
  99. package/dist/lib/services/registration_service.d.ts.map +1 -1
  100. package/dist/lib/services/registration_service.js +6 -0
  101. package/dist/lib/services/relationship_service.d.ts.map +1 -1
  102. package/dist/lib/services/relationship_service.js +5 -4
  103. package/dist/lib/services/session_token_service.d.ts.map +1 -1
  104. package/dist/lib/services/session_token_service.js +3 -2
  105. package/dist/lib/utils/api_route_helpers.d.ts +1 -12
  106. package/dist/lib/utils/api_route_helpers.d.ts.map +1 -1
  107. package/dist/lib/utils/api_route_helpers.js +4 -57
  108. package/dist/lib/utils/get_origin_url.d.ts +1 -22
  109. package/dist/lib/utils/get_origin_url.d.ts.map +1 -1
  110. package/dist/lib/utils/get_origin_url.js +5 -57
  111. package/dist/lib/utils.d.ts +2 -3
  112. package/dist/lib/utils.d.ts.map +1 -1
  113. package/dist/lib/utils.js +4 -9
  114. package/dist/page_components/index.d.ts +0 -5
  115. package/dist/page_components/index.d.ts.map +1 -1
  116. package/dist/page_components/index.js +0 -5
  117. package/dist/server/config/config_loader.js +2 -2
  118. package/dist/server/index.js +1 -1
  119. package/dist/server/routes/index.d.ts +3 -0
  120. package/dist/server/routes/index.d.ts.map +1 -1
  121. package/dist/server/routes/index.js +4 -0
  122. package/dist/server/routes/legal_docs_accept.d.ts +3 -0
  123. package/dist/server/routes/legal_docs_accept.d.ts.map +1 -0
  124. package/dist/server/routes/legal_docs_accept.js +43 -0
  125. package/dist/server/routes/legal_docs_get.d.ts +3 -0
  126. package/dist/server/routes/legal_docs_get.d.ts.map +1 -0
  127. package/dist/server/routes/legal_docs_get.js +49 -0
  128. package/dist/server/routes/legal_docs_publish.d.ts +3 -0
  129. package/dist/server/routes/legal_docs_publish.d.ts.map +1 -0
  130. package/dist/server/routes/legal_docs_publish.js +35 -0
  131. package/dist/server/routes/register.d.ts.map +1 -1
  132. package/dist/server/routes/register.js +26 -0
  133. package/dist/server/routes/remove_profile_picture.d.ts.map +1 -1
  134. package/dist/server/routes/remove_profile_picture.js +6 -1
  135. package/dist/server/routes/upload_profile_picture.d.ts.map +1 -1
  136. package/dist/server/routes/upload_profile_picture.js +6 -1
  137. package/dist/server/routes/user_management_users.d.ts +2 -2
  138. package/dist/server/routes/user_management_users.d.ts.map +1 -1
  139. package/dist/server/routes/user_management_users.js +46 -2
  140. package/dist/server/server.d.ts.map +1 -1
  141. package/dist/server/server.js +7 -0
  142. package/dist/strings.d.ts +2 -0
  143. package/dist/strings.d.ts.map +1 -0
  144. package/dist/strings.js +3 -0
  145. package/package.json +33 -35
@@ -0,0 +1,2 @@
1
+ export * from "./strings/index.js";
2
+ //# sourceMappingURL=strings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../src/strings.ts"],"names":[],"mappings":"AAEA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1,3 @@
1
+ // Barrel — gives ESM consumers a flat `../strings.js` import path
2
+ // that resolves correctly at runtime (the directory `strings/` does not).
3
+ export * from "./strings/index.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hazo_auth",
3
- "version": "7.0.2",
3
+ "version": "9.0.0",
4
4
  "description": "Zero-config authentication UI components for Next.js with RBAC, OAuth, scope-based multi-tenancy, and invitations",
5
5
  "keywords": [
6
6
  "authentication",
@@ -157,26 +157,6 @@
157
157
  "types": "./dist/page_components/index.d.ts",
158
158
  "import": "./dist/page_components/index.js"
159
159
  },
160
- "./page_components/login": {
161
- "types": "./dist/page_components/login.d.ts",
162
- "import": "./dist/page_components/login.js"
163
- },
164
- "./page_components/register": {
165
- "types": "./dist/page_components/register.d.ts",
166
- "import": "./dist/page_components/register.js"
167
- },
168
- "./page_components/forgot_password": {
169
- "types": "./dist/page_components/forgot_password.d.ts",
170
- "import": "./dist/page_components/forgot_password.js"
171
- },
172
- "./page_components/reset_password": {
173
- "types": "./dist/page_components/reset_password.d.ts",
174
- "import": "./dist/page_components/reset_password.js"
175
- },
176
- "./page_components/verify_email": {
177
- "types": "./dist/page_components/verify_email.d.ts",
178
- "import": "./dist/page_components/verify_email.js"
179
- },
180
160
  "./page_components/dev_lock": {
181
161
  "types": "./dist/page_components/dev_lock.d.ts",
182
162
  "import": "./dist/page_components/dev_lock.js"
@@ -198,6 +178,8 @@
198
178
  "!dist/components/layouts/rbac_test/**/*",
199
179
  "!dist/components/layouts/auto_test/**/*",
200
180
  "!dist/components/layouts/test_scenarios/**/*",
181
+ "!dist/components/layouts/legal_docs_test/**/*",
182
+ "!dist/components/layouts/legal_register_test/**/*",
201
183
  "!dist/lib/auto_test/**/*",
202
184
  "bin/**/*",
203
185
  "cli-src/**/*",
@@ -224,8 +206,8 @@
224
206
  "dev:server": "tsx src/server/index.ts",
225
207
  "migrate": "tsx scripts/apply_migration.ts",
226
208
  "init-users": "tsx scripts/init_users.ts init_users",
227
- "test": "cross-env NODE_ENV=test POSTGREST_URL=http://209.38.26.241:4402 POSTGREST_API_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYXBpX3VzZXIifQ.zBoUGymrxTUk1DNYIGUCtQU4HFaWEHlbE9_8Y3hUaTw jest --runInBand",
228
- "test:watch": "cross-env NODE_ENV=test POSTGREST_URL=http://209.38.26.241:4402 POSTGREST_API_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJyb2xlIjoiYXBpX3VzZXIifQ.zBoUGymrxTUk1DNYIGUCtQU4HFaWEHlbE9_8Y3hUaTw jest --watch"
209
+ "test": "cross-env NODE_ENV=test jest --runInBand",
210
+ "test:watch": "cross-env NODE_ENV=test jest --watch"
229
211
  },
230
212
  "dependencies": {
231
213
  "axios": "^1.13.2",
@@ -238,6 +220,7 @@
238
220
  "jose": "^5.9.6",
239
221
  "jsonwebtoken": "^9.0.2",
240
222
  "mime-types": "^3.0.1",
223
+ "react-markdown": "^10.1.0",
241
224
  "server-only": "^0.0.1",
242
225
  "tailwind-merge": "^3.5.0",
243
226
  "tw-animate-css": "^1.4.0",
@@ -269,13 +252,16 @@
269
252
  "@radix-ui/react-switch": "^1.2.0",
270
253
  "@radix-ui/react-tabs": "^1.1.0",
271
254
  "@radix-ui/react-tooltip": "^1.2.0",
272
- "hazo_config": "^2.1.0",
273
- "hazo_connect": "^2.4.0",
274
- "hazo_logs": "^1.0.13",
275
- "hazo_notify": "^3.0.0",
276
- "hazo_ui": "^2.17.0",
255
+ "hazo_api": "^2.1.0",
256
+ "hazo_config": "^2.1.5",
257
+ "hazo_connect": "^3.0.0",
258
+ "hazo_core": "^1.0.0",
259
+ "hazo_logs": "^2.0.0",
260
+ "hazo_notify": "^6.0.0",
261
+ "hazo_ui": "^3.1.0",
262
+ "input-otp": "^1.4.0",
277
263
  "lucide-react": "^0.553.0",
278
- "next": ">=14.0.0",
264
+ "next": "^14.0.0",
279
265
  "next-auth": "^4.24.0",
280
266
  "next-themes": "^0.4.0",
281
267
  "react": "^18.0.0 || ^19.0.0",
@@ -283,12 +269,18 @@
283
269
  "sonner": "^2.0.7"
284
270
  },
285
271
  "peerDependenciesMeta": {
272
+ "hazo_api": {
273
+ "optional": true
274
+ },
286
275
  "hazo_config": {
287
276
  "optional": false
288
277
  },
289
278
  "hazo_connect": {
290
279
  "optional": false
291
280
  },
281
+ "hazo_core": {
282
+ "optional": false
283
+ },
292
284
  "hazo_logs": {
293
285
  "optional": false
294
286
  },
@@ -348,6 +340,9 @@
348
340
  },
349
341
  "lucide-react": {
350
342
  "optional": true
343
+ },
344
+ "input-otp": {
345
+ "optional": true
351
346
  }
352
347
  },
353
348
  "devDependencies": {
@@ -371,6 +366,7 @@
371
366
  "@storybook/addon-onboarding": "^10.0.6",
372
367
  "@storybook/addon-vitest": "^10.0.6",
373
368
  "@storybook/nextjs": "^10.0.6",
369
+ "@tailwindcss/postcss": "^4.2.4",
374
370
  "@testing-library/dom": "^10.4.1",
375
371
  "@testing-library/jest-dom": "^6.6.3",
376
372
  "@testing-library/react": "^16.0.1",
@@ -392,12 +388,14 @@
392
388
  "eslint": "^9.39.1",
393
389
  "eslint-config-next": "^16.0.4",
394
390
  "eslint-plugin-storybook": "^10.0.6",
395
- "@tailwindcss/postcss": "^4.2.4",
396
- "hazo_config": "^2.1.0",
397
- "hazo_connect": "^2.4.0",
398
- "hazo_logs": "^1.0.13",
399
- "hazo_notify": "^3.0.0",
400
- "hazo_ui": "^2.17.0",
391
+ "hazo_api": "^2.1.0",
392
+ "hazo_config": "^2.1.6",
393
+ "hazo_connect": "^3.0.0",
394
+ "hazo_core": "^1.0.0",
395
+ "hazo_logs": "^2.0.1",
396
+ "hazo_notify": "^6.0.0",
397
+ "hazo_ui": "^3.1.0",
398
+ "input-otp": "^1.4.0",
401
399
  "jest": "^30.2.0",
402
400
  "jest-environment-jsdom": "^30.0.0",
403
401
  "lucide-react": "^0.553.0",