@ozdao/martyrs 0.2.597 → 0.2.599

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 (132) hide show
  1. package/dist/builder.js +38 -37
  2. package/dist/martyrs/src/components/Button/{Button.vue2.js → Button.vue.js} +2 -2
  3. package/dist/martyrs/src/components/Button/Button.vue.js.map +1 -0
  4. package/dist/martyrs/src/components/EditImages/{EditImages.vue.js → EditImages.vue2.js} +2 -2
  5. package/dist/martyrs/src/components/EditImages/EditImages.vue2.js.map +1 -0
  6. package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
  7. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
  8. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  9. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  10. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.js → Spoiler.vue2.js} +2 -2
  11. package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.js.map +1 -0
  12. package/dist/martyrs/src/components/Tab/{Tab.vue.js → Tab.vue2.js} +2 -2
  13. package/dist/martyrs/src/components/Tab/Tab.vue2.js.map +1 -0
  14. package/dist/martyrs/src/modules/auth/views/components/blocks/PopupAuth.vue.js +1 -1
  15. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +2 -2
  16. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +2 -2
  17. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileBlogposts.vue.js +1 -1
  18. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditAccount.vue.js +1 -1
  19. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  20. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +2 -2
  21. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +2 -2
  22. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +2 -2
  23. package/dist/martyrs/src/modules/community/components/pages/BlogPost.vue.js +1 -1
  24. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  25. package/dist/martyrs/src/modules/core/views/classes/core.app.js.map +1 -1
  26. package/dist/martyrs/src/modules/core/views/components/blocks/CardHeader.vue.js +1 -1
  27. package/dist/martyrs/src/modules/core/views/components/blocks/PopupDateSelector.vue.js +1 -1
  28. package/dist/martyrs/src/modules/core/views/components/layouts/Client.vue.js +1 -1
  29. package/dist/martyrs/src/modules/core/views/components/partials/Header.vue.js +1 -1
  30. package/dist/martyrs/src/modules/core/views/components/partials/Navigation.vue.js +1 -1
  31. package/dist/martyrs/src/modules/core/views/components/partials/NavigationBar.vue.js +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/elements/ButtonCheck.vue.js +1 -1
  36. package/dist/martyrs/src/modules/events/components/elements/ButtonJoin.vue.js +1 -1
  37. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +2 -2
  38. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  39. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +1 -1
  40. package/dist/martyrs/src/modules/events/components/pages/EventsBackoffice.vue.js +1 -1
  41. package/dist/martyrs/src/modules/events/components/sections/EditTickets.vue.js +1 -1
  42. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
  43. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +1 -1
  44. package/dist/martyrs/src/modules/inventory/components/forms/ColumnSettingsMenu.vue.js +1 -1
  45. package/dist/martyrs/src/modules/inventory/components/forms/HistoryView.vue.js +1 -1
  46. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +1 -1
  47. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +1 -1
  48. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +1 -1
  49. package/dist/martyrs/src/modules/marketplace/views/components/pages/Marketplace.vue.js +1 -1
  50. package/dist/martyrs/src/modules/music/components/blocks/ActionButtons.vue.js +1 -1
  51. package/dist/martyrs/src/modules/music/components/cards/AlbumCard.vue.js +1 -1
  52. package/dist/martyrs/src/modules/music/components/cards/ArtistCardSmall.vue.js +1 -1
  53. package/dist/martyrs/src/modules/music/components/cards/PlaylistCard.vue.js +1 -1
  54. package/dist/martyrs/src/modules/music/components/cards/TrackListCard.vue.js +1 -1
  55. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +1 -1
  56. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +1 -1
  57. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
  58. package/dist/martyrs/src/modules/music/components/forms/SearchForm.vue.js +1 -1
  59. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +1 -1
  60. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
  61. package/dist/martyrs/src/modules/music/components/pages/Artist.vue.js +1 -1
  62. package/dist/martyrs/src/modules/music/components/pages/MusicLibrary.vue.js +1 -1
  63. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +1 -1
  64. package/dist/martyrs/src/modules/music/components/pages/SearchResults.vue.js +1 -1
  65. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +1 -1
  66. package/dist/martyrs/src/modules/music/components/pages/TrackCreate.vue.js +1 -1
  67. package/dist/martyrs/src/modules/music/components/player/MusicPlayer.vue.js +1 -1
  68. package/dist/martyrs/src/modules/music/components/player/PlayerControls.vue.js +1 -1
  69. package/dist/martyrs/src/modules/music/components/player/VolumeControl.vue.js +1 -1
  70. package/dist/martyrs/src/modules/notifications/components/sections/NotificationPreferences.vue.js +1 -1
  71. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +1 -1
  72. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +1 -1
  73. package/dist/martyrs/src/modules/orders/components/forms/FormSelectCustomer.vue.js +1 -1
  74. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  75. package/dist/martyrs/src/modules/orders/components/pages/OrderCreate.vue.js +1 -1
  76. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  77. package/dist/martyrs/src/modules/orders/components/pages/Orders.vue.js +1 -1
  78. package/dist/martyrs/src/modules/orders/components/sections/ApplicationDetails.vue.js +1 -1
  79. package/dist/martyrs/src/modules/orders/components/sections/CustomerDetails.vue.js +1 -1
  80. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +1 -1
  81. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +1 -1
  82. package/dist/martyrs/src/modules/organizations/components/elements/ButtonToggleMembership.vue.js +1 -1
  83. package/dist/martyrs/src/modules/organizations/components/forms/AddExistingMembersForm.vue.js +1 -1
  84. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
  85. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
  86. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +1 -1
  87. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +1 -1
  88. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  89. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +3 -3
  90. package/dist/martyrs/src/modules/organizations/components/pages/Organizations.vue.js +1 -1
  91. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  92. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  93. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  94. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  95. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  96. package/dist/martyrs/src/modules/pages/views/components/partials/SidebarPages.vue.js +1 -1
  97. package/dist/martyrs/src/modules/products/components/pages/Categories.vue.js +1 -1
  98. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +2 -2
  99. package/dist/martyrs/src/modules/products/components/pages/Product.vue.js +2 -2
  100. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +3 -3
  101. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +3 -3
  102. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  103. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +1 -1
  104. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  105. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
  106. package/dist/martyrs/src/modules/products/components/sections/ProductConfigurator.vue.js +1 -1
  107. package/dist/martyrs/src/modules/products/components/sections/ProductsRecommended.vue.js +1 -1
  108. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +2 -2
  109. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +2 -2
  110. package/dist/martyrs/src/modules/rents/views/components/pages/Rents.vue.js +1 -1
  111. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
  112. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  113. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +1 -1
  114. package/dist/martyrs/src/modules/spots/components/pages/Map.vue.js +1 -1
  115. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +1 -1
  116. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  117. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +1 -1
  118. package/package.json +1 -1
  119. package/src/builder/ssr/asset-resolver.js +14 -15
  120. package/src/jit/core.js +26 -19
  121. package/src/jit/plugin.js +1 -1
  122. package/src/jit/variants.js +2 -2
  123. package/src/modules/TASKS.MD +40 -8
  124. package/src/modules/TASKS_FINISHED.MD +16 -0
  125. package/src/modules/core/views/classes/core.app.js +1 -1
  126. package/src/styles/config.scss +2 -0
  127. package/dist/martyrs/src/components/Button/Button.vue2.js.map +0 -1
  128. package/dist/martyrs/src/components/EditImages/EditImages.vue.js.map +0 -1
  129. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  130. package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +0 -1
  131. package/dist/martyrs/src/components/Tab/Tab.vue.js.map +0 -1
  132. package/dist/martyrs/src/modules/core/views/components/sections/Filters.vue.js.map +0 -1
@@ -5,7 +5,7 @@ import "vue-i18n";
5
5
  /* empty css */
6
6
  import _sfc_main$1 from "../../../../components/Dropdown/Dropdown.vue2.js";
7
7
  import _sfc_main$7 from "../../../../components/Chips/Chips.vue.js";
8
- /* empty css */
8
+ /* empty css */
9
9
  import "../../../../components/Menu/MenuItem.vue.js";
10
10
  import _sfc_main$6 from "../../../icons/entities/IconFollowing.vue.js";
11
11
  import _sfc_main$5 from "../../../icons/navigation/IconEdit.vue.js";
@@ -1,5 +1,5 @@
1
1
  import { ref, onMounted, createElementBlock, openBlock, createVNode, withCtx, createBlock, createCommentVNode, unref, createElementVNode } from "vue";
2
- import _sfc_main$1 from "../../../../components/Menu/Menu.vue.js";
2
+ import _sfc_main$1 from "../../../../components/Menu/Menu.vue2.js";
3
3
  import _sfc_main$2 from "../../../../components/Menu/MenuItem.vue.js";
4
4
  /* empty css */
5
5
  import _sfc_main$4 from "../../../icons/entities/IconProducts.vue.js";
@@ -12,7 +12,7 @@ import _sfc_main$3 from "../../../icons/actions/IconShow.vue.js";
12
12
  import Field from "../../../../components/Field/Field.vue.js";
13
13
  /* empty css */
14
14
  /* empty css */
15
- /* empty css */
15
+ /* empty css */
16
16
  /* empty css */
17
17
  /* empty css */
18
18
  /* empty css */
@@ -21,11 +21,11 @@ import Field from "../../../../components/Field/Field.vue.js";
21
21
  import "vue-i18n";
22
22
  /* empty css */
23
23
  import _sfc_main$4 from "../../../../components/FieldTags/BlockTags.vue.js";
24
- /* empty css */
24
+ /* empty css */
25
25
  /* empty css */
26
26
  /* empty css */
27
27
  import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
28
- import _sfc_main$5 from "../../../../components/Button/Button.vue2.js";
28
+ import _sfc_main$5 from "../../../../components/Button/Button.vue.js";
29
29
  import { state as state$1 } from "../../../auth/views/store/auth.js";
30
30
  import { actions, state } from "../../store/organizations.js";
31
31
  const _hoisted_1 = { class: "for-transition pd-thin" };
@@ -1,6 +1,6 @@
1
1
  import { ref, watch, createElementBlock, openBlock, createCommentVNode, createVNode, createElementVNode, Transition, withCtx, unref, Fragment, renderList, isMemoSame, createBlock } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
- import _sfc_main$1 from "../../../../components/Tab/Tab.vue.js";
3
+ import _sfc_main$1 from "../../../../components/Tab/Tab.vue2.js";
4
4
  import _sfc_main$2 from "../../../../components/Feed/Feed.vue.js";
5
5
  import { state } from "../../../auth/views/store/auth.js";
6
6
  import { actions } from "../../store/organizations.js";
@@ -2,7 +2,7 @@ import { ref, watchEffect, resolveComponent, createElementBlock, openBlock, crea
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import Field from "../../../../components/Field/Field.vue.js";
4
4
  /* empty css */
5
- /* empty css */
5
+ /* empty css */
6
6
  /* empty css */
7
7
  import _export_sfc from "../../../../../../_virtual/_plugin-vue_export-helper.js";
8
8
  const _hoisted_1 = { class: "documents" };
@@ -1,7 +1,7 @@
1
1
  import { ref, resolveDirective, createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, withDirectives, createCommentVNode, isRef, unref, withCtx, Fragment, renderList, createBlock } from "vue";
2
2
  import Field from "../../../../components/Field/Field.vue.js";
3
3
  /* empty css */
4
- import _sfc_main$6 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$6 from "../../../../components/Button/Button.vue.js";
5
5
  import _sfc_main$2 from "../../../../components/Feed/Feed.vue.js";
6
6
  import _sfc_main$1 from "../../../core/views/components/blocks/BlockSearch.vue.js";
7
7
  import _sfc_main$3 from "../../../auth/views/components/blocks/CardUser.vue.js";
@@ -1,10 +1,10 @@
1
1
  import { ref, withAsyncContext, watch, createElementBlock, openBlock, createElementVNode, createBlock, Fragment, renderList, normalizeClass } from "vue";
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import "../../../../../../node_modules/.pnpm/js-cookie@3.0.5/node_modules/js-cookie/dist/js.cookie.js";
4
- /* empty css */
4
+ /* empty css */
5
5
  /* empty css */
6
6
  /* empty css */
7
- /* empty css */
7
+ /* empty css */
8
8
  import _sfc_main$2 from "../blocks/CardOrganization.vue.js";
9
9
  import _sfc_main$1 from "../blocks/EmptyState.vue.js";
10
10
  import "./Unit.vue.js";
@@ -1,7 +1,7 @@
1
1
  import { ref, resolveComponent, createElementBlock, openBlock, createElementVNode, createCommentVNode, normalizeClass, createVNode, createBlock, unref, withCtx, createTextVNode, toDisplayString, Fragment, renderList } from "vue";
2
2
  import _sfc_main$1 from "../../../../icons/navigation/IconEdit.vue.js";
3
3
  import _sfc_main$2 from "../../../../icons/navigation/IconAdd.vue.js";
4
- /* empty css */
4
+ /* empty css */
5
5
  /* empty css */
6
6
  import { useRouter } from "vue-router";
7
7
  /* empty css */
@@ -2,7 +2,7 @@ import { ref, onMounted, createElementBlock, createCommentVNode, openBlock, crea
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import { useGlobalMixins } from "../../../../core/views/mixins/mixins.js";
4
4
  import { actions, state } from "../../store/pages.js";
5
- import _sfc_main$2 from "../../../../../components/Button/Button.vue2.js";
5
+ import _sfc_main$2 from "../../../../../components/Button/Button.vue.js";
6
6
  /* empty css */
7
7
  /* empty css */
8
8
  /* empty css */
@@ -2,7 +2,7 @@ import { computed, ref, onMounted, createBlock, createCommentVNode, openBlock, w
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../../components/Block/Block.vue.js";
4
4
  import _sfc_main$3 from "../../../../../components/Popup/Popup.vue.js";
5
- import _sfc_main$5 from "../../../../../components/Button/Button.vue2.js";
5
+ import _sfc_main$5 from "../../../../../components/Button/Button.vue.js";
6
6
  import _sfc_main$4 from "../../../../constructor/components/sections/Constructor.vue.js";
7
7
  import _sfc_main$2 from "../blocks/CardPage.vue.js";
8
8
  import { actions } from "../../store/pages.js";
@@ -4,7 +4,7 @@ import { useStore } from "../../../core/views/store/core.store.js";
4
4
  import { state } from "../../../auth/views/store/auth.js";
5
5
  import { state as state$1, actions } from "../../store/categories.js";
6
6
  import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
7
- /* empty css */
7
+ /* empty css */
8
8
  import _sfc_main$2 from "../../../../components/Block/Block.vue.js";
9
9
  import _sfc_main$3 from "../../../../components/Feed/Feed.vue.js";
10
10
  import _sfc_main$4 from "../../../../components/Tree/Tree.vue.js";
@@ -1,7 +1,7 @@
1
1
  import { ref, onMounted, computed, onUnmounted, createElementBlock, createCommentVNode, openBlock, createBlock, createVNode, withCtx, createElementVNode, toDisplayString, unref, createTextVNode, Fragment, renderList } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import _sfc_main$4 from "../../../icons/navigation/IconDelete.vue.js";
4
- import _sfc_main$3 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$3 from "../../../../components/Button/Button.vue.js";
5
5
  import Select from "../../../../components/Select/Select.vue.js";
6
6
  import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
7
7
  import Field from "../../../../components/Field/Field.vue.js";
@@ -15,7 +15,7 @@ import _sfc_main$1 from "../../../icons/navigation/IconCheckmark.vue.js";
15
15
  /* empty css */
16
16
  /* empty css */
17
17
  /* empty css */
18
- /* empty css */
18
+ /* empty css */
19
19
  /* empty css */
20
20
  import _sfc_main$2 from "../../../../components/Block/Block.vue.js";
21
21
  import { useStore } from "../../../core/views/store/core.store.js";
@@ -5,9 +5,9 @@ import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
5
5
  import { state as state$1 } from "../../../auth/views/store/auth.js";
6
6
  import { state, actions } from "../../store/products.js";
7
7
  import { state as state$2, actions as actions$1 } from "../../../orders/store/shopcart.js";
8
- /* empty css */
8
+ /* empty css */
9
9
  /* empty css */
10
- /* empty css */
10
+ /* empty css */
11
11
  /* empty css */
12
12
  import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
13
13
  import _sfc_main$4 from "../../../icons/navigation/IconInfo.vue.js";
@@ -1,11 +1,11 @@
1
1
  import { ref, onMounted, createElementBlock, createCommentVNode, unref, openBlock, createBlock, createElementVNode, withCtx, createVNode, toDisplayString, createTextVNode, isRef, withModifiers, Fragment, renderList } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
4
- import _sfc_main$3 from "../../../../components/Tab/Tab.vue.js";
4
+ import _sfc_main$3 from "../../../../components/Tab/Tab.vue2.js";
5
5
  import Field from "../../../../components/Field/Field.vue.js";
6
6
  import Select from "../../../../components/Select/Select.vue.js";
7
- import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
8
- import _sfc_main$4 from "../../../../components/EditImages/EditImages.vue.js";
7
+ import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
8
+ import _sfc_main$4 from "../../../../components/EditImages/EditImages.vue2.js";
9
9
  import BlockMultiselect from "../../../core/views/components/blocks/BlockMultiselect.vue.js";
10
10
  import _sfc_main$5 from "../../../icons/navigation/IconCross.vue.js";
11
11
  import _sfc_main$a from "../../../icons/navigation/IconDelete.vue.js";
@@ -1,15 +1,15 @@
1
1
  import { ref, computed, onMounted, onUnmounted, resolveComponent, createElementBlock, openBlock, createCommentVNode, createElementVNode, createVNode, unref, toDisplayString, Fragment, renderList, createTextVNode, createBlock, withCtx, normalizeClass, renderSlot } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import { useGlobalMixins } from "../../../core/views/mixins/mixins.js";
4
- /* empty css */
4
+ /* empty css */
5
5
  import _sfc_main$5 from "../../../../components/Feed/Feed.vue.js";
6
- import _sfc_main$2 from "../../../../components/Spoiler/Spoiler.vue.js";
6
+ import _sfc_main$2 from "../../../../components/Spoiler/Spoiler.vue2.js";
7
7
  import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
8
8
  import "vue-i18n";
9
9
  import { actions as actions$1 } from "../../store/categories.js";
10
10
  /* empty css */
11
11
  import Field from "../../../../components/Field/Field.vue.js";
12
- import Filters from "../../../core/views/components/sections/Filters.vue.js";
12
+ import Filters from "../../../core/views/components/sections/Filters.vue2.js";
13
13
  import Calendar from "../../../../components/Calendar/Calendar.vue2.js";
14
14
  import _sfc_main$7 from "../../../../components/Popup/Popup.vue.js";
15
15
  import _sfc_main$6 from "../blocks/CardProduct.vue.js";
@@ -1,7 +1,7 @@
1
1
  import { useModel, ref, reactive, createElementBlock, openBlock, Fragment, createVNode, withCtx, createCommentVNode, renderList, createElementVNode, toDisplayString, createTextVNode } from "vue";
2
2
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
3
3
  import Field from "../../../../components/Field/Field.vue.js";
4
- import _sfc_main$5 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$5 from "../../../../components/Button/Button.vue.js";
5
5
  import _sfc_main$4 from "../../../../components/Popup/Popup.vue.js";
6
6
  import _sfc_main$2 from "../../../icons/navigation/IconEdit.vue.js";
7
7
  import _sfc_main$3 from "../../../icons/navigation/IconDelete.vue.js";
@@ -1,7 +1,7 @@
1
1
  import { useModel, ref, reactive, createElementBlock, openBlock, Fragment, createVNode, withCtx, createCommentVNode, renderList, createElementVNode, toDisplayString, createTextVNode } from "vue";
2
2
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
3
3
  import Field from "../../../../components/Field/Field.vue.js";
4
- import _sfc_main$5 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$5 from "../../../../components/Button/Button.vue.js";
5
5
  import _sfc_main$4 from "../../../../components/Popup/Popup.vue.js";
6
6
  import Select from "../../../../components/Select/Select.vue.js";
7
7
  import _sfc_main$2 from "../../../icons/navigation/IconEdit.vue.js";
@@ -5,11 +5,11 @@ import variantsStore from "../../store/variants.store.js";
5
5
  import { state } from "../../store/products.js";
6
6
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
7
7
  import Field from "../../../../components/Field/Field.vue.js";
8
- import _sfc_main$3 from "../../../../components/Button/Button.vue2.js";
8
+ import _sfc_main$3 from "../../../../components/Button/Button.vue.js";
9
9
  import _sfc_main$7 from "../../../../components/Popup/Popup.vue.js";
10
10
  import Select from "../../../../components/Select/Select.vue.js";
11
11
  import _sfc_main$2 from "../../../../components/Feed/Feed.vue.js";
12
- import _sfc_main$9 from "../../../../components/EditImages/EditImages.vue.js";
12
+ import _sfc_main$9 from "../../../../components/EditImages/EditImages.vue2.js";
13
13
  import _sfc_main$8 from "./EditIngredients.vue.js";
14
14
  import PlaceholderImage from "../../../icons/placeholders/PlaceholderImage.vue.js";
15
15
  import _sfc_main$5 from "../../../icons/navigation/IconEdit.vue.js";
@@ -1,5 +1,5 @@
1
1
  import { ref, watch, onMounted, createElementBlock, openBlock, createVNode, createElementVNode, withCtx, Fragment, renderList, createBlock, toDisplayString, unref } from "vue";
2
- import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue.js";
2
+ import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue2.js";
3
3
  import _sfc_main$2 from "../../../../components/Checkbox/Checkbox.vue.js";
4
4
  import { useI18n } from "vue-i18n";
5
5
  import { useRoute, useRouter } from "vue-router";
@@ -1,7 +1,7 @@
1
1
  import { ref, computed, createElementBlock, createCommentVNode, openBlock, createVNode, createElementVNode, toDisplayString, withCtx, unref, Fragment } from "vue";
2
2
  import { useI18n } from "vue-i18n";
3
3
  import _sfc_main$5 from "../../../icons/actions/IconShopcartAdd.vue.js";
4
- import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$4 from "../../../../components/Button/Button.vue.js";
5
5
  import _sfc_main$1 from "../blocks/ProductVariants.vue.js";
6
6
  import ProductDiscounts from "../blocks/ProductDiscounts.vue.js";
7
7
  import _sfc_main$3 from "../elements/QuantitySelector.vue.js";
@@ -1,6 +1,6 @@
1
1
  import { getCurrentInstance, ref, computed, createElementBlock, openBlock, createElementVNode, Fragment, renderList, createBlock, withCtx, createVNode, withModifiers, toDisplayString } from "vue";
2
2
  import { useRouter } from "vue-router";
3
- import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$4 from "../../../../components/Button/Button.vue.js";
4
4
  import _sfc_main$2 from "../../../../components/Checkbox/Checkbox.vue.js";
5
5
  import _sfc_main$1 from "../blocks/CardProduct.vue.js";
6
6
  import _sfc_main$3 from "../../../icons/entities/IconProducts.vue.js";
@@ -1,6 +1,6 @@
1
1
  import { computed, ref, createElementBlock, openBlock, createElementVNode, createBlock, createCommentVNode, createVNode, unref, toDisplayString, Transition, withCtx, Fragment, renderList, createTextVNode } from "vue";
2
- import _sfc_main$4 from "../../../../components/Button/Button.vue2.js";
3
- import _sfc_main$3 from "../../../../components/Tab/Tab.vue.js";
2
+ import _sfc_main$4 from "../../../../components/Button/Button.vue.js";
3
+ import _sfc_main$3 from "../../../../components/Tab/Tab.vue2.js";
4
4
  import _sfc_main$1 from "../../../icons/navigation/IconEdit.vue.js";
5
5
  import PlaceholderImage from "../../../icons/placeholders/PlaceholderImage.vue.js";
6
6
  import Image360 from "../elements/Image360.vue.js";
@@ -1,7 +1,7 @@
1
1
  import { computed, ref, watch, createElementBlock, openBlock, createElementVNode, createVNode, withCtx, createTextVNode } from "vue";
2
2
  import dayjs from "../../../../../../../../_virtual/dayjs.min.js";
3
- import _sfc_main$2 from "../../../../../../components/Tab/Tab.vue.js";
4
- import _sfc_main$3 from "../../../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$2 from "../../../../../../components/Tab/Tab.vue2.js";
4
+ import _sfc_main$3 from "../../../../../../components/Button/Button.vue.js";
5
5
  import _sfc_main$4 from "../../../../../../components/Dropdown/Dropdown.vue2.js";
6
6
  import Calendar from "../../../../../../components/Calendar/Calendar.vue2.js";
7
7
  import _sfc_main$1 from "./DateLabel.vue.js";
@@ -1,6 +1,6 @@
1
1
  import { ref, computed, createElementBlock, openBlock, createElementVNode, createVNode, unref, toDisplayString, withCtx } from "vue";
2
2
  import dayjs from "../../../../../../../_virtual/dayjs.min.js";
3
- /* empty css */
3
+ /* empty css */
4
4
  import _sfc_main$1 from "../../../../../components/Feed/Feed.vue.js";
5
5
  /* empty css */
6
6
  import _sfc_main$2 from "./Gant/GanttChart.vue.js";
@@ -1,6 +1,6 @@
1
1
  import { ref, computed, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, unref, withCtx, Fragment, renderList, createBlock, createCommentVNode, createTextVNode } from "vue";
2
2
  import _sfc_main$4 from "../../../../../components/Block/Block.vue.js";
3
- import _sfc_main$5 from "../../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$5 from "../../../../../components/Button/Button.vue.js";
4
4
  import Field from "../../../../../components/Field/Field.vue.js";
5
5
  import _sfc_main$2 from "../../../../../components/Feed/Feed.vue.js";
6
6
  import _sfc_main$1 from "../../../../../components/Popup/Popup.vue.js";
@@ -1,6 +1,6 @@
1
1
  import { reactive, ref, createElementBlock, openBlock, renderSlot, createVNode, withCtx, createElementVNode, createTextVNode } from "vue";
2
2
  import _sfc_main$1 from "../../../../components/Popup/Popup.vue.js";
3
- import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
4
4
  import Select from "../../../../components/Select/Select.vue.js";
5
5
  import { actions } from "../../store/reports.js";
6
6
  const _sfc_main = {
@@ -1,7 +1,7 @@
1
1
  import { ref, onMounted, watch, resolveComponent, createElementBlock, openBlock, createElementVNode, createVNode, unref, createCommentVNode, toDisplayString, withCtx, Transition, createBlock, resolveDynamicComponent } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
3
  import { useI18n } from "vue-i18n";
4
- /* empty css */
4
+ /* empty css */
5
5
  /* empty css */
6
6
  /* empty css */
7
7
  /* empty css */
@@ -1,7 +1,7 @@
1
1
  import { ref, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, withCtx, createTextVNode } from "vue";
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import { Loader } from "../../../../../../node_modules/.pnpm/@googlemaps_js-api-loader@1.16.8/node_modules/@googlemaps/js-api-loader/dist/index.js";
4
- import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
4
+ import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
5
5
  import { actions, state as state$1 } from "../../../organizations/store/organizations.js";
6
6
  import { useStore } from "../../../core/views/store/core.store.js";
7
7
  import { state } from "../../../marketplace/views/store/marketplace.js";
@@ -1,6 +1,6 @@
1
1
  import { computed, onMounted, createElementBlock, createCommentVNode, openBlock, createVNode, createElementVNode, unref, withCtx, Fragment, renderList, createBlock, toDisplayString } from "vue";
2
2
  import { useRoute, useRouter } from "vue-router";
3
- import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue.js";
3
+ import _sfc_main$1 from "../../../../components/Spoiler/Spoiler.vue2.js";
4
4
  import Map from "../../../../components/Map/Map.vue.js";
5
5
  import SpotSub from "../blocks/SpotSub.vue.js";
6
6
  import _sfc_main$2 from "../../../auth/views/components/blocks/CardUser.vue.js";
@@ -2,13 +2,13 @@ import { ref, onMounted, createElementBlock, createCommentVNode, openBlock, crea
2
2
  import { useRouter, useRoute } from "vue-router";
3
3
  import _sfc_main$1 from "../../../../components/Block/Block.vue.js";
4
4
  import UploadImage from "../../../../components/UploadImage/UploadImage.vue.js";
5
- /* empty css */
5
+ /* empty css */
6
6
  import Field from "../../../../components/Field/Field.vue.js";
7
7
  import Select from "../../../../components/Select/Select.vue.js";
8
8
  import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
9
9
  import _sfc_main$4 from "../../../../components/Address/Address.vue.js";
10
10
  import _sfc_main$5 from "../../../../components/LocationMarker/LocationMarker.vue.js";
11
- import _sfc_main$2 from "../../../../components/Button/Button.vue2.js";
11
+ import _sfc_main$2 from "../../../../components/Button/Button.vue.js";
12
12
  /* empty css */
13
13
  import WorktimeEdit from "../sections/WorktimeEdit.vue.js";
14
14
  import { actions, state } from "../../store/spots.js";
@@ -1,6 +1,6 @@
1
1
  import { mergeModels, useModel, ref, computed, onMounted, createElementBlock, openBlock, createElementVNode, createVNode, toDisplayString, unref, withCtx, createTextVNode, Fragment, renderList, normalizeClass, createCommentVNode, createBlock } from "vue";
2
2
  import { useI18n } from "vue-i18n";
3
- import _sfc_main$1 from "../../../../components/Button/Button.vue2.js";
3
+ import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
4
4
  import Field from "../../../../components/Field/Field.vue.js";
5
5
  import Select from "../../../../components/Select/Select.vue.js";
6
6
  import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.597",
3
+ "version": "0.2.599",
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",
@@ -116,15 +116,14 @@ export function createAssetResolver(statsJson) {
116
116
  if (options.criticalCss) {
117
117
  const result = {
118
118
  head: [
119
- // Modulepreload для ВСЕХ initial chunks для параллельной загрузки
120
- ...initialJs.map(src => `<link rel="modulepreload" href="${publicPath}${src}">`),
121
- // Module chunks as modulepreload
122
- ...moduleJs.map(src => `<link rel="modulepreload" href="${publicPath}${src}">`),
123
- // CSS файлы будут обработаны Beasties, поэтому добавляем их как обычные link теги
124
- ...css.map(href => `<link rel="stylesheet" href="${publicPath}${href}">`)
119
+ // 1. CSS первым
120
+ ...css.map(href => `<link rel="stylesheet" href="${publicPath}${href}">`),
121
+ // 2. JS вторым - type="module" делает их defer автоматически
122
+ ...initialJs.map(src => `<script type="module" src="${publicPath}${src}"></script>`),
123
+ // 3. Modulepreload для async chunks последним
124
+ ...moduleJs.map(src => `<link rel="modulepreload" href="${publicPath}${src}">`)
125
125
  ].join('\n'),
126
- // Script tags в body для выполнения после загрузки
127
- body: initialJs.map(src => `<script type="module" src="${publicPath}${src}"></script>`).join('\n')
126
+ body: ''
128
127
  };
129
128
  return result;
130
129
  }
@@ -132,14 +131,14 @@ export function createAssetResolver(statsJson) {
132
131
  // Стандартное поведение без Beasties
133
132
  const result = {
134
133
  head: [
135
- // Modulepreload для ВСЕХ initial chunks для параллельной загрузки
136
- ...initialJs.map(src => `<link rel="modulepreload" href="${publicPath}${src}">`),
137
- // Module chunks as modulepreload
138
- ...moduleJs.map(src => `<link rel="modulepreload" href="${publicPath}${src}">`),
139
- ...css.map(href => `<link rel="stylesheet" href="${publicPath}${href}">`)
134
+ // 1. CSS первым
135
+ ...css.map(href => `<link rel="stylesheet" href="${publicPath}${href}">`),
136
+ // 2. JS вторым - type="module" делает их defer автоматически
137
+ ...initialJs.map(src => `<script type="module" src="${publicPath}${src}"></script>`),
138
+ // 3. Modulepreload для async chunks последним
139
+ ...moduleJs.map(src => `<link rel="modulepreload" href="${publicPath}${src}">`)
140
140
  ].join('\n'),
141
- // Script tags в body для выполнения после загрузки
142
- body: initialJs.map(src => `<script type="module" src="${publicPath}${src}"></script>`).join('\n')
141
+ body: ''
143
142
  };
144
143
 
145
144
  return result;
package/src/jit/core.js CHANGED
@@ -66,8 +66,8 @@ export class MartyrsJIT {
66
66
  const selector = this.escapeSelector(token);
67
67
 
68
68
  if (appliedVariants.length === 0) {
69
- // Без вариантов — просто оборачиваем в селектор
70
- css = `.${selector} { ${css} }`;
69
+ // Без вариантов — просто оборачиваем в селектор (body для специфичности)
70
+ css = `body .${selector} { ${css} }`;
71
71
  } else {
72
72
  // Разделяем варианты на pseudo-классы и media queries
73
73
  const pseudoVariants = appliedVariants.filter(v =>
@@ -94,30 +94,37 @@ export class MartyrsJIT {
94
94
  pseudoSuffix += pseudoMap[v.name] || '';
95
95
  }
96
96
 
97
- // Базовый селектор с псевдо-классами
97
+ // Базовый селектор с псевдо-классами (body для специфичности)
98
98
  let result;
99
99
  if (pseudoVariants.some(v => v.name === 'group-hover')) {
100
- result = `.group:hover .${selector}${pseudoSuffix} { ${css} }`;
100
+ result = `body .group:hover .${selector}${pseudoSuffix} { ${css} }`;
101
101
  } else {
102
- result = `.${selector}${pseudoSuffix} { ${css} }`;
102
+ result = `body .${selector}${pseudoSuffix} { ${css} }`;
103
103
  }
104
104
 
105
105
  // Оборачиваем в media queries (в обратном порядке — внутренние первые)
106
106
  for (const v of mediaVariants.reverse()) {
107
- if (v.name === 'dark') {
108
- result = `@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) ${result} }`;
109
- } else if (v.name === 'light') {
110
- result = `@media (prefers-color-scheme: light) { :root:not([data-theme="dark"]) ${result} }`;
111
- } else {
112
- const mediaMap = {
113
- 'mobile': '@media (max-width: 640px)',
114
- 'tablet': '@media (min-width: 641px) and (max-width: 1024px)',
115
- 'desktop': '@media (min-width: 1025px) and (max-width: 1440px)',
116
- 'widescreen': '@media (min-width: 1441px)',
117
- 'print': '@media print'
118
- };
119
- const media = mediaMap[v.name];
120
- if (media) {
107
+ const mediaMap = {
108
+ 'mobile': '@media (max-width: 640px)',
109
+ 'tablet': '@media (min-width: 641px) and (max-width: 1024px)',
110
+ 'desktop': '@media (min-width: 1025px) and (max-width: 1440px)',
111
+ 'widescreen': '@media (min-width: 1441px)',
112
+ 'dark': '@media (prefers-color-scheme: dark)',
113
+ 'light': '@media (prefers-color-scheme: light)',
114
+ 'print': '@media print'
115
+ };
116
+ const media = mediaMap[v.name];
117
+ if (media) {
118
+ // Для dark/light добавляем проверку data-theme, чтобы пользовательский выбор имел приоритет
119
+ if (v.name === 'dark') {
120
+ // dark: применяется только если нет явного data-theme="light"
121
+ result = result.replace(/^body/, ':root:not([data-theme="light"]) body');
122
+ result = `${media} { ${result} }`;
123
+ } else if (v.name === 'light') {
124
+ // light: применяется только если нет явного data-theme="dark"
125
+ result = result.replace(/^body/, ':root:not([data-theme="dark"]) body');
126
+ result = `${media} { ${result} }`;
127
+ } else {
121
128
  result = `${media} { ${result} }`;
122
129
  }
123
130
  }
package/src/jit/plugin.js CHANGED
@@ -209,7 +209,7 @@ export class MartyrsJitPlugin {
209
209
  generateCSS() {
210
210
  const tokens = Array.from(this.tokens);
211
211
  const css = this.jit.generate(tokens);
212
- return `/* Martyrs JIT - ${tokens.length} tokens */\nbody {\n${css}\n}`;
212
+ return `/* Martyrs JIT - ${tokens.length} tokens */\n${css}`;
213
213
  }
214
214
  }
215
215
 
@@ -95,13 +95,13 @@ export const variants = [
95
95
  {
96
96
  name: 'dark',
97
97
  wrapper: (selector, css) =>
98
- `@media (prefers-color-scheme: dark) { :root:not([data-theme="light"]) .${selector} { ${css} } }`
98
+ `@media (prefers-color-scheme: dark) { .${selector} { ${css} } }`
99
99
  },
100
100
 
101
101
  {
102
102
  name: 'light',
103
103
  wrapper: (selector, css) =>
104
- `@media (prefers-color-scheme: light) { :root:not([data-theme="dark"]) .${selector} { ${css} } }`
104
+ `@media (prefers-color-scheme: light) { .${selector} { ${css} } }`
105
105
  },
106
106
 
107
107
  // ========================================
@@ -101,6 +101,26 @@ export default {
101
101
 
102
102
  ---
103
103
 
104
+ ### JIT: дублирование логики dark/light вариантов
105
+
106
+ **Проблема:** variants.js и core.js оба содержат логику для dark/light вариантов.
107
+
108
+ - `variants.js` — определяет wrapper функции для вариантов
109
+ - `core.js` — имеет свой mediaMap который игнорирует variants.js
110
+
111
+ plugin.js регистрирует варианты из variants.js через `jit.addVariant()`, но core.js потом использует свой хардкод в mediaMap вместо зарегистрированных wrapper функций.
112
+
113
+ **Нужно:** Убрать дублирование — либо использовать wrapper из variants.js в core.js, либо удалить variants.js и держать всё в core.js.
114
+
115
+ **Затронутые файлы**:
116
+ - `app/martyrs/src/jit/core.js` (строки 105-124)
117
+ - `app/martyrs/src/jit/variants.js`
118
+ - `app/martyrs/src/jit/plugin.js` (строки 45-47)
119
+
120
+ **Приоритет**: Средний - работает, но архитектурно неправильно
121
+
122
+ ---
123
+
104
124
  ### JIT: Добавить поддержку last:, first:, odd:, even: для сброса стилей
105
125
 
106
126
  **Проблема**: Варианты `last:`, `first:` и т.д. объявлены в variants.js, но не работают для сброса border и padding. Например `last:br-0` не убирает border у последнего элемента.
@@ -124,17 +144,29 @@ export default {
124
144
 
125
145
  ---
126
146
 
127
- ### SSR: Language switcher рендерится при одном языке
147
+ ### JIT: Добавить поддержку row-span и col-span для grid
128
148
 
129
- **Проблема**: Компонент переключения языка отображается в SSR даже когда в конфигурации указан только один язык. Проверка `v-if` на количество языков есть, но при SSR она не срабатывает корректно.
149
+ **Проблема**: Нет классов для управления `grid-row: span N` и `grid-column: span N`. Приходится использовать inline style.
130
150
 
131
- **Симптом**: На сервере свитчер рендерится, хотя язык один. Вероятно, на момент SSR рендера список языков ещё не инициализирован или приходит пустым/дефолтным.
151
+ **Симптом**: Для создания grid-layout где элемент занимает несколько строк/колонок нужен inline style:
152
+ ```vue
153
+ <!-- Не работает -->
154
+ <div class="row-span-2">
132
155
 
133
- **Возможные причины**:
134
- - Список языков загружается асинхронно и недоступен при SSR
135
- - Реактивность не работает на сервере как ожидается
136
- - Дефолтное значение в store отличается от реального конфига
156
+ <!-- Приходится делать так -->
157
+ <div style="grid-row: span 2">
158
+ ```
137
159
 
138
- **Приоритет**: Низкий
160
+ **Решение**: Добавить в rules.js правила:
161
+ ```javascript
162
+ [/^row-span-(\d+)$/, (m) => `grid-row: span ${m[1]};`],
163
+ [/^col-span-(\d+)$/, (m) => `grid-column: span ${m[1]};`],
164
+ ```
165
+
166
+ **Затронутые файлы**:
167
+ - `app/martyrs/src/jit/rules.js`
168
+
169
+ **Приоритет**: Низкий - есть workaround через inline style
139
170
 
140
171
  ---
172
+