@ozdao/martyrs 0.2.451 → 0.2.453

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 (60) hide show
  1. package/dist/{Media-Bx_un17A.js → Media-BsgJlo-X.js} +1 -1
  2. package/dist/{Media-_5Qittnv.mjs → Media-CxRfrG2S.mjs} +1 -1
  3. package/dist/builder.js +8 -9
  4. package/dist/builder.mjs +8 -9
  5. package/dist/{main-DZCereaK.mjs → main-7FA_ai95.mjs} +2 -2
  6. package/dist/{main-AHluqkEA.js → main-Zocv7IVl.js} +2 -2
  7. package/dist/martyrs/src/components/Feed/Feed.vue.cjs +1 -1
  8. package/dist/martyrs/src/components/Feed/Feed.vue.cjs.map +1 -1
  9. package/dist/martyrs/src/components/Feed/Feed.vue.js +1 -1
  10. package/dist/martyrs/src/components/Feed/Feed.vue.js.map +1 -1
  11. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs +2 -2
  12. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.cjs.map +1 -1
  13. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js +2 -2
  14. package/dist/martyrs/src/modules/auth/views/components/layouts/Auth.vue.js.map +1 -1
  15. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs +1 -1
  16. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.cjs.map +1 -1
  17. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js +1 -1
  18. package/dist/martyrs/src/modules/auth/views/components/pages/SignIn.vue.js.map +1 -1
  19. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs +13 -51
  20. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.cjs.map +1 -1
  21. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js +13 -51
  22. package/dist/martyrs/src/modules/globals/views/components/layouts/App.vue.js.map +1 -1
  23. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs +36 -13
  24. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.cjs.map +1 -1
  25. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js +36 -13
  26. package/dist/martyrs/src/modules/globals/views/components/layouts/Client.vue.js.map +1 -1
  27. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs +27 -17
  28. package/dist/martyrs/src/modules/globals/views/mixins/mixins.cjs.map +1 -1
  29. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js +27 -17
  30. package/dist/martyrs/src/modules/globals/views/mixins/mixins.js.map +1 -1
  31. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs +1 -3
  32. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.cjs.map +1 -1
  33. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js +1 -3
  34. package/dist/martyrs/src/modules/marketplace/views/components/pages/Catalog.vue.js.map +1 -1
  35. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs +4 -4
  36. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.cjs.map +1 -1
  37. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js +4 -4
  38. package/dist/martyrs/src/modules/orders/components/partials/ShopCart.vue.js.map +1 -1
  39. package/dist/martyrs/src/modules/orders/store/shopcart.cjs +0 -1
  40. package/dist/martyrs/src/modules/orders/store/shopcart.cjs.map +1 -1
  41. package/dist/martyrs/src/modules/orders/store/shopcart.js +0 -1
  42. package/dist/martyrs/src/modules/orders/store/shopcart.js.map +1 -1
  43. package/dist/martyrs.cjs.js +1 -1
  44. package/dist/martyrs.css +1 -1
  45. package/dist/martyrs.es.js +1 -1
  46. package/dist/style.css +1 -53
  47. package/package.json +1 -1
  48. package/src/builder/webpack/webpack.config.client.js +5 -5
  49. package/src/components/Feed/Feed.vue +1 -1
  50. package/src/modules/auth/views/components/layouts/Auth.vue +2 -2
  51. package/src/modules/auth/views/components/pages/SignIn.vue +1 -1
  52. package/src/modules/globals/views/components/layouts/App.vue +5 -94
  53. package/src/modules/globals/views/components/layouts/Client.vue +54 -14
  54. package/src/modules/globals/views/mixins/mixins.js +35 -18
  55. package/src/modules/icons/logos/Logotype.vue +1 -1
  56. package/src/modules/marketplace/views/components/pages/Catalog.vue +1 -3
  57. package/src/modules/orders/components/partials/ShopCart.vue +4 -15
  58. package/src/modules/orders/store/shopcart.js +0 -2
  59. package/src/styles/base/borders.scss +7 -1
  60. package/src/styles/layout.scss +3 -41
@@ -1,4 +1,4 @@
1
- import { a as o, t, b as d, c as r, u as l, v as i, w as p, d as u, x as n, e as m, y as M, F as S, z as c, f as F, A as g, L as h, g as b, M as k, E as x, n as B, o as C, h as T, i as U, S as f, j as w, B as D, C as E, k as I, D as L, l as P, q, p as y, U as A, r as j, s as v, m as z } from "./main-DZCereaK.mjs";
1
+ import { a as o, t, b as d, c as r, u as l, v as i, w as p, d as u, x as n, e as m, y as M, F as S, z as c, f as F, A as g, L as h, g as b, M as k, E as x, n as B, o as C, h as T, i as U, S as f, j as w, B as D, C as E, k as I, D as L, l as P, q, p as y, U as A, r as j, s as v, m as z } from "./main-7FA_ai95.mjs";
2
2
  import "vue";
3
3
  export {
4
4
  o as Address,
package/dist/style.css CHANGED
@@ -955,50 +955,7 @@ div.vue-tags-input.disabled * {
955
955
  .slider-hotpost .embla__slide {
956
956
  flex: 0 0 75%;
957
957
  }
958
- }
959
- /* Base layout styles */
960
- #app-wrapper {
961
- position: relative;
962
- width: 100%;
963
- min-height: 100vh;
964
- }
965
-
966
- /* Layout with sidebar expanded */
967
- .content-with-sidebar {
968
- margin-left: 18rem;
969
- width: calc(100% - 18rem);
970
- transition: all 0.3s ease-in-out;
971
- }
972
-
973
- /* Layout with sidebar collapsed */
974
- .content-full-width {
975
- margin-left: 3rem; /* Width of collapsed sidebar with icons only */
976
- width: calc(100% - 3rem);
977
- transition: all 0.3s ease-in-out;
978
- }
979
-
980
- /* Mobile layout adjustments */
981
- @media (max-width: 768px) {
982
- .content-with-sidebar,
983
- .content-full-width {
984
- margin-left: 0 !important;
985
- width: 100% !important;
986
- }
987
-
988
- /* When sidebar is expanded on mobile, we add overlay effect */
989
- .sidebar-expanded-layout::after {
990
- content: '';
991
- position: fixed;
992
- top: 0;
993
- left: 0;
994
- right: 0;
995
- bottom: 0;
996
- background: rgba(0, 0, 0, 0.5);
997
- z-index: 90;
998
- transition: opacity 0.3s ease;
999
- }
1000
- }
1001
- .error-wrapper {
958
+ }.error-wrapper {
1002
959
  position: absolute;
1003
960
  left: 0;
1004
961
  right: 0;
@@ -1063,18 +1020,9 @@ div.vue-tags-input.disabled * {
1063
1020
  width: 33%;
1064
1021
  overflow-y: scroll;
1065
1022
  }
1066
- .shop-cart .shopcart-footer {
1067
- position: fixed;
1068
- bottom: 0;
1069
- width: 33%;
1070
- right: -33%;
1071
- }
1072
1023
  .shop-cart-active {
1073
1024
  right: 0;
1074
1025
  }
1075
- .shop-cart-active .shopcart-footer {
1076
- right: 0;
1077
- }
1078
1026
  @media screen and (max-width: 1025px) {
1079
1027
  .shop-cart {
1080
1028
  width: 100%;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ozdao/martyrs",
3
- "version": "0.2.451",
3
+ "version": "0.2.453",
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",
@@ -36,11 +36,11 @@ module.exports = (projectRoot) => {
36
36
  // ...(!isProd ? [new webpack.HotModuleReplacementPlugin()] : []),
37
37
  new StatsWriterPlugin(),
38
38
  ...(!isProd ? [
39
- new WorkboxPlugin.GenerateSW({
40
- clientsClaim: true,
41
- skipWaiting: true,
42
- disableDevLogs: true
43
- }),
39
+ // new WorkboxPlugin.GenerateSW({
40
+ // clientsClaim: true,
41
+ // skipWaiting: true,
42
+ // disableDevLogs: true
43
+ // }),
44
44
  ] : []),
45
45
  new PurgeCSSPlugin({
46
46
  printRejected: true,
@@ -24,7 +24,7 @@
24
24
  <BottomSheet
25
25
  :show="filter.active"
26
26
  @toggle="() => filter.active = false"
27
- class="z-index-10 pos-fixed pos-t-0 pos-r-0"
27
+ class="z-index-10 pos-absolute pos-t-0 pos-r-0"
28
28
  :class="{
29
29
  'pos-t-0': filter.active,
30
30
  'pos-t-100': !filter.active
@@ -1,10 +1,10 @@
1
1
  <template>
2
2
  <div
3
- class="cols-2-1_2 gap-small pd-small bg-white"
3
+ class="cols-2-1_2 gap-small pd-small"
4
4
  >
5
5
 
6
6
  <router-view
7
- class="pd-big w-m-66r t-center"
7
+ class="pd-big mobile:pd-medium w-m-66r t-center"
8
8
  v-slot="{ Component, route }"
9
9
  >
10
10
  <transition
@@ -86,7 +86,7 @@
86
86
  <Button
87
87
  :submit="onSubmit"
88
88
  :callback="redirectTo"
89
- class="w-100 bg-main mn-b-thin"
89
+ class="w-100 bg-main"
90
90
  >
91
91
  {{ t('signin') }}
92
92
  </Button>
@@ -1,26 +1,6 @@
1
1
  <template>
2
- <transition
3
- name="moveFromTop"
4
- mode="out-in"
5
- >
6
- <section
7
- v-if="FirstUse && route.meta.walkthrough"
8
- class="w-100 h-100"
9
- >
10
- <component
11
- :is="route.meta.walkthrough"
12
- name="Walkthrough"
13
- @updateFirstUse="updateFirstUse"
14
- :slides="[1,2,3]"
15
- class="tab"
16
- >
17
- </component>
18
- </section>
19
- </transition>
20
-
21
2
  <router-view
22
3
  v-slot="{ Component }"
23
- class="transition-ease-in-out h-min-100 w-100 pos-relative"
24
4
  >
25
5
  <component ref="page" :is="Component"/>
26
6
  </router-view>
@@ -55,14 +35,13 @@
55
35
  /////////////////////////////
56
36
  // META
57
37
  /////////////////////////////
58
- const { t, locale } = useI18n({
38
+ const { t, locale, availableLocales } = useI18n({
59
39
  messages: props.messages
60
40
  })
61
41
 
62
-
63
42
  const route = useRoute();
64
43
 
65
- const languages = ['en', 'ru'];
44
+ const languages = availableLocales;
66
45
  const base_url = process.env.FILE_SERVER_URL;
67
46
 
68
47
  function removeTrailingSlash(url) {
@@ -113,80 +92,12 @@
113
92
  });
114
93
 
115
94
  useHead(metadata)
116
- /////////////////////////////
117
- // FIRST USE
118
- /////////////////////////////
119
- const FirstUse = ref(false);
120
-
121
- import { Preferences } from '@capacitor/preferences';
122
- import { Keyboard } from '@capacitor/keyboard';
123
-
124
- if (process.env.MOBILE_APP === 'ios') Keyboard.setAccessoryBarVisible({ isVisible: false })
125
-
126
- async function getFirstUse() {
127
- const ret = await Preferences.get({ key: 'first-use' });
128
- FirstUse.value = ret.value ? JSON.parse(ret.value) : true;
129
- }
130
-
131
- const updateFirstUse = (value) => {
132
- FirstUse.value = value;
133
- }
134
-
95
+
135
96
  onBeforeMount(async()=>{
136
97
  const { value } = await Preferences.get({ key: 'darkmode' });
98
+
137
99
  const isDarkMode = value ? JSON.parse(value) : false;
138
100
 
139
- // Устанавливаем тему
140
101
  globals.actions.setTheme(isDarkMode);
141
102
  })
142
-
143
- onMounted(async () => {
144
- await getFirstUse()
145
- if (page) show.value = true
146
- });
147
- </script>
148
-
149
- <style>
150
- /* Base layout styles */
151
- #app-wrapper {
152
- position: relative;
153
- width: 100%;
154
- min-height: 100vh;
155
- }
156
-
157
- /* Layout with sidebar expanded */
158
- .content-with-sidebar {
159
- margin-left: 18rem;
160
- width: calc(100% - 18rem);
161
- transition: all 0.3s ease-in-out;
162
- }
163
-
164
- /* Layout with sidebar collapsed */
165
- .content-full-width {
166
- margin-left: 3rem; /* Width of collapsed sidebar with icons only */
167
- width: calc(100% - 3rem);
168
- transition: all 0.3s ease-in-out;
169
- }
170
-
171
- /* Mobile layout adjustments */
172
- @media (max-width: 768px) {
173
- .content-with-sidebar,
174
- .content-full-width {
175
- margin-left: 0 !important;
176
- width: 100% !important;
177
- }
178
-
179
- /* When sidebar is expanded on mobile, we add overlay effect */
180
- .sidebar-expanded-layout::after {
181
- content: '';
182
- position: fixed;
183
- top: 0;
184
- left: 0;
185
- right: 0;
186
- bottom: 0;
187
- background: rgba(0, 0, 0, 0.5);
188
- z-index: 90;
189
- transition: opacity 0.3s ease;
190
- }
191
- }
192
- </style>
103
+ </script>
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <div
3
3
  id="app-wrapper"
4
- class="pos-relative o-hidden"
4
+ class="flex flex-column h-100 w-100 pos-relative o-hidden"
5
5
  :class="{
6
6
  'pd-t-extra': MOBILE_APP === 'ios',
7
7
  'bg-white': headerTheme === 'light',
@@ -11,7 +11,27 @@
11
11
  <transition name="moveFromTop" appear>
12
12
  <Loader v-if="!page || isPageLoading" class="pos-fixed"/>
13
13
  </transition>
14
-
14
+
15
+
16
+ <transition
17
+ name="moveFromTop"
18
+ mode="out-in"
19
+ >
20
+ <section
21
+ v-if="FirstUse && route.meta.walkthrough"
22
+ class="w-100 h-100"
23
+ >
24
+ <component
25
+ :is="route.meta.walkthrough"
26
+ name="Walkthrough"
27
+ @updateFirstUse="updateFirstUse"
28
+ :slides="[1,2,3]"
29
+ class="tab"
30
+ >
31
+ </component>
32
+ </section>
33
+ </transition>
34
+
15
35
  <component
16
36
  v-if="!MOBILE_APP && route.meta.header"
17
37
  ref="header"
@@ -48,11 +68,12 @@
48
68
  <LocationSelection />
49
69
  </Popup>
50
70
 
71
+ <!-- class="flex flex-nowrap transition-ease-in-out o-hidden pos-relative" -->
51
72
  <section
52
73
  id="screen"
53
74
  ref="screen"
54
75
  @scroll="handleScroll"
55
- class="flex flex-nowrap transition-ease-in-out o-hidden pos-relative"
76
+ class="flex flex-nowrap h-100 pos-relative o-hidden transition-ease-in-out"
56
77
  :class="{
57
78
  '': MOBILE_APP === 'ios',
58
79
  }"
@@ -91,7 +112,7 @@
91
112
  />
92
113
  </transition>
93
114
  </component>
94
-
115
+ <!-- rows-1-min0_max1 z-index-1 pos-relative w-100 h-100 -->
95
116
  <div class="rows-1-min0_max1 z-index-1 pos-relative w-100 h-100">
96
117
  <Status
97
118
  v-if="globals.state.error.show"
@@ -229,18 +250,37 @@
229
250
  const handleScroll = () => {
230
251
  scrollOffset.value = event.target.scrollTop
231
252
  };
253
+ /////////////////////////////
254
+ // FIRST USE
255
+ /////////////////////////////
256
+ const FirstUse = ref(false);
257
+
258
+ import { Preferences } from '@capacitor/preferences';
259
+ import { Keyboard } from '@capacitor/keyboard';
260
+
261
+ if (process.env.MOBILE_APP === 'ios') Keyboard.setAccessoryBarVisible({ isVisible: false })
262
+
263
+ async function getFirstUse() {
264
+ const ret = await Preferences.get({ key: 'first-use' });
265
+ FirstUse.value = ret.value ? JSON.parse(ret.value) : true;
266
+ }
267
+
268
+ const updateFirstUse = (value) => {
269
+ FirstUse.value = value;
270
+ }
232
271
 
233
272
  onMounted(async () => {
234
-
235
- if ('serviceWorker' in navigator) {
236
- window.addEventListener('load', () => {
237
- navigator.serviceWorker.register('/service-worker.js').then(registration => {
238
- console.log('SW registered: ', registration);
239
- }).catch(registrationError => {
240
- console.log('SW registration failed: ', registrationError);
241
- });
242
- });
243
- }
273
+ await getFirstUse()
274
+
275
+ // if ('serviceWorker' in navigator) {
276
+ // window.addEventListener('load', () => {
277
+ // navigator.serviceWorker.register('/service-worker.js').then(registration => {
278
+ // console.log('SW registered: ', registration);
279
+ // }).catch(registrationError => {
280
+ // console.log('SW registration failed: ', registrationError);
281
+ // });
282
+ // });
283
+ // }
244
284
 
245
285
  const savedPosition = localStorage.getItem('position');
246
286
 
@@ -2,7 +2,7 @@ import * as globals from '@martyrs/src/modules/globals/views/store/globals'
2
2
 
3
3
  // useGlobalMixins.js
4
4
  export function useGlobalMixins() {
5
- const isClientSide = typeof window !== 'undefined'
5
+
6
6
 
7
7
  const isAdmin = (roles) => {
8
8
  if (roles) {
@@ -192,6 +192,8 @@ const formatDate = (d, options = {}) => {
192
192
  return base;
193
193
  }
194
194
 
195
+ const isClientSide = typeof window !== 'undefined' && typeof document !== 'undefined'
196
+
195
197
  const getCssVar = (name) => {
196
198
  if (!isClientSide) return '' // SSR fallback
197
199
  return getComputedStyle(document.documentElement)
@@ -199,35 +201,50 @@ const formatDate = (d, options = {}) => {
199
201
  .trim()
200
202
  }
201
203
 
204
+ const matchMediaSafe = (query) => {
205
+ if (!isClientSide) return { matches: false }
206
+ return window.matchMedia(query)
207
+ }
208
+
202
209
  const isMediaMax = (varName) => {
203
- if (!isClientSide) return false
204
210
  const maxWidth = getCssVar(varName)
205
- return window.matchMedia(`(max-width: ${maxWidth})`).matches
211
+ return matchMediaSafe(`(max-width: ${maxWidth})`).matches
206
212
  }
207
213
 
208
214
  const isMediaMin = (varName) => {
209
- if (!isClientSide) return false
210
215
  const minWidth = getCssVar(varName)
211
- return window.matchMedia(`(min-width: ${minWidth})`).matches
216
+ return matchMediaSafe(`(min-width: ${minWidth})`).matches
212
217
  }
213
218
 
214
-
215
219
  const isFlipPhone = () => isMediaMax('--flip-phone-max')
216
220
  const isPhone = () => isMediaMax('--phone-landscape-max')
217
- const isTabletPortrait = () => window.matchMedia(
218
- `(min-width: ${getCssVar('--tablet-portrait-min')}) and (max-width: ${getCssVar('--tablet-portrait-max')})`
219
- ).matches
220
- const isTabletLandscape = () => window.matchMedia(
221
- `(min-width: ${getCssVar('--tablet-landscape-min')}) and (max-width: ${getCssVar('--tablet-landscape-max')})`
222
- ).matches
221
+
222
+ const isTabletPortrait = () => {
223
+ const min = getCssVar('--tablet-portrait-min')
224
+ const max = getCssVar('--tablet-portrait-max')
225
+ return matchMediaSafe(`(min-width: ${min}) and (max-width: ${max})`).matches
226
+ }
227
+
228
+ const isTabletLandscape = () => {
229
+ const min = getCssVar('--tablet-landscape-min')
230
+ const max = getCssVar('--tablet-landscape-max')
231
+ return matchMediaSafe(`(min-width: ${min}) and (max-width: ${max})`).matches
232
+ }
233
+
223
234
  const isTablet = () => isTabletPortrait() || isTabletLandscape()
224
235
 
225
- const isDesktop = () => window.matchMedia(
226
- `(min-width: ${getCssVar('--desktop-min')}) and (max-width: ${getCssVar('--desktop-max')})`
227
- ).matches
228
- const isXLDesktop = () => window.matchMedia(
229
- `(min-width: ${getCssVar('--xl-desktop-min')}) and (max-width: ${getCssVar('--xl-desktop-max')})`
230
- ).matches
236
+ const isDesktop = () => {
237
+ const min = getCssVar('--desktop-min')
238
+ const max = getCssVar('--desktop-max')
239
+ return matchMediaSafe(`(min-width: ${min}) and (max-width: ${max})`).matches
240
+ }
241
+
242
+ const isXLDesktop = () => {
243
+ const min = getCssVar('--xl-desktop-min')
244
+ const max = getCssVar('--xl-desktop-max')
245
+ return matchMediaSafe(`(min-width: ${min}) and (max-width: ${max})`).matches
246
+ }
247
+
231
248
  const isXXLDesktop = () => isMediaMin('--xxl-desktop-min')
232
249
 
233
250
 
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <svg class="h-2r w-max" width="270" height="300" viewBox="0 0 270 300" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <svg class="h-2r w-auto" width="270" height="300" viewBox="0 0 270 300" fill="none" xmlns="http://www.w3.org/2000/svg">
3
3
  <g clip-path="url(#clip0)">
4
4
  <path fill-rule="evenodd" clip-rule="evenodd" d="M264.626 52.2791C265.531 57.2858 266 62.4066 266 67.6155C266 125.882 207.349 173.116 135 173.116C62.6507 173.116 4 125.882 4 67.6155C4 62.4066 4.46875 57.2858 5.37413 52.2791C11.0997 32.6306 21.1714 14.8341 34.4789 0C34.1621 2.17658 34 4.38345 34 6.61562C34 43.8948 79.2192 74.1156 135 74.1156C190.781 74.1156 236 43.8948 236 6.61562C236 4.38345 235.838 2.17659 235.521 5.29254e-06C248.829 14.8341 258.9 32.6306 264.626 52.2791Z" fill="#00FF88"/>
5
5
  <path d="M270 165C270 239.558 209.558 300 135 300C60.4416 300 0 239.558 0 165C0 90.4416 60.4416 30 135 30C209.558 30 270 90.4416 270 165Z" fill="#00FF88"/>
@@ -2,9 +2,7 @@
2
2
  <Feed
3
3
  v-model:sort="marketplace.state.sort"
4
4
  v-model:filter="marketplace.state.filter"
5
- :search="{
6
- autofocus:true
7
- }"
5
+ :search="true"
8
6
  :showLoadMore="false"
9
7
  :states="{
10
8
  empty: {
@@ -1,9 +1,9 @@
1
1
  <template>
2
- <section class="z-index-5 transition-ease-in-out pd-big mobile:pd-medium bg-white shop-cart" :class="{'shop-cart-active':shopcart.state.currentState === true}">
2
+ <section class="z-index-5 flex flex-column transition-ease-in-out bg-white shop-cart" :class="{'shop-cart-active':shopcart.state.currentState === true}">
3
3
  <!-- ---------------------------------------------------------------- -->
4
4
  <!-- 01. Popup Header -->
5
5
  <!-- ---------------------------------------------------------------- -->
6
- <div class="flex-nowrap flex">
6
+ <div class="pd-big mobile:pd-medium pd-b-zero mobile:pd-b-zero flex-nowrap flex">
7
7
  <div class="mn-b-medium w-100">
8
8
  <h4 class="mn-b-thin p-big">{{t('title')}}</h4>
9
9
  <p class="t-transp p-small">{{t('subtitle')}} {{ t('positions', { count: StoreCartAmount }) }}</p>
@@ -13,7 +13,7 @@
13
13
  <!-- ---------------------------------------------------------------- -->
14
14
  <!-- 02. Popup Content -->
15
15
  <!-- ---------------------------------------------------------------- -->
16
- <div class="h-100 flex flex-column w-100 pos-relative o-x-hidden o-y-scroll gap-small shopcart-content">
16
+ <div class="pd-big mobile:pd-medium h-70 flex flex-column w-100 pos-relative o-x-hidden o-y-scroll gap-small shopcart-content">
17
17
  <!-- Empty State -->
18
18
  <p v-if="!(shopcart.state.positions.length > 0)" class="mn-t-medium"><i>{{t('emptystate')}}</i></p>
19
19
  <!-- Shopcart positions -->
@@ -31,7 +31,7 @@
31
31
  <!-- ---------------------------------------------------------------- -->
32
32
  <!-- 03. Footer -->
33
33
  <!-- ---------------------------------------------------------------- -->
34
- <div class="shopcart-footer transition-ease-in-out pd-b-medium pd-t-medium pd-big transition-cubic bg-light t-black">
34
+ <div class="h-30 transition-ease-in-out pd-b-medium pd-t-medium pd-big transition-cubic bg-light t-black">
35
35
  <div v-if="shopcart.state.positions.length > 0" class="mn-b-small total-price">
36
36
  <PriceTotal
37
37
  :totalPrice="cartTotalPrice"
@@ -146,22 +146,11 @@
146
146
  width: 33%;
147
147
 
148
148
  overflow-y: scroll;
149
-
150
- .shopcart-footer {
151
- position: fixed;
152
- bottom: 0;
153
-
154
- width: 33%;
155
- right: -33%;
156
- }
157
149
  }
158
150
 
159
151
  .shop-cart-active {
160
152
  right: 0;
161
153
 
162
- .shopcart-footer {
163
- right: 0;
164
- }
165
154
  }
166
155
 
167
156
  @media screen and (max-width: 1025px) {
@@ -26,7 +26,6 @@ const helpers = {
26
26
  images: product.images,
27
27
  name: product.name,
28
28
  price: product.price,
29
- price_currency: product.price_currency,
30
29
  listing: product.listing,
31
30
  quantity: 1,
32
31
  org_id: organization,
@@ -155,7 +154,6 @@ const actions = {
155
154
  name: product.name,
156
155
  listing: product.listing,
157
156
  price: product.price,
158
- price_currency: product.price_currency,
159
157
  quantity: 1,
160
158
  date: date,
161
159
  org_id: organization, // Добавляем _id организации к каждому продукту
@@ -27,7 +27,13 @@ body {
27
27
  }
28
28
 
29
29
  // Border Clasess
30
- .br-zero { border-width: 0 }
30
+ .br-zero {
31
+ border-width: 0;
32
+ border-top-width: 0;
33
+ border-right-width: 0;
34
+ border-bottom-width: 0;
35
+ border-left-width: 0;
36
+ }
31
37
  .br-1px { border-width: 1px; }
32
38
  .br-2px { border-width: 2px; }
33
39
  /* Border style */
@@ -2,20 +2,6 @@
2
2
  box-sizing: border-box;
3
3
  }
4
4
 
5
- /*img {
6
- flex: 0 0 35%;
7
- min-width: 0;
8
- object-fit: cover;
9
- }*/
10
-
11
- html, body {
12
- position: relative;
13
- width: 100vh;
14
- height: 100vh;
15
- overscroll-behavior: none;
16
- }
17
-
18
-
19
5
  html {
20
6
  backface-visibility: hidden;
21
7
  text-rendering: geometricPrecision;
@@ -26,41 +12,17 @@ html {
26
12
  body {
27
13
  background: rgb(var(--white));
28
14
  color: rgb(var(--black));;
29
- // -ms-overflow-style: none;
30
- // overflow-y: hidden;
31
- // overflow-x: hidden;
32
15
  }
33
16
 
34
17
  html,
35
- body {
18
+ body,
19
+ #app,
20
+ {
36
21
  position: relative;
37
22
  width: 100%;
38
23
  height: 100%;
39
- // overflow-x: hidden;
40
24
  }
41
25
 
42
- #app {
43
- position: relative;
44
- width: 100%;
45
- height: 100%;
46
- overflow: hidden;
47
- }
48
-
49
- #app-wrapper {
50
- // display: grid;
51
- // grid-template-rows: minmax(1px, auto) 1fr;
52
- display: flex;
53
- flex-direction: column;
54
- position: relative;
55
- height: 100%;
56
- width: 100%;
57
- }
58
-
59
- #screen {
60
- // min-height: 100%;
61
- flex: 1 0 auto; /* Enable flex grow */
62
- height: 0;
63
- }
64
26
 
65
27
  // TURN OFF SCROLL AND CUROURS
66
28
  // * {