@ozdao/prometheus-framework 0.2.110 → 0.2.111

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. package/dist/prometheus-framework/src/components/Popup/Popup.vue.cjs +1 -1
  2. package/dist/prometheus-framework/src/components/Popup/Popup.vue.js +1 -73
  3. package/dist/prometheus-framework/src/components/Popup/Popup.vue2.cjs +1 -1
  4. package/dist/prometheus-framework/src/components/Popup/Popup.vue2.js +73 -1
  5. package/dist/prometheus-framework/src/components/Select/Select.vue.cjs +1 -1
  6. package/dist/prometheus-framework/src/components/Select/Select.vue.js +1 -103
  7. package/dist/prometheus-framework/src/components/Select/Select.vue2.cjs +1 -1
  8. package/dist/prometheus-framework/src/components/Select/Select.vue2.js +103 -1
  9. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.cjs +1 -1
  10. package/dist/prometheus-framework/src/modules/backoffice/components/pages/Dashboard.vue.js +1 -1
  11. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.cjs +1 -1
  12. package/dist/prometheus-framework/src/modules/community/components/layouts/Community.vue.js +1 -1
  13. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.cjs +1 -1
  14. package/dist/prometheus-framework/src/modules/community/components/pages/Community.vue.js +1 -1
  15. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.cjs +1 -1
  16. package/dist/prometheus-framework/src/modules/community/components/pages/CreateBlogPost.vue.js +1 -1
  17. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.cjs +1 -1
  18. package/dist/prometheus-framework/src/modules/events/components/elements/ButtonCheck.vue.js +1 -1
  19. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.cjs +1 -1
  20. package/dist/prometheus-framework/src/modules/events/components/pages/EditEvent.vue.js +1 -1
  21. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.cjs +1 -1
  22. package/dist/prometheus-framework/src/modules/events/components/pages/EditEventTickets.vue.js +1 -1
  23. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.cjs +1 -1
  24. package/dist/prometheus-framework/src/modules/gallery/components/sections/BackofficeGallery.vue.js +1 -1
  25. package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.cjs +1 -1
  26. package/dist/prometheus-framework/src/modules/gallery/components/sections/GalleryWithCategories.vue.js +1 -1
  27. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue.cjs +1 -0
  28. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue.js +13 -0
  29. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue2.cjs +1 -0
  30. package/dist/prometheus-framework/src/modules/landing/components/elements/AnimatedGrid.vue2.js +1 -0
  31. package/dist/prometheus-framework/src/modules/landing/components/sections/MobileApp.vue.cjs +1 -1
  32. package/dist/prometheus-framework/src/modules/landing/components/sections/MobileApp.vue.js +1 -4
  33. package/dist/prometheus-framework/src/modules/landing/landing.client.cjs +1 -1
  34. package/dist/prometheus-framework/src/modules/landing/landing.client.js +6 -4
  35. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.cjs +1 -1
  36. package/dist/prometheus-framework/src/modules/legal/components/pages/Legal.vue.js +1 -1
  37. package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue.cjs +1 -1
  38. package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue.js +1 -13
  39. package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue2.cjs +1 -1
  40. package/dist/prometheus-framework/src/modules/mobile/components/Menu/Menu.vue2.js +13 -1
  41. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.cjs +1 -1
  42. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderBackoffice.vue.js +1 -1
  43. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.cjs +1 -1
  44. package/dist/prometheus-framework/src/modules/orders/components/pages/OrderCreateBackoffice.vue.js +2 -2
  45. package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.cjs +1 -1
  46. package/dist/prometheus-framework/src/modules/orders/components/sections/FormAddCustomer.vue.js +1 -1
  47. package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.cjs +1 -1
  48. package/dist/prometheus-framework/src/modules/orders/components/sections/FormCustomerDetails.vue.js +1 -1
  49. package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.cjs +1 -1
  50. package/dist/prometheus-framework/src/modules/orders/components/sections/FormPayment.vue.js +1 -1
  51. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.cjs +1 -1
  52. package/dist/prometheus-framework/src/modules/organizations/components/pages/DepartmentEdit.vue.js +2 -2
  53. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.cjs +1 -1
  54. package/dist/prometheus-framework/src/modules/organizations/components/pages/Members.vue.js +2 -2
  55. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.cjs +1 -1
  56. package/dist/prometheus-framework/src/modules/organizations/components/pages/Organization.vue.js +1 -1
  57. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.cjs +1 -1
  58. package/dist/prometheus-framework/src/modules/organizations/components/pages/OrganizationEdit.vue.js +2 -2
  59. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.cjs +1 -1
  60. package/dist/prometheus-framework/src/modules/organizations/components/sections/Documents.vue.js +1 -1
  61. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.cjs +1 -1
  62. package/dist/prometheus-framework/src/modules/organizations/components/sections/MembersAdd.vue.js +1 -1
  63. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.cjs +1 -1
  64. package/dist/prometheus-framework/src/modules/organizations/components/sections/Organizations.vue.js +2 -2
  65. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.cjs +1 -1
  66. package/dist/prometheus-framework/src/modules/products/components/blocks/CardPosition.vue.js +1 -1
  67. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.cjs +1 -1
  68. package/dist/prometheus-framework/src/modules/products/components/blocks/ImagesThumbnails.vue.js +1 -1
  69. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.cjs +1 -1
  70. package/dist/prometheus-framework/src/modules/products/components/pages/CategoryEdit.vue.js +1 -1
  71. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.cjs +1 -1
  72. package/dist/prometheus-framework/src/modules/products/components/pages/EditLeftover.vue.js +2 -2
  73. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.cjs +1 -1
  74. package/dist/prometheus-framework/src/modules/products/components/pages/ProductEdit.vue.js +1 -1
  75. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.cjs +1 -1
  76. package/dist/prometheus-framework/src/modules/products/components/sections/EditProductInfo.vue.js +1 -1
  77. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.cjs +1 -1
  78. package/dist/prometheus-framework/src/modules/reports/components/sections/FormReport.vue.js +2 -2
  79. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.cjs +1 -1
  80. package/dist/prometheus-framework/src/modules/users/components/pages/Profile.vue.js +1 -1
  81. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.cjs +1 -1
  82. package/dist/prometheus-framework/src/modules/wallet/views/components/pages/Wallet.vue.js +2 -2
  83. package/dist/style.css +1 -1
  84. package/package.json +1 -1
  85. package/src/components/DatePicker/Calendar.vue +296 -0
  86. package/src/modules/landing/components/elements/AnimatedGrid.vue +31 -0
  87. package/src/modules/landing/components/sections/HeroSection.vue +16 -14
  88. package/src/modules/landing/components/sections/MobileApp.vue +8 -33
  89. package/src/modules/landing/components/sections/SectionHeroToken.vue +18 -45
  90. package/src/modules/landing/landing.client.js +3 -1
@@ -0,0 +1,296 @@
1
+ <template>
2
+ <div class="calendar">
3
+ <div class="calendar__header">
4
+ <button @click="prevMonth">&lt;</button>
5
+ <span>{{ monthYear }}</span>
6
+ <button @click="nextMonth">&gt;</button>
7
+ </div>
8
+ <div class="calendar__body">
9
+ <div class="calendar__week">
10
+ <div v-for="(day, index) in daysOfWeek" :key="index" class="calendar__weekday">
11
+ {{ day }}
12
+ </div>
13
+ </div>
14
+ <div class="calendar__dates">
15
+ <div
16
+ v-for="day in daysInMonth"
17
+ :key="day.date"
18
+ :class="[
19
+ 'calendar__date',
20
+ { 'calendar__date--today': day.isToday },
21
+ { 'calendar__date--selected': isSelected(day.date) },
22
+ { 'calendar__date--range': isInRange(day.date) },
23
+ { 'calendar__date--disabled': !isSameMonth(day.date) },
24
+ ]"
25
+ @click="selectDate(day.date)"
26
+ >
27
+ {{ day.day }}
28
+ </div>
29
+ </div>
30
+ </div>
31
+ <div v-if="allowRange" class="calendar__footer">
32
+ <button @click="selectToday">Today</button>
33
+ <button @click="selectLastWeek">Last Week</button>
34
+ <button @click="selectLastMonth">Last Month</button>
35
+ <button @click="selectLastYear">All time</button>
36
+ </div>
37
+ </div>
38
+ </template>
39
+
40
+ <script setup>
41
+ import { computed, ref } from 'vue'
42
+
43
+ const props = defineProps({
44
+ modelValue: [Date, Object],
45
+ allowRange: Boolean,
46
+ })
47
+
48
+ const emit = defineEmits(['update:modelValue'])
49
+
50
+ const today = new Date()
51
+ const currentDate = ref(today)
52
+ const selectedDate = ref(null)
53
+ const startDate = ref(null)
54
+ const endDate = ref(null)
55
+
56
+ const daysOfWeek = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
57
+
58
+ const toUTC = (date) => {
59
+ return new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))
60
+ }
61
+
62
+ const monthYear = computed(() => {
63
+ const month = currentDate.value.toLocaleString('default', { month: 'long', timeZone: 'UTC' })
64
+ const year = currentDate.value.getUTCFullYear()
65
+ return `${month} ${year}`
66
+ })
67
+
68
+ const daysInMonth = computed(() => {
69
+ const days = []
70
+ const firstDay = new Date(Date.UTC(
71
+ currentDate.value.getUTCFullYear(),
72
+ currentDate.value.getUTCMonth(),
73
+ 1
74
+ ))
75
+ const lastDay = new Date(Date.UTC(
76
+ currentDate.value.getUTCFullYear(),
77
+ currentDate.value.getUTCMonth() + 1,
78
+ 0
79
+ ))
80
+
81
+ const firstDayOfWeek = firstDay.getUTCDay()
82
+
83
+ let date = new Date(firstDay)
84
+ date.setUTCDate(date.getUTCDate() - firstDayOfWeek)
85
+ for (let i = 0; i < firstDayOfWeek; i++) {
86
+ days.push({
87
+ date: new Date(date),
88
+ day: date.getUTCDate(),
89
+ isToday: isToday(date),
90
+ })
91
+ date.setUTCDate(date.getUTCDate() + 1)
92
+ }
93
+
94
+ let day = 1
95
+ for (date = firstDay; date <= lastDay; date.setUTCDate(date.getUTCDate() + 1)) {
96
+ days.push({
97
+ date: new Date(date),
98
+ day,
99
+ isToday: isToday(date),
100
+ })
101
+ day++
102
+ }
103
+
104
+ const lastDayOfWeek = days[days.length - 1].date.getUTCDay()
105
+ for (let i = lastDayOfWeek + 1; i <= 6; i++) {
106
+ days.push({
107
+ date: new Date(date),
108
+ day: date.getUTCDate(),
109
+ isToday: isToday(date),
110
+ })
111
+ date.setUTCDate(date.getUTCDate() + 1)
112
+ }
113
+
114
+ return days
115
+ })
116
+
117
+ const isToday = (date) => {
118
+ const today = new Date()
119
+ return (
120
+ date.getUTCDate() === today.getUTCDate() &&
121
+ date.getUTCMonth() === today.getUTCMonth() &&
122
+ date.getUTCFullYear() === today.getUTCFullYear()
123
+ )
124
+ }
125
+
126
+ const isSameMonth = (date) => {
127
+ return (
128
+ date.getUTCMonth() === currentDate.value.getUTCMonth() &&
129
+ date.getUTCFullYear() === currentDate.value.getUTCFullYear()
130
+ )
131
+ }
132
+
133
+ const isSelected = (date) => {
134
+ if (props.allowRange) {
135
+ if (startDate.value && endDate.value) {
136
+ return date >= startDate.value && date <= endDate.value
137
+ } else if (startDate.value) {
138
+ return date.getTime() === startDate.value.getTime()
139
+ }
140
+ } else {
141
+ return selectedDate.value && date.getTime() === selectedDate.value.getTime()
142
+ }
143
+ }
144
+
145
+ const isInRange = (date) => {
146
+ if (startDate.value && endDate.value) {
147
+ return date > startDate.value && date < endDate.value
148
+ }
149
+ return false
150
+ }
151
+
152
+ const selectDate = (date) => {
153
+ const formattedDate = toUTC(date)
154
+
155
+ if (!props.allowRange) {
156
+ emit('update:modelValue', formattedDate)
157
+ selectedDate.value = formattedDate
158
+ } else if (!startDate.value && !endDate.value) {
159
+ emit('update:modelValue', formattedDate)
160
+ startDate.value = formattedDate
161
+ } else if (!endDate.value) {
162
+ endDate.value = formattedDate
163
+ if (formattedDate < startDate.value) {
164
+ const temp = startDate.value
165
+ startDate.value = formattedDate
166
+ endDate.value = temp
167
+ }
168
+ emit('update:modelValue', { start: startDate.value, end: endDate.value })
169
+ } else {
170
+ startDate.value = formattedDate
171
+ endDate.value = null
172
+ emit('update:modelValue', formattedDate)
173
+ }
174
+ currentDate.value = formattedDate
175
+ }
176
+
177
+ const prevMonth = () => {
178
+ currentDate.value = new Date(Date.UTC(
179
+ currentDate.value.getUTCFullYear(),
180
+ currentDate.value.getUTCMonth() - 1,
181
+ 1
182
+ ))
183
+ // if (selectedDate.value && !isSameMonth(selectedDate.value)) {
184
+ // selectedDate.value = null
185
+ // }
186
+ }
187
+
188
+ const nextMonth = () => {
189
+ currentDate.value = new Date(Date.UTC(
190
+ currentDate.value.getUTCFullYear(),
191
+ currentDate.value.getUTCMonth() + 1,
192
+ 1
193
+ ))
194
+ // if (selectedDate.value && !isSameMonth(selectedDate.value)) {
195
+ // selectedDate.value = null
196
+ // }
197
+ }
198
+
199
+ const selectToday = () => {
200
+ const todayStart = new Date(today);
201
+ todayStart.setUTCHours(0, 0, 0, 0); // Начало дня в UTC
202
+ const todayEnd = new Date(todayStart);
203
+ todayEnd.setUTCHours(24, 0, 0, -1); // Конец дня в UTC (23:59:59)
204
+
205
+ startDate.value = toUTC(todayStart);
206
+ endDate.value = toUTC(todayEnd);
207
+ emit('update:modelValue', { start: startDate.value, end: endDate.value });
208
+ }
209
+
210
+ const selectLastWeek = () => {
211
+ const lastWeek = new Date()
212
+ lastWeek.setUTCDate(lastWeek.getUTCDate() - 7)
213
+ startDate.value = toUTC(lastWeek)
214
+ endDate.value = toUTC(today)
215
+ emit('update:modelValue', { start: startDate.value, end: endDate.value })
216
+ }
217
+
218
+ const selectLastMonth = () => {
219
+ const lastMonth = new Date()
220
+ lastMonth.setUTCMonth(lastMonth.getUTCMonth() - 1)
221
+ startDate.value = new Date(Date.UTC(lastMonth.getUTCFullYear(), lastMonth.getUTCMonth(), 1))
222
+ endDate.value = new Date(Date.UTC(
223
+ lastMonth.getUTCFullYear(),
224
+ lastMonth.getUTCMonth() + 1,
225
+ 0
226
+ ))
227
+ emit('update:modelValue', { start: startDate.value, end: endDate.value })
228
+ }
229
+
230
+ const selectLastYear = () => {
231
+ const lastYear = new Date()
232
+ lastYear.setUTCFullYear(lastYear.getUTCFullYear() - 1)
233
+ startDate.value = new Date(Date.UTC(lastYear.getUTCFullYear(), 0, 1))
234
+ endDate.value = new Date(Date.UTC(lastYear.getUTCFullYear(), 11, 31))
235
+ emit('update:modelValue', { start: startDate.value, end: endDate.value })
236
+ }
237
+ </script>
238
+
239
+
240
+ <style scoped>
241
+ .calendar {
242
+ display: inline-block;
243
+ }
244
+
245
+ .calendar__header,
246
+ .calendar__footer {
247
+ display: flex;
248
+ justify-content: space-between;
249
+ align-items: center;
250
+ margin-bottom: 10px;
251
+ }
252
+
253
+ .calendar__week {
254
+ display: grid;
255
+ grid-template-columns: repeat(7, 1fr);
256
+ gap: 5px;
257
+ margin-bottom: 10px;
258
+ }
259
+
260
+ .calendar__weekday {
261
+ text-align: center;
262
+ }
263
+
264
+ .calendar__dates {
265
+ display: grid;
266
+ grid-template-columns: repeat(7, 1fr);
267
+ gap: 5px;
268
+ }
269
+
270
+ .calendar__date {
271
+ display: flex;
272
+ justify-content: center;
273
+ align-items: center;
274
+ height: 30px;
275
+ cursor: pointer;
276
+ }
277
+
278
+ .calendar__date--today {
279
+ background-color: #f0f0f0;
280
+ font-weight: bold;
281
+ }
282
+
283
+ .calendar__date--selected {
284
+ background-color: #007bff;
285
+ color: #fff;
286
+ }
287
+
288
+ .calendar__date--range {
289
+ background-color: #e9ecef;
290
+ }
291
+
292
+ .calendar__date--disabled {
293
+ color: #ccc;
294
+ cursor: not-allowed;
295
+ }
296
+ </style>
@@ -0,0 +1,31 @@
1
+ <template>
2
+ <div class="grid">
3
+ <div class="grid-lines"></div>
4
+ </div>
5
+ </template>
6
+
7
+ <style lang='scss' scoped>
8
+ .grid {
9
+ perspective: 450px;
10
+ background-size: cover;
11
+ }
12
+
13
+ .grid-lines {
14
+ width: 100%;
15
+ height: 200%;
16
+ background-image: linear-gradient(to right, rgba(255, 255, 255, 0.1) 1px, transparent 0), linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 1px, transparent 0);
17
+ background-size: 45px 30px;
18
+ background-repeat: repeat;
19
+ transform-origin: 100% 0 0;
20
+ animation: play 15s linear infinite;
21
+ }
22
+
23
+ @keyframes play {
24
+ 0% {
25
+ transform: rotateX(45deg) translateY(-50%);
26
+ }
27
+ 100% {
28
+ transform: rotateX(45deg) translateY(0);
29
+ }
30
+ }
31
+ </style>
@@ -32,43 +32,45 @@
32
32
 
33
33
  <template>
34
34
  <div
35
- id="hero"
36
- class="t-center cols-1 flex-center flex section"
35
+ id="hero"
36
+ class="t-center cols-1 flex-center flex"
37
37
  >
38
38
 
39
39
  <div
40
- class="flex-column flex-center flex pd-big radius-medium col"
40
+ class="flex-column flex-center flex pd-big radius-medium"
41
41
  >
42
42
  <h1
43
- class="mn-b-medium"
44
- v-html="t('HERO.TITLE')"
43
+ class="mn-b-medium"
44
+ v-html="t('HERO.TITLE')"
45
45
  />
46
46
 
47
47
  <p
48
- class="w-m-60r mn-b-big t-transp p-big"
49
- v-html="t('HERO.DESCRIPTION')"
50
- ></p>
48
+ class="w-m-60r mn-b-big t-transp p-big"
49
+ v-html="t('HERO.DESCRIPTION')"
50
+ />
51
51
 
52
52
  <div
53
- class="mobile-w-100 t-white gap-small cols-2"
53
+ class="mobile-w-100 t-white gap-small cols-2"
54
54
  >
55
55
  <button
56
- @click="router.push('/catalog')"
57
- class="w-100 bg-dark t-white button">
56
+ @click="router.push('/catalog')"
57
+ class="w-100 bg-dark t-white button"
58
+ >
58
59
  {{t('HERO.ACTION')}}
59
60
  </button>
60
61
 
61
62
  <button
62
- @click="store.commit('toggleBackCall')"
63
- class="w-100 bg-light t-dark br-light button">
63
+ @click="store.commit('toggleBackCall')"
64
+ class="w-100 bg-light t-dark br-light button"
65
+ >
64
66
  {{t('HERO.SUBACTION')}}
65
67
  </button>
66
68
  </div>
67
69
 
68
70
  </div>
69
-
70
71
  </div>
71
72
  </template>
72
73
 
73
74
  <style lang="scss" scoped>
75
+
74
76
  </style>
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div id="mobileApp" class="pd-thin">
2
+ <div id="mobileApp">
3
3
  <section class="pos-relative cols-2 pd-thin o-hidden bg-black t-white radius-extra">
4
4
  <div class="z-index-1 h-100">
5
5
  <img
@@ -119,40 +119,15 @@ const { t, te } = useI18n(props.textData)
119
119
  </script>
120
120
 
121
121
  <style lang="scss">
122
-
123
- .grid {
124
- perspective: 450px;
125
- background-size: cover;
126
- }
127
-
128
- .grid-lines {
129
- width: 100%;
130
- height: 200%;
131
- background-image: linear-gradient(to right, rgba(255, 255, 255, 0.1) 1px, transparent 0), linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 1px, transparent 0);
132
- background-size: 45px 30px;
133
- background-repeat: repeat;
134
- transform-origin: 100% 0 0;
135
- animation: play 15s linear infinite;
136
- }
137
-
138
- @keyframes play {
139
- 0% {
140
- transform: rotateX(45deg) translateY(-50%);
141
- }
142
- 100% {
143
- transform: rotateX(45deg) translateY(0);
144
- }
145
- }
146
-
147
122
  @media screen and (max-width: 1025px) {
148
- #mobileApp {
149
- text-align: center;
150
- > section {
151
- flex-direction: column;
152
- > div {
153
- order: 1;
154
- }
123
+ #mobileApp {
124
+ text-align: center;
125
+ > section {
126
+ flex-direction: column;
127
+ > div {
128
+ order: 1;
155
129
  }
156
130
  }
157
131
  }
132
+ }
158
133
  </style>
@@ -2,6 +2,8 @@
2
2
  import { useRouter } from 'vue-router'
3
3
  import { useI18n } from 'vue-i18n'
4
4
 
5
+ import AnimatedGrid from '@pf/src/modules/landing/components/elements/AnimatedGrid.vue'
6
+
5
7
  const props = defineProps({
6
8
  textData: {
7
9
  type: Object,
@@ -61,9 +63,7 @@
61
63
  />
62
64
  </div>
63
65
 
64
- <div class="w-100 h-100 pos-absolute pos-t-0 pos-r-0 z-index-0 grid ">
65
- <div class="grid-lines"></div>
66
- </div>
66
+ <AnimatedGrid class="w-100 h-100 pos-absolute pos-t-0 pos-r-0 z-index-0" />
67
67
 
68
68
  </div>
69
69
  </template>
@@ -92,47 +92,20 @@
92
92
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#007db9e8',GradientType=1 ); /* IE6-9 */
93
93
  }
94
94
 
95
- /* animation */
96
-
97
- @keyframes slide {
98
- 0% {
99
- transform:translateX(-00%);
100
- opacity: 0;
101
- }
102
- 20% {
103
- opacity: 1
104
- }
105
- 80% {
106
- opacity: 1
107
- }
108
- 100% {
109
- transform:translateX(100%);
110
- opacity: 0
95
+ @keyframes slide {
96
+ 0% {
97
+ transform:translateX(-00%);
98
+ opacity: 0;
99
+ }
100
+ 20% {
101
+ opacity: 1
102
+ }
103
+ 80% {
104
+ opacity: 1
105
+ }
106
+ 100% {
107
+ transform:translateX(100%);
108
+ opacity: 0
109
+ }
111
110
  }
112
- }
113
-
114
-
115
- .grid {
116
- perspective: 450px;
117
- background-size: cover;
118
- }
119
-
120
- .grid-lines {
121
- width: 100%;
122
- height: 200%;
123
- background-image: linear-gradient(to right, rgba(255, 255, 255, 0.1) 1px, transparent 0), linear-gradient(to bottom, rgba(255, 255, 255, 0.1) 1px, transparent 0);
124
- background-size: 45px 30px;
125
- background-repeat: repeat;
126
- transform-origin: 100% 0 0;
127
- animation: play 15s linear infinite;
128
- }
129
-
130
- @keyframes play {
131
- 0% {
132
- transform: rotateX(45deg) translateY(-50%);
133
- }
134
- 100% {
135
- transform: rotateX(45deg) translateY(0);
136
- }
137
- }
138
111
  </style>
@@ -3,9 +3,11 @@ import MobileApp from './components/sections/MobileApp.vue';
3
3
  import SectionFeatures from './components/sections/SectionFeatures.vue';
4
4
 
5
5
  import FloatingImages from './components/elements/FloatingImages.vue';
6
+ import AnimatedGrid from './components/elements/AnimatedGrid.vue';
6
7
 
7
8
  export {
8
9
  MobileApp,
10
+ SectionFeatures,
9
11
  FloatingImages,
10
- SectionFeatures
12
+ AnimatedGrid
11
13
  };