@ozdao/martyrs 0.2.546 → 0.2.547

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 (198) hide show
  1. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs → Dropdown.vue2.cjs} +2 -2
  2. package/dist/martyrs/src/components/Dropdown/Dropdown.vue2.cjs.map +1 -0
  3. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.js → Dropdown.vue2.js} +2 -2
  4. package/dist/martyrs/src/components/Dropdown/{Dropdown.vue.cjs.map → Dropdown.vue2.js.map} +1 -1
  5. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +1 -1
  6. package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
  7. package/dist/martyrs/src/components/Field/{Field.vue2.cjs → Field.vue.cjs} +2 -2
  8. package/dist/martyrs/src/components/Field/{Field.vue2.js.map → Field.vue.cjs.map} +1 -1
  9. package/dist/martyrs/src/components/Field/{Field.vue2.js → Field.vue.js} +2 -2
  10. package/dist/martyrs/src/components/Field/Field.vue.js.map +1 -0
  11. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.cjs +1 -1
  12. package/dist/martyrs/src/components/FieldBig/FieldBig.vue.js +1 -1
  13. package/dist/martyrs/src/components/Menu/{Menu.vue.cjs → Menu.vue2.cjs} +2 -2
  14. package/dist/martyrs/src/components/Menu/Menu.vue2.cjs.map +1 -0
  15. package/dist/martyrs/src/components/Menu/{Menu.vue.js → Menu.vue2.js} +2 -2
  16. package/dist/martyrs/src/components/Menu/Menu.vue2.js.map +1 -0
  17. package/dist/martyrs/src/components/Select/{Select.vue.cjs → Select.vue2.cjs} +2 -2
  18. package/dist/martyrs/src/components/Select/Select.vue2.cjs.map +1 -0
  19. package/dist/martyrs/src/components/Select/{Select.vue.js → Select.vue2.js} +2 -2
  20. package/dist/martyrs/src/components/Select/{Select.vue.cjs.map → Select.vue2.js.map} +1 -1
  21. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.cjs → Spoiler.vue2.cjs} +2 -2
  22. package/dist/martyrs/src/components/Spoiler/Spoiler.vue2.cjs.map +1 -0
  23. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.js → Spoiler.vue2.js} +2 -2
  24. package/dist/martyrs/src/components/Spoiler/{Spoiler.vue.cjs.map → Spoiler.vue2.js.map} +1 -1
  25. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.cjs +1 -1
  26. package/dist/martyrs/src/modules/auth/views/components/pages/EnterCode.vue.js +1 -1
  27. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.cjs +1 -1
  28. package/dist/martyrs/src/modules/auth/views/components/pages/EnterPassword.vue.js +1 -1
  29. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.cjs +1 -1
  30. package/dist/martyrs/src/modules/auth/views/components/pages/Invite.vue.js +1 -1
  31. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.cjs +3 -3
  32. package/dist/martyrs/src/modules/auth/views/components/pages/Profile.vue.js +3 -3
  33. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.cjs +1 -1
  34. package/dist/martyrs/src/modules/auth/views/components/pages/ProfileEditProfile.vue.js +1 -1
  35. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.cjs +1 -1
  36. package/dist/martyrs/src/modules/auth/views/components/pages/ResetPassword.vue.js +1 -1
  37. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  38. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  39. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.cjs +1 -1
  40. package/dist/martyrs/src/modules/auth/views/components/pages/SignUp.vue.js +1 -1
  41. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.cjs +1 -1
  42. package/dist/martyrs/src/modules/auth/views/components/sections/ProfileEditCredentials.vue.js +1 -1
  43. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.cjs +1 -1
  44. package/dist/martyrs/src/modules/community/components/layouts/Community.vue.js +1 -1
  45. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  46. package/dist/martyrs/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  47. package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.cjs +1 -1
  48. package/dist/martyrs/src/modules/constructor/components/elements/Card.vue.js +1 -1
  49. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.cjs +1 -1
  50. package/dist/martyrs/src/modules/constructor/components/elements/Embed.vue.js +1 -1
  51. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
  52. package/dist/martyrs/src/modules/events/components/pages/EditEvent.vue.js +1 -1
  53. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  54. package/dist/martyrs/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  55. package/dist/martyrs/src/modules/events/components/pages/Event.vue.cjs +2 -2
  56. package/dist/martyrs/src/modules/events/components/pages/Event.vue.js +2 -2
  57. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +2 -2
  58. package/dist/martyrs/src/modules/gallery/components/sections/BackofficeGallery.vue.js +2 -2
  59. package/dist/martyrs/src/modules/globals/globals.client.cjs +0 -6
  60. package/dist/martyrs/src/modules/globals/globals.client.cjs.map +1 -1
  61. package/dist/martyrs/src/modules/globals/globals.client.js +0 -6
  62. package/dist/martyrs/src/modules/globals/globals.client.js.map +1 -1
  63. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.cjs +1 -1
  64. package/dist/martyrs/src/modules/globals/views/components/blocks/BlockSearch.vue.js +1 -1
  65. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.cjs +1 -1
  66. package/dist/martyrs/src/modules/globals/views/components/blocks/CardHeader.vue.js +1 -1
  67. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs +25 -117
  68. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.cjs.map +1 -1
  69. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js +25 -117
  70. package/dist/martyrs/src/modules/globals/views/components/partials/Footer.vue.js.map +1 -1
  71. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.cjs +1 -1
  72. package/dist/martyrs/src/modules/globals/views/components/partials/Header.vue.js +1 -1
  73. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.cjs +2 -2
  74. package/dist/martyrs/src/modules/globals/views/components/partials/Navigation.vue.js +2 -2
  75. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.cjs +1 -1
  76. package/dist/martyrs/src/modules/globals/views/components/sections/Filters.vue2.js +1 -1
  77. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.cjs +2 -2
  78. package/dist/martyrs/src/modules/inventory/components/forms/AdjustmentForm.vue.js +2 -2
  79. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.cjs +2 -2
  80. package/dist/martyrs/src/modules/inventory/components/forms/StockAlertsForm.vue.js +2 -2
  81. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.cjs +2 -2
  82. package/dist/martyrs/src/modules/inventory/components/pages/Inventory.vue.js +1 -1
  83. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.cjs +3 -3
  84. package/dist/martyrs/src/modules/inventory/components/pages/InventoryEdit.vue.js +3 -3
  85. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.cjs +1 -1
  86. package/dist/martyrs/src/modules/landing/components/sections/SectionGuide.vue.js +1 -1
  87. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.cjs +2 -2
  88. package/dist/martyrs/src/modules/marketplace/views/components/layouts/Marketplace.vue.js +2 -2
  89. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.cjs +2 -2
  90. package/dist/martyrs/src/modules/music/components/forms/AlbumForm.vue.js +2 -2
  91. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.cjs +2 -2
  92. package/dist/martyrs/src/modules/music/components/forms/ArtistForm.vue.js +2 -2
  93. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.cjs +1 -1
  94. package/dist/martyrs/src/modules/music/components/forms/PlaylistForm.vue.js +1 -1
  95. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.cjs +2 -2
  96. package/dist/martyrs/src/modules/music/components/forms/TrackForm.vue.js +2 -2
  97. package/dist/martyrs/src/modules/music/components/pages/Album.vue.cjs +1 -1
  98. package/dist/martyrs/src/modules/music/components/pages/Album.vue.js +1 -1
  99. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.cjs +1 -1
  100. package/dist/martyrs/src/modules/music/components/pages/Playlist.vue.js +1 -1
  101. package/dist/martyrs/src/modules/music/components/pages/Track.vue.cjs +1 -1
  102. package/dist/martyrs/src/modules/music/components/pages/Track.vue.js +1 -1
  103. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.cjs +2 -2
  104. package/dist/martyrs/src/modules/orders/components/forms/FormApplicationDetails.vue.js +2 -2
  105. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.cjs +2 -2
  106. package/dist/martyrs/src/modules/orders/components/forms/FormCustomerDetails.vue.js +2 -2
  107. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  108. package/dist/martyrs/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  109. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
  110. package/dist/martyrs/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +1 -1
  111. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.cjs +2 -2
  112. package/dist/martyrs/src/modules/orders/components/sections/FormDelivery.vue.js +2 -2
  113. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
  114. package/dist/martyrs/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  115. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.cjs +6 -6
  116. package/dist/martyrs/src/modules/organizations/components/blocks/CardDepartment.vue.js +6 -6
  117. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.cjs +2 -2
  118. package/dist/martyrs/src/modules/organizations/components/forms/DepartmentForm.vue.js +2 -2
  119. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.cjs +1 -1
  120. package/dist/martyrs/src/modules/organizations/components/forms/InviteForm.vue.js +1 -1
  121. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.cjs +6 -6
  122. package/dist/martyrs/src/modules/organizations/components/pages/Department.vue.js +6 -6
  123. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.cjs +6 -6
  124. package/dist/martyrs/src/modules/organizations/components/pages/Members.vue.js +6 -6
  125. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.cjs +5 -5
  126. package/dist/martyrs/src/modules/organizations/components/pages/Organization.vue.js +5 -5
  127. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.cjs +1 -1
  128. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationBackoffice.vue.js +1 -1
  129. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +2 -2
  130. package/dist/martyrs/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  131. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  132. package/dist/martyrs/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  133. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.cjs +2 -2
  134. package/dist/martyrs/src/modules/organizations/components/sections/MembersAdd.vue.js +2 -2
  135. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.cjs +2 -2
  136. package/dist/martyrs/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  137. package/dist/martyrs/src/modules/organizations/router/organizations.cjs +1 -1
  138. package/dist/martyrs/src/modules/organizations/router/organizations.js +1 -1
  139. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.cjs +1 -1
  140. package/dist/martyrs/src/modules/pages/views/components/blocks/CardPage.vue.js +1 -1
  141. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.cjs +1 -1
  142. package/dist/martyrs/src/modules/pages/views/components/pages/PageEdit.vue.js +1 -1
  143. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.cjs +1 -1
  144. package/dist/martyrs/src/modules/products/components/blocks/CardProduct.vue.js +1 -1
  145. package/dist/martyrs/src/modules/products/components/elements/{THC.vue.cjs → THC.vue2.cjs} +2 -2
  146. package/dist/martyrs/src/modules/products/components/elements/THC.vue2.cjs.map +1 -0
  147. package/dist/martyrs/src/modules/products/components/elements/{THC.vue.js → THC.vue2.js} +2 -2
  148. package/dist/martyrs/src/modules/products/components/elements/THC.vue2.js.map +1 -0
  149. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.cjs +3 -3
  150. package/dist/martyrs/src/modules/products/components/pages/CategoryEdit.vue.js +3 -3
  151. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.cjs +2 -2
  152. package/dist/martyrs/src/modules/products/components/pages/ProductEdit.vue.js +2 -2
  153. package/dist/martyrs/src/modules/products/components/pages/Products.vue.cjs +2 -2
  154. package/dist/martyrs/src/modules/products/components/pages/Products.vue.js +2 -2
  155. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.cjs +1 -1
  156. package/dist/martyrs/src/modules/products/components/sections/EditAttributes.vue.js +1 -1
  157. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.cjs +2 -2
  158. package/dist/martyrs/src/modules/products/components/sections/EditDiscounts.vue.js +2 -2
  159. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.cjs +2 -2
  160. package/dist/martyrs/src/modules/products/components/sections/EditVariants.vue.js +2 -2
  161. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.cjs +1 -1
  162. package/dist/martyrs/src/modules/products/components/sections/FilterProducts.vue.js +1 -1
  163. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.cjs +1 -1
  164. package/dist/martyrs/src/modules/products/components/sections/SectionProduct.vue.js +1 -1
  165. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.cjs +1 -1
  166. package/dist/martyrs/src/modules/rents/views/components/pages/Gant/GanttToolbar.vue.js +1 -1
  167. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.cjs +1 -1
  168. package/dist/martyrs/src/modules/rents/views/components/pages/RentsEdit.vue.js +1 -1
  169. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  170. package/dist/martyrs/src/modules/reports/components/sections/FormReport.vue.js +1 -1
  171. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.cjs +2 -2
  172. package/dist/martyrs/src/modules/spots/components/blocks/SpotMemberModify.vue.js +2 -2
  173. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.cjs +3 -3
  174. package/dist/martyrs/src/modules/spots/components/layouts/Spots.vue.js +3 -3
  175. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.cjs +1 -1
  176. package/dist/martyrs/src/modules/spots/components/pages/Spot.vue.js +1 -1
  177. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.cjs +2 -2
  178. package/dist/martyrs/src/modules/spots/components/pages/SpotEdit.vue.js +2 -2
  179. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.cjs +2 -2
  180. package/dist/martyrs/src/modules/spots/components/sections/WorktimeEdit.vue.js +2 -2
  181. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.cjs +1 -1
  182. package/dist/martyrs/src/modules/wallet/views/components/blocks/CardDeposit.vue.js +1 -1
  183. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.cjs +2 -2
  184. package/dist/martyrs/src/modules/wallet/views/components/blocks/CryptoDeposit.vue.js +2 -2
  185. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.cjs +2 -2
  186. package/dist/martyrs/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
  187. package/package.json +1 -1
  188. package/src/modules/globals/TASK.MD +9 -102
  189. package/src/modules/globals/globals.client.js +0 -7
  190. package/src/modules/globals/views/components/partials/Footer.vue +27 -127
  191. package/dist/martyrs/src/components/Dropdown/Dropdown.vue.js.map +0 -1
  192. package/dist/martyrs/src/components/Field/Field.vue2.cjs.map +0 -1
  193. package/dist/martyrs/src/components/Menu/Menu.vue.cjs.map +0 -1
  194. package/dist/martyrs/src/components/Menu/Menu.vue.js.map +0 -1
  195. package/dist/martyrs/src/components/Select/Select.vue.js.map +0 -1
  196. package/dist/martyrs/src/components/Spoiler/Spoiler.vue.js.map +0 -1
  197. package/dist/martyrs/src/modules/products/components/elements/THC.vue.cjs.map +0 -1
  198. package/dist/martyrs/src/modules/products/components/elements/THC.vue.js.map +0 -1
@@ -1,8 +1,8 @@
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
3
  import _sfc_main$1 from "../../../../components/Button/Button.vue.js";
4
- import Field from "../../../../components/Field/Field.vue2.js";
5
- import Select from "../../../../components/Select/Select.vue.js";
4
+ import Field from "../../../../components/Field/Field.vue.js";
5
+ import Select from "../../../../components/Select/Select.vue2.js";
6
6
  import _sfc_main$3 from "../../../../components/Checkbox/Checkbox.vue.js";
7
7
  import _sfc_main$2 from "../../../../components/Popup/Popup.vue.js";
8
8
  /* empty css */
@@ -2,7 +2,7 @@
2
2
  Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
3
  const vue = require("vue");
4
4
  const wallet = require("../../localization/wallet.json.cjs");
5
- const Field = require("../../../../../components/Field/Field.vue2.cjs");
5
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
6
6
  const vueI18n = require("vue-i18n");
7
7
  const _hoisted_1 = { class: "bg-grey radius-big mn-t-semi mn-b-semi flex flex-justify-between" };
8
8
  const _sfc_main = {
@@ -1,6 +1,6 @@
1
1
  import { createElementBlock, openBlock, Fragment, createElementVNode, createVNode, unref, toDisplayString } from "vue";
2
2
  import text from "../../localization/wallet.json.js";
3
- import Field from "../../../../../components/Field/Field.vue2.js";
3
+ import Field from "../../../../../components/Field/Field.vue.js";
4
4
  import { useI18n } from "vue-i18n";
5
5
  const _hoisted_1 = { class: "bg-grey radius-big mn-t-semi mn-b-semi flex flex-justify-between" };
6
6
  const _sfc_main = {
@@ -5,8 +5,8 @@ const vueI18n = require("vue-i18n");
5
5
  const bignumber = require("../../../../../../node_modules/.pnpm/bignumber.js@9.2.1/node_modules/bignumber.js/bignumber.cjs");
6
6
  const wallet_store = require("../../store/wallet.store.cjs");
7
7
  const wallet = require("../../localization/wallet.json.cjs");
8
- const Field = require("../../../../../components/Field/Field.vue2.cjs");
9
- const Select = require("../../../../../components/Select/Select.vue.cjs");
8
+ const Field = require("../../../../../components/Field/Field.vue.cjs");
9
+ const Select = require("../../../../../components/Select/Select.vue2.cjs");
10
10
  const _hoisted_1 = { class: "mn-b-small t-center t-bold" };
11
11
  const _hoisted_2 = { class: "t-semi" };
12
12
  const _hoisted_3 = ["disabled"];
@@ -3,8 +3,8 @@ import { useI18n } from "vue-i18n";
3
3
  import { BigNumber } from "../../../../../../node_modules/.pnpm/bignumber.js@9.2.1/node_modules/bignumber.js/bignumber.js";
4
4
  import { state, actions } from "../../store/wallet.store.js";
5
5
  import text from "../../localization/wallet.json.js";
6
- import Field from "../../../../../components/Field/Field.vue2.js";
7
- import Select from "../../../../../components/Select/Select.vue.js";
6
+ import Field from "../../../../../components/Field/Field.vue.js";
7
+ import Select from "../../../../../components/Select/Select.vue2.js";
8
8
  const _hoisted_1 = { class: "mn-b-small t-center t-bold" };
9
9
  const _hoisted_2 = { class: "t-semi" };
10
10
  const _hoisted_3 = ["disabled"];
@@ -9,8 +9,8 @@ const Popup = require("../../../../../components/Popup/Popup.vue.cjs");
9
9
  const Button = require("../../../../../components/Button/Button.vue.cjs");
10
10
  require("vue-router");
11
11
  ;/* empty css */
12
- ;/* empty css */
13
- ;/* empty css */
12
+ ;/* empty css */
13
+ ;/* empty css */
14
14
  ;/* empty css */
15
15
  const ConnectMetamask = require("../elements/ConnectMetamask.vue.cjs");
16
16
  const CashDeposit = require("../blocks/CashDeposit.vue.cjs");
@@ -7,8 +7,8 @@ import _sfc_main$3 from "../../../../../components/Popup/Popup.vue.js";
7
7
  import _sfc_main$1 from "../../../../../components/Button/Button.vue.js";
8
8
  import "vue-router";
9
9
  /* empty css */
10
- /* empty css */
11
- /* empty css */
10
+ /* empty css */
11
+ /* empty css */
12
12
  /* empty css */
13
13
  import _sfc_main$2 from "../elements/ConnectMetamask.vue.js";
14
14
  import _sfc_main$4 from "../blocks/CashDeposit.vue.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.546",
3
+ "version": "0.2.547",
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,105 +1,12 @@
1
- # Проблема с отображением лоадера при загрузке модулей
1
+ Переиименовать все в менеджеры - storeMaganer, wsManager, moduleManager и сделать одинаковый экспорт и имена ws.manager.js, store.manager.js, module.manager.js, i18n.manager.js
2
2
 
3
- ## Описание проблемы
4
- При переходе на роут, который требует загрузки нового модуля:
5
- 1. После клика на ссылку UI полностью блокируется
6
- 2. Начинается загрузка модуля (2-3 секунды)
7
- 3. Лоадер показывается только ПОСЛЕ загрузки модуля на мгновение
8
- 4. Затем происходит переход на новый роут
3
+ ну и в целом в store.js все сделать как это менеджер сторов названия
9
4
 
10
- **Ожидаемое поведение:** Лоадер должен показываться СРАЗУ после клика, до начала загрузки модулей.
5
+ import store from './views/classes/store.js';
6
+ import websockets from './views/classes/globals.websocket.js';
7
+ import { i18nManager } from '@martyrs/src/modules/globals/views/classes/globals.i18n.js';
8
+ import { moduleRegistry } from './views/classes/module-registry.js';
11
9
 
12
- ## Технические детали
13
-
14
- ### Архитектура загрузки модулей
15
- - **Файл:** `globals.app.js:89-119`
16
- - Модули загружаются динамически в `router.beforeEach` guard
17
- - Модули регистрируют роуты через `router.addRoute()` после загрузки
18
- - После загрузки возвращается `to.fullPath` для повторной навигации
19
-
20
- ### Условие показа лоадера
21
- - **Файл:** `Client.vue:16`
22
- - Условие: `v-if="!page || globals.state.loading"`
23
- - `page` - ref на текущий компонент страницы
24
- - `globals.state.loading` - глобальный флаг загрузки
25
-
26
- ## Корень проблемы
27
- Vue Router `beforeEach` guard блокирует все обновления DOM до своего завершения:
28
- - Guards выполняются синхронно и блокируют навигацию
29
- - Vue не может обновить DOM пока `beforeEach` не завершится
30
- - Даже установка `globals.state.loading = true` не приводит к рендерингу
31
-
32
- **Подтверждение из документации Vue Router:**
33
- > "Guards may be resolved asynchronously, and the navigation is considered pending before all hooks have been resolved"
34
-
35
- **GitHub issue vuejs/vue #9200:**
36
- > "Vue.nextTick doesn't seem to cover browser re-render"
37
-
38
- ## Что пробовали и не сработало
39
-
40
- ### 1. nextTick после установки loading флага
41
- ```javascript
42
- store.globals.state.loading = true;
43
- await nextTick();
44
- ```
45
- **Результат:** Не работает, т.к. nextTick работает с микротасками, которые выполняются ДО отрисовки браузером
46
-
47
- ### 2. requestAnimationFrame
48
- ```javascript
49
- store.globals.state.loading = true;
50
- await new Promise(resolve => requestAnimationFrame(resolve));
51
- ```
52
- **Результат:** Не работает, beforeEach все равно блокирует рендеринг
53
-
54
- ### 3. setTimeout с return false
55
- ```javascript
56
- setTimeout(async () => {
57
- // загрузка модулей
58
- router.push(to.fullPath);
59
- }, 0);
60
- return false;
61
- ```
62
- **Результат:** Приводит к 404, т.к. роуты еще не зарегистрированы
63
-
64
- ### 4. Watch на route.path в Client.vue
65
- ```javascript
66
- watch(() => route.path, () => {
67
- page.value = null;
68
- });
69
- ```
70
- **Результат:** Не работает, т.к. route.path меняется только ПОСЛЕ завершения beforeEach
71
-
72
- ### 5. Свой beforeEach в Client.vue
73
- ```javascript
74
- router.beforeEach((to, from) => {
75
- page.value = null;
76
- });
77
- ```
78
- **Результат:** Не работает, все beforeEach выполняются синхронно и блокируют рендеринг
79
-
80
- ### 6. Создание DOM элемента напрямую
81
- ```javascript
82
- const loader = document.createElement('div');
83
- document.body.appendChild(loader);
84
- ```
85
- **Результат:** Работает, но это хак, обходящий Vue реактивность
86
-
87
- ## Ограничения
88
- 1. **Нельзя загружать модули после навигации** - модули регистрируют роуты, без них будет 404
89
- 2. **Нельзя загружать модули вне beforeEach** - нужно гарантировать загрузку ДО навигации
90
- 3. **return to.fullPath необходим** - для повторной навигации с новыми роутами
91
-
92
- ## Возможные решения
93
-
94
- ### 1. Использовать HTML лоадер (не Vue компонент)
95
- Добавить лоадер прямо в index.html, показывать/скрывать через классы
96
-
97
- ### 2. Изменить архитектуру загрузки
98
- - Предзагружать все возможные роуты
99
- - Использовать другой подход к динамической регистрации
100
-
101
- ### 3. Использовать Web Workers
102
- Загружать модули в воркере, но это потребует полного рефакторинга
103
-
104
- ## Вывод
105
- Проблема фундаментальная: Vue Router beforeEach блокирует рендеринг, а мы обязаны загружать модули именно там из-за динамической регистрации роутов. Единственное рабочее решение - создавать лоадер в обход Vue (прямой DOM манипуляцией).
10
+ сюда же потом пойдет
11
+ -нотификейшен менеджер
12
+ -алерт менеджер
@@ -23,9 +23,6 @@ import ru from './locales/ru.js';
23
23
 
24
24
  // Пример функции инициализации для модуля заказов
25
25
  function initializeGlobals(app, store, router, config, options = {}) {
26
- console.log('[initializeGlobals] START');
27
- console.log('[initializeGlobals] Store before addStore:', store);
28
-
29
26
  const route = options.route || 'Home';
30
27
 
31
28
  const locales = {
@@ -74,11 +71,7 @@ function initializeGlobals(app, store, router, config, options = {}) {
74
71
 
75
72
  if (config && config.modules) storeGlobals.state.options = config.modules;
76
73
 
77
- console.log('[initializeGlobals] Adding globals store with state:', storeGlobals.state);
78
74
  store.addStore('globals', storeGlobals);
79
- console.log('[initializeGlobals] Store after addStore:', store);
80
- console.log('[initializeGlobals] Store.globals exists:', !!store.globals);
81
- console.log('[initializeGlobals] END');
82
75
 
83
76
  router.addRoute(route, {
84
77
  path: '404',
@@ -39,108 +39,8 @@ const props = defineProps({
39
39
  const router = useRouter()
40
40
  const route = useRoute()
41
41
 
42
- // Localization
43
- const text = {
44
- locale: 'en',
45
- messages: {
46
- en: {
47
- linkAppStore: 'https://play.google.com/store/apps/details?id=com.threestepsrental.app',
48
- linkGooglePlay: 'https://play.google.com/store/apps/details?id=com.threestepsrental.app',
49
- // Contact
50
- description: "3SR – Premium Video Gear Rentals for Filmmakers and Content Creators",
51
- contact: 'Contact',
52
- phone: 'Phone / WhatsApp',
53
- email: 'Email',
54
- hours: 'Hours',
55
- hours_text: 'Mon–Sun, 10:00–19:00',
56
- app: 'Get Our App',
57
-
58
- // Subscribe
59
- subscribe: 'Subscribe',
60
- subscribe_text: 'Get updates on new equipment and special offers',
61
- email_placeholder: 'Enter your email',
62
- follow: 'Follow Us',
63
-
64
- // Footer
65
- year: '2025 ',
66
- heart: "❤",
67
- copyright: 'Three Steps Studio Ltd. All Rights Reserved.',
68
- ozdao: 'Builded in OZ DAO',
69
-
70
- // Contact info
71
- phoneNumber: '+44 77 7878 4893',
72
- emailAddress: "info{'@'}3stepsprod.com",
73
-
74
- // Navigation columns
75
- navigationColumns: [
76
- {
77
- sections: [
78
- {
79
- title: 'Equipment',
80
- items: [
81
- { name: 'Cameras', url: 'products/categories/cameras' },
82
- { name: 'Lighting', url: 'products/categories/lighting-kits' },
83
- { name: 'Stabilizers', url: 'products/categories/stabilization-motion' },
84
- { name: 'Accessories', url: 'products/categories/accessories' }
85
- ]
86
- },
87
- {
88
- title: 'Services',
89
- items: [
90
- { name: 'Kits & Packages', url: 'products/categories/kits-packages' },
91
- { name: 'Studio Hire', url: 'products/categories/studio-hire' },
92
- { name: 'Delivery', url: 'products/categories/delivery' },
93
- { name: 'Production Help', url: 'products/categories/production-help' }
94
- ]
95
- }
96
- ]
97
- },
98
- {
99
- sections: [
100
- {
101
- title: 'Company',
102
- items: [
103
- { name: 'About Us', url: 'pages/about' },
104
- { name: 'Contact', url: 'pages/contact' },
105
- { name: 'FAQ', url: 'pages/faq' },
106
- { name: 'Blog', url: '/community' }
107
- ]
108
- },
109
- {
110
- title: 'Legal',
111
- items: [
112
- { name: 'Privacy Policy', url: 'pages/privacy-policy' },
113
- { name: 'Cookie Policy', url: 'pages/cookie-policy' },
114
- { name: 'Terms of Use', url: 'pages/terms-of-use' },
115
- { name: 'EULA', url: 'pages/eula' }
116
- ]
117
- }
118
- ]
119
- }
120
- ],
121
-
122
- // Social links
123
- socialLinks: [
124
- {
125
- name: 'IconInstagram',
126
- url: 'https://www.instagram.com/3stepsprod'
127
- },
128
- {
129
- name: 'IconYoutube',
130
- url: 'https://www.youtube.com/@threestepsproduction'
131
- },
132
- {
133
- name: 'IconWhatsapp',
134
- url: 'https://api.whatsapp.com/send/?phone=447778784893&text&type=phone_number&app_absent=0'
135
- }
136
- ]
137
- }
138
- }
139
- }
140
-
141
42
  const { t, te, tm } = useI18n({
142
- useScope: 'global',
143
- messages: text.messages
43
+ useScope: 'global'
144
44
  })
145
45
 
146
46
  // Component mapping for social icons
@@ -178,61 +78,61 @@ const iconComponents = {
178
78
 
179
79
  <!-- Contact Block -->
180
80
  <div class="col w-max-15r">
181
- <p class="p-semi t-medium mn-b-semi">{{ t('description') }}</p>
81
+ <p class="p-semi t-medium mn-b-semi">{{ t('footer.description') }}</p>
182
82
 
183
83
  <div class="mn-b-semi flex flex-column gap-small">
184
84
  <a
185
- :href="`tel:${t('phoneNumber').replace(/\s/g, '')}`"
85
+ :href="`tel:${t('footer.phoneNumber').replace(/\s/g, '')}`"
186
86
  class="flex mn-b-micro gap-micro flex-v-center transition-opacity hover-opacity-70"
187
87
  :class="theme === 'light' ? 't-black' : 't-white'"
188
88
  >
189
89
  <IconPhone class="i-regular" :fill="theme === 'light' ? 'rgb(var(--black))' : 'rgb(var(--white))'" />
190
- <span class="t-small">{{ t('phoneNumber') }}</span>
90
+ <span class="t-small">{{ t('footer.phoneNumber') }}</span>
191
91
  </a>
192
92
 
193
93
  <a
194
- :href="`mailto:${t('emailAddress')}`"
94
+ :href="`mailto:${t('footer.emailAddress')}`"
195
95
  class="flex mn-b-micro gap-micro flex-v-center transition-opacity hover-opacity-70"
196
96
  :class="theme === 'light' ? 't-black' : 't-white'"
197
97
  >
198
98
  <IconEmail class="i-regular" :fill="theme === 'light' ? 'rgb(var(--black))' : 'rgb(var(--white))'" />
199
- <span class="t-small">{{ t('emailAddress') }}</span>
99
+ <span class="t-small">{{ t('footer.emailAddress') }}</span>
200
100
  </a>
201
101
 
202
102
  <div class="flex mn-b-micro gap-micro flex-v-center">
203
103
  <IconTime class="i-regular" :fill="theme === 'light' ? 'rgb(var(--black))' : 'rgb(var(--white))'" />
204
- <span class="t-small">{{ t('hours_text') }}</span>
104
+ <span class="t-small">{{ t('footer.hours_text') }}</span>
205
105
  </div>
206
106
  </div>
207
107
 
208
- <h4 class="h5 t-medium mn-b-regular">{{ t('app') }}</h4>
108
+ <h4 class="h5 t-medium mn-b-regular">{{ t('footer.app') }}</h4>
209
109
  <div class="w-100 flex-nowrap flex gap-thin">
210
110
  <a
211
- v-if="te('linkAppStore') || te('label')"
212
- :href="te('linkAppStore') ? t('linkAppStore') : null"
213
- :target="te('linkAppStore') ? '_blank' : null"
111
+ v-if="te('footer.linkAppStore') || te('footer.label')"
112
+ :href="te('footer.linkAppStore') ? t('footer.linkAppStore') : null"
113
+ :target="te('footer.linkAppStore') ? '_blank' : null"
214
114
  class="pos-relative w-100 h-100"
215
115
  >
216
116
  <span
217
- v-if="te('label')"
117
+ v-if="te('footer.label')"
218
118
  class="z-index-2 radius-medium bg-main t-medium uppercase pd-thin pos-absolute pos-r-10-negative pos-t-10-negative"
219
119
  >
220
- {{ t('label') }}
120
+ {{ t('footer.label') }}
221
121
  </span>
222
122
  <LabelAppStore class="w-100 h-max" alt="Download on App Store"/>
223
123
  </a>
224
124
 
225
125
  <a
226
- v-if="te('linkGooglePlay') || te('label')"
227
- :href="te('linkGooglePlay') ? t('linkGooglePlay') : null"
228
- :target="te('linkGooglePlay') ? '_blank' : null"
126
+ v-if="te('footer.linkGooglePlay') || te('footer.label')"
127
+ :href="te('footer.linkGooglePlay') ? t('footer.linkGooglePlay') : null"
128
+ :target="te('footer.linkGooglePlay') ? '_blank' : null"
229
129
  class="pos-relative w-100 h-100"
230
130
  >
231
131
  <span
232
- v-if="te('label')"
132
+ v-if="te('footer.label')"
233
133
  class="z-index-2 pd-thin radius-medium bg-main t-medium uppercase pos-absolute pos-r-10-negative pos-t-10-negative"
234
134
  >
235
- {{ t('label') }}
135
+ {{ t('footer.label') }}
236
136
  </span>
237
137
  <LabelGooglePlay class="w-100 h-max" alt="Download on Google Play"/>
238
138
  </a>
@@ -241,7 +141,7 @@ const iconComponents = {
241
141
 
242
142
  <!-- Navigation Columns -->
243
143
  <div class="cols-2 gap-big">
244
- <div v-for="(column, colIndex) in tm('navigationColumns')" :key="colIndex" class="flex flex-column gap-medium">
144
+ <div v-for="(column, colIndex) in tm('footer.navigationColumns')" :key="colIndex" class="flex flex-column gap-medium">
245
145
  <div v-for="(section, sectionIndex) in column.sections" :key="sectionIndex" class="">
246
146
  <h4 class="h5 t-medium mn-b-regular">{{ section.title }}</h4>
247
147
  <nav>
@@ -263,8 +163,8 @@ const iconComponents = {
263
163
 
264
164
  <!-- Subscribe Block -->
265
165
  <div class="col">
266
- <h4 class="h5 t-medium mn-b-regular">{{ t('subscribe') }}</h4>
267
- <p class="t-small mn-b-small t-transp">{{ t('subscribe_text') }}</p>
166
+ <h4 class="h5 t-medium mn-b-regular">{{ t('footer.subscribe') }}</h4>
167
+ <p class="t-small mn-b-small t-transp">{{ t('footer.subscribe_text') }}</p>
268
168
 
269
169
  <FieldSubscribeNewsletter
270
170
  :action="''"
@@ -273,11 +173,11 @@ const iconComponents = {
273
173
  class="d-inline-flex mn-b-medium bg-light t-black w-100"
274
174
  />
275
175
 
276
- <h4 class="h5 t-medium mn-b-regular">{{ t('follow') }}</h4>
176
+ <h4 class="h5 t-medium mn-b-regular">{{ t('footer.follow') }}</h4>
277
177
  <!-- Social Links -->
278
178
  <div class="flex gap-thin">
279
179
  <a
280
- v-for="social in tm('socialLinks')"
180
+ v-for="social in tm('footer.socialLinks')"
281
181
  :key="social.name"
282
182
  :href="social.url"
283
183
  target="_blank"
@@ -321,14 +221,14 @@ const iconComponents = {
321
221
  >
322
222
  <!-- Copyright -->
323
223
  <p class="t-small t-medium uppercase">
324
- {{ t('year') }}
325
- <span class="t-main copyleft">{{ t('heart') }}</span>
326
- {{ t('copyright') }}
224
+ {{ t('footer.year') }}
225
+ <span class="t-main copyleft">{{ t('footer.heart') }}</span>
226
+ {{ t('footer.copyright') }}
327
227
  </p>
328
228
 
329
229
  <a href="https://ozdao.dev" target="_blank" rel="noopener" class="flex-nowrap flex-v-center flex t-medium gap-thin br-1px br-light pd-thin radius-thin">
330
230
  <Logotype class="h-1r w-auto"/>
331
- <span>{{ t('ozdao') }}</span>
231
+ <span>{{ t('footer.ozdao') }}</span>
332
232
  </a>
333
233
  </div>
334
234
  </footer>
@@ -1 +0,0 @@
1
- {"version":3,"file":"Dropdown.vue.js","sources":["../../../../../src/components/Dropdown/Dropdown.vue"],"sourcesContent":["<template>\n <div class=\"dropdown pos-relative\" v-click-outside=\"clickedOutside\" @click.stop=\"isOpen = !isOpen\">\n <div v-if=\"isComponentLabel\" class=\"w-100 h-100 flex-center flex\">\n <component :is=\"label.component\" v-bind=\"label.props\" :class=\"label.class\"></component>\n </div>\n <div v-else>\n {{ label }}\n </div>\n <transition name=\"TransitionTranslateY\" mode=\"out-in\">\n <div \n v-show=\"isOpen\" \n :style=\"{ left: align === 'left' ? '0' : 'auto', right: align === 'right' ? '0' : 'auto' }\" \n class=\"dropdown-content radius-big\" \n >\n <slot></slot>\n </div>\n </transition>\n </div>\n</template>\n\n<script setup>\nimport { ref, computed } from 'vue';\nimport clickOutside from '../FieldPhone/click-outside.js';\n\nlet vClickOutside = clickOutside\n\nconst props = defineProps({\n label: {\n type: [String, Object],\n default: 'Open'\n },\n align: {\n type: String,\n default: 'left'\n }\n})\n\nconst isOpen = ref(false);\nconst isComponentLabel = computed(() => typeof props.label === 'object');\n\nfunction clickedOutside () {\n isOpen.value = false\n}\n</script>\n\n<style >\n.dropdown-content {\n display: block;\n position: absolute;\n box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);\n z-index: 1;\n}\n\n/*.dropdown:hover .dropdown-content {\n display: block;\n}*/\n</style>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAwBA,QAAI,gBAAgB;AAEpB,UAAM,QAAQ;AAWd,UAAM,SAAS,IAAI,KAAK;AACxB,UAAM,mBAAmB,SAAS,MAAM,OAAO,MAAM,UAAU,QAAQ;AAEvE,aAAS,iBAAkB;AACzB,aAAO,QAAQ;AAAA,IACjB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Field.vue2.cjs","sources":["../../../../../src/components/Field/Field.vue"],"sourcesContent":["<script setup>\nimport { ref, onMounted, nextTick, watch } from 'vue'\nimport IconShow from '@martyrs/src/modules/icons/actions/IconShow.vue';\nconst emit = defineEmits(['update:field', 'focus', 'blur']);\nconst props = defineProps({\n label: null,\n symbol: null,\n type: 'text',\n placeholder: 'Enter something here',\n field: null,\n value: null,\n validation: false,\n disabled: null,\n tabindex: -1,\n autofocus: false,\n icon: null, // Добавлен пропс для иконки\n name: null, // Имя поля для автозаполнения\n id: null // ID поля\n});\nif (props.value) {\n emit('update:field', props.value)\n}\nconst textarea = ref(null);\nconst input = ref(null);\nconst showPassword = ref(false);\n\nfunction resize() {\n if (!textarea.value) {\n return;\n }\n const el = textarea.value;\n el.style.height = '';\n const scrollHeight = el.scrollHeight;\n if (scrollHeight > 33) {\n el.style.height = scrollHeight + 'px';\n } else {\n el.style.height = '';\n }\n}\nfunction focus() {\n if (props.autofocus) {\n if (props.type === 'textarea' && textarea.value) {\n textarea.value.focus();\n } else if (input.value) {\n input.value.focus();\n }\n }\n}\nwatch(() => props.field, () => {\n if (props.type === 'textarea') {\n nextTick(resize);\n }\n});\nwatch(() => props.autofocus, (newVal) => {\n if (newVal) {\n nextTick(focus);\n }\n});\nonMounted(() => {\n nextTick(focus);\n nextTick(resize);\n});\nconst text = ref(props.field);\n</script>\n<template>\n <div\n :class=\"[\n $attrs.class,\n { 'bg-fourth-nano': validation }\n ]\"\n class=\"field-wrapper flex-center flex-nowrap flex\"\n >\n <!-- Слот для иконки -->\n <slot name=\"icon\" v-if=\"$slots.icon\" />\n <!-- Или компонент иконки через пропс -->\n <component :is=\"icon\" v-else-if=\"icon\" class=\"i-medium t-transp mn-r-thin\" />\n \n <div\n v-if=\"label\"\n class=\"t-transp mn-r-small\"\n >\n <span class=\"t-nowrap\">\n {{label}}\n </span>\n </div>\n <div class=\"w-100 pos-relative\">\n <input\n v-if=\"type !== 'textarea'\"\n ref=\"input\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n :type=\"type === 'password' && !showPassword ? 'password' : type === 'password' ? 'text' : type\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :autofocus=\"autofocus\"\n :name=\"name\"\n :id=\"id\"\n />\n <textarea\n v-else\n ref=\"textarea\"\n @input=\"event => text = emit('update:field', event.target.value)\"\n @focus=\"event => emit('focus', event)\"\n @blur=\"event => emit('blur', event)\"\n class=\"w-100\"\n :value=\"field\"\n :placeholder=\"placeholder\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :name=\"name\"\n :id=\"id\"\n />\n </div>\n <IconShow\n v-if=\"type === 'password'\"\n :show=\"!showPassword\"\n @click=\"showPassword = !showPassword\"\n class=\"i-medium cursor-pointer\"\n />\n <slot></slot>\n <div\n v-if=\"symbol\"\n class=\"t-transp mn-l-small\"\n >\n <span>\n {{symbol}}\n </span>\n </div>\n </div>\n <!-- Validation -->\n <transition name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin mn-b-thin mn-b-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n<style scoped>\ninput,\ntextarea,\nspan {\n color: inherit;\n line-height: 1;\n}\ntextarea {\n resize: none;\n overflow: hidden; \n height: 1rem;\n}\n\ninput {\n height: 1rem;\n}\n\ninput[type=\"date\"]::-webkit-calendar-picker-indicator,\ninput[type=\"time\"]::-webkit-calendar-picker-indicator {\n filter: invert(1);\n opacity: 1;\n color: inherit;\n}\n</style>"],"names":["ref","watch","nextTick","onMounted"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,UAAM,OAAO;AACb,UAAM,QAAQ;AAed,QAAI,MAAM,OAAO;AACf,WAAK,gBAAgB,MAAM,KAAK;AAAA,IAClC;AACA,UAAM,WAAWA,IAAAA,IAAI,IAAI;AACzB,UAAM,QAAQA,IAAAA,IAAI,IAAI;AACtB,UAAM,eAAeA,IAAAA,IAAI,KAAK;AAE9B,aAAS,SAAS;AAChB,UAAI,CAAC,SAAS,OAAO;AACnB;AAAA,MACF;AACA,YAAM,KAAK,SAAS;AACpB,SAAG,MAAM,SAAS;AAClB,YAAM,eAAe,GAAG;AACxB,UAAI,eAAe,IAAI;AACrB,WAAG,MAAM,SAAS,eAAe;AAAA,MACnC,OAAO;AACL,WAAG,MAAM,SAAS;AAAA,MACpB;AAAA,IACF;AACA,aAAS,QAAQ;AACf,UAAI,MAAM,WAAW;AACnB,YAAI,MAAM,SAAS,cAAc,SAAS,OAAO;AAC/C,mBAAS,MAAM,MAAK;AAAA,QACtB,WAAW,MAAM,OAAO;AACtB,gBAAM,MAAM,MAAK;AAAA,QACnB;AAAA,MACF;AAAA,IACF;AACAC,QAAAA,MAAM,MAAM,MAAM,OAAO,MAAM;AAC7B,UAAI,MAAM,SAAS,YAAY;AAC7BC,YAAAA,SAAS,MAAM;AAAA,MACjB;AAAA,IACF,CAAC;AACDD,QAAAA,MAAM,MAAM,MAAM,WAAW,CAAC,WAAW;AACvC,UAAI,QAAQ;AACVC,YAAAA,SAAS,KAAK;AAAA,MAChB;AAAA,IACF,CAAC;AACDC,QAAAA,UAAU,MAAM;AACdD,UAAAA,SAAS,KAAK;AACdA,UAAAA,SAAS,MAAM;AAAA,IACjB,CAAC;AACD,UAAM,OAAOF,IAAAA,IAAI,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Menu.vue.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Menu.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Select.vue.js","sources":["../../../../../src/components/Select/Select.vue"],"sourcesContent":["<template>\n <!-- Input Wrapper -->\n <div \n ref=\"fieldWrapper\"\n tabindex=\"0\"\n @click.stop=\"toggleMenu\" \n v-click-outside=\"clickedOutside\" \n :class=\"$attrs.class\" \n class=\"cursor-pointer field-wrapper flex-v-center flex-nowrap flex pos-relative\"\n >\n <!-- Label -->\n <span v-if=\"label\" class=\"t-transp mn-r-small\">{{label}}</span>\n \n <!-- Input -->\n <span>\n {{ optionsSelected ? (optionsSelected.name || optionsSelected[props.value] || optionsSelected) : placeholder }}\n </span>\n <!-- Dropdown menu -->\n <transition mode=\"out-in\" name=\"TransitionTranslateY\">\n <ul \n v-show=\"showMenu\" \n class=\"bs-black pos-absolute pos-t-100 pos-l-0 z-index-5 pd-small radius-small bg-white mn-t-thin w-100\"\n style=\"min-width: max-content;\"\n >\n <li @click.stop=\"selectOption(option)\" v-for=\"option in optionsListed\" class=\"radius-thin hover-bg-light pd-thin text-box-trim\">\n <span v-if=\"option\" class=\"w-100\">\n {{ option.name || option[props.value] || option }}\n </span>\n </li>\n </ul>\n </transition>\n </div>\n <!-- Validation -->\n <transition mode=\"out-in\" name=\"fade\">\n <div v-if=\"validation\" class=\"mn-t-thin invalid-feedback\">\n * {{validation.message}}\n </div>\n </transition>\n</template>\n<script setup>\nimport { ref, computed, watch, nextTick } from 'vue'\nimport clickOutside from '../FieldPhone/click-outside.js';\nlet vClickOutside = clickOutside\nconst emit = defineEmits([\n 'update:select', \n 'focus', \n 'blur'\n])\nconst props = defineProps({\n label: String,\n placeholder: { type: String, default: 'Please select an item' },\n select: [String, Object],\n property: String,\n value: String,\n options: { type: Array, default: () => [] },\n validation: Boolean,\n})\nconst showMenu = ref(false)\nconst fieldWrapper = ref(null)\nconst optionsSelected = ref(\n props.property \n ? findObjectByValue(props.select, props.property, props.options) \n : props.select\n)\nconst optionsListed = computed(() => {\n return props.select \n ? props.options.filter(option => option !== props.select) \n : props.options\n})\nwatch(() => props.select, (newSelect) => {\n optionsSelected.value = \n props.property \n ? findObjectByValue(props.select, props.property, props.options) \n : props.select;\n});\nconst toggleMenu = async () => {\n showMenu.value = !showMenu.value\n \n if (showMenu.value) {\n await nextTick()\n fieldWrapper.value?.focus()\n emit('focus')\n } else {\n emit('blur')\n }\n}\nfunction clickedOutside () {\n showMenu.value = false\n}\nconst selectOption = option => {\n optionsSelected.value = option\n \n toggleMenu()\n if (props.property) { \n emit('update:select', optionsSelected.value[props.property])\n } else {\n emit('update:select', optionsSelected.value)\n }\n}\nfunction findObjectByValue (value, property, objects) {\n for (const object of objects) {\n if (object[property] === value || object === value) {\n return object;\n }\n }\n return null;\n}\n</script>\n<style lang=\"scss\" scoped>\n li {\n list-style-type: none;\n }\n ul li {\n line-height: 2;\n }\n .field-wrapper:focus {\n outline: none;\n }\n</style>"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,QAAI,gBAAgB;AACpB,UAAM,OAAO;AAKb,UAAM,QAAQ;AASd,UAAM,WAAW,IAAI,KAAK;AAC1B,UAAM,eAAe,IAAI,IAAI;AAC7B,UAAM,kBAAkB;AAAA,MACtB,MAAM,WACJ,kBAAkB,MAAM,QAAQ,MAAM,UAAU,MAAM,OAAO,IAC7D,MAAM;AAAA,IACV;AACA,UAAM,gBAAgB,SAAS,MAAM;AACnC,aAAO,MAAM,SACX,MAAM,QAAQ,OAAO,YAAU,WAAW,MAAM,MAAM,IACtD,MAAM;AAAA,IACV,CAAC;AACD,UAAM,MAAM,MAAM,QAAQ,CAAC,cAAc;AACvC,sBAAgB,QAChB,MAAM,WACJ,kBAAkB,MAAM,QAAQ,MAAM,UAAU,MAAM,OAAO,IAC7D,MAAM;AAAA,IACV,CAAC;AACD,UAAM,aAAa,YAAY;AAC7B,eAAS,QAAQ,CAAC,SAAS;AAE3B,UAAI,SAAS,OAAO;AAClB,cAAM,SAAQ;AACd,qBAAa,OAAO,MAAK;AACzB,aAAK,OAAO;AAAA,MACd,OAAO;AACL,aAAK,MAAM;AAAA,MACb;AAAA,IACF;AACA,aAAS,iBAAkB;AACzB,eAAS,QAAQ;AAAA,IACnB;AACA,UAAM,eAAe,YAAU;AAC7B,sBAAgB,QAAQ;AAExB,iBAAU;AACV,UAAI,MAAM,UAAU;AAClB,aAAK,iBAAiB,gBAAgB,MAAM,MAAM,QAAQ,CAAC;AAAA,MAC7D,OAAO;AACL,aAAK,iBAAiB,gBAAgB,KAAK;AAAA,MAC7C;AAAA,IACF;AACA,aAAS,kBAAmB,OAAO,UAAU,SAAS;AACpD,iBAAW,UAAU,SAAS;AAC5B,YAAI,OAAO,QAAQ,MAAM,SAAS,WAAW,OAAO;AAClD,iBAAO;AAAA,QACT;AAAA,MACF;AACA,aAAO;AAAA,IACT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Spoiler.vue.js","sources":["../../../../../src/components/Spoiler/Spoiler.vue"],"sourcesContent":["<template>\n <div>\n <div @click=\"toggleSpoiler\" class=\"flex-v-center flex-nowrap flex\">\n <slot name=\"header\" :isOpen=\"showSpoiler\"></slot>\n </div>\n <transition\n name=\"collapse\"\n @enter=\"onEnter\"\n @after-enter=\"onAfterEnter\"\n @leave=\"onLeave\"\n >\n <div v-show=\"showSpoiler\" class=\"spoiler\" ref=\"spoilerContent\">\n <slot name=\"content\"></slot>\n </div>\n </transition>\n </div>\n</template>\n<script setup>\nimport { ref, onMounted } from 'vue';\n\nconst props = defineProps({\n status: {\n type: Boolean,\n default: false\n }\n});\n\nconst showSpoiler = ref(false);\nconst spoilerContent = ref(null);\n\nonMounted(() => {\n if (props.status) {\n showSpoiler.value = props.status;\n }\n});\n\nconst toggleSpoiler = () => {\n showSpoiler.value = !showSpoiler.value;\n};\n\n// Анимация открытия\nconst onEnter = (el) => {\n el.style.height = '0';\n void el.offsetHeight; // force reflow\n el.style.height = el.scrollHeight + 'px';\n};\n\nconst onAfterEnter = (el) => {\n el.style.height = 'auto';\n};\n\n// Анимация закрытия\nconst onLeave = (el) => {\n el.style.height = el.scrollHeight + 'px';\n void el.offsetHeight; // force reflow\n el.style.height = '0';\n};\n\ndefineExpose({\n showSpoiler\n});\n</script>\n<style lang=\"scss\">\n.spoiler {\n overflow: hidden;\n transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1);\n}\n</style>"],"names":[],"mappings":";;;;;;;;;;;AAoBA,UAAM,QAAQ;AAOd,UAAM,cAAc,IAAI,KAAK;AAC7B,UAAM,iBAAiB,IAAI,IAAI;AAE/B,cAAU,MAAM;AACd,UAAI,MAAM,QAAQ;AAChB,oBAAY,QAAQ,MAAM;AAAA,MAC5B;AAAA,IACF,CAAC;AAED,UAAM,gBAAgB,MAAM;AAC1B,kBAAY,QAAQ,CAAC,YAAY;AAAA,IACnC;AAGA,UAAM,UAAU,CAAC,OAAO;AACtB,SAAG,MAAM,SAAS;AAClB,WAAK,GAAG;AACR,SAAG,MAAM,SAAS,GAAG,eAAe;AAAA,IACtC;AAEA,UAAM,eAAe,CAAC,OAAO;AAC3B,SAAG,MAAM,SAAS;AAAA,IACpB;AAGA,UAAM,UAAU,CAAC,OAAO;AACtB,SAAG,MAAM,SAAS,GAAG,eAAe;AACpC,WAAK,GAAG;AACR,SAAG,MAAM,SAAS;AAAA,IACpB;AAEA,aAAa;AAAA,MACX;AAAA,IACF,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"THC.vue.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"THC.vue.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}