@ozdao/martyrs 0.2.584 → 0.2.586

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 (436) hide show
  1. package/dist/auth.server.js +161 -96
  2. package/dist/{authJwt-J1csaMWA.js → authJwt-DKbMMjw0.js} +33 -0
  3. package/dist/builder.js +2 -0
  4. package/dist/chats.server.js +2 -2
  5. package/dist/community.server.js +1 -1
  6. package/dist/core.server.js +191 -2
  7. package/dist/{core.websocket-C2FxNmZ1.js → core.websocket-Cl76z2wT.js} +41 -5
  8. package/dist/{crud-q1ye5IhV.js → crud-DpOXTZep.js} +1 -1
  9. package/dist/events.server.js +2 -2
  10. package/dist/files.server.js +1 -1
  11. package/dist/gallery.server.js +1 -1
  12. package/dist/index-kvBwwb0w.js +427 -0
  13. package/dist/inventory.server.js +2 -2
  14. package/dist/{mailing-DuEFRsa3.js → mailing-DT7nbNjZ.js} +16 -3
  15. package/dist/{main-fmp55tJF.js → main-BIf-WirR.js} +864 -865
  16. package/dist/marketplace.server.js +1 -1
  17. package/dist/martyrs/dist/{main-fmp55tJF.js → main-BIf-WirR.js} +193 -38
  18. package/dist/martyrs/dist/main-BIf-WirR.js.map +1 -0
  19. package/dist/martyrs/dist/{web-BDuQSQKS.js → web-O7lXcjg0.js} +2 -2
  20. package/dist/martyrs/dist/{web-BDuQSQKS.js.map → web-O7lXcjg0.js.map} +1 -1
  21. package/dist/martyrs/src/components/Button/{Button.vue2.js → Button.vue.js} +8 -7
  22. package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -0
  23. package/dist/martyrs/src/components/EditImages/{EditImages.vue2.js → EditImages.vue.js} +2 -2
  24. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +1 -0
  25. package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
  26. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
  27. package/dist/martyrs/src/components/Loader/Loader.vue.js +1 -1
  28. package/dist/martyrs/src/components/Loader/Loader.vue.js.map +1 -1
  29. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue2.js → Spoiler.vue.js} +2 -2
  30. package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +1 -0
  31. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  32. package/dist/martyrs/src/components/Tab/Tab.vue2.js.map +1 -0
  33. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js +17 -22
  34. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js.map +1 -1
  35. package/dist/martyrs/src/modules/auth/auth.client.js +18 -24
  36. package/dist/martyrs/src/modules/auth/auth.client.js.map +1 -1
  37. package/dist/martyrs/src/modules/auth/views/components/blocks/OtpDialog.vue.js +178 -0
  38. package/dist/martyrs/src/modules/auth/views/components/blocks/OtpDialog.vue.js.map +1 -0
  39. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
  40. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +104 -77
  41. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js.map +1 -1
  42. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  43. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +198 -14
  44. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js.map +1 -1
  45. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  46. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +71 -30
  47. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js.map +1 -1
  48. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +3 -3
  49. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  50. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +87 -31
  51. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js.map +1 -1
  52. package/dist/martyrs/src/modules/auth/views/plugins/otp.plugin.js +100 -0
  53. package/dist/martyrs/src/modules/auth/views/plugins/otp.plugin.js.map +1 -0
  54. package/dist/martyrs/src/modules/auth/views/router/auth.router.js +2 -31
  55. package/dist/martyrs/src/modules/auth/views/router/auth.router.js.map +1 -1
  56. package/dist/martyrs/src/modules/auth/views/router/users.router.js +0 -14
  57. package/dist/martyrs/src/modules/auth/views/router/users.router.js.map +1 -1
  58. package/dist/martyrs/src/modules/auth/views/store/auth.js +1 -56
  59. package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
  60. package/dist/martyrs/src/modules/auth/views/store/users.js +5 -1
  61. package/dist/martyrs/src/modules/auth/views/store/users.js.map +1 -1
  62. package/dist/martyrs/src/modules/backoffice/backoffice.client.js +3 -15
  63. package/dist/martyrs/src/modules/backoffice/backoffice.client.js.map +1 -1
  64. package/dist/martyrs/src/modules/backoffice/configs/navigation.backoffice.config.js +99 -0
  65. package/dist/martyrs/src/modules/backoffice/configs/navigation.backoffice.config.js.map +1 -0
  66. package/dist/martyrs/src/modules/backoffice/{backoffice.router.js → router/backoffice.router.js} +9 -7
  67. package/dist/martyrs/src/modules/backoffice/router/backoffice.router.js.map +1 -0
  68. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +7 -1
  69. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js.map +1 -1
  70. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  71. package/dist/martyrs/src/modules/core/core.client.js.map +1 -1
  72. package/dist/martyrs/src/modules/core/views/classes/core.app.js +5 -1
  73. package/dist/martyrs/src/modules/core/views/classes/core.app.js.map +1 -1
  74. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +0 -1
  75. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js.map +1 -1
  76. package/dist/martyrs/src/modules/core/views/components/blocks/PopupAuth.vue.js +1 -1
  77. package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +1 -1
  78. package/dist/martyrs/src/modules/core/views/components/elements/OnlineIndicator.vue.js +74 -0
  79. package/dist/martyrs/src/modules/core/views/components/elements/OnlineIndicator.vue.js.map +1 -0
  80. package/dist/martyrs/src/modules/core/views/components/layouts/App.vue.js.map +1 -1
  81. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +77 -67
  82. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js.map +1 -1
  83. package/dist/martyrs/src/modules/core/views/components/pages/404.vue.js +76 -7
  84. package/dist/martyrs/src/modules/core/views/components/pages/404.vue.js.map +1 -1
  85. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +1 -1
  86. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +1 -1
  87. package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +1 -1
  88. package/dist/martyrs/src/modules/core/views/components/sections/{Filters.vue2.js → Filters.vue.js} +2 -2
  89. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js.map +1 -0
  90. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js +1 -1
  91. package/dist/martyrs/src/modules/core/views/store/core.store.js +1 -0
  92. package/dist/martyrs/src/modules/core/views/store/core.store.js.map +1 -1
  93. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js +2 -1
  94. package/dist/martyrs/src/modules/core/views/utils/vue-app-renderer.js.map +1 -1
  95. package/dist/martyrs/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  96. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  97. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  98. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  99. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -1
  100. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js.map +1 -1
  101. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  102. package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +1 -1
  103. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
  104. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
  105. package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +1 -1
  106. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +1 -1
  107. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  108. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +1 -1
  109. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +1 -1
  110. package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +1 -1
  111. package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js +1 -1
  112. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
  113. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
  114. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
  115. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
  116. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
  117. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
  118. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
  119. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
  120. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
  121. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
  122. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +1 -1
  123. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
  124. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +1 -1
  125. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
  126. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +1 -1
  127. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +0 -1
  128. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js.map +1 -1
  129. package/dist/martyrs/src/modules/music/components/player/FullscreenPlayer.vue.js +1 -1
  130. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
  131. package/dist/martyrs/src/modules/music/components/player/PlayerControls.vue.js +1 -1
  132. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.js +1 -1
  133. package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js +1 -1
  134. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
  135. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +1 -1
  136. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -2
  137. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js.map +1 -1
  138. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  139. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  140. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  141. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  142. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
  143. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
  144. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
  145. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +1 -1
  146. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  147. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
  148. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
  149. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
  150. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +1 -1
  151. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +4 -3
  152. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js.map +1 -1
  153. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  154. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -2
  155. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js.map +1 -1
  156. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  157. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -2
  158. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js.map +1 -1
  159. package/dist/martyrs/src/modules/pages/pages.router.js +7 -5
  160. package/dist/martyrs/src/modules/pages/pages.router.js.map +1 -1
  161. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +0 -1
  162. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js.map +1 -1
  163. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  164. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  165. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +0 -1
  166. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  167. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
  168. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +1 -2
  169. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js.map +1 -1
  170. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +3 -3
  171. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +4 -4
  172. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js.map +1 -1
  173. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  174. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
  175. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  176. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
  177. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
  178. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -1
  179. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +2 -2
  180. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +2 -2
  181. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  182. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
  183. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  184. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  185. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  186. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +1 -1
  187. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  188. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  189. package/dist/martyrs.css +1 -1
  190. package/dist/martyrs.es.js +1 -1
  191. package/dist/music.server.js +1 -1
  192. package/dist/notifications.server.js +1 -1
  193. package/dist/orders.server.js +7 -6
  194. package/dist/organizations.server.js +2 -2
  195. package/dist/products.server.js +2 -2
  196. package/dist/profile.schema-C31Lynn3.js +21 -0
  197. package/dist/rents.server.js +1 -1
  198. package/dist/sessions.service-COcwjd0f.js +86 -0
  199. package/dist/style.css +183 -108
  200. package/dist/{tickets.controller-B7r0mK-5.js → tickets.controller-DdF85W-i.js} +1 -1
  201. package/dist/visitors.service-B1dhhuSo.js +83 -0
  202. package/dist/wallet.server.js +2 -2
  203. package/dist/{web-BDuQSQKS.js → web-O7lXcjg0.js} +1 -1
  204. package/package.json +5 -1
  205. package/src/builder/modes/ssr.rspack.dev.js +2 -0
  206. package/src/cli/commands/create.js +106 -0
  207. package/src/cli/index.js +25 -0
  208. package/src/cli/templates/app/.env.development.mustache +14 -0
  209. package/src/cli/templates/app/.env.production.mustache +14 -0
  210. package/src/cli/templates/app/Dockerfile +36 -0
  211. package/src/cli/templates/app/babel.config.js +14 -0
  212. package/src/cli/templates/app/env.js +3 -0
  213. package/src/cli/templates/app/index.js +46 -0
  214. package/src/cli/templates/app/mongodb.config.js +18 -0
  215. package/src/cli/templates/app/package.json.mustache +65 -0
  216. package/src/cli/templates/app/src/client.js +22 -0
  217. package/src/cli/templates/app/src/components/pages/Index.vue +11 -0
  218. package/src/cli/templates/app/src/configs/global.config.js.mustache +40 -0
  219. package/src/cli/templates/app/src/localization/extensions.js +2 -0
  220. package/src/cli/templates/app/src/localization/index.js +44 -0
  221. package/src/cli/templates/app/src/localization/overrides.js +2 -0
  222. package/src/cli/templates/app/src/localization/translations.js +10 -0
  223. package/src/cli/templates/app/src/models/index.js +9 -0
  224. package/src/cli/templates/app/src/router/index.js +48 -0
  225. package/src/cli/templates/app/src/scss/theme.scss +18 -0
  226. package/src/cli/templates/app/src/server.js +68 -0
  227. package/src/cli/templates/app/src/store/index.js +9 -0
  228. package/src/cli/templates/docker-compose.yaml.mustache +47 -0
  229. package/src/cli/templates/nginx/Dockerfile +5 -0
  230. package/src/cli/templates/nginx/default.conf.mustache +55 -0
  231. package/src/cli/templates/public/favicon/.gitkeep +0 -0
  232. package/src/cli/templates/start-dev.sh.mustache +131 -0
  233. package/src/cli/templates/start-prod.sh.mustache +12 -0
  234. package/src/components/Button/Button.vue +61 -15
  235. package/src/components/Loader/Loader.vue +1 -1
  236. package/src/components/Tooltip/Tooltip.vue +31 -23
  237. package/src/modules/TASKS.MD +30 -1
  238. package/src/modules/auth/CLAUDE.md +381 -0
  239. package/src/modules/auth/FIXES.md +0 -38
  240. package/src/modules/auth/auth.client.js +4 -6
  241. package/src/modules/auth/auth.server.js +4 -15
  242. package/src/modules/auth/controllers/middlewares/authJwt.js +59 -17
  243. package/src/modules/auth/controllers/middlewares/index.js +4 -1
  244. package/src/modules/auth/controllers/middlewares/otp.middleware.js +166 -0
  245. package/src/modules/auth/controllers/middlewares/verifySignUp.js +0 -1
  246. package/src/modules/auth/controllers/middlewares/verifyUser.js +58 -11
  247. package/src/modules/auth/controllers/routes/auth.routes.js +48 -6
  248. package/src/modules/auth/controllers/routes/users.routes.js +29 -8
  249. package/src/modules/auth/controllers/services/auth.service.js +62 -12
  250. package/src/modules/auth/controllers/services/otp.service.js +109 -0
  251. package/src/modules/auth/controllers/services/users.service.js +46 -6
  252. package/src/modules/auth/models/otp.model.js +20 -0
  253. package/src/modules/auth/views/components/blocks/OtpDialog.vue +168 -0
  254. package/src/modules/auth/views/components/pages/Profile.vue +51 -18
  255. package/src/modules/auth/views/components/pages/ProfileEditAccount.vue +199 -45
  256. package/src/modules/auth/views/components/pages/ResetPassword.vue +170 -132
  257. package/src/modules/auth/views/components/pages/SignIn.vue +2 -1
  258. package/src/modules/auth/views/components/pages/SignUp.vue +203 -147
  259. package/src/modules/auth/views/plugins/otp.plugin.js +104 -0
  260. package/src/modules/auth/views/router/auth.router.js +1 -24
  261. package/src/modules/auth/views/router/users.router.js +1 -12
  262. package/src/modules/auth/views/store/auth.js +0 -68
  263. package/src/modules/auth/views/store/users.js +6 -2
  264. package/src/modules/backoffice/backoffice.client.js +1 -25
  265. package/src/modules/backoffice/configs/navigation.backoffice.config.js +99 -0
  266. package/src/modules/backoffice/router/backoffice.router.js +8 -7
  267. package/src/modules/community/components/pages/BlogPost.vue +9 -1
  268. package/src/modules/core/controllers/classes/core.websocket.js +57 -6
  269. package/src/modules/core/controllers/middlewares/visitor.logger.js +49 -0
  270. package/src/modules/core/controllers/services/requests.service.js +53 -0
  271. package/src/modules/core/controllers/services/sessions.service.js +98 -0
  272. package/src/modules/core/controllers/services/visitors.service.js +102 -0
  273. package/src/modules/core/controllers/utils/mailing.js +16 -3
  274. package/src/modules/core/core.client.js +1 -0
  275. package/src/modules/core/core.server.js +45 -3
  276. package/src/modules/core/models/request.model.js +30 -0
  277. package/src/modules/core/models/session.model.js +43 -0
  278. package/src/modules/core/models/visitor.model.js +28 -0
  279. package/src/modules/core/views/classes/core.app.js +8 -3
  280. package/src/modules/core/views/components/elements/OnlineIndicator.vue +115 -0
  281. package/src/modules/core/views/components/layouts/App.vue +2 -2
  282. package/src/modules/core/views/components/layouts/Client.vue +444 -479
  283. package/src/modules/core/views/components/pages/404.vue +55 -3
  284. package/src/modules/core/views/store/core.store.js +1 -0
  285. package/src/modules/core/views/utils/vue-app-renderer.js +9 -1
  286. package/src/modules/orders/controllers/orders.controller.js +3 -3
  287. package/src/modules/pages/pages.router.js +4 -2
  288. package/src/modules/pages/views/router/pages.backoffice.router.js +4 -3
  289. package/src/modules/products/components/pages/Products.vue +1 -1
  290. package/dist/_virtual/alignment-pattern.js +0 -5
  291. package/dist/_virtual/alignment-pattern.js.map +0 -1
  292. package/dist/_virtual/browser.js +0 -8
  293. package/dist/_virtual/browser.js.map +0 -1
  294. package/dist/_virtual/browser2.js +0 -5
  295. package/dist/_virtual/browser2.js.map +0 -1
  296. package/dist/_virtual/canvas.js +0 -5
  297. package/dist/_virtual/canvas.js.map +0 -1
  298. package/dist/_virtual/dijkstra.js +0 -5
  299. package/dist/_virtual/dijkstra.js.map +0 -1
  300. package/dist/_virtual/error-correction-code.js +0 -5
  301. package/dist/_virtual/error-correction-code.js.map +0 -1
  302. package/dist/_virtual/error-correction-level.js +0 -5
  303. package/dist/_virtual/error-correction-level.js.map +0 -1
  304. package/dist/_virtual/finder-pattern.js +0 -5
  305. package/dist/_virtual/finder-pattern.js.map +0 -1
  306. package/dist/_virtual/format-info.js +0 -5
  307. package/dist/_virtual/format-info.js.map +0 -1
  308. package/dist/_virtual/galois-field.js +0 -5
  309. package/dist/_virtual/galois-field.js.map +0 -1
  310. package/dist/_virtual/mask-pattern.js +0 -5
  311. package/dist/_virtual/mask-pattern.js.map +0 -1
  312. package/dist/_virtual/mode.js +0 -5
  313. package/dist/_virtual/mode.js.map +0 -1
  314. package/dist/_virtual/polynomial.js +0 -5
  315. package/dist/_virtual/polynomial.js.map +0 -1
  316. package/dist/_virtual/qrcode.js +0 -5
  317. package/dist/_virtual/qrcode.js.map +0 -1
  318. package/dist/_virtual/regex.js +0 -5
  319. package/dist/_virtual/regex.js.map +0 -1
  320. package/dist/_virtual/segments.js +0 -5
  321. package/dist/_virtual/segments.js.map +0 -1
  322. package/dist/_virtual/svg-tag.js +0 -5
  323. package/dist/_virtual/svg-tag.js.map +0 -1
  324. package/dist/_virtual/utils.js +0 -5
  325. package/dist/_virtual/utils.js.map +0 -1
  326. package/dist/_virtual/utils2.js +0 -5
  327. package/dist/_virtual/utils2.js.map +0 -1
  328. package/dist/_virtual/version-check.js +0 -5
  329. package/dist/_virtual/version-check.js.map +0 -1
  330. package/dist/_virtual/version.js +0 -5
  331. package/dist/_virtual/version.js.map +0 -1
  332. package/dist/index-_Edcmck_.js +0 -170
  333. package/dist/martyrs/dist/main-fmp55tJF.js.map +0 -1
  334. package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.1.2/node_modules/bignumber.js/bignumber.js +0 -1336
  335. package/dist/martyrs/node_modules/.pnpm/bignumber.js@9.1.2/node_modules/bignumber.js/bignumber.js.map +0 -1
  336. package/dist/martyrs/src/components/Button/Button.vue2.js.map +0 -1
  337. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +0 -1
  338. package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.js.map +0 -1
  339. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  340. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +0 -166
  341. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js.map +0 -1
  342. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +0 -118
  343. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js.map +0 -1
  344. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +0 -360
  345. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js.map +0 -1
  346. package/dist/martyrs/src/modules/auth/views/store/twofa.js +0 -40
  347. package/dist/martyrs/src/modules/auth/views/store/twofa.js.map +0 -1
  348. package/dist/martyrs/src/modules/backoffice/backoffice.router.js.map +0 -1
  349. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js +0 -150
  350. package/dist/martyrs/src/modules/backoffice/components/partials/Sidebar.vue.js.map +0 -1
  351. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue2.js.map +0 -1
  352. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue.js +0 -43
  353. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardBalanceReplenished.vue.js.map +0 -1
  354. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +0 -47
  355. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js.map +0 -1
  356. package/dist/martyrs/src/modules/wallet/views/components/blocks/CashDeposit.vue.js +0 -29
  357. package/dist/martyrs/src/modules/wallet/views/components/blocks/CashDeposit.vue.js.map +0 -1
  358. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +0 -89
  359. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js.map +0 -1
  360. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.js +0 -136
  361. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDepositProcessing.vue.js.map +0 -1
  362. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +0 -238
  363. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js.map +0 -1
  364. package/dist/martyrs/src/modules/wallet/views/localization/wallet.json.js +0 -9
  365. package/dist/martyrs/src/modules/wallet/views/localization/wallet.json.js.map +0 -1
  366. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js +0 -134
  367. package/dist/martyrs/src/modules/wallet/views/store/wallet.store.js.map +0 -1
  368. package/dist/node_modules/.pnpm/dijkstrajs@1.0.3/node_modules/dijkstrajs/dijkstra.js +0 -106
  369. package/dist/node_modules/.pnpm/dijkstrajs@1.0.3/node_modules/dijkstrajs/dijkstra.js.map +0 -1
  370. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/browser.js +0 -79
  371. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/browser.js.map +0 -1
  372. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/can-promise.js +0 -14
  373. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/can-promise.js.map +0 -1
  374. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alignment-pattern.js +0 -43
  375. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alignment-pattern.js.map +0 -1
  376. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alphanumeric-data.js +0 -85
  377. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/alphanumeric-data.js.map +0 -1
  378. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-buffer.js +0 -40
  379. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-buffer.js.map +0 -1
  380. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-matrix.js +0 -34
  381. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/bit-matrix.js.map +0 -1
  382. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/byte-data.js +0 -36
  383. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/byte-data.js.map +0 -1
  384. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-code.js +0 -367
  385. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-code.js.map +0 -1
  386. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-level.js +0 -52
  387. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/error-correction-level.js.map +0 -1
  388. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/finder-pattern.js +0 -25
  389. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/finder-pattern.js.map +0 -1
  390. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/format-info.js +0 -24
  391. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/format-info.js.map +0 -1
  392. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/galois-field.js +0 -38
  393. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/galois-field.js.map +0 -1
  394. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/kanji-data.js +0 -46
  395. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/kanji-data.js.map +0 -1
  396. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mask-pattern.js +0 -149
  397. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mask-pattern.js.map +0 -1
  398. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mode.js +0 -90
  399. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/mode.js.map +0 -1
  400. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/numeric-data.js +0 -41
  401. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/numeric-data.js.map +0 -1
  402. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/polynomial.js +0 -44
  403. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/polynomial.js.map +0 -1
  404. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/qrcode.js +0 -279
  405. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/qrcode.js.map +0 -1
  406. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/reed-solomon-encoder.js +0 -38
  407. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/reed-solomon-encoder.js.map +0 -1
  408. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/regex.js +0 -33
  409. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/regex.js.map +0 -1
  410. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/segments.js +0 -201
  411. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/segments.js.map +0 -1
  412. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js +0 -84
  413. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/utils.js.map +0 -1
  414. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version-check.js +0 -14
  415. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version-check.js.map +0 -1
  416. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version.js +0 -107
  417. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/core/version.js.map +0 -1
  418. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/canvas.js +0 -61
  419. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/canvas.js.map +0 -1
  420. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/svg-tag.js +0 -64
  421. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/svg-tag.js.map +0 -1
  422. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js +0 -87
  423. package/dist/node_modules/.pnpm/qrcode@1.5.4/node_modules/qrcode/lib/renderer/utils.js.map +0 -1
  424. package/dist/profile.schema-CjLOfG7b.js +0 -92
  425. package/src/modules/auth/controllers/middlewares/visitor.logger.js +0 -75
  426. package/src/modules/auth/controllers/routes/twofa.routes.js +0 -8
  427. package/src/modules/auth/controllers/services/twofa.service.js +0 -30
  428. package/src/modules/auth/models/request.model.js +0 -14
  429. package/src/modules/auth/models/visitor.model.js +0 -11
  430. package/src/modules/auth/views/components/pages/EnterCode.vue +0 -204
  431. package/src/modules/auth/views/components/pages/EnterPassword.vue +0 -123
  432. package/src/modules/auth/views/components/sections/ProfileEditCredentials.vue +0 -329
  433. package/src/modules/auth/views/store/twofa.js +0 -70
  434. package/src/modules/auth//320/220/320/240/320/245/320/230/320/242/320/225/320/232/320/242/320/243/320/240/320/220.md +0 -445
  435. package/src/modules/backoffice/backoffice.router.js +0 -69
  436. package/src/modules/backoffice/components/partials/Sidebar.vue +0 -165
@@ -1,6 +1,6 @@
1
1
  import { Types } from "mongoose";
2
2
  import apn from "apn";
3
- import { m as mailing } from "./mailing-DuEFRsa3.js";
3
+ import { m as mailing } from "./mailing-DT7nbNjZ.js";
4
4
  import admin from "firebase-admin";
5
5
  import path from "path";
6
6
  import webpush from "web-push";
@@ -1,18 +1,18 @@
1
- import "./mailing-DuEFRsa3.js";
1
+ import "./mailing-DT7nbNjZ.js";
2
2
  import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
3
- import { m as modelsFactory, a as applyProfileSchema } from "./profile.schema-CjLOfG7b.js";
3
+ import { g as getVisitorsService } from "./visitors.service-B1dhhuSo.js";
4
4
  import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
5
5
  import { a as applyCredentialsSchema } from "./credentials.schema--2vvcu8c.js";
6
- import { C as CRUD } from "./crud-q1ye5IhV.js";
6
+ import { a as applyProfileSchema } from "./profile.schema-C31Lynn3.js";
7
+ import { C as CRUD } from "./crud-DpOXTZep.js";
7
8
  import { c as coreabac } from "./abac-BPl9Bmf9.js";
8
9
  import axios from "axios";
9
10
  import { V as Verifier, a as Validator } from "./core.verifier-gPPX_jhf.js";
10
- import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
11
+ import { m as middlewareIndexFactory } from "./index-kvBwwb0w.js";
11
12
  const controllerFactory = (db) => {
12
13
  const Order = db.order;
13
14
  const Customer = db.customer;
14
15
  const Department = db.department;
15
- const { findOrCreateVisitor } = modelsFactory(db);
16
16
  const getUsersWithOrdersConfirmAccess = async (organizationId) => {
17
17
  console.log("=== Getting users with orders.confirm access ===");
18
18
  console.log("Organization ID:", organizationId);
@@ -118,7 +118,8 @@ const controllerFactory = (db) => {
118
118
  customer = await Customer.findOne({ $or: [searchCriteria] });
119
119
  }
120
120
  if (!customer) {
121
- const visitor = await findOrCreateVisitor(req);
121
+ const visitorsService = getVisitorsService();
122
+ const visitor = await visitorsService.findOrCreateVisitor(req);
122
123
  let creatorType = customerInfo.creator?.type || orderCreator.type;
123
124
  let creatorTarget = customerInfo.creator?.target || orderCreator.target;
124
125
  if (!creatorTarget) {
@@ -2,8 +2,8 @@ import { c as coreabac } from "./abac-BPl9Bmf9.js";
2
2
  import { a as applyCredentialsSchema } from "./credentials.schema--2vvcu8c.js";
3
3
  import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
4
4
  import { a as applyEngagementSchema } from "./engagement.schema-fh6W1fb_.js";
5
- import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
6
- import { m as mailing } from "./mailing-DuEFRsa3.js";
5
+ import { m as middlewareIndexFactory } from "./index-kvBwwb0w.js";
6
+ import { m as mailing } from "./mailing-DT7nbNjZ.js";
7
7
  import { uuid } from "uuidv4";
8
8
  import { q as queryProcessorCore } from "./queryProcessor-C_5Iipam.js";
9
9
  import { Types } from "mongoose";
@@ -6,9 +6,9 @@ import { a as applyCommonSchema } from "./common.schema-DswiUXKB.js";
6
6
  import { a as applyEngagementSchema } from "./engagement.schema-fh6W1fb_.js";
7
7
  import { a as applyMetadataSchema } from "./metadata.schema-CIRR_WQ-.js";
8
8
  import { a as applyOwnershipSchema } from "./ownership.schema-fwwDf_e5.js";
9
- import { m as middlewareFactory } from "./authJwt-J1csaMWA.js";
9
+ import { m as middlewareFactory } from "./authJwt-DKbMMjw0.js";
10
10
  import { a as Validator, V as Verifier } from "./core.verifier-gPPX_jhf.js";
11
- import { C as CRUD } from "./crud-q1ye5IhV.js";
11
+ import { C as CRUD } from "./crud-DpOXTZep.js";
12
12
  const controllerFactory$1 = (db) => {
13
13
  const Category = db.category;
14
14
  const logger = new LoggerNamespaced(db);
@@ -0,0 +1,21 @@
1
+ const applyProfileSchema = (function applyProfileSchema2(schema, db) {
2
+ schema.add({
3
+ profile: {
4
+ photo: {
5
+ type: String,
6
+ default: null
7
+ },
8
+ name: {
9
+ type: String,
10
+ default: null
11
+ },
12
+ description: {
13
+ type: String,
14
+ default: null
15
+ }
16
+ }
17
+ });
18
+ });
19
+ export {
20
+ applyProfileSchema as a
21
+ };
@@ -1,4 +1,4 @@
1
- import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
1
+ import { m as middlewareIndexFactory } from "./index-kvBwwb0w.js";
2
2
  import { L as LoggerNamespaced, c as coreabac } from "./abac-BPl9Bmf9.js";
3
3
  import { C as CacheNamespaced } from "./core.cache-DALYFDdy.js";
4
4
  import { V as Verifier, a as Validator } from "./core.verifier-gPPX_jhf.js";
@@ -0,0 +1,86 @@
1
+ const DEFAULT_SESSION_TTL = 864e3;
2
+ let instance = null;
3
+ function initSessionsService(db) {
4
+ const Session = db.session;
5
+ async function createSession({ userId, visitorId = null, req, expiresIn = DEFAULT_SESSION_TTL }) {
6
+ const session = await Session.create({
7
+ target: new db.mongoose.Types.ObjectId(userId),
8
+ visitor: visitorId ? new db.mongoose.Types.ObjectId(visitorId) : null,
9
+ ip: req.ip,
10
+ userAgent: req.headers["user-agent"],
11
+ expiresAt: new Date(Date.now() + expiresIn * 1e3)
12
+ });
13
+ return session;
14
+ }
15
+ async function validateSession({ sessionId, userId = null }) {
16
+ const query = {
17
+ _id: new db.mongoose.Types.ObjectId(sessionId),
18
+ isActive: true,
19
+ expiresAt: { $gt: /* @__PURE__ */ new Date() }
20
+ };
21
+ if (userId) {
22
+ query.target = new db.mongoose.Types.ObjectId(userId);
23
+ }
24
+ const session = await Session.findOne(query).lean();
25
+ return session;
26
+ }
27
+ async function deactivateSession(sessionId) {
28
+ const session = await Session.findByIdAndUpdate(
29
+ sessionId,
30
+ {
31
+ isActive: false,
32
+ revokedAt: /* @__PURE__ */ new Date()
33
+ },
34
+ { new: true }
35
+ );
36
+ return session;
37
+ }
38
+ async function deactivateAllUserSessions(userId, reason = null) {
39
+ const result = await Session.updateMany(
40
+ {
41
+ target: new db.mongoose.Types.ObjectId(userId),
42
+ isActive: true
43
+ },
44
+ {
45
+ isActive: false,
46
+ revokedAt: /* @__PURE__ */ new Date()
47
+ }
48
+ );
49
+ return result;
50
+ }
51
+ async function touchSession(sessionId) {
52
+ const session = await Session.findByIdAndUpdate(
53
+ sessionId,
54
+ { lastSeenAt: /* @__PURE__ */ new Date() },
55
+ { new: true }
56
+ );
57
+ return session;
58
+ }
59
+ async function getActiveSessions(userId) {
60
+ const sessions = await Session.find({
61
+ target: new db.mongoose.Types.ObjectId(userId),
62
+ isActive: true,
63
+ expiresAt: { $gt: /* @__PURE__ */ new Date() }
64
+ }).lean();
65
+ return sessions;
66
+ }
67
+ instance = {
68
+ createSession,
69
+ validateSession,
70
+ deactivateSession,
71
+ deactivateAllUserSessions,
72
+ touchSession,
73
+ getActiveSessions
74
+ };
75
+ return instance;
76
+ }
77
+ function getSessionsService() {
78
+ if (!instance) {
79
+ throw new Error("Sessions service not initialized. Call initSessionsService(db) first.");
80
+ }
81
+ return instance;
82
+ }
83
+ export {
84
+ getSessionsService as g,
85
+ initSessionsService as i
86
+ };
package/dist/style.css CHANGED
@@ -1,4 +1,9 @@
1
1
  @charset "UTF-8";
2
+ input[data-v-4a88f18b] { border: none; outline: none;
3
+ }
4
+ input[data-v-4a88f18b]::placeholder { color: rgba(var(--dark), 0.4);
5
+ }
6
+
2
7
  .help-card[data-v-cdb417ab] {
3
8
  margin-top: auto;
4
9
  text-decoration: none;
@@ -71,6 +76,14 @@
71
76
  }
72
77
  .background-div {
73
78
  flex-grow: 1;
79
+ }.tab-selector {
80
+ position: absolute;
81
+ width: 50%;
82
+ height: 100%;
83
+ left: 0;
84
+ top: 0;
85
+ z-index: 0;
86
+ transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1);
74
87
  }
75
88
  input[data-v-ba38e654],
76
89
  textarea[data-v-ba38e654],
@@ -92,68 +105,6 @@ input[type="time"][data-v-ba38e654]::-webkit-calendar-picker-indicator {
92
105
  opacity: 1;
93
106
  color: inherit;
94
107
  }
95
- .tab-selector {
96
- position: absolute;
97
- width: 50%;
98
- height: 100%;
99
- left: 0;
100
- top: 0;
101
- z-index: 0;
102
- transition: left 0.3s cubic-bezier(0.4, 0, 0.2, 1);
103
- }
104
- .circular-loader-centered {
105
- top: calc(50% - 1rem);
106
- left: calc(50% - 1rem);
107
- }
108
- .circular-loader svg {
109
- animation: rotate 2s linear infinite;
110
- }
111
- .circular-loader-circle {
112
- stroke-dasharray: 1, 200;
113
- stroke-dashoffset: 0;
114
- stroke-linecap: round;
115
- stroke: rgb(var(--main));
116
- animation: dash 1.5s ease-in-out infinite;
117
- }
118
- .circular-loader-fill {
119
- stroke-linecap: round;
120
- stroke: rgba(var(--black),0.2);
121
- }
122
- .progress-text {
123
- position: absolute;
124
- top: 50%;
125
- left: 50%;
126
- transform: translate(-50%, -50%);
127
- font-size: 0.8rem;
128
- color: rgb(var(--main));
129
- }
130
- .status-text {
131
- position: absolute;
132
- top: 120%;
133
- left: calc(50% - 5rem);
134
- font-size: 0.8rem;
135
- width: 10rem !important;
136
- text-align: center;
137
- }
138
- @keyframes rotate {
139
- 100% {
140
- transform: rotate(360deg);
141
- }
142
- }
143
- @keyframes dash {
144
- 0% {
145
- stroke-dasharray: 1, 200;
146
- stroke-dashoffset: 0;
147
- }
148
- 50% {
149
- stroke-dasharray: 89, 200;
150
- stroke-dashoffset: -35;
151
- }
152
- 100% {
153
- stroke-dasharray: 1, 200;
154
- stroke-dashoffset: -124;
155
- }
156
- }
157
108
  button[disabled] {
158
109
  opacity: 0.75 !important;
159
110
  pointer-events: none !important;
@@ -210,7 +161,13 @@ a.button {
210
161
  align-items: center;
211
162
  justify-content: center;
212
163
  gap: 8px;
213
- transition: opacity 0.3s ease;
164
+ transform: translateY(0);
165
+ opacity: 1;
166
+ transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
167
+ }
168
+ .button-content.hidden {
169
+ opacity: 0;
170
+ transform: translateY(4px);
214
171
  }
215
172
  .button-loader {
216
173
  position: absolute;
@@ -218,10 +175,40 @@ a.button {
218
175
  display: flex;
219
176
  align-items: center;
220
177
  justify-content: center;
178
+ gap: 4px;
221
179
  opacity: 0;
222
- transition: opacity 0.3s ease;
180
+ transform: translateY(4px);
181
+ transition: opacity 0.25s cubic-bezier(0, 0, 0.2, 1) 0.05s, transform 0.25s cubic-bezier(0, 0, 0.2, 1) 0.05s;
223
182
  pointer-events: none;
224
183
  }
184
+ .button-loader.active {
185
+ opacity: 1;
186
+ transform: translateY(0);
187
+ }
188
+ .button-loader .dot {
189
+ width: 6px;
190
+ height: 6px;
191
+ border-radius: 50%;
192
+ background: currentColor;
193
+ animation: dot-bounce 0.8s cubic-bezier(0.4, 0, 0.2, 1) infinite;
194
+ }
195
+ .button-loader .dot:nth-child(1) {
196
+ animation-delay: 0s;
197
+ }
198
+ .button-loader .dot:nth-child(2) {
199
+ animation-delay: 0.12s;
200
+ }
201
+ .button-loader .dot:nth-child(3) {
202
+ animation-delay: 0.24s;
203
+ }
204
+ @keyframes dot-bounce {
205
+ 0%, 100% {
206
+ transform: translateY(0);
207
+ }
208
+ 50% {
209
+ transform: translateY(-5px);
210
+ }
211
+ }
225
212
  .button-success {
226
213
  position: absolute;
227
214
  inset: 0;
@@ -229,9 +216,14 @@ a.button {
229
216
  align-items: center;
230
217
  justify-content: center;
231
218
  opacity: 0;
232
- transition: opacity 0.3s ease;
219
+ transform: translateY(4px);
220
+ transition: opacity 0.2s cubic-bezier(0, 0, 0.2, 1), transform 0.2s cubic-bezier(0, 0, 0.2, 1);
233
221
  pointer-events: none;
234
222
  }
223
+ .button-success.active {
224
+ opacity: 1;
225
+ transform: translateY(0);
226
+ }
235
227
  .button-error {
236
228
  position: absolute;
237
229
  inset: 0;
@@ -239,27 +231,13 @@ a.button {
239
231
  align-items: center;
240
232
  justify-content: center;
241
233
  opacity: 0;
242
- transition: opacity 0.3s ease;
234
+ transform: translateY(4px);
235
+ transition: opacity 0.2s cubic-bezier(0, 0, 0.2, 1), transform 0.2s cubic-bezier(0, 0, 0.2, 1);
243
236
  pointer-events: none;
244
237
  }
245
- .active {
238
+ .button-error.active {
246
239
  opacity: 1;
247
- }
248
- .hidden {
249
- opacity: 0;
250
- }.slide-fade-enter-active {
251
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
252
- }
253
- .slide-fade-leave-active {
254
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
255
- }
256
- .slide-fade-enter-from,
257
- .slide-fade-leave-to {
258
- position: absolute;
259
- transform: translateX(20px);
260
- opacity: 0;
261
- left: 0;
262
- top: 0;
240
+ transform: translateY(0);
263
241
  }.slide-fade-enter-active {
264
242
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
265
243
  }
@@ -391,7 +369,117 @@ ul li[data-v-af5048fc] {
391
369
  }
392
370
  .field-wrapper[data-v-af5048fc]:focus {
393
371
  outline: none;
394
- }.vue3-reactive-tel-input {
372
+ }.tooltip-container {
373
+ position: relative;
374
+ display: inline-block;
375
+ }
376
+ .tooltip-content {
377
+ position: absolute;
378
+ width: max-content;
379
+ z-index: 1000;
380
+ background: #333;
381
+ color: #fff;
382
+ padding: 5px;
383
+ border-radius: 3px;
384
+ font-size: 14px;
385
+ pointer-events: none;
386
+ }
387
+ .tooltip-enter-active,
388
+ .tooltip-leave-active {
389
+ transition: opacity 0.2s ease;
390
+ }
391
+ .tooltip-enter-from,
392
+ .tooltip-leave-to {
393
+ opacity: 0;
394
+ }.online-indicator {
395
+ position: relative;
396
+ border-radius: 50%;
397
+ background: rgb(var(--grey));
398
+ border: 3px solid rgb(var(--light));
399
+ flex-shrink: 0;
400
+ }
401
+ .online-indicator.is-online {
402
+ background: rgb(var(--green));
403
+ }
404
+ .online-indicator.is-online::before, .online-indicator.is-online::after {
405
+ content: "";
406
+ position: absolute;
407
+ top: 50%;
408
+ left: 50%;
409
+ width: 100%;
410
+ height: 100%;
411
+ background: inherit;
412
+ border-radius: 50%;
413
+ transform: translate(-50%, -50%);
414
+ animation: indicator-pulse 2s infinite ease-out;
415
+ }
416
+ .online-indicator.is-online::after {
417
+ animation-delay: 1s;
418
+ }
419
+ @keyframes indicator-pulse {
420
+ 0% {
421
+ transform: translate(-50%, -50%) scale(1);
422
+ opacity: 0.5;
423
+ }
424
+ 100% {
425
+ transform: translate(-50%, -50%) scale(1.8);
426
+ opacity: 0;
427
+ }
428
+ }
429
+ .circular-loader-centered {
430
+ top: calc(50% - 1rem);
431
+ left: calc(50% - 1rem);
432
+ }
433
+ .circular-loader svg {
434
+ animation: rotate 2s linear infinite;
435
+ }
436
+ .circular-loader-circle {
437
+ stroke-dasharray: 1, 200;
438
+ stroke-dashoffset: 0;
439
+ stroke-linecap: round;
440
+ stroke: rgb(var(--main));
441
+ animation: dash 1.5s ease-in-out infinite;
442
+ }
443
+ .circular-loader-fill {
444
+ stroke-linecap: round;
445
+ stroke: rgba(var(--black),0.2);
446
+ }
447
+ .progress-text {
448
+ position: absolute;
449
+ top: 50%;
450
+ left: 50%;
451
+ transform: translate(-50%, -50%);
452
+ font-size: 0.8rem;
453
+ color: rgb(var(--main));
454
+ }
455
+ .status-text {
456
+ position: absolute;
457
+ top: 120%;
458
+ left: calc(50% - 5rem);
459
+ font-size: 0.8rem;
460
+ width: 10rem !important;
461
+ text-align: center;
462
+ }
463
+ @keyframes rotate {
464
+ 100% {
465
+ transform: rotate(360deg);
466
+ }
467
+ }
468
+ @keyframes dash {
469
+ 0% {
470
+ stroke-dasharray: 1, 200;
471
+ stroke-dashoffset: 0;
472
+ }
473
+ 50% {
474
+ stroke-dasharray: 89, 200;
475
+ stroke-dashoffset: -35;
476
+ }
477
+ 100% {
478
+ stroke-dasharray: 1, 200;
479
+ stroke-dashoffset: -124;
480
+ }
481
+ }
482
+ .vue3-reactive-tel-input {
395
483
  display: flex;
396
484
  }
397
485
  .vue3-reactive-tel-input.disabled .dropdown,
@@ -458,9 +546,7 @@ ul li[data-v-af5048fc] {
458
546
  font-size: inherit;
459
547
  color: inherit;
460
548
  text-align: center;
461
- }.slide-fade-enter-active {
462
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
463
- }
549
+ }.slide-fade-enter-active,
464
550
  .slide-fade-leave-active {
465
551
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
466
552
  }
@@ -474,9 +560,7 @@ ul li[data-v-af5048fc] {
474
560
  }.input-error {
475
561
  border: 1px solid red;
476
562
  box-shadow: 0 0 3px 0 red;
477
- }.slide-fade-enter-active {
478
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
479
- }
563
+ }.slide-fade-enter-active,
480
564
  .slide-fade-leave-active {
481
565
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
482
566
  }
@@ -859,14 +943,6 @@ button[data-v-7c705e8c]:disabled {
859
943
  font-size: 0;
860
944
  }
861
945
 
862
- .tooltip-container {
863
- position: relative;
864
- display: inline-block;
865
- }
866
- .tooltip-content {
867
- pointer-events: none;
868
- }
869
-
870
946
  .comment-children[data-v-d265fc89] {
871
947
  margin-top: 1rem;
872
948
  }
@@ -1291,10 +1367,12 @@ to {
1291
1367
  .shop-cart-active .shopcart-footer {
1292
1368
  right: 0;
1293
1369
  }
1294
- }.fade-enter-active, .fade-leave-active {
1370
+ }.fade-enter-active,
1371
+ .fade-leave-active {
1295
1372
  transition: opacity 0.5s;
1296
1373
  }
1297
- .fade-enter, .fade-leave-to {
1374
+ .fade-enter,
1375
+ .fade-leave-to {
1298
1376
  opacity: 0;
1299
1377
  }
1300
1378
  .fade-move,
@@ -1311,7 +1389,7 @@ to {
1311
1389
  }
1312
1390
 
1313
1391
  /* 3. ensure leaving items are taken out of layout flow so that moving
1314
- animations can be calculated correctly. */
1392
+ animations can be calculated correctly. */
1315
1393
  .fade-leave-active {
1316
1394
  position: absolute;
1317
1395
  }
@@ -1412,7 +1490,8 @@ to {
1412
1490
  .scaleIn-leave-active {
1413
1491
  transition: all 0.5s ease;
1414
1492
  }
1415
- .scaleIn-enter-active > section, .scaleIn-enter-active div,
1493
+ .scaleIn-enter-active > section,
1494
+ .scaleIn-enter-active div,
1416
1495
  .scaleIn-leave-active > section,
1417
1496
  .scaleIn-leave-active div {
1418
1497
  transform-origin: 0 0;
@@ -1424,7 +1503,8 @@ to {
1424
1503
  opacity: 0;
1425
1504
  transform: scale(0.95);
1426
1505
  }
1427
- .scaleIn-enter-from > section, .scaleIn-enter-from div,
1506
+ .scaleIn-enter-from > section,
1507
+ .scaleIn-enter-from div,
1428
1508
  .scaleIn-leave-to > section,
1429
1509
  .scaleIn-leave-to div {
1430
1510
  transform: translateZ(-30px);
@@ -3332,11 +3412,6 @@ input[data-v-120f776b]:focus {
3332
3412
  outline: none;
3333
3413
  }
3334
3414
 
3335
- .address[data-v-3daeada0] {
3336
- text-wrap: nowrap;
3337
- display: block;
3338
- }
3339
-
3340
3415
  .barcode-scanner-modal {
3341
3416
  visibility: visible;
3342
3417
  position: fixed;
@@ -1,4 +1,4 @@
1
- import { m as mailing } from "./mailing-DuEFRsa3.js";
1
+ import { m as mailing } from "./mailing-DT7nbNjZ.js";
2
2
  import path from "path";
3
3
  import puppeteer from "puppeteer";
4
4
  import * as QRCode from "qrcode";
@@ -0,0 +1,83 @@
1
+ import crypto from "crypto";
2
+ const fingerprintCache = /* @__PURE__ */ new Map();
3
+ const generateFingerprint = (req) => {
4
+ const { ip, headers } = req;
5
+ const userAgent = headers["user-agent"] || "";
6
+ const acceptLanguage = headers["accept-language"] || "";
7
+ const key = `${ip}-${userAgent}-${acceptLanguage}`;
8
+ if (fingerprintCache.has(key)) {
9
+ return fingerprintCache.get(key);
10
+ }
11
+ const hash = crypto.createHash("sha256");
12
+ hash.update(key);
13
+ const digest = hash.digest("hex");
14
+ fingerprintCache.set(key, digest);
15
+ return digest;
16
+ };
17
+ const generateVisitorId = () => crypto.randomBytes(16).toString("hex");
18
+ let instance = null;
19
+ function initVisitorsService(db) {
20
+ const Visitor = db.visitor;
21
+ async function findOrCreateVisitor(req) {
22
+ let visitorId = req.cookies?.visitorId;
23
+ let visitor = null;
24
+ if (visitorId && db.mongoose.Types.ObjectId.isValid(visitorId)) {
25
+ try {
26
+ visitor = await Visitor.findById(visitorId);
27
+ } catch (err) {
28
+ }
29
+ }
30
+ if (!visitor) {
31
+ const fingerprint = generateFingerprint(req);
32
+ visitor = await Visitor.findOneAndUpdate(
33
+ { fingerprint },
34
+ {
35
+ $setOnInsert: {
36
+ ip: req.ip,
37
+ userAgent: req.headers["user-agent"],
38
+ acceptLanguage: req.headers["accept-language"],
39
+ fingerprint
40
+ }
41
+ },
42
+ { upsert: true, new: true }
43
+ );
44
+ }
45
+ return visitor;
46
+ }
47
+ async function linkVisitorToUser({ visitorId, userId, sessionId = null }) {
48
+ const visitor = await Visitor.findByIdAndUpdate(
49
+ visitorId,
50
+ {
51
+ target: new db.mongoose.Types.ObjectId(userId),
52
+ linkedAt: /* @__PURE__ */ new Date()
53
+ },
54
+ { new: true }
55
+ );
56
+ return visitor;
57
+ }
58
+ async function getVisitorByFingerprint(fingerprint) {
59
+ return Visitor.findOne({ fingerprint });
60
+ }
61
+ async function getVisitorById(visitorId) {
62
+ return Visitor.findById(visitorId);
63
+ }
64
+ instance = {
65
+ findOrCreateVisitor,
66
+ linkVisitorToUser,
67
+ getVisitorByFingerprint,
68
+ getVisitorById,
69
+ generateFingerprint,
70
+ generateVisitorId
71
+ };
72
+ return instance;
73
+ }
74
+ function getVisitorsService() {
75
+ if (!instance) {
76
+ throw new Error("Visitors service not initialized. Call initVisitorsService(db) first.");
77
+ }
78
+ return instance;
79
+ }
80
+ export {
81
+ getVisitorsService as g,
82
+ initVisitorsService as i
83
+ };
@@ -1,6 +1,6 @@
1
1
  import * as QRCode from "qrcode";
2
- import { m as middlewareIndexFactory } from "./index-_Edcmck_.js";
3
- import { c as controllerFactory$1 } from "./tickets.controller-B7r0mK-5.js";
2
+ import { m as middlewareIndexFactory } from "./index-kvBwwb0w.js";
3
+ import { c as controllerFactory$1 } from "./tickets.controller-DdF85W-i.js";
4
4
  import { O as ObserverNamespaced } from "./core.observer-MZsqaE6F.js";
5
5
  import Stripe from "stripe";
6
6
  const controllerFactory = (db) => {
@@ -1,4 +1,4 @@
1
- import { W as p } from "./main-fmp55tJF.js";
1
+ import { W as p } from "./main-BIf-WirR.js";
2
2
  class f extends p {
3
3
  constructor() {
4
4
  super(...arguments), this.group = "CapacitorStorage";