@ozdao/martyrs 0.2.578 → 0.2.580

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 (225) hide show
  1. package/dist/builder.js +9 -1
  2. package/dist/loader.js +5 -0
  3. package/dist/{main-EZaj64lH.js → main-vq1_XpmQ.js} +430 -425
  4. package/dist/martyrs/dist/{main-EZaj64lH.js → main-vq1_XpmQ.js} +12 -12
  5. package/dist/martyrs/dist/main-vq1_XpmQ.js.map +1 -0
  6. package/dist/martyrs/dist/{web-ClbcbWYJ.js → web-BNJDRie_.js} +2 -2
  7. package/dist/martyrs/dist/{web-ClbcbWYJ.js.map → web-BNJDRie_.js.map} +1 -1
  8. package/dist/martyrs/src/components/Block/Block.vue.js +1 -1
  9. package/dist/martyrs/src/components/Chips/Chips.vue.js +2 -2
  10. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js +21 -11
  11. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +1 -1
  12. package/dist/martyrs/src/components/EditImages/{EditImages.vue.js → EditImages.vue2.js} +2 -2
  13. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +1 -0
  14. package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
  15. package/dist/martyrs/src/components/Menu/MenuItem.vue.js +3 -3
  16. package/dist/martyrs/src/components/Menu/MenuItem.vue.js.map +1 -1
  17. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  18. package/dist/martyrs/src/components/Tab/Tab.vue2.js.map +1 -0
  19. package/dist/martyrs/src/components/Tooltip/{Tooltip.vue2.js → Tooltip.vue.js} +2 -2
  20. package/dist/martyrs/src/components/Tooltip/Tooltip.vue.js.map +1 -0
  21. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  22. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  23. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  24. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  25. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  26. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  27. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +1 -1
  28. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +34 -38
  29. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js.map +1 -1
  30. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js +19 -10
  31. package/dist/martyrs/src/modules/core/views/components/partials/Sidebar.vue.js.map +1 -1
  32. package/dist/martyrs/src/modules/core/views/components/sections/{Filters.vue.js → Filters.vue2.js} +2 -2
  33. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue2.js.map +1 -0
  34. package/dist/martyrs/src/modules/core/views/components/sections/SectionPageTitle.vue.js +1 -1
  35. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +1 -1
  36. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
  37. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  38. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
  39. package/dist/martyrs/src/modules/icons/actions/IconDuplicate.vue.js +1 -1
  40. package/dist/martyrs/src/modules/icons/actions/IconOpenLink.vue.js +1 -1
  41. package/dist/martyrs/src/modules/icons/actions/IconShopcartAdd.vue.js +1 -1
  42. package/dist/martyrs/src/modules/icons/actions/IconShow.vue.js +1 -1
  43. package/dist/martyrs/src/modules/icons/entities/IconAddress.vue.js +1 -1
  44. package/dist/martyrs/src/modules/icons/entities/IconBell.vue.js +1 -1
  45. package/dist/martyrs/src/modules/icons/entities/IconCalendar.vue.js +1 -1
  46. package/dist/martyrs/src/modules/icons/entities/IconCatalog.vue.js +1 -1
  47. package/dist/martyrs/src/modules/icons/entities/IconCommunity.vue.js +1 -1
  48. package/dist/martyrs/src/modules/icons/entities/IconDate.vue.js +1 -1
  49. package/dist/martyrs/src/modules/icons/entities/IconDiscount.vue.js +1 -1
  50. package/dist/martyrs/src/modules/icons/entities/IconEarn.vue.js +1 -1
  51. package/dist/martyrs/src/modules/icons/entities/IconEmail.vue.js +1 -1
  52. package/dist/martyrs/src/modules/icons/entities/IconEvents.vue.js +1 -1
  53. package/dist/martyrs/src/modules/icons/entities/IconFeatured.vue.js +1 -1
  54. package/dist/martyrs/src/modules/icons/entities/IconFile.vue.js +1 -1
  55. package/dist/martyrs/src/modules/icons/entities/IconFollowing.vue.js +1 -1
  56. package/dist/martyrs/src/modules/icons/entities/IconGallery.vue.js +1 -1
  57. package/dist/martyrs/src/modules/icons/entities/IconGroups.vue.js +1 -1
  58. package/dist/martyrs/src/modules/icons/entities/IconHome.vue.js +1 -1
  59. package/dist/martyrs/src/modules/icons/entities/IconInfo.vue.js +1 -1
  60. package/dist/martyrs/src/modules/icons/entities/IconLeftovers.vue.js +1 -1
  61. package/dist/martyrs/src/modules/icons/entities/IconList.vue.js +1 -1
  62. package/dist/martyrs/src/modules/icons/entities/IconLock.vue.js +1 -1
  63. package/dist/martyrs/src/modules/icons/entities/IconMusic.vue.js +1 -1
  64. package/dist/martyrs/src/modules/icons/entities/IconOrders.vue.js +1 -1
  65. package/dist/martyrs/src/modules/icons/entities/IconPayments.vue.js +1 -1
  66. package/dist/martyrs/src/modules/icons/entities/IconPhone.vue.js +1 -1
  67. package/dist/martyrs/src/modules/icons/entities/IconPopular.vue.js +1 -1
  68. package/dist/martyrs/src/modules/icons/entities/IconPrice.vue.js +1 -1
  69. package/dist/martyrs/src/modules/icons/entities/IconProducts.vue.js +1 -1
  70. package/dist/martyrs/src/modules/icons/entities/IconProfile.vue.js +1 -1
  71. package/dist/martyrs/src/modules/icons/entities/IconRecent.vue.js +1 -1
  72. package/dist/martyrs/src/modules/icons/entities/IconSettings.vue.js +1 -1
  73. package/dist/martyrs/src/modules/icons/entities/IconShopcart.vue.js +1 -1
  74. package/dist/martyrs/src/modules/icons/navigation/IconAdd.vue.js +1 -1
  75. package/dist/martyrs/src/modules/icons/navigation/IconArrow.vue.js +1 -1
  76. package/dist/martyrs/src/modules/icons/navigation/IconAttach.vue.js +1 -1
  77. package/dist/martyrs/src/modules/icons/navigation/IconCheck.vue.js +1 -1
  78. package/dist/martyrs/src/modules/icons/navigation/IconCheckmark.vue.js +1 -1
  79. package/dist/martyrs/src/modules/icons/navigation/IconCross.vue.js +1 -1
  80. package/dist/martyrs/src/modules/icons/navigation/IconDelete.vue.js +1 -1
  81. package/dist/martyrs/src/modules/icons/navigation/IconDoubleCheck.vue.js +1 -1
  82. package/dist/martyrs/src/modules/icons/navigation/IconEdit.vue.js +1 -1
  83. package/dist/martyrs/src/modules/icons/navigation/IconEllipsis.vue.js +1 -1
  84. package/dist/martyrs/src/modules/icons/navigation/IconFilter.vue.js +1 -1
  85. package/dist/martyrs/src/modules/icons/navigation/IconHeart.vue.js +1 -1
  86. package/dist/martyrs/src/modules/icons/navigation/IconInfo.vue.js +1 -1
  87. package/dist/martyrs/src/modules/icons/navigation/IconLike.vue.js +1 -1
  88. package/dist/martyrs/src/modules/icons/navigation/IconMinus.vue.js +1 -1
  89. package/dist/martyrs/src/modules/icons/navigation/IconMute.vue.js +1 -1
  90. package/dist/martyrs/src/modules/icons/navigation/IconPause.vue.js +1 -1
  91. package/dist/martyrs/src/modules/icons/navigation/IconPlay.vue.js +1 -1
  92. package/dist/martyrs/src/modules/icons/navigation/IconPlus.vue.js +1 -1
  93. package/dist/martyrs/src/modules/icons/navigation/IconRefresh.vue.js +1 -1
  94. package/dist/martyrs/src/modules/icons/navigation/IconSearch.vue.js +1 -1
  95. package/dist/martyrs/src/modules/icons/navigation/IconShuffle.vue.js +1 -1
  96. package/dist/martyrs/src/modules/icons/navigation/IconSort.vue.js +1 -1
  97. package/dist/martyrs/src/modules/icons/navigation/IconUnMute.vue.js +1 -1
  98. package/dist/martyrs/src/modules/icons/navigation/IconUpload.vue.js +1 -1
  99. package/dist/martyrs/src/modules/icons/navigation/IconVolume.vue.js +1 -1
  100. package/dist/martyrs/src/modules/icons/socials/dribbble.vue.js +1 -1
  101. package/dist/martyrs/src/modules/icons/socials/facebook.vue.js +1 -1
  102. package/dist/martyrs/src/modules/icons/socials/instagram.vue.js +1 -1
  103. package/dist/martyrs/src/modules/icons/socials/line.vue.js +1 -1
  104. package/dist/martyrs/src/modules/icons/socials/linkedin.vue.js +1 -1
  105. package/dist/martyrs/src/modules/icons/socials/reddit.vue.js +1 -1
  106. package/dist/martyrs/src/modules/icons/socials/telegram.vue.js +1 -1
  107. package/dist/martyrs/src/modules/icons/socials/twitter.vue.js +1 -1
  108. package/dist/martyrs/src/modules/icons/socials/vk.vue.js +1 -1
  109. package/dist/martyrs/src/modules/icons/socials/whatsapp.vue.js +1 -1
  110. package/dist/martyrs/src/modules/icons/socials/youtube.vue.js +1 -1
  111. package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +1 -1
  112. package/dist/martyrs/src/modules/music/components/player/FullscreenPlayer.vue.js +1 -1
  113. package/dist/martyrs/src/modules/notifications/components/pages/Notifications.vue.js +1 -1
  114. package/dist/martyrs/src/modules/orders/components/blocks/CardOrderUser.vue.js +1 -1
  115. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  116. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
  117. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  118. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
  119. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +1 -1
  120. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +1 -1
  121. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  122. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +1 -1
  123. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  124. package/dist/martyrs/src/modules/products/components/blocks/ProductDiscounts.vue.js +1 -1
  125. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
  126. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +1 -1
  127. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  128. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -2
  129. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +1 -1
  130. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  131. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
  132. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  133. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +1 -1
  134. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +1 -1
  135. package/dist/martyrs.css +1 -1
  136. package/dist/martyrs.es.js +1 -1
  137. package/dist/style.css +36 -27
  138. package/dist/{web-ClbcbWYJ.js → web-BNJDRie_.js} +1 -1
  139. package/package.json +1 -1
  140. package/src/components/Chips/Chips.vue +2 -2
  141. package/src/components/Dropdown/Dropdown.vue +42 -14
  142. package/src/components/Menu/MenuItem.vue +3 -3
  143. package/src/jit/loader.js +5 -0
  144. package/src/jit/plugin.js +10 -1
  145. package/src/modules/core/views/components/partials/Navigation.vue +9 -12
  146. package/src/modules/core/views/components/partials/Sidebar.vue +17 -11
  147. package/src/modules/icons/actions/IconDuplicate.vue +1 -1
  148. package/src/modules/icons/actions/IconOpenLink.vue +1 -1
  149. package/src/modules/icons/actions/IconShopcartAdd.vue +1 -1
  150. package/src/modules/icons/actions/IconShow.vue +1 -1
  151. package/src/modules/icons/entities/IconAddress.vue +1 -1
  152. package/src/modules/icons/entities/IconBell.vue +1 -1
  153. package/src/modules/icons/entities/IconCalendar.vue +1 -1
  154. package/src/modules/icons/entities/IconCash.vue +1 -1
  155. package/src/modules/icons/entities/IconCatalog.vue +1 -1
  156. package/src/modules/icons/entities/IconCommunity.vue +1 -1
  157. package/src/modules/icons/entities/IconDate.vue +1 -1
  158. package/src/modules/icons/entities/IconDiscount.vue +1 -1
  159. package/src/modules/icons/entities/IconEarn.vue +1 -1
  160. package/src/modules/icons/entities/IconEmail.vue +1 -1
  161. package/src/modules/icons/entities/IconEvents.vue +1 -1
  162. package/src/modules/icons/entities/IconFeatured.vue +1 -1
  163. package/src/modules/icons/entities/IconFile.vue +1 -1
  164. package/src/modules/icons/entities/IconFollowing.vue +1 -1
  165. package/src/modules/icons/entities/IconGallery.vue +1 -1
  166. package/src/modules/icons/entities/IconGroups.vue +1 -1
  167. package/src/modules/icons/entities/IconHome.vue +1 -1
  168. package/src/modules/icons/entities/IconInfo.vue +1 -1
  169. package/src/modules/icons/entities/IconLeftovers.vue +1 -1
  170. package/src/modules/icons/entities/IconList.vue +1 -1
  171. package/src/modules/icons/entities/IconLock.vue +1 -1
  172. package/src/modules/icons/entities/IconMusic.vue +1 -1
  173. package/src/modules/icons/entities/IconOrders.vue +1 -1
  174. package/src/modules/icons/entities/IconPayments.vue +1 -1
  175. package/src/modules/icons/entities/IconPhone.vue +1 -1
  176. package/src/modules/icons/entities/IconPopular.vue +1 -1
  177. package/src/modules/icons/entities/IconPrice.vue +1 -1
  178. package/src/modules/icons/entities/IconProducts.vue +1 -1
  179. package/src/modules/icons/entities/IconProfile.vue +1 -1
  180. package/src/modules/icons/entities/IconRecent.vue +1 -1
  181. package/src/modules/icons/entities/IconSettings.vue +1 -1
  182. package/src/modules/icons/entities/IconShopcart.vue +1 -1
  183. package/src/modules/icons/navigation/IconAdd.vue +1 -1
  184. package/src/modules/icons/navigation/IconArrow.vue +1 -1
  185. package/src/modules/icons/navigation/IconAttach.vue +1 -1
  186. package/src/modules/icons/navigation/IconCheck.vue +1 -1
  187. package/src/modules/icons/navigation/IconCheckmark.vue +1 -1
  188. package/src/modules/icons/navigation/IconCross.vue +1 -1
  189. package/src/modules/icons/navigation/IconDelete.vue +1 -1
  190. package/src/modules/icons/navigation/IconDoubleCheck.vue +1 -1
  191. package/src/modules/icons/navigation/IconEdit.vue +1 -1
  192. package/src/modules/icons/navigation/IconEllipsis.vue +1 -1
  193. package/src/modules/icons/navigation/IconFilter.vue +1 -1
  194. package/src/modules/icons/navigation/IconHeart.vue +1 -1
  195. package/src/modules/icons/navigation/IconInfo.vue +1 -1
  196. package/src/modules/icons/navigation/IconLike.vue +1 -1
  197. package/src/modules/icons/navigation/IconMinus.vue +1 -1
  198. package/src/modules/icons/navigation/IconMute.vue +1 -1
  199. package/src/modules/icons/navigation/IconPause.vue +1 -1
  200. package/src/modules/icons/navigation/IconPlay.vue +1 -1
  201. package/src/modules/icons/navigation/IconPlus.vue +1 -1
  202. package/src/modules/icons/navigation/IconRefresh.vue +1 -1
  203. package/src/modules/icons/navigation/IconSearch.vue +1 -1
  204. package/src/modules/icons/navigation/IconShuffle.vue +1 -1
  205. package/src/modules/icons/navigation/IconSort.vue +1 -1
  206. package/src/modules/icons/navigation/IconUnMute.vue +1 -1
  207. package/src/modules/icons/navigation/IconUpload.vue +1 -1
  208. package/src/modules/icons/navigation/IconVolume.vue +1 -1
  209. package/src/modules/icons/socials/dribbble.vue +1 -1
  210. package/src/modules/icons/socials/facebook.vue +1 -1
  211. package/src/modules/icons/socials/instagram.vue +1 -1
  212. package/src/modules/icons/socials/line.vue +1 -1
  213. package/src/modules/icons/socials/linkedin.vue +1 -1
  214. package/src/modules/icons/socials/reddit.vue +1 -1
  215. package/src/modules/icons/socials/telegram.vue +1 -1
  216. package/src/modules/icons/socials/twitter.vue +1 -1
  217. package/src/modules/icons/socials/vk.vue +1 -1
  218. package/src/modules/icons/socials/whatsapp.vue +1 -1
  219. package/src/modules/icons/socials/youtube.vue +1 -1
  220. package/src/styles/config.scss +0 -1
  221. package/dist/martyrs/dist/main-EZaj64lH.js.map +0 -1
  222. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +0 -1
  223. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  224. package/dist/martyrs/src/components/Tooltip/Tooltip.vue2.js.map +0 -1
  225. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js.map +0 -1
package/dist/style.css CHANGED
@@ -275,15 +275,24 @@ a.button {
275
275
  top: 0;
276
276
  }
277
277
  .dropdown-content {
278
- display: block;
279
278
  position: absolute;
280
279
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
281
- z-index: 1;
280
+ z-index: 100;
281
+ border-radius: var(--small);
282
+ transform-origin: top left;
283
+ backdrop-filter: blur(var(--small));
284
+ -webkit-backdrop-filter: blur(var(--small));
285
+ background: rgba(var(--white), 0.5);
286
+ }
287
+ .dropdown-enter-active,
288
+ .dropdown-leave-active {
289
+ transition: transform 0.33s cubic-bezier(0.9, 0, 0.1, 1), opacity 0.15s ease;
290
+ }
291
+ .dropdown-enter-from,
292
+ .dropdown-leave-to {
293
+ opacity: 0.01;
294
+ transform: translateY(-4px) scale(0.8);
282
295
  }
283
-
284
- /*.dropdown:hover .dropdown-content {
285
- display: block;
286
- }*/
287
296
  .mobile-menu-section > div:last-of-type {
288
297
  border-bottom: none !important;
289
298
  }
@@ -1544,76 +1553,76 @@ to {
1544
1553
  overflow: hidden;
1545
1554
  transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
1546
1555
  }
1547
- .rotate-180deg[data-v-4bed57a8] {
1556
+ .rotate-180deg[data-v-9f149045] {
1548
1557
  transform: rotate(180deg);
1549
1558
  }
1550
- .hidden[data-v-4bed57a8] {
1559
+ .hidden[data-v-9f149045] {
1551
1560
  /* opacity: 0;*/
1552
1561
  width: 0;
1553
1562
  display: none;
1554
1563
  }
1555
- .visible[data-v-4bed57a8] {
1564
+ .visible[data-v-9f149045] {
1556
1565
  /* opacity: 1;*/
1557
1566
  display: block;
1558
1567
  }
1559
1568
 
1560
1569
  /* Dropdown animations */
1561
- .dropdown-enter[data-v-4bed57a8], .dropdown-leave[data-v-4bed57a8] {
1570
+ .dropdown-enter[data-v-9f149045], .dropdown-leave[data-v-9f149045] {
1562
1571
  transition: all 0.3s ease-in-out;
1563
1572
  }
1564
- .dropdown-enter-from[data-v-4bed57a8], .dropdown-leave-to[data-v-4bed57a8] {
1573
+ .dropdown-enter-from[data-v-9f149045], .dropdown-leave-to[data-v-9f149045] {
1565
1574
  opacity: 0;
1566
1575
  transform: translateY(-0.5rem);
1567
1576
  }
1568
- .dropdown-enter-to[data-v-4bed57a8], .dropdown-leave-from[data-v-4bed57a8] {
1577
+ .dropdown-enter-to[data-v-9f149045], .dropdown-leave-from[data-v-9f149045] {
1569
1578
  opacity: 1;
1570
1579
  transform: translateY(0);
1571
1580
  }
1572
1581
 
1573
1582
  /* Horizontal dropdown submenu */
1574
- .dropdown-submenu[data-v-4bed57a8] {
1583
+ .dropdown-submenu[data-v-9f149045] {
1575
1584
  list-style: none;
1576
1585
  padding: 0.5rem;
1577
1586
  margin: 0;
1578
1587
  min-width: 12rem;
1579
1588
  }
1580
- .dropdown-submenu li[data-v-4bed57a8] {
1589
+ .dropdown-submenu li[data-v-9f149045] {
1581
1590
  width: 100%;
1582
1591
  }
1583
- .dropdown-submenu a[data-v-4bed57a8] {
1592
+ .dropdown-submenu a[data-v-9f149045] {
1584
1593
  display: flex;
1585
1594
  text-decoration: none;
1586
1595
  white-space: nowrap;
1587
1596
  }
1588
1597
 
1589
1598
  /* Transition for horizontal dropdown */
1590
- [data-v-4bed57a8] .TransitionTranslateY-enter-active,[data-v-4bed57a8] .TransitionTranslateY-leave-active {
1599
+ [data-v-9f149045] .TransitionTranslateY-enter-active,[data-v-9f149045] .TransitionTranslateY-leave-active {
1591
1600
  transition: translateY 0.2s ease;
1592
1601
  transition: opacity 0.2s ease;
1593
1602
  }
1594
- [data-v-4bed57a8] .TransitionTranslateY-enter-from,[data-v-4bed57a8] .TransitionTranslateY-leave-to {
1603
+ [data-v-9f149045] .TransitionTranslateY-enter-from,[data-v-9f149045] .TransitionTranslateY-leave-to {
1595
1604
  opacity: 0;
1596
1605
  transform: translateY(-0.5rem);
1597
1606
  }
1598
- [data-v-4bed57a8] .TransitionTranslateY-enter-to,[data-v-4bed57a8] .TransitionTranslateY-leave-from {
1607
+ [data-v-9f149045] .TransitionTranslateY-enter-to,[data-v-9f149045] .TransitionTranslateY-leave-from {
1599
1608
  opacity: 1;
1600
1609
  transform: translateY(0);
1601
1610
  }
1602
1611
 
1603
- .hidden[data-v-c3592737] {
1612
+ .hidden[data-v-499f10e6] {
1604
1613
  opacity: 0;
1605
1614
  width: 0;
1606
1615
  display: none;
1607
1616
  }
1608
- .visible[data-v-c3592737] {
1617
+ .visible[data-v-499f10e6] {
1609
1618
  opacity: 1;
1610
1619
  display: block;
1611
1620
  }
1612
1621
 
1613
1622
  /* Mobile: ВСЕГДА скрываем, показываем ТОЛЬКО по клику меню */
1614
1623
  @media (max-width: 1024px) {
1615
- aside[data-sidebar][data-v-c3592737] {
1616
- position: fixed !important;
1624
+ aside[data-sidebar][data-v-499f10e6] {
1625
+ position: absolute !important;
1617
1626
  left: 0 !important;
1618
1627
  transform: translateX(-100%) !important;
1619
1628
  visibility: hidden !important;
@@ -1621,24 +1630,24 @@ aside[data-sidebar][data-v-c3592737] {
1621
1630
  }
1622
1631
 
1623
1632
  /* Показываем ТОЛЬКО когда manual клик (НЕ от SSR state) */
1624
- aside[data-sidebar].mobile-opened[data-v-c3592737] {
1633
+ aside[data-sidebar].mobile-opened[data-v-499f10e6] {
1625
1634
  transform: translateX(0) !important;
1626
1635
  visibility: visible !important;
1627
1636
  }
1628
1637
  }
1629
1638
 
1630
1639
  /* Scrollbar styles */
1631
- [data-v-c3592737]::-webkit-scrollbar {
1640
+ [data-v-499f10e6]::-webkit-scrollbar {
1632
1641
  width: 6px;
1633
1642
  }
1634
- [data-v-c3592737]::-webkit-scrollbar-track {
1643
+ [data-v-499f10e6]::-webkit-scrollbar-track {
1635
1644
  background: transparent;
1636
1645
  }
1637
- [data-v-c3592737]::-webkit-scrollbar-thumb {
1646
+ [data-v-499f10e6]::-webkit-scrollbar-thumb {
1638
1647
  background-color: var(--grey-micro);
1639
1648
  border-radius: 3px;
1640
1649
  }
1641
- [data-v-c3592737]::-webkit-scrollbar-thumb:hover {
1650
+ [data-v-499f10e6]::-webkit-scrollbar-thumb:hover {
1642
1651
  background-color: var(--grey-small);
1643
1652
  }
1644
1653
  .eye[data-v-4241147a] {
@@ -1,4 +1,4 @@
1
- import { W as p } from "./main-EZaj64lH.js";
1
+ import { W as p } from "./main-vq1_XpmQ.js";
2
2
  class f extends p {
3
3
  constructor() {
4
4
  super(...arguments), this.group = "CapacitorStorage";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.578",
3
+ "version": "0.2.580",
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",
@@ -1,12 +1,12 @@
1
1
  <template>
2
2
  <div
3
- class="font-main"
3
+ class=""
4
4
  >
5
5
  <slot></slot>
6
6
  <p
7
7
  v-if="chips?.length"
8
8
  v-for="(chip,index) in chips"
9
- :class="'p-regular font-main'"
9
+ :class="'p-regular'"
10
10
  class="mn-r-nano d-inline-block w-max p-regular pd-thin radius-thin fw-medium bg-main"
11
11
  >
12
12
  {{chip.text ? chip.text : chip}}
@@ -3,8 +3,8 @@
3
3
  class="dropdown pos-relative"
4
4
  v-click-outside="clickedOutside"
5
5
  @click.stop="trigger === 'click' ? (isOpen = !isOpen) : null"
6
- @mouseenter="trigger === 'hover' ? (isOpen = true) : null"
7
- @mouseleave="trigger === 'hover' ? (isOpen = false) : null"
6
+ @mouseenter="handleMouseEnter"
7
+ @mouseleave="handleMouseLeave"
8
8
  >
9
9
  <slot name="label">
10
10
  <div v-if="isComponentLabel" class="w-100 h-100 flex-center flex">
@@ -14,15 +14,15 @@
14
14
  {{ label }}
15
15
  </div>
16
16
  </slot>
17
- <transition name="TransitionTranslateY" mode="out-in">
17
+ <Transition name="dropdown">
18
18
  <div
19
- v-show="isOpen"
19
+ v-if="isOpen"
20
20
  :style="{ left: align === 'left' ? '0' : 'auto', right: align === 'right' ? '0' : 'auto' }"
21
- class="dropdown-content "
21
+ class="dropdown-content"
22
22
  >
23
23
  <slot></slot>
24
24
  </div>
25
- </transition>
25
+ </Transition>
26
26
  </div>
27
27
  </template>
28
28
 
@@ -50,22 +50,50 @@ const props = defineProps({
50
50
  const isOpen = ref(false);
51
51
  const isComponentLabel = computed(() => typeof props.label === 'object');
52
52
 
53
- function clickedOutside () {
53
+ let closeTimeout = null;
54
+
55
+ function handleMouseEnter() {
56
+ if (props.trigger === 'hover') {
57
+ clearTimeout(closeTimeout);
58
+ isOpen.value = true;
59
+ }
60
+ }
61
+
62
+ function handleMouseLeave() {
63
+ if (props.trigger === 'hover') {
64
+ closeTimeout = setTimeout(() => {
65
+ isOpen.value = false;
66
+ }, 100);
67
+ }
68
+ }
69
+
70
+ function clickedOutside() {
54
71
  if (props.trigger === 'click') {
55
- isOpen.value = false
72
+ isOpen.value = false;
56
73
  }
57
74
  }
58
75
  </script>
59
76
 
60
- <style >
77
+ <style>
61
78
  .dropdown-content {
62
- display: block;
63
79
  position: absolute;
64
80
  box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
65
- z-index: 1;
81
+ z-index: 100;
82
+ border-radius: var(--small);
83
+ transform-origin: top left;
84
+ backdrop-filter: blur(var(--small));
85
+ -webkit-backdrop-filter: blur(var(--small));
86
+ background: rgba(var(--white), 0.5);
66
87
  }
67
88
 
68
- /*.dropdown:hover .dropdown-content {
69
- display: block;
70
- }*/
89
+ .dropdown-enter-active,
90
+ .dropdown-leave-active {
91
+ transition: transform 0.33s cubic-bezier(0.9, 0, 0.1, 1), opacity 0.15s ease;
92
+ }
93
+
94
+ .dropdown-enter-from,
95
+ .dropdown-leave-to {
96
+ opacity: 0.01;
97
+ transform: translateY(-4px) scale(0.8);
98
+ }
71
99
  </style>
@@ -45,19 +45,19 @@
45
45
  h(
46
46
  'div',
47
47
  {
48
- class: ['w-100', 'mn-b-thin', 'mn-t-thin', 'mn-r-small', 'i-big', 'flex-v-center', 'flex']
48
+ class: ['flex-child-1', 'mn-b-thin', 'mn-t-thin', 'mn-r-small', 'i-big', 'flex-v-center', 'flex']
49
49
  },
50
50
  [
51
51
  h(
52
52
  'span',
53
53
  {
54
- class: ['p-medium', 'fw-medium', 'mn-r-auto']
54
+ class: ['p-medium', 'fw-medium']
55
55
  },
56
56
  textSlot
57
57
  )
58
58
  ]
59
59
  ),
60
- h(IconChevronRight, { class: "i-medium mn-r-medium", type: "chevron"})
60
+ h(IconChevronRight, { class: "i-medium mn-r-medium flex-child-default", type: "chevron"})
61
61
  ]
62
62
  );
63
63
  };
package/src/jit/loader.js CHANGED
@@ -22,7 +22,12 @@ export default function martyrsLoader(source) {
22
22
 
23
23
  // Извлекаем токены через метод плагина
24
24
  try {
25
+ const before = plugin.tokensByFile.get(resourcePath)?.size || 0;
25
26
  plugin.extractFromFile(source, resourcePath);
27
+ const after = plugin.tokensByFile.get(resourcePath)?.size || 0;
28
+ if (before !== after) {
29
+ console.log(`[MartyrsJIT Loader] ${resourcePath.split('/').pop()}: ${before} → ${after} tokens`);
30
+ }
26
31
  } catch (error) {
27
32
  console.warn(`[MartyrsJIT] Error extracting tokens from ${resourcePath}:`, error.message);
28
33
  }
package/src/jit/plugin.js CHANGED
@@ -140,7 +140,9 @@ export class MartyrsJitPlugin {
140
140
  if (replaced) {
141
141
  const { RawSource } = compiler.webpack.sources;
142
142
  compilation.updateAsset(filename, new RawSource(source));
143
- console.log(`[MartyrsJIT] ${this.tokens.size} tokens in ${duration.toFixed(2)}ms`);
143
+ console.log(`[MartyrsJIT] Replaced in ${filename}: ${this.tokens.size} tokens in ${duration.toFixed(2)}ms`);
144
+ } else if (filename.includes('martyrs') || filename.includes('__martyrs')) {
145
+ console.log(`[MartyrsJIT] No placeholder found in ${filename}`);
144
146
  }
145
147
  }
146
148
  }
@@ -161,6 +163,13 @@ export class MartyrsJitPlugin {
161
163
  }
162
164
  // Сбрасываем кэш CSS (токены изменённых файлов обновятся через loader)
163
165
  this.jit.reset();
166
+ // Переписываем виртуальный модуль с плейсхолдером, чтобы rspack пересобрал CSS
167
+ try {
168
+ this.virtualModules.writeModule(VIRTUAL_MODULE_PATH, LAYER_PLACEHOLDER + '\n/*' + Date.now() + '*/');
169
+ console.log('[MartyrsJIT] Virtual module rewritten with placeholder');
170
+ } catch (e) {
171
+ console.log('[MartyrsJIT] watchRun: store not ready yet', e.message);
172
+ }
164
173
  });
165
174
  }
166
175
 
@@ -72,10 +72,10 @@ const processRoute = (routeFn) => {
72
72
 
73
73
  <template>
74
74
  <nav
75
- class="ease-quint-out o-x-visible h-100"
75
+ class="ease-quint-out"
76
76
  :class="[
77
77
  stateSidebar ? 'pd-small' : 'pd-micro',
78
- horizontal ? 'w-100 desktop-only gap-thin flex flex-center flex-nowrap o-y-visible' : 'o-y-scroll gap-medium rows-1',
78
+ horizontal ? 'w-100 desktop-only gap-thin flex flex-center flex-nowrap o-y-visible o-x-visible' : 'gap-medium flex flex-column',
79
79
  ]"
80
80
  >
81
81
  <div
@@ -130,12 +130,12 @@ const processRoute = (routeFn) => {
130
130
  <!-- <IconChevronBottom :fill="theme === 'dark' ? 'rgb(var(--white))': 'rgb(var(--black))'" class="i-small mn-l-thin"/> -->
131
131
  </button>
132
132
  </template>
133
- <ul class="dropdown-submenu bg-blur-small" :class="theme === 'light' ? 'bg-white-transp-50 ' : 'bg-black-transp-50'">
133
+ <ul class="dropdown-submenu">
134
134
  <li v-for="subItem in item.subItems" :key="subItem.title">
135
135
  <a
136
136
  @click="subItem.route ? router.push(processRoute(subItem.route)) : null"
137
137
  href="#"
138
- class="ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small"
138
+ class="group ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small"
139
139
  :class="[
140
140
  subItem.route && route.path === processRoute(subItem.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',
141
141
  theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'
@@ -144,8 +144,7 @@ const processRoute = (routeFn) => {
144
144
  <component
145
145
  v-if="subItem.iconComponent"
146
146
  :is="subItem.iconComponent"
147
- class="i-medium"
148
- fill="rgba(var(--black), 0.25)"
147
+ class="i-medium t-black-transp-25 group-hover:t-main"
149
148
  />
150
149
  <span v-else class="">{{ subItem.icon }}</span>
151
150
  <span class="w-100">{{ subItem.title }}</span>
@@ -155,7 +154,7 @@ const processRoute = (routeFn) => {
155
154
  </Dropdown>
156
155
  <button
157
156
  v-else
158
- class="ease-quint-out w-100 flex radius-small flex-nowrap cursor-pointer flex-v-center"
157
+ class="group ease-quint-out w-100 flex radius-small flex-nowrap cursor-pointer flex-v-center"
159
158
  @click="item.route ? (isPhone ? (stateSidebar = false) : null, route.path !== processRoute(item.route) ? router.push(processRoute(item.route)) : null) : null"
160
159
  :class="[
161
160
  horizontal ? 'pd-thin' : '',
@@ -167,8 +166,7 @@ const processRoute = (routeFn) => {
167
166
  <component
168
167
  v-if="item.iconComponent"
169
168
  :is="item.iconComponent"
170
- class="i-medium flex-child-default"
171
- fill="rgba(var(--black), 0.25)"
169
+ class="i-medium flex-child-default ease-quint-out t-black-transp-25 group-hover:t-main"
172
170
  />
173
171
  <span
174
172
  v-if="!item.iconComponent "
@@ -211,7 +209,7 @@ const processRoute = (routeFn) => {
211
209
  <a
212
210
  @click="subItem.route ? (isPhone ? (stateSidebar = false) : null, route.path !== processRoute(subItem.route) ? router.push(processRoute(subItem.route)) : null) : null"
213
211
  href="#"
214
- class="ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small"
212
+ class="group ease-quint-out flex flex-v-center flex-nowrap gap-thin pd-thin radius-small"
215
213
  :class="[
216
214
  subItem.route && route.path === processRoute(subItem.route) ? theme === 'light' ? 'bg-light' : 'bg-dark' : '',
217
215
  theme === 'light' ? 'hover:bg-light' : 'hover:bg-dark'
@@ -220,8 +218,7 @@ const processRoute = (routeFn) => {
220
218
  <component
221
219
  v-if="subItem.iconComponent"
222
220
  :is="subItem.iconComponent"
223
- class="i-medium"
224
- fill="rgba(var(--black), 0.25)"
221
+ class="i-medium t-black-transp-25 group-hover:t-main"
225
222
  />
226
223
  <span v-else class="">{{ subItem.icon }}</span>
227
224
  <span class="w-100">{{ subItem.title }}</span>
@@ -86,7 +86,7 @@ router.beforeEach((to, from) => {
86
86
  <template>
87
87
  <aside
88
88
  data-sidebar
89
- class="ease-quint-out w-min-0 o-hidden flex-child-default z-index-2 br-r-1px flex flex-column h-100"
89
+ class="ease-quint-out w-min-0 flex-child-default z-index-2 br-r-1px flex flex-column h-100"
90
90
  :class="[
91
91
  { 'mobile-opened': isManuallyOpened },
92
92
  stateSidebar
@@ -100,23 +100,29 @@ router.beforeEach((to, from) => {
100
100
  @mouseenter="handleMouseEnter"
101
101
  @mouseleave="handleMouseLeave"
102
102
  >
103
- <!-- Slot for header component (e.g., ProfileCard) -->
104
- <slot name="header"></slot>
103
+ <!-- Header slot - shrink-0 -->
104
+ <div class="flex-shrink-0">
105
+ <slot name="header"></slot>
106
+ </div>
105
107
 
106
- <!-- Slot for navigation content -->
107
- <slot></slot>
108
+ <!-- Main scrollable content - flex-1 overflow-y-auto -->
109
+ <div class="flex-child-1 o-y-auto">
110
+ <slot></slot>
111
+ </div>
108
112
 
109
- <!-- Slot for footer component (e.g., HelpCard) -->
110
- <slot name="footer"></slot>
111
- <div v-if="MOBILE_APP" @click="() => toggleSidebar()" class="pos-relative">
113
+ <!-- Footer slot - shrink-0 -->
114
+ <div class="flex-shrink-0">
115
+ <slot name="footer"></slot>
116
+ </div>
117
+ <div v-if="MOBILE_APP" @click="() => toggleSidebar()" class="flex-shrink-0 pos-relative">
112
118
  <div class="bg-light radius-medium pd-medium">
113
119
  <p class="fw-medium t-black-transp-60">
114
120
  Close Menu
115
121
  </p>
116
122
  </div>
117
123
  </div>
118
- <div
119
- class="w-100 br-t-1px"
124
+ <div
125
+ class="flex-shrink-0 w-100 br-t-1px"
120
126
  :class="{
121
127
  'pd-micro': !stateSidebar,
122
128
  'pd-small': stateSidebar,
@@ -160,7 +166,7 @@ router.beforeEach((to, from) => {
160
166
  /* Mobile: ВСЕГДА скрываем, показываем ТОЛЬКО по клику меню */
161
167
  @media (max-width: 1024px) {
162
168
  aside[data-sidebar] {
163
- position: fixed !important;
169
+ position: absolute !important;
164
170
  left: 0 !important;
165
171
  transform: translateX(-100%) !important;
166
172
  visibility: hidden !important;
@@ -11,7 +11,7 @@
11
11
  const props = defineProps({
12
12
  fill: {
13
13
  type: String,
14
- default: 'rgb(var(--black))'
14
+ default: 'currentColor'
15
15
  }
16
16
  })
17
17
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  }
13
13
  })
14
14
  </script>
@@ -9,7 +9,7 @@
9
9
  const props = defineProps({
10
10
  fill: {
11
11
  type: String,
12
- default: 'rgb(var(--black))'
12
+ default: 'currentColor'
13
13
  }
14
14
  })
15
15
  </script>
@@ -13,7 +13,7 @@
13
13
  const props = defineProps({
14
14
  fill: {
15
15
  type: String,
16
- default: 'rgb(var(--black))'
16
+ default: 'currentColor'
17
17
  },
18
18
  show: {
19
19
  type: Boolean,
@@ -11,7 +11,7 @@
11
11
  const props = defineProps({
12
12
  fill: {
13
13
  type: String,
14
- default: 'rgb(var(--black))'
14
+ default: 'currentColor'
15
15
  }
16
16
  })
17
17
  </script>
@@ -9,7 +9,7 @@
9
9
  const props = defineProps({
10
10
  fill: {
11
11
  type: String,
12
- default: 'rgb(var(--black))'
12
+ default: 'currentColor'
13
13
  },
14
14
  theme: {
15
15
  type: String,
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  },
13
13
  order: {
14
14
  type: String,
@@ -17,7 +17,7 @@
17
17
  const props = defineProps({
18
18
  fill: {
19
19
  type: String,
20
- default: 'rgb(var(--black))'
20
+ default: 'currentColor'
21
21
  }
22
22
  })
23
23
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  },
13
13
  theme: {
14
14
  type: String,
@@ -10,7 +10,7 @@
10
10
  const props = defineProps({
11
11
  fill: {
12
12
  type: String,
13
- default: 'rgb(var(--black))'
13
+ default: 'currentColor'
14
14
  }
15
15
  })
16
16
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  }
13
13
  })
14
14
  </script>
@@ -13,7 +13,7 @@
13
13
  const props = defineProps({
14
14
  fill: {
15
15
  type: String,
16
- default: 'rgb(var(--black))'
16
+ default: 'currentColor'
17
17
  },
18
18
  theme: {
19
19
  type: String,
@@ -14,7 +14,7 @@
14
14
  const props = defineProps({
15
15
  fill: {
16
16
  type: String,
17
- default: 'rgb(var(--black))'
17
+ default: 'currentColor'
18
18
  }
19
19
  })
20
20
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  }
13
13
  })
14
14
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  }
13
13
  })
14
14
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  }
13
13
  })
14
14
  </script>
@@ -8,7 +8,7 @@
8
8
  const props = defineProps({
9
9
  fill: {
10
10
  type: String,
11
- default: 'rgb(var(--black))'
11
+ default: 'currentColor'
12
12
  }
13
13
  })
14
14
  </script>
@@ -11,7 +11,7 @@
11
11
  const props = defineProps({
12
12
  fill: {
13
13
  type: String,
14
- default: 'rgb(var(--black))'
14
+ default: 'currentColor'
15
15
  }
16
16
  })
17
17
  </script>