@ozdao/martyrs 0.2.470 → 0.2.472

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 (284) hide show
  1. package/dist/{Media-CR0V1zvB.js → Media-DW8RLbfM.js} +1 -1
  2. package/dist/{Media-C4Ges_Sd.mjs → Media-y_TX6us_.mjs} +1 -1
  3. package/dist/_virtual/index.cjs +1 -1
  4. package/dist/_virtual/index.js +1 -1
  5. package/dist/auth.server.js +1 -1
  6. package/dist/auth.server.mjs +1 -1
  7. package/dist/chats.server.js +1 -1
  8. package/dist/chats.server.mjs +1 -1
  9. package/dist/community.server.js +1 -1
  10. package/dist/community.server.mjs +1 -1
  11. package/dist/events.server.js +1 -1
  12. package/dist/events.server.mjs +1 -1
  13. package/dist/files.server.js +1 -1
  14. package/dist/files.server.mjs +1 -1
  15. package/dist/gallery.server.js +1 -1
  16. package/dist/gallery.server.mjs +1 -1
  17. package/dist/{index-DQqZReAr.js → index-CVXl1rB5.js} +0 -1
  18. package/dist/{index-DICZTQ-1.mjs → index-Df8vtZx7.mjs} +0 -1
  19. package/dist/{main-CsZAG5Wz.js → main-CCfQH-Dd.js} +2 -2
  20. package/dist/{main-CTcal9qN.mjs → main-CgmHzhq5.mjs} +74 -74
  21. package/dist/{node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_ → martyrs}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs +1 -1
  22. package/dist/martyrs/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs.map +1 -0
  23. package/dist/{node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_ → martyrs}/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js +1 -1
  24. package/dist/martyrs/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +1 -0
  25. package/dist/martyrs/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +1 -0
  26. package/dist/martyrs/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +1 -0
  27. package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.cjs +5 -0
  28. package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.cjs.map +1 -0
  29. package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.js +5 -0
  30. package/dist/martyrs/node_modules/uuid/dist/esm-browser/regex.js.map +1 -0
  31. package/dist/{node_modules/.pnpm/uuid@11.1.0 → martyrs}/node_modules/uuid/dist/esm-browser/rng.cjs +4 -4
  32. package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.cjs.map +1 -0
  33. package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.js +15 -0
  34. package/dist/martyrs/node_modules/uuid/dist/esm-browser/rng.js.map +1 -0
  35. package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.cjs +17 -0
  36. package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.cjs.map +1 -0
  37. package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.js +17 -0
  38. package/dist/martyrs/node_modules/uuid/dist/esm-browser/stringify.js.map +1 -0
  39. package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.cjs +13 -0
  40. package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.cjs.map +1 -0
  41. package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.js +13 -0
  42. package/dist/martyrs/node_modules/uuid/dist/esm-browser/v4.js.map +1 -0
  43. package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.cjs +8 -0
  44. package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.cjs.map +1 -0
  45. package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.js +8 -0
  46. package/dist/martyrs/node_modules/uuid/dist/esm-browser/validate.js.map +1 -0
  47. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +2 -2
  48. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  49. package/dist/martyrs/src/components/Feed/Feed.vue.js +2 -2
  50. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  51. package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
  52. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
  53. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  54. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  55. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs +5 -5
  56. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.cjs.map +1 -1
  57. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js +5 -5
  58. package/dist/martyrs/src/components/Skeleton/Skeleton.vue.js.map +1 -1
  59. package/dist/martyrs/src/components/Tab/{Tab.vue2.cjs → Tab.vue.cjs} +2 -2
  60. package/dist/martyrs/src/components/Tab/{Tab.vue2.js.map → Tab.vue.cjs.map} +1 -1
  61. package/dist/martyrs/src/components/Tab/{Tab.vue2.js → Tab.vue.js} +2 -2
  62. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +1 -0
  63. package/dist/martyrs/src/components/Tree/Tree.vue.cjs +3 -1
  64. package/dist/martyrs/src/components/Tree/Tree.vue.cjs.map +1 -1
  65. package/dist/martyrs/src/components/Tree/Tree.vue.js +3 -1
  66. package/dist/martyrs/src/components/Tree/Tree.vue.js.map +1 -1
  67. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +1 -1
  68. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +1 -1
  69. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  70. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  71. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  72. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  73. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +1 -1
  74. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +1 -1
  75. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.cjs +1 -1
  76. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  77. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.cjs +1 -1
  78. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEdit.vue.js +1 -1
  79. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  80. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  81. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  82. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  83. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  84. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  85. package/dist/martyrs/src/modules/auth/views/store/auth.cjs +1 -0
  86. package/dist/martyrs/src/modules/auth/views/store/auth.cjs.map +1 -1
  87. package/dist/martyrs/src/modules/auth/views/store/auth.js +1 -0
  88. package/dist/martyrs/src/modules/auth/views/store/auth.js.map +1 -1
  89. package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.cjs +1 -1
  90. package/dist/martyrs/src/modules/constructor/components/sections/Constructor.vue.js +1 -1
  91. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.cjs +1 -1
  92. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  93. package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs +107 -21
  94. package/dist/martyrs/src/modules/globals/views/classes/globals.store.cjs.map +1 -1
  95. package/dist/martyrs/src/modules/globals/views/classes/globals.store.js +107 -21
  96. package/dist/martyrs/src/modules/globals/views/classes/globals.store.js.map +1 -1
  97. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +10 -14
  98. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs.map +1 -1
  99. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +12 -16
  100. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js.map +1 -1
  101. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.cjs +1 -1
  102. package/dist/martyrs/src/modules/globals/views/components/sections/SectionPageTitle.vue.js +1 -1
  103. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs +7 -13
  104. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.cjs.map +1 -1
  105. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js +7 -13
  106. package/dist/martyrs/src/modules/globals/views/utils/vue-app-renderer.js.map +1 -1
  107. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs +6 -7
  108. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.cjs.map +1 -1
  109. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +7 -8
  110. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js.map +1 -1
  111. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
  112. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
  113. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.cjs +1 -1
  114. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  115. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
  116. package/dist/martyrs/src/modules/organizations/components/pages/DepartmentEdit.vue.js +1 -1
  117. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +2 -2
  118. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +2 -2
  119. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +2 -2
  120. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +2 -2
  121. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
  122. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  123. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
  124. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +1 -1
  125. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.cjs +1 -1
  126. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  127. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  128. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  129. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs +11 -5
  130. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.cjs.map +1 -1
  131. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js +12 -6
  132. package/dist/martyrs/src/modules/products/components/blocks/CardCategory.vue.js.map +1 -1
  133. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs +34 -13
  134. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.cjs.map +1 -1
  135. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +35 -14
  136. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js.map +1 -1
  137. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +20 -9
  138. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs.map +1 -1
  139. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +21 -10
  140. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js.map +1 -1
  141. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/products/components/pages/Leftovers.vue.js +1 -1
  143. package/dist/martyrs/src/modules/products/components/pages/Product.vue.cjs +1 -1
  144. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +1 -1
  145. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -1
  146. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs.map +1 -1
  147. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -1
  148. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js.map +1 -1
  149. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +1 -1
  150. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +1 -1
  151. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  152. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  153. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.cjs +1 -1
  154. package/dist/martyrs/src/modules/rents/views/components/pages/GanttChart.vue.js +1 -1
  155. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.cjs +1 -1
  156. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  157. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +1 -1
  158. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
  159. package/dist/martyrs.cjs.js +1 -1
  160. package/dist/martyrs.css +1 -1
  161. package/dist/martyrs.es.js +1 -1
  162. package/dist/notifications.server.js +35 -2
  163. package/dist/notifications.server.mjs +35 -2
  164. package/dist/orders.server.js +3 -3
  165. package/dist/orders.server.mjs +3 -3
  166. package/dist/organizations.server.js +1 -1
  167. package/dist/organizations.server.mjs +1 -1
  168. package/dist/products.server.js +78 -53
  169. package/dist/products.server.mjs +78 -53
  170. package/dist/rents.server.js +1 -1
  171. package/dist/rents.server.mjs +1 -1
  172. package/dist/style.css +37 -38
  173. package/dist/wallet.server.js +1 -1
  174. package/dist/wallet.server.mjs +1 -1
  175. package/package.json +2 -1
  176. package/src/components/Feed/Feed.vue +2 -7
  177. package/src/components/Skeleton/Skeleton.vue +4 -5
  178. package/src/components/Tree/Tree.vue +5 -2
  179. package/src/modules/auth/controllers/middlewares/authJwt.js +1 -1
  180. package/src/modules/auth/views/store/auth.js +2 -1
  181. package/src/modules/globals/controllers/classes/globals.crud.js +2 -2
  182. package/src/modules/globals/views/classes/globals.store.js +119 -31
  183. package/src/modules/globals/views/components/partials/Navigation.vue +11 -10
  184. package/src/modules/globals/views/utils/vue-app-renderer.js +7 -16
  185. package/src/modules/icons/entities/IconMusic.vue +14 -0
  186. package/src/modules/icons/navigation/IconCheck.vue +31 -0
  187. package/src/modules/icons/navigation/IconHeart.vue +26 -0
  188. package/src/modules/icons/navigation/IconPause.vue +31 -0
  189. package/src/modules/icons/navigation/IconPlay.vue +17 -0
  190. package/src/modules/icons/navigation/IconRefresh.vue +31 -0
  191. package/src/modules/icons/navigation/IconShuffle.vue +31 -0
  192. package/src/modules/icons/navigation/IconVolume.vue +31 -0
  193. package/src/modules/music/components/SidebarMusic.vue +156 -0
  194. package/src/modules/music/components/cards/AlbumCard.vue +107 -0
  195. package/src/modules/music/components/cards/ArtistCard.vue +37 -0
  196. package/src/modules/music/components/cards/PlaylistCard.vue +100 -0
  197. package/src/modules/music/components/cards/TrackCard.vue +86 -0
  198. package/src/modules/music/components/forms/PlaylistForm.vue +156 -0
  199. package/src/modules/music/components/forms/SearchForm.vue +82 -0
  200. package/src/modules/music/components/forms/UploadForm.vue +313 -0
  201. package/src/modules/music/components/layouts/MusicLayout.vue +137 -0
  202. package/src/modules/music/components/lists/AlbumList.vue +25 -0
  203. package/src/modules/music/components/lists/ArtistList.vue +25 -0
  204. package/src/modules/music/components/lists/PlaylistList.vue +25 -0
  205. package/src/modules/music/components/lists/TrackList.vue +175 -0
  206. package/src/modules/music/components/pages/AlbumDetail.vue +265 -0
  207. package/src/modules/music/components/pages/ArtistDetail.vue +247 -0
  208. package/src/modules/music/components/pages/MusicHome.vue +177 -0
  209. package/src/modules/music/components/pages/MusicLibrary.vue +192 -0
  210. package/src/modules/music/components/pages/MusicUpload.vue +44 -0
  211. package/src/modules/music/components/pages/PlaylistDetail.vue +504 -0
  212. package/src/modules/music/components/pages/SearchResults.vue +397 -0
  213. package/src/modules/music/components/pages/TrackDetail.vue +143 -0
  214. package/src/modules/music/components/player/MusicPlayer.vue +202 -0
  215. package/src/modules/music/components/player/TrackProgress.vue +110 -0
  216. package/src/modules/music/components/player/VolumeControl.vue +98 -0
  217. package/src/modules/music/controllers/album.controller.js +98 -0
  218. package/src/modules/music/controllers/artist.controller.js +111 -0
  219. package/src/modules/music/controllers/genre.controller.js +71 -0
  220. package/src/modules/music/controllers/music.controller.js +174 -0
  221. package/src/modules/music/controllers/playlist.controller.js +182 -0
  222. package/src/modules/music/controllers/search.controller.js +103 -0
  223. package/src/modules/music/controllers/stream.controller.js +106 -0
  224. package/src/modules/music/models/album.model.js +61 -0
  225. package/src/modules/music/models/artist.model.js +67 -0
  226. package/src/modules/music/models/genre.model.js +42 -0
  227. package/src/modules/music/models/play-history.model.js +51 -0
  228. package/src/modules/music/models/playlist.model.js +69 -0
  229. package/src/modules/music/models/track.model.js +94 -0
  230. package/src/modules/music/music.client.js +186 -0
  231. package/src/modules/music/music.server.js +114 -0
  232. package/src/modules/music/policies/music.policies.js +84 -0
  233. package/src/modules/music/router/music.js +77 -0
  234. package/src/modules/music/routes/album.routes.js +62 -0
  235. package/src/modules/music/routes/artist.routes.js +67 -0
  236. package/src/modules/music/routes/genre.routes.js +60 -0
  237. package/src/modules/music/routes/music.routes.js +145 -0
  238. package/src/modules/music/routes/playlist.routes.js +99 -0
  239. package/src/modules/music/routes/search.routes.js +10 -0
  240. package/src/modules/music/routes/stream.routes.js +38 -0
  241. package/src/modules/music/store/albums.js +200 -0
  242. package/src/modules/music/store/artists.js +180 -0
  243. package/src/modules/music/store/player.js +397 -0
  244. package/src/modules/music/store/playlists.js +211 -0
  245. package/src/modules/music/store/search.js +126 -0
  246. package/src/modules/music/store/tracks.js +230 -0
  247. package/src/modules/music/websocket/streaming.handler.js +151 -0
  248. package/src/modules/notifications/controllers/notifications.controller.js +44 -1
  249. package/src/modules/notifications/notifications.server.js +0 -1
  250. package/src/modules/notifications/routes/notifications.routes.js +3 -0
  251. package/src/modules/orders/components/pages/OrderCreate.vue +0 -2
  252. package/src/modules/products/components/blocks/CardCategory.vue +5 -4
  253. package/src/modules/products/components/pages/Categories.vue +38 -20
  254. package/src/modules/products/components/pages/CategoryEdit.vue +16 -7
  255. package/src/modules/products/components/pages/ProductEdit.vue +1 -0
  256. package/src/modules/products/controllers/categories.controller.js +155 -103
  257. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
  258. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  259. package/dist/martyrs/src/components/Tab/Tab.vue2.cjs.map +0 -1
  260. package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.cjs.map +0 -1
  261. package/dist/node_modules/.pnpm/@vue_server-renderer@3.5.13_vue@3.5.13_typescript@5.8.3_/node_modules/@vue/server-renderer/dist/server-renderer.esm-bundler.js.map +0 -1
  262. package/dist/node_modules/.pnpm/@vue_shared@3.5.13/node_modules/@vue/shared/dist/shared.esm-bundler.cjs.map +0 -1
  263. package/dist/node_modules/.pnpm/@vue_shared@3.5.13/node_modules/@vue/shared/dist/shared.esm-bundler.js.map +0 -1
  264. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.cjs +0 -6
  265. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.cjs.map +0 -1
  266. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js +0 -6
  267. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/native.js.map +0 -1
  268. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.cjs.map +0 -1
  269. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js +0 -15
  270. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/rng.js.map +0 -1
  271. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.cjs +0 -11
  272. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.cjs.map +0 -1
  273. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js +0 -11
  274. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/stringify.js.map +0 -1
  275. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.cjs +0 -21
  276. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.cjs.map +0 -1
  277. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js +0 -21
  278. package/dist/node_modules/.pnpm/uuid@11.1.0/node_modules/uuid/dist/esm-browser/v4.js.map +0 -1
  279. /package/dist/{node_modules/.pnpm/@vue_shared@3.5.13 → martyrs}/node_modules/@vue/shared/dist/shared.esm-bundler.cjs +0 -0
  280. /package/dist/{node_modules/.pnpm/@vue_shared@3.5.13 → martyrs}/node_modules/@vue/shared/dist/shared.esm-bundler.js +0 -0
  281. /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.cjs +0 -0
  282. /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.cjs.map +0 -0
  283. /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.js +0 -0
  284. /package/dist/{node_modules → martyrs/node_modules}/fast-deep-equal/index.js.map +0 -0
package/dist/style.css CHANGED
@@ -441,7 +441,7 @@ ul li[data-v-bf25c24d] {
441
441
  flex-basis: 0;
442
442
  min-width: 0;
443
443
  }
444
- .skeleton-wrapper[data-v-1c010433] {
444
+ .skeleton-wrapper[data-v-70b3339a] {
445
445
  width: 100%;
446
446
  position: relative;
447
447
  background-color: var(--skeleton-card-color);
@@ -449,37 +449,36 @@ ul li[data-v-bf25c24d] {
449
449
  }
450
450
 
451
451
  /* Стили для режима загрузки */
452
- .skeleton-wrapper--loading[data-v-1c010433] * {
452
+ .skeleton-wrapper--loading[data-v-70b3339a] * {
453
453
  color: transparent !important;
454
454
  border-color: transparent !important;
455
455
  position: relative;
456
456
  }
457
- .skeleton-wrapper--loading[data-v-1c010433] img,
458
- .skeleton-wrapper--loading[data-v-1c010433] svg,
459
- .skeleton-wrapper--loading[data-v-1c010433] button,
460
- .skeleton-wrapper--loading[data-v-1c010433] a {
457
+ .skeleton-wrapper--loading[data-v-70b3339a] img,
458
+ .skeleton-wrapper--loading[data-v-70b3339a] svg,
459
+ .skeleton-wrapper--loading[data-v-70b3339a] button,
460
+ .skeleton-wrapper--loading[data-v-70b3339a] a {
461
461
  opacity: 0;
462
462
  }
463
- .skeleton-wrapper--loading[data-v-1c010433] *::before,
464
- .skeleton-wrapper--loading[data-v-1c010433] *::after {
463
+ .skeleton-wrapper--loading[data-v-70b3339a] *::before,
464
+ .skeleton-wrapper--loading[data-v-70b3339a] *::after {
465
465
  display: none !important;
466
466
  }
467
- .skeleton-wrapper--loading[data-v-1c010433] * {
467
+ .skeleton-wrapper--loading[data-v-70b3339a] * {
468
468
  position: relative;
469
469
  background-color: var(--skeleton-block-color) !important;
470
470
  border-radius: var(--skeleton-border-radius);
471
471
  overflow: hidden;
472
472
  }
473
- .skeleton-wrapper--loading[data-v-1c010433] *::before {
473
+ .skeleton-wrapper--loading[data-v-70b3339a] *::before {
474
474
  content: '';
475
475
  position: absolute;
476
476
  top: 0;
477
477
  left: -100%;
478
478
  width: 100%;
479
479
  height: 100%;
480
- z-index: 10;
481
480
  display: block !important;
482
- animation: shimmer-1c010433 var(--skeleton-animation-duration) infinite;
481
+ animation: shimmer-70b3339a var(--skeleton-animation-duration) infinite;
483
482
  background: linear-gradient(
484
483
  90deg,
485
484
  transparent 0%,
@@ -489,7 +488,7 @@ ul li[data-v-bf25c24d] {
489
488
  }
490
489
 
491
490
  /* Стили для структурного скелетона */
492
- .skeleton-structure[data-v-1c010433] {
491
+ .skeleton-structure[data-v-70b3339a] {
493
492
  display: flex;
494
493
  flex-direction: column;
495
494
  gap: 0.75rem;
@@ -497,25 +496,25 @@ ul li[data-v-bf25c24d] {
497
496
  }
498
497
 
499
498
  /* Горизонтальный скелетон для карточек пользователей */
500
- .skeleton-structure--horizontal[data-v-1c010433] {
499
+ .skeleton-structure--horizontal[data-v-70b3339a] {
501
500
  flex-direction: row;
502
501
  align-items: center;
503
502
  flex-wrap: nowrap;
504
503
  }
505
- .skeleton-item[data-v-1c010433] {
504
+ .skeleton-item[data-v-70b3339a] {
506
505
  background-color: var(--skeleton-block-color);
507
506
  border-radius: var(--skeleton-border-radius);
508
507
  position: relative;
509
508
  overflow: hidden;
510
509
  }
511
- .skeleton-item[data-v-1c010433]::after {
510
+ .skeleton-item[data-v-70b3339a]::after {
512
511
  content: '';
513
512
  position: absolute;
514
513
  top: 0;
515
514
  left: -100%;
516
515
  width: 100%;
517
516
  height: 100%;
518
- animation: shimmer-1c010433 var(--skeleton-animation-duration) infinite;
517
+ animation: shimmer-70b3339a var(--skeleton-animation-duration) infinite;
519
518
  background: linear-gradient(
520
519
  90deg,
521
520
  transparent 0%,
@@ -525,64 +524,64 @@ ul li[data-v-bf25c24d] {
525
524
  }
526
525
 
527
526
  /* Типы блоков */
528
- .skeleton-item--text[data-v-1c010433] {
527
+ .skeleton-item--text[data-v-70b3339a] {
529
528
  height: 1rem;
530
529
  width: 100%;
531
530
  }
532
- .skeleton-item--text-group[data-v-1c010433] {
531
+ .skeleton-item--text-group[data-v-70b3339a] {
533
532
  display: flex;
534
533
  flex-direction: column;
535
534
  gap: 0.5rem;
536
535
  flex: 1;
537
536
  }
538
- .skeleton-item--image[data-v-1c010433] {
537
+ .skeleton-item--image[data-v-70b3339a] {
539
538
  width: 100%;
540
539
  aspect-ratio: 16 / 9;
541
540
  }
542
- .skeleton-item--avatar[data-v-1c010433] {
541
+ .skeleton-item--avatar[data-v-70b3339a] {
543
542
  width: 4rem;
544
543
  height: 4rem;
545
544
  border-radius: 50%;
546
545
  flex-shrink: 0;
547
546
  }
548
- .skeleton-item--button[data-v-1c010433] {
547
+ .skeleton-item--button[data-v-70b3339a] {
549
548
  height: 3rem;
550
549
  width: 8rem;
551
550
  }
552
- .skeleton-item--circle[data-v-1c010433] {
551
+ .skeleton-item--circle[data-v-70b3339a] {
553
552
  border-radius: 50%;
554
553
  }
555
- .skeleton-item--action[data-v-1c010433] {
554
+ .skeleton-item--action[data-v-70b3339a] {
556
555
  width: 2rem;
557
556
  height: 2rem;
558
557
  border-radius: 50%;
559
558
  flex-shrink: 0;
560
559
  }
561
- .skeleton-item--actions-group[data-v-1c010433] {
560
+ .skeleton-item--actions-group[data-v-70b3339a] {
562
561
  display: flex;
563
562
  gap: 0.5rem;
564
563
  margin-left: auto;
565
564
  }
566
- .skeleton-item--square[data-v-1c010433] {
565
+ .skeleton-item--square[data-v-70b3339a] {
567
566
  aspect-ratio: 1 / 1;
568
567
  }
569
568
 
570
569
  /* Размеры */
571
- .skeleton-item--small[data-v-1c010433] {
570
+ .skeleton-item--small[data-v-70b3339a] {
572
571
  width: 30%;
573
572
  }
574
- .skeleton-item--medium[data-v-1c010433] {
573
+ .skeleton-item--medium[data-v-70b3339a] {
575
574
  width: 60%;
576
575
  }
577
- .skeleton-item--large[data-v-1c010433] {
576
+ .skeleton-item--large[data-v-70b3339a] {
578
577
  width: 100%;
579
578
  }
580
- .skeleton-item--rounded[data-v-1c010433] {
579
+ .skeleton-item--rounded[data-v-70b3339a] {
581
580
  border-radius: 50%;
582
581
  }
583
582
 
584
583
  /* Дефолтный скелетон */
585
- .skeleton-default[data-v-1c010433] {
584
+ .skeleton-default[data-v-70b3339a] {
586
585
  display: flex;
587
586
  flex-direction: column;
588
587
  gap: 0.75rem;
@@ -590,7 +589,7 @@ ul li[data-v-bf25c24d] {
590
589
  }
591
590
 
592
591
  /* Анимация движения полосы */
593
- @keyframes shimmer-1c010433 {
592
+ @keyframes shimmer-70b3339a {
594
593
  0% {
595
594
  left: -100%;
596
595
  }
@@ -1424,28 +1423,28 @@ div.vue-tags-input.disabled * {
1424
1423
  transform: translateX(0%);
1425
1424
  opacity: 1;
1426
1425
  }
1427
- .rotate-180[data-v-3ff9e945] {
1426
+ .rotate-180[data-v-f45211ee] {
1428
1427
  transform: rotate(180deg);
1429
1428
  }
1430
- .hidden[data-v-3ff9e945] {
1429
+ .hidden[data-v-f45211ee] {
1431
1430
  /* opacity: 0;*/
1432
1431
  width: 0;
1433
1432
  display: none;
1434
1433
  }
1435
- .visible[data-v-3ff9e945] {
1434
+ .visible[data-v-f45211ee] {
1436
1435
  /* opacity: 1;*/
1437
1436
  display: block;
1438
1437
  }
1439
1438
 
1440
1439
  /* Dropdown animations */
1441
- .dropdown-enter[data-v-3ff9e945], .dropdown-leave[data-v-3ff9e945] {
1440
+ .dropdown-enter[data-v-f45211ee], .dropdown-leave[data-v-f45211ee] {
1442
1441
  transition: all 0.3s ease-in-out;
1443
1442
  }
1444
- .dropdown-enter-from[data-v-3ff9e945], .dropdown-leave-to[data-v-3ff9e945] {
1443
+ .dropdown-enter-from[data-v-f45211ee], .dropdown-leave-to[data-v-f45211ee] {
1445
1444
  opacity: 0;
1446
1445
  transform: translateY(-0.5rem);
1447
1446
  }
1448
- .dropdown-enter-to[data-v-3ff9e945], .dropdown-leave-from[data-v-3ff9e945] {
1447
+ .dropdown-enter-to[data-v-f45211ee], .dropdown-leave-from[data-v-f45211ee] {
1449
1448
  opacity: 1;
1450
1449
  transform: translateY(0);
1451
1450
  }
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  const _commonjsHelpers = require("./_commonjsHelpers-DHfMLFPC.js");
3
- const index = require("./index-DQqZReAr.js");
3
+ const index = require("./index-CVXl1rB5.js");
4
4
  require("axios");
5
5
  require("bcryptjs");
6
6
  require("crypto");
@@ -1,5 +1,5 @@
1
1
  import { g as getDefaultExportFromCjs } from "./_commonjsHelpers-CUmg6egw.mjs";
2
- import { r as requireMiddlewares } from "./index-DICZTQ-1.mjs";
2
+ import { r as requireMiddlewares } from "./index-Df8vtZx7.mjs";
3
3
  import "axios";
4
4
  import "bcryptjs";
5
5
  import "crypto";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.470",
3
+ "version": "0.2.472",
4
4
  "description": "Fullstack framework focused on user experience and ease of development.",
5
5
  "author": "OZ DAO <hello@ozdao.dev>",
6
6
  "license": "GPL-3.0-or-later",
@@ -51,6 +51,7 @@
51
51
  }
52
52
  },
53
53
  "scripts": {
54
+ "preinstall": "npx only-allow pnpm",
54
55
  "clean": "rimraf dist",
55
56
  "docs:dev": "vitepress dev docs",
56
57
  "docs:build": "vitepress build docs",
@@ -90,7 +90,7 @@
90
90
  v-for="i in currentLimit"
91
91
  :structure="skeleton.structure"
92
92
  :horizontal="skeleton.horizontal"
93
- :loading="isLoading"
93
+ :loading="skeleton.apply_to_slot"
94
94
  :key="'skeleton-' + i"
95
95
  class="radius-medium o-hidden d-block"
96
96
  />
@@ -247,9 +247,6 @@ let sentinel = ref(null)
247
247
  let currentSkip = ref(props.options.skip ? props.options.skip : 0);
248
248
  let currentLimit = ref(props.options.limit ? props.options.limit : 10);
249
249
 
250
- // let sortParam = ref(sort.value?.param || 'createdAt');
251
- // let sortOrder = ref(sort.value?.order || 'asc');
252
-
253
250
  let currentSearch = ref('');
254
251
 
255
252
  function debounce(fn, delay) {
@@ -329,9 +326,8 @@ const fetchItems = async () => {
329
326
  if (items.value) items.value = itemsList.value;
330
327
  isLoading.value = false;
331
328
  };
332
-
333
329
  watch(
334
- () => [props.external, date.value, sort.value, props.options],
330
+ [() => props.external, () => date.value, () => ({...sort.value}), () => ({...props.options})],
335
331
  ([newExternal, newDate, newSort, newOptions], [oldExternal, oldDate, oldSort, oldOptions]) => {
336
332
  if (
337
333
  newExternal !== oldExternal ||
@@ -346,7 +342,6 @@ watch(
346
342
  },
347
343
  { deep: true }
348
344
  );
349
-
350
345
  let observer = null
351
346
 
352
347
  onMounted(async () => {
@@ -36,7 +36,7 @@ const props = defineProps({
36
36
  // Флаг загрузки, определяет, нужно ли показывать скелетон
37
37
  loading: {
38
38
  type: Boolean,
39
- default: true
39
+ default: false
40
40
  },
41
41
  // Структура скелетона, если не используется слот
42
42
  structure: {
@@ -56,12 +56,12 @@ const props = defineProps({
56
56
  // Цвет блоков скелетона (серый)
57
57
  blockColor: {
58
58
  type: String,
59
- default: 'rgb(var(--light))'
59
+ default: 'rgba(var(--white),0.25)'
60
60
  },
61
61
  // Цвет анимированной полосы (белый с прозрачностью)
62
62
  highlightColor: {
63
63
  type: String,
64
- default: 'rgba(255, 255, 255, 0.9)'
64
+ default: 'rgba(var(--white), 0.9)'
65
65
  },
66
66
  // Скорость анимации в секундах
67
67
  animationDuration: {
@@ -71,7 +71,7 @@ const props = defineProps({
71
71
  // Радиус закругления
72
72
  borderRadius: {
73
73
  type: String,
74
- default: '4px'
74
+ default: '0.5rem'
75
75
  }
76
76
  });
77
77
 
@@ -130,7 +130,6 @@ onMounted(() => {
130
130
  left: -100%;
131
131
  width: 100%;
132
132
  height: 100%;
133
- z-index: 10;
134
133
  display: block !important;
135
134
  animation: shimmer var(--skeleton-animation-duration) infinite;
136
135
  background: linear-gradient(
@@ -13,7 +13,7 @@
13
13
  </slot>
14
14
  <Tree
15
15
  :items="item.children"
16
- :state="items"
16
+ :state="state"
17
17
  @update="emitChange"
18
18
  class="pd-l-medium"
19
19
  v-slot="{ item }"
@@ -77,6 +77,8 @@ function updateOrders(items, startOrder = 0) {
77
77
  }
78
78
 
79
79
  function handleChange(event) {
80
+
81
+ console.log('event order is', event)
80
82
  if (!event.added && !event.moved) return;
81
83
 
82
84
  const targetId = event.added ?
@@ -84,11 +86,12 @@ function handleChange(event) {
84
86
  props.items[event.moved.newIndex]._id;
85
87
 
86
88
  const updatedCategory = findCategoryAndUpdateParent(props.state, targetId);
89
+
87
90
  if (!updatedCategory) return;
88
91
 
89
92
  // Обновляем order для всего дерева категорий
90
93
  updateOrders(props.state);
91
-
94
+ console.log('hi')
92
95
  // Отправляем обновленную категорию
93
96
  emits('update', updatedCategory);
94
97
  }
@@ -42,9 +42,9 @@ const middlewareFactory = (db) => {
42
42
  _id: decoded._id
43
43
  }
44
44
 
45
+
45
46
  next();
46
47
  } catch (err) {
47
- console.log(err);
48
48
  req.userId = null;
49
49
  if (continueOnFail) {
50
50
  next();
@@ -293,5 +293,6 @@ watch(state, (newState, oldState) => {
293
293
  // Module Export
294
294
  export {
295
295
  state,
296
- actions
296
+ actions,
297
+ removeCookie
297
298
  };
@@ -4,7 +4,7 @@ const Cache = require('@martyrs/src/modules/globals/controllers/classes/globals.
4
4
  const Logger = require('@martyrs/src/modules/globals/controllers/classes/globals.logger');
5
5
 
6
6
  class CRUD {
7
- constructor(basePath, app, db, model) {
7
+ constructor(basePath, app, db, model, options) {
8
8
  this.model = model;
9
9
  this.cache = new Cache();
10
10
  this.logger = new Logger(db);
@@ -12,7 +12,7 @@ class CRUD {
12
12
  this.app = app;
13
13
  this.basePath = basePath;
14
14
 
15
- this.registerRoutes();
15
+ if (!options || options && !options.disableDefaultRoutes) this.registerRoutes();
16
16
  }
17
17
 
18
18
  registerRoutes() {
@@ -1,7 +1,6 @@
1
1
  import { reactive } from 'vue';
2
-
3
2
  // Globals
4
- import { setError } from '@martyrs/src/modules/globals/views/store/globals'
3
+ import { setError } from '@martyrs/src/modules/globals/views/store/globals';
5
4
 
6
5
  class Store {
7
6
  constructor(apiUrl) {
@@ -10,12 +9,14 @@ class Store {
10
9
  current: {}
11
10
  });
12
11
  this.apiUrl = apiUrl;
12
+ console.log(`Store initialized with API URL: ${apiUrl}`);
13
13
  }
14
14
 
15
- // Simplified request method to avoid repetition and enhance maintainability
15
+ // Simplified request method with enhanced debugging
16
16
  async request(endpoint, options = {}) {
17
17
  const url = endpoint.startsWith('http') ? endpoint : `${this.apiUrl}${endpoint}`;
18
-
18
+ console.log(`Making request to: ${url}`, { method: options.method || 'GET' });
19
+
19
20
  const defaultOptions = {
20
21
  credentials: 'include', // Assumes credentials needed for each request
21
22
  headers: {}
@@ -32,56 +33,135 @@ class Store {
32
33
  }
33
34
 
34
35
  try {
36
+ console.log('Request options:', JSON.stringify({
37
+ method: finalOptions.method,
38
+ headers: finalOptions.headers,
39
+ bodyLength: finalOptions.body ? JSON.stringify(finalOptions.body).length : 0
40
+ }));
41
+
35
42
  const response = await fetch(url, finalOptions);
43
+ console.log(`Response status: ${response.status}`);
44
+
45
+ // Log response headers for debugging
46
+ const responseHeaders = {};
47
+ response.headers.forEach((value, key) => {
48
+ responseHeaders[key] = value;
49
+ });
50
+ console.log('Response headers:', responseHeaders);
36
51
 
37
52
  if (!response.ok) {
38
- const errorData = await response.json();
39
- const error = new Error(errorData.message || 'Unknown error');
53
+ let errorData;
54
+ try {
55
+ errorData = await response.json();
56
+ } catch (jsonError) {
57
+ console.error('Failed to parse error response as JSON:', jsonError);
58
+ errorData = { message: 'Failed to parse server response' };
59
+ }
60
+
61
+ console.error('Server returned error:', errorData);
62
+ const error = new Error(errorData.message || `Server returned ${response.status}`);
63
+ error.status = response.status;
40
64
  error.errorCode = errorData.errorCode || 'UNKNOWN_ERROR';
65
+ error.responseText = await response.text().catch(() => 'Unable to get response text');
41
66
  throw error;
42
67
  }
43
68
 
44
- return await response.json();
45
-
69
+ const data = await response.json();
70
+ console.log('Response data received successfully');
71
+ return data;
46
72
  } catch (error) {
47
- console.error(error);
73
+ console.error('Request failed:', error);
74
+ if (error.name === 'TypeError' && error.message.includes('Failed to fetch')) {
75
+ console.error('Network error detected. This might indicate a CORS issue, network connectivity problem, or the server is down.');
76
+ const enhancedError = new Error('Network error: Unable to connect to the server');
77
+ enhancedError.originalError = error;
78
+ setError(enhancedError);
79
+ throw enhancedError;
80
+ }
81
+
48
82
  setError(error);
49
83
  throw error;
50
84
  }
51
85
  }
52
86
 
53
87
  async create(item) {
54
- return await this.request('/create', {
55
- method: 'POST',
56
- body: item
57
- });
88
+ console.log('Creating item:', item);
89
+ try {
90
+ const result = await this.request('/create', {
91
+ method: 'POST',
92
+ body: item
93
+ });
94
+ console.log('Create operation succeeded:', result);
95
+ return result;
96
+ } catch (error) {
97
+ console.error('Create operation failed:', error);
98
+ // Log specific error details
99
+ if (error.status) {
100
+ console.error(`HTTP Status: ${error.status}`);
101
+ }
102
+ if (error.errorCode) {
103
+ console.error(`Error Code: ${error.errorCode}`);
104
+ }
105
+ setError(error);
106
+ throw error;
107
+ }
58
108
  }
59
109
 
60
110
  async read(options = {}) {
61
- const queryParams = new URLSearchParams(options).toString();
62
-
63
- return await this.request(`/read?${queryParams}`);
111
+ console.log('Reading items with options:', options);
112
+ try {
113
+ const queryParams = new URLSearchParams(options).toString();
114
+ const result = await this.request(`/read?${queryParams}`);
115
+ console.log(`Read operation returned ${result.length || 0} items`);
116
+ return result;
117
+ } catch (error) {
118
+ console.error('Read operation failed:', error);
119
+ setError(error);
120
+ throw error;
121
+ }
64
122
  }
65
123
 
66
124
  async update(item) {
67
- return await this.request('/update', {
68
- method: 'PUT',
69
- body: item
70
- });
125
+ console.log('Updating item:', item);
126
+ try {
127
+ const result = await this.request('/update', {
128
+ method: 'PUT',
129
+ body: item
130
+ });
131
+ console.log('Update operation succeeded:', result);
132
+ return result;
133
+ } catch (error) {
134
+ console.error('Update operation failed:', error);
135
+ setError(error);
136
+ throw error;
137
+ }
71
138
  }
72
139
 
73
140
  async delete(item) {
74
- return await this.request(`/delete`, {
75
- method: 'DELETE',
76
- body: item
77
- });
141
+ console.log('Deleting item:', item);
142
+ try {
143
+ const result = await this.request(`/delete`, {
144
+ method: 'DELETE',
145
+ body: item
146
+ });
147
+ console.log('Delete operation succeeded');
148
+ return result;
149
+ } catch (error) {
150
+ console.error('Delete operation failed:', error);
151
+ setError(error);
152
+ throw error;
153
+ }
78
154
  }
79
155
 
80
156
  // Enhanced Mutations utilizing Vue reactivity system efficiently
81
157
  setItems(items, state) {
158
+ console.log(`Setting ${items.length} items in state`);
82
159
  const targetState = state || this.state.items;
83
-
84
- state.splice(0, state.length, ...items);
160
+ if (Array.isArray(targetState)) {
161
+ targetState.splice(0, targetState.length, ...items);
162
+ } else {
163
+ console.error('Target state is not an array in setItems');
164
+ }
85
165
  }
86
166
 
87
167
  addItem(item, state, property = '_id') {
@@ -89,26 +169,34 @@ class Store {
89
169
  const existingItemIndex = targetState.findIndex(i => i[property] === item[property]);
90
170
 
91
171
  if (existingItemIndex === -1) {
172
+ console.log('Adding new item to state');
92
173
  targetState.splice(0, 0, item);
93
174
  } else {
175
+ console.log('Updating existing item in state');
94
176
  Object.assign(targetState[existingItemIndex], item);
95
177
  }
96
178
  }
97
179
 
98
180
  updateItem(item, state, property = '_id') {
99
- const targetState = state || this.state.items;
100
- const index = targetState.findIndex(i => i[property] === item[property]);
101
- if (index !== -1) {
102
- targetState.splice(index, 1, item);
103
- }
181
+ const targetState = state || this.state.items;
182
+ const index = targetState.findIndex(i => i[property] === item[property]);
183
+ if (index !== -1) {
184
+ console.log('Replacing item in state');
185
+ targetState.splice(index, 1, item);
186
+ } else {
187
+ console.log('Item not found for update in state');
104
188
  }
189
+ }
105
190
 
106
191
  removeItem(item, state, property = '_id') {
107
192
  const targetState = state || this.state.items;
108
193
  // Поиск и удаление элемента по указанному ключу
109
194
  const index = targetState.findIndex(i => i[property] === item[property]);
110
195
  if (index !== -1) {
196
+ console.log('Removing item from state');
111
197
  targetState.splice(index, 1);
198
+ } else {
199
+ console.log('Item not found for removal from state');
112
200
  }
113
201
  }
114
202
  }