hazo_auth 0.1.0 → 0.3.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 (194) hide show
  1. package/hazo_auth_config.example.ini +36 -0
  2. package/package.json +3 -1
  3. package/public/profile_pictures/library/Cars/001 - bugatti.jpeg +0 -0
  4. package/public/profile_pictures/library/Cars/002 - lamborgini.jpeg +0 -0
  5. package/public/profile_pictures/library/Cars/004 - chevrolet_silverado.jpeg +0 -0
  6. package/public/profile_pictures/library/Cars/007 - tesla_model_3.jpeg +0 -0
  7. package/public/profile_pictures/library/Cars/012 - subaru_outback.jpeg +0 -0
  8. package/public/profile_pictures/library/Cars/014 - ford_explorer.jpeg +0 -0
  9. package/public/profile_pictures/library/Cars/016 - gmc_sierra.jpeg +0 -0
  10. package/public/profile_pictures/library/Cars/021 - audi_a4.jpeg +0 -0
  11. package/public/profile_pictures/library/Cars/024 - audi_a6.jpeg +0 -0
  12. package/public/profile_pictures/library/Cars/025 - mercedes_benz_e_class.jpeg +0 -0
  13. package/public/profile_pictures/library/Cars/027 - porsche_911.jpeg +0 -0
  14. package/public/profile_pictures/library/Cars/031 - opel_corsa.jpeg +0 -0
  15. package/public/profile_pictures/library/Cars/036 - nissan_qashqai.jpeg +0 -0
  16. package/public/profile_pictures/library/Cars/037 - mini_hatch.jpeg +0 -0
  17. package/public/profile_pictures/library/Cars/040 - land_rover_range_rover_evoque.jpeg +0 -0
  18. package/public/profile_pictures/library/Cars/042 - land_rover_defender.jpeg +0 -0
  19. package/public/profile_pictures/library/Cars/050 - citroe/314/210n_c3.jpeg +0 -0
  20. package/public/profile_pictures/library/Cars/051 - renault_captur.jpeg +0 -0
  21. package/public/profile_pictures/library/Cars/059 - fiat_500.jpeg +0 -0
  22. package/public/profile_pictures/library/Cars/060 - lancia_ypsilon.jpeg +0 -0
  23. package/public/profile_pictures/library/Cars/062 - maserati_ghibli.jpeg +0 -0
  24. package/public/profile_pictures/library/Cars/063 - ferrari_488.jpeg +0 -0
  25. package/public/profile_pictures/library/Cars/064 - lamborghini_huraca/314/201n.jpeg +0 -0
  26. package/public/profile_pictures/library/Cars/065 - ferrari_sf90.jpeg +0 -0
  27. package/public/profile_pictures/library/Cars/066 - fiat_tipo.jpeg +0 -0
  28. package/public/profile_pictures/library/Cars/071 - seat_ateca.jpeg +0 -0
  29. package/public/profile_pictures/library/Cars/075 - hyundai_kona.jpeg +0 -0
  30. package/public/profile_pictures/library/Cars/078 - tesla_model_y.jpeg +0 -0
  31. package/public/profile_pictures/library/Cars/081 - bmw_i3.jpeg +0 -0
  32. package/public/profile_pictures/library/Cars/084 - fiat_500e.jpeg +0 -0
  33. package/public/profile_pictures/library/Cars/087 - polestar_2.jpeg +0 -0
  34. package/public/profile_pictures/library/Cars/088 - toyota_corolla.jpeg +0 -0
  35. package/public/profile_pictures/library/Cars/090 - bmw_x5.jpeg +0 -0
  36. package/public/profile_pictures/library/Cars/091 - ford_mustang.jpeg +0 -0
  37. package/public/profile_pictures/library/Cars/093 - audi_tt.jpeg +0 -0
  38. package/public/profile_pictures/library/Cars/094 - mercedes_benz_s_class.jpeg +0 -0
  39. package/public/profile_pictures/library/Cars/095 - volvo_xc60.jpeg +0 -0
  40. package/public/profile_pictures/library/Cars/097 - peugeot_5008.jpeg +0 -0
  41. package/public/profile_pictures/library/Cars/099 - citroe/314/210n_2cv_(classic).jpeg +0 -0
  42. package/public/profile_pictures/library/Cars/100 - vw_beetle_(classic).jpeg +0 -0
  43. package/public/profile_pictures/library/Cars/101 - range_rover_sport.jpeg +0 -0
  44. package/public/profile_pictures/library/Cars/104 - audi_a8.jpeg +0 -0
  45. package/public/profile_pictures/library/Cars/106 - mercedes_benz_g_class.jpeg +0 -0
  46. package/public/profile_pictures/library/Cars/110 - bmw_i7.jpeg +0 -0
  47. package/public/profile_pictures/library/Cars/111 - audi_e_tron_gt.jpeg +0 -0
  48. package/public/profile_pictures/library/Cars/112 - rolls_royce_phantom.jpeg +0 -0
  49. package/public/profile_pictures/library/Cars/113 - bentley_continental_gt.jpeg +0 -0
  50. package/public/profile_pictures/library/Cars/115 - aston_martin_dbx.jpeg +0 -0
  51. package/public/profile_pictures/library/Cars/116 - jaguar_xj.jpeg +0 -0
  52. package/public/profile_pictures/library/Cars/117 - maserati_quattroporte.jpeg +0 -0
  53. package/public/profile_pictures/library/Cars/118 - ferrari_roma.jpeg +0 -0
  54. package/public/profile_pictures/library/Cars/119 - lamborghini_urus.jpeg +0 -0
  55. package/public/profile_pictures/library/Cars/120 - cadillac_escalade.jpeg +0 -0
  56. package/public/profile_pictures/library/Cars/122 - ferrari_sf90_stradale.jpeg +0 -0
  57. package/public/profile_pictures/library/Cars/123 - lamborghini_aventador_svj.jpeg +0 -0
  58. package/public/profile_pictures/library/Cars/124 - mclaren_720s.jpeg +0 -0
  59. package/public/profile_pictures/library/Cars/125 - porsche_911_gt3_rs.jpeg +0 -0
  60. package/public/profile_pictures/library/Cars/126 - bugatti_chiron.jpeg +0 -0
  61. package/public/profile_pictures/library/Cars/127 - aston_martin_valkyrie.jpeg +0 -0
  62. package/public/profile_pictures/library/Cars/128 - koenigsegg_jesko.jpeg +0 -0
  63. package/public/profile_pictures/library/Cars/129 - pagani_huayra.jpeg +0 -0
  64. package/public/profile_pictures/library/Cars/130 - ferrari_812_superfast.jpeg +0 -0
  65. package/public/profile_pictures/library/Cars/131 - lamborghini_huraca/314/201n_sto.jpeg +0 -0
  66. package/public/profile_pictures/library/Cars/132 - mclaren_p1.jpeg +0 -0
  67. package/public/profile_pictures/library/Cars/133 - bugatti_veyron.jpeg +0 -0
  68. package/public/profile_pictures/library/Cars/134 - rimac_nevera.jpeg +0 -0
  69. package/public/profile_pictures/library/Cars/135 - maserati_mc20.jpeg +0 -0
  70. package/public/profile_pictures/library/Cars/136 - chevrolet_corvette_z06_(c8).jpeg +0 -0
  71. package/public/profile_pictures/library/Cars/137 - lotus_evija.jpeg +0 -0
  72. package/public/profile_pictures/library/Cars/138 - ford_gt.jpeg +0 -0
  73. package/public/profile_pictures/library/Cars/139 - ferrari_laferrari.jpeg +0 -0
  74. package/public/profile_pictures/library/Cars/140 - lamborghini_sian.jpeg +0 -0
  75. package/public/profile_pictures/library/Cars/141 - zenvo_tsr_s.jpeg +0 -0
  76. package/public/profile_pictures/library/Cars/142 - toyota_tacoma.jpeg +0 -0
  77. package/public/profile_pictures/library/Cars/143 - suzuki_swift.jpeg +0 -0
  78. package/public/profile_pictures/library/Cars/144 - skoda_fabia_.jpeg +0 -0
  79. package/public/profile_pictures/library/Cars/145 - nissan_micra.jpeg +0 -0
  80. package/public/profile_pictures/library/Cars/146 - chevrolet_equinox.jpeg +0 -0
  81. package/public/profile_pictures/library/Cars/147 - hyundai_elantra.jpeg +0 -0
  82. package/public/profile_pictures/library/Cars/148 - peugeot_301.jpeg +0 -0
  83. package/public/profile_pictures/library/Cars/149 - renault_duster.jpeg +0 -0
  84. package/public/profile_pictures/library/Cars/150 - tesla_roadster.jpeg +0 -0
  85. package/public/profile_pictures/library/Cars/151 - gogo_mobile_dart.jpeg +0 -0
  86. package/public/profile_pictures/library/README.md +23 -0
  87. package/public/profile_pictures/library/Young Cartoons/001-Zoe.jpeg +0 -0
  88. package/public/profile_pictures/library/Young Cartoons/002-Nora.jpeg +0 -0
  89. package/public/profile_pictures/library/Young Cartoons/003-Aria.jpeg +0 -0
  90. package/public/profile_pictures/library/Young Cartoons/004-Reagan.jpeg +0 -0
  91. package/public/profile_pictures/library/Young Cartoons/005-Violet.jpeg +0 -0
  92. package/public/profile_pictures/library/Young Cartoons/006-Alexa.jpeg +0 -0
  93. package/public/profile_pictures/library/Young Cartoons/007-Brooklyn.jpeg +0 -0
  94. package/public/profile_pictures/library/Young Cartoons/008-Kinsley.jpeg +0 -0
  95. package/public/profile_pictures/library/Young Cartoons/009-Quinn.jpeg +0 -0
  96. package/public/profile_pictures/library/Young Cartoons/010-Emilia.jpeg +0 -0
  97. package/public/profile_pictures/library/Young Cartoons/011-Mackenzie.jpeg +0 -0
  98. package/public/profile_pictures/library/Young Cartoons/012-Isabella.jpeg +0 -0
  99. package/public/profile_pictures/library/Young Cartoons/013-Sophia.jpeg +0 -0
  100. package/public/profile_pictures/library/Young Cartoons/014-Layla.jpeg +0 -0
  101. package/public/profile_pictures/library/Young Cartoons/015-Sarah.jpeg +0 -0
  102. package/public/profile_pictures/library/Young Cartoons/016-Hadley.jpeg +0 -0
  103. package/public/profile_pictures/library/Young Cartoons/017-Skylar.jpeg +0 -0
  104. package/public/profile_pictures/library/Young Cartoons/018-Brielle.jpeg +0 -0
  105. package/public/profile_pictures/library/Young Cartoons/019-Hailey.jpeg +0 -0
  106. package/public/profile_pictures/library/Young Cartoons/020-Paisley.jpeg +0 -0
  107. package/public/profile_pictures/library/Young Cartoons/021-Nova.jpeg +0 -0
  108. package/public/profile_pictures/library/Young Cartoons/022-Lucy.jpeg +0 -0
  109. package/public/profile_pictures/library/Young Cartoons/023-Ivy.jpeg +0 -0
  110. package/public/profile_pictures/library/Young Cartoons/024-Melanie.jpeg +0 -0
  111. package/public/profile_pictures/library/Young Cartoons/025-Addison.jpeg +0 -0
  112. package/public/profile_pictures/library/Young Cartoons/026-Genesis.jpeg +0 -0
  113. package/public/profile_pictures/library/Young Cartoons/027-Cora.jpeg +0 -0
  114. package/public/profile_pictures/library/Young Cartoons/028-Delilah.jpeg +0 -0
  115. package/public/profile_pictures/library/Young Cartoons/029-Liliana.jpeg +0 -0
  116. package/public/profile_pictures/library/Young Cartoons/030-Savannah.jpeg +0 -0
  117. package/public/profile_pictures/library/Young Cartoons/031-Ava.jpeg +0 -0
  118. package/public/profile_pictures/library/Young Cartoons/032-Aaliyah.jpeg +0 -0
  119. package/public/profile_pictures/library/Young Cartoons/033-Arianna.jpeg +0 -0
  120. package/public/profile_pictures/library/Young Cartoons/034-Abigail.jpeg +0 -0
  121. package/public/profile_pictures/library/Young Cartoons/035-Sophie.jpeg +0 -0
  122. package/public/profile_pictures/library/Young Cartoons/036-Ayla.jpeg +0 -0
  123. package/public/profile_pictures/library/Young Cartoons/037-Gianna.jpeg +0 -0
  124. package/public/profile_pictures/library/Young Cartoons/038-Ella.jpeg +0 -0
  125. package/public/profile_pictures/library/Young Cartoons/039-Mia.jpeg +0 -0
  126. package/public/profile_pictures/library/Young Cartoons/040-Autumn.jpeg +0 -0
  127. package/public/profile_pictures/library/Young Cartoons/041-Luna.jpeg +0 -0
  128. package/public/profile_pictures/library/Young Cartoons/042-Aurora.jpeg +0 -0
  129. package/public/profile_pictures/library/Young Cartoons/043-Samantha.jpeg +0 -0
  130. package/public/profile_pictures/library/Young Cartoons/044-Ariana.jpeg +0 -0
  131. package/public/profile_pictures/library/Young Cartoons/045-Gabriella.jpeg +0 -0
  132. package/public/profile_pictures/library/Young Cartoons/046-Serenity.jpeg +0 -0
  133. package/public/profile_pictures/library/Young Cartoons/047-Caroline.jpeg +0 -0
  134. package/public/profile_pictures/library/Young Cartoons/048-Emma.jpeg +0 -0
  135. package/public/profile_pictures/library/Young Cartoons/049-Piper.jpeg +0 -0
  136. package/public/profile_pictures/library/Young Cartoons/050-Madeline.jpeg +0 -0
  137. package/public/profile_pictures/library/Young Cartoons/051-Elijah.jpeg +0 -0
  138. package/public/profile_pictures/library/Young Cartoons/052-Lucas.jpeg +0 -0
  139. package/public/profile_pictures/library/Young Cartoons/053-Elias.jpeg +0 -0
  140. package/public/profile_pictures/library/Young Cartoons/054-Oliver.jpeg +0 -0
  141. package/public/profile_pictures/library/Young Cartoons/055-Ian.jpeg +0 -0
  142. package/public/profile_pictures/library/Young Cartoons/056-Ryan.jpeg +0 -0
  143. package/public/profile_pictures/library/Young Cartoons/057-Wesley.jpeg +0 -0
  144. package/public/profile_pictures/library/Young Cartoons/058-Joshua.jpeg +0 -0
  145. package/public/profile_pictures/library/Young Cartoons/059-Nicholas.jpeg +0 -0
  146. package/public/profile_pictures/library/Young Cartoons/060-Aiden.jpeg +0 -0
  147. package/public/profile_pictures/library/Young Cartoons/061-Cameron.jpeg +0 -0
  148. package/public/profile_pictures/library/Young Cartoons/062-Logan.jpeg +0 -0
  149. package/public/profile_pictures/library/Young Cartoons/063-Silas.jpeg +0 -0
  150. package/public/profile_pictures/library/Young Cartoons/064-Mateo.jpeg +0 -0
  151. package/public/profile_pictures/library/Young Cartoons/065-Hunter.jpeg +0 -0
  152. package/public/profile_pictures/library/Young Cartoons/066-Colton.jpeg +0 -0
  153. package/public/profile_pictures/library/Young Cartoons/067-Owen.jpeg +0 -0
  154. package/public/profile_pictures/library/Young Cartoons/068-Josiah.jpeg +0 -0
  155. package/public/profile_pictures/library/Young Cartoons/069-Santiago.jpeg +0 -0
  156. package/public/profile_pictures/library/Young Cartoons/070-Lincoln.jpeg +0 -0
  157. package/public/profile_pictures/library/Young Cartoons/071-Samuel.jpeg +0 -0
  158. package/public/profile_pictures/library/Young Cartoons/072-Thomas.jpeg +0 -0
  159. package/public/profile_pictures/library/Young Cartoons/073-Jaxson.jpeg +0 -0
  160. package/public/profile_pictures/library/Young Cartoons/074-Gabriel.jpeg +0 -0
  161. package/public/profile_pictures/library/Young Cartoons/075-Dominic.jpeg +0 -0
  162. package/public/profile_pictures/library/Young Cartoons/076-Grayson.jpeg +0 -0
  163. package/public/profile_pictures/library/Young Cartoons/077-Liam.jpeg +0 -0
  164. package/public/profile_pictures/library/Young Cartoons/078-Ethan.jpeg +0 -0
  165. package/public/profile_pictures/library/Young Cartoons/079-Jaxon.jpeg +0 -0
  166. package/public/profile_pictures/library/Young Cartoons/080-Jackson.jpeg +0 -0
  167. package/public/profile_pictures/library/Young Cartoons/081-Kai.jpeg +0 -0
  168. package/public/profile_pictures/library/Young Cartoons/082-Henry.jpeg +0 -0
  169. package/public/profile_pictures/library/Young Cartoons/083-Hudson.jpeg +0 -0
  170. package/public/profile_pictures/library/Young Cartoons/084-Isaiah.jpeg +0 -0
  171. package/public/profile_pictures/library/Young Cartoons/085-Benjamin.jpeg +0 -0
  172. package/public/profile_pictures/library/Young Cartoons/086-Christopher.jpeg +0 -0
  173. package/public/profile_pictures/library/Young Cartoons/087-Eli.jpeg +0 -0
  174. package/public/profile_pictures/library/Young Cartoons/088-Mason.jpeg +0 -0
  175. package/public/profile_pictures/library/Young Cartoons/089-Jack.jpeg +0 -0
  176. package/public/profile_pictures/library/Young Cartoons/090-Jordan.jpeg +0 -0
  177. package/public/profile_pictures/library/Young Cartoons/091-Easton.jpeg +0 -0
  178. package/public/profile_pictures/library/Young Cartoons/092-Miles.jpeg +0 -0
  179. package/public/profile_pictures/library/Young Cartoons/093-Caleb.jpeg +0 -0
  180. package/public/profile_pictures/library/Young Cartoons/094-Jameson.jpeg +0 -0
  181. package/public/profile_pictures/library/Young Cartoons/095-Kayden.jpeg +0 -0
  182. package/public/profile_pictures/library/Young Cartoons/096-Maverick.jpeg +0 -0
  183. package/public/profile_pictures/library/Young Cartoons/097-Julian.jpeg +0 -0
  184. package/public/profile_pictures/library/Young Cartoons/098-James.jpeg +0 -0
  185. package/public/profile_pictures/library/Young Cartoons/099-Greyson.jpeg +0 -0
  186. package/public/profile_pictures/library/Young Cartoons/100-Robert.jpeg +0 -0
  187. package/public/profile_pictures/library/Young Cartoons/101-Bella.jpeg +0 -0
  188. package/src/app/api/auth/library_photos/route.ts +3 -0
  189. package/src/components/layouts/my_settings/components/profile_picture_library_tab.tsx +33 -4
  190. package/src/components/layouts/shared/components/profile_pic_menu.tsx +321 -0
  191. package/src/components/layouts/shared/components/profile_pic_menu_wrapper.tsx +40 -0
  192. package/src/components/layouts/shared/components/sidebar_layout_wrapper.tsx +4 -66
  193. package/src/components/ui/dropdown-menu.tsx +201 -0
  194. package/src/lib/profile_pic_menu_config.server.ts +138 -0
@@ -251,6 +251,42 @@ enable_admin_ui = true
251
251
  # Login path (redirect target in unauthorized message)
252
252
  # login_path = /login
253
253
 
254
+ [hazo_auth__profile_pic_menu]
255
+ # Profile picture menu configuration
256
+ # This component can be used in navbar or sidebar to show user profile picture or sign up/sign in buttons
257
+
258
+ # Button configuration for unauthenticated users
259
+ # Show only "Sign Up" button when true, show both "Sign Up" and "Sign In" buttons when false (default)
260
+ # show_single_button = false
261
+
262
+ # Sign up button label
263
+ # sign_up_label = Sign Up
264
+
265
+ # Sign in button label
266
+ # sign_in_label = Sign In
267
+
268
+ # Register page path
269
+ # register_path = /register
270
+
271
+ # Login page path
272
+ # login_path = /login
273
+
274
+ # Settings page path (shown in dropdown menu when authenticated)
275
+ # settings_path = /my_settings
276
+
277
+ # Logout API endpoint path
278
+ # logout_path = /api/auth/logout
279
+
280
+ # Custom menu items (optional)
281
+ # Format: "type:label:value_or_href:order" for info/link, or "separator:order" for separator
282
+ # Examples:
283
+ # - Info item: "info:Phone:+1234567890:3"
284
+ # - Link item: "link:My Account:/account:4"
285
+ # - Separator: "separator:2"
286
+ # Custom items are added to the default menu items (name, email, separator, Settings, Logout)
287
+ # Items are sorted by type (info first, then separators, then links) and then by order within each type
288
+ # custom_menu_items =
289
+
254
290
  [hazo_auth__profile_picture]
255
291
  # Profile picture configuration
256
292
  # This configuration is used by:
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hazo_auth",
3
- "version": "0.1.0",
3
+ "version": "0.3.0",
4
4
  "files": [
5
5
  "src/**/*",
6
6
  "public/file.svg",
@@ -8,6 +8,7 @@
8
8
  "public/next.svg",
9
9
  "public/vercel.svg",
10
10
  "public/window.svg",
11
+ "public/profile_pictures/library/**/*",
11
12
  "hazo_auth_config.example.ini",
12
13
  "hazo_notify_config.example.ini",
13
14
  "README.md",
@@ -36,6 +37,7 @@
36
37
  "dependencies": {
37
38
  "@radix-ui/react-avatar": "^1.1.11",
38
39
  "@radix-ui/react-dialog": "^1.1.15",
40
+ "@radix-ui/react-dropdown-menu": "^2.1.16",
39
41
  "@radix-ui/react-label": "^2.1.8",
40
42
  "@radix-ui/react-separator": "^1.1.8",
41
43
  "@radix-ui/react-slot": "^1.2.4",
@@ -0,0 +1,23 @@
1
+ # Profile Picture Library
2
+
3
+ This directory contains library profile pictures organized by category.
4
+
5
+ ## Directory Structure
6
+
7
+ - Each subdirectory represents a category (e.g., `Cars/`, `Young Cartoons/`)
8
+ - Place image files (JPG, PNG) in the appropriate category directory
9
+ - Supported formats: JPG, PNG
10
+ - Recommended size: 200x200px
11
+
12
+ ## Adding New Categories
13
+
14
+ 1. Create a new subdirectory with the category name
15
+ 2. Add image files to the directory
16
+ 3. Images will automatically appear in the library tab when the category is selected
17
+
18
+ ## Adding Images
19
+
20
+ 1. Place image files in the appropriate category directory
21
+ 2. Use descriptive filenames
22
+ 3. Ensure images are properly formatted (JPG or PNG)
23
+
@@ -5,6 +5,9 @@ import { get_library_categories, get_library_photos } from "@/lib/services/profi
5
5
  import { create_app_logger } from "@/lib/app_logger";
6
6
  import { get_filename, get_line_number } from "@/lib/utils/api_route_helpers";
7
7
 
8
+ // section: route_config
9
+ export const dynamic = 'force-dynamic';
10
+
8
11
  // section: api_handler
9
12
  export async function GET(request: NextRequest) {
10
13
  const logger = create_app_logger();