bfg-common 1.5.440 → 1.5.442

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.
@@ -1233,6 +1233,7 @@
1233
1233
  "recommendations": "Рэкамендацыі",
1234
1234
  "recommended": "рэкамендуецца",
1235
1235
  "reconnect": "Паўторна падлучыцца",
1236
+ "reconnectDesc": "Ваша сесія скончыцца праз:",
1236
1237
  "redirectUrls": "URL-адрасы перанакіравання",
1237
1238
  "reduceEnergyConsumptionAtTheRisk": "Скароціце спажыванне энергіі з рызыкай зніжэння прадукцыйнасці",
1238
1239
  "reduceEnergyConsumptionWithMin": "Паменшыце спажыванне энергіі з мінімальным кампрамісам у прадукцыйнасці",
@@ -1232,6 +1232,7 @@
1232
1232
  "recommendations": "Recommendations",
1233
1233
  "recommended": "recommended",
1234
1234
  "reconnect": "Reconnect",
1235
+ "reconnectDesc": "Your session is about to expire after:",
1235
1236
  "redirectUrls": "Redirect URLs",
1236
1237
  "reduceEnergyConsumptionAtTheRisk": "Reduce energy consumption at the risk of lower performance",
1237
1238
  "reduceEnergyConsumptionWithMin": "Reduce energy consumption with minimal performance compromise",
@@ -1232,6 +1232,7 @@
1232
1232
  "recommendations": "Առաջարկություններ",
1233
1233
  "recommended": "խորհուրդ է տրվում",
1234
1234
  "reconnect": "Կրկին Միացեք",
1235
+ "reconnectDesc": "Ձեր սեսիան կավարտվի հետո՝",
1235
1236
  "redirectUrls": "Վերահղման URL-ներ",
1236
1237
  "reduceEnergyConsumptionAtTheRisk": "Նվազեցնել էներգիայի սպառումը ցածր արդյունավետության վտանգի դեպքում",
1237
1238
  "reduceEnergyConsumptionWithMin": "Նվազեցնել էներգիայի սպառումը նվազագույն կատարողականի փոխզիջումով",
@@ -1232,6 +1232,7 @@
1232
1232
  "recommendations": "Ұсыныстар",
1233
1233
  "recommended": "ұсынылады",
1234
1234
  "reconnect": "Қайта қосылу",
1235
+ "reconnectDesc": "Сіздің сессияңыз мына уақыттан кейін аяқталады:",
1235
1236
  "redirectUrls": "Қайта бағыттау URL мекенжайлары",
1236
1237
  "reduceEnergyConsumptionAtTheRisk": "Төмен өнімділік қаупімен қуат тұтынуды азайтыңыз",
1237
1238
  "reduceEnergyConsumptionWithMin": "Өнімділіктің ең аз төмендеуімен қуат тұтынуды азайтыңыз",
@@ -1232,6 +1232,7 @@
1232
1232
  "recommendations": "Рекомендации",
1233
1233
  "recommended": "рекомендуемый",
1234
1234
  "reconnect": "Повторно подключиться",
1235
+ "reconnectDesc": "Ваша сессия завершится через:",
1235
1236
  "redirectUrls": "URL-адреса перенаправления",
1236
1237
  "reduceEnergyConsumptionAtTheRisk": "Снижение энергопотребления с риском снижения производительности",
1237
1238
  "reduceEnergyConsumptionWithMin": "Снижение энергопотребления с минимальным снижением производительности",
@@ -1231,6 +1231,7 @@
1231
1231
  "recommendations": "建议",
1232
1232
  "recommended": "受到推崇的",
1233
1233
  "reconnect": "重新连接",
1234
+ "reconnectDesc": "您的会话将在以下时间后过期:",
1234
1235
  "redirectUrls": "重定向 URL",
1235
1236
  "reduceEnergyConsumptionAtTheRisk": "以降低性能的風險降低能耗",
1236
1237
  "reduceEnergyConsumptionWithMin": "以最小的性能妥協降低能耗",
@@ -1,26 +1,28 @@
1
1
  <template>
2
- <div class="countdown-timer">
3
- <h3 class="countdown-timer__inner">
4
- <span class="countdown-timer__minutes">{{ minutes }}</span>
5
- <span class="countdown-timer__separator">:</span>
6
- <span class="countdown-timer__seconds"
7
- >{{ seconds }} {{ localization.common.seconds }}</span
8
- >
9
- </h3>
10
- </div>
2
+ <common-countdown-timer-new
3
+ v-if="isNewView"
4
+ :minutes="minutes"
5
+ :seconds="seconds"
6
+ />
7
+ <common-countdown-timer-old v-else :minutes="minutes" :seconds="seconds" />
11
8
  </template>
12
9
 
13
10
  <script lang="ts" setup>
14
- import type { UI_I_Localization } from '~/lib/models/interfaces'
15
-
16
11
  const props = defineProps<{
17
12
  timer: number
18
13
  totalTime: number
19
14
  }>()
20
15
 
21
- const localization = computed<UI_I_Localization>(() => useLocal())
16
+ const { $store }: any = useNuxtApp()
17
+
18
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
22
19
 
23
20
  const secondsInMinute = 60
21
+
22
+ const formatTime = (time: number): string => {
23
+ return (time < 10 ? '0' : '') + time
24
+ }
25
+
24
26
  const minutes = computed<string>(() => {
25
27
  if (!props.timer) return '00'
26
28
  const minutes = Math.floor(props.totalTime / secondsInMinute)
@@ -32,19 +34,6 @@ const seconds = computed<string>(() => {
32
34
  const seconds = props.totalTime - +minutes.value * secondsInMinute
33
35
  return formatTime(seconds)
34
36
  })
35
-
36
- const formatTime = (time: number): string => {
37
- return (time < 10 ? '0' : '') + time
38
- }
39
37
  </script>
40
38
 
41
- <style lang="scss" scoped>
42
- .countdown-timer {
43
- &__inner {
44
- padding-top: 12px;
45
- & > span {
46
- font-size: 40px;
47
- }
48
- }
49
- }
50
- </style>
39
+ <style lang="scss" scoped></style>
@@ -0,0 +1,53 @@
1
+ <template>
2
+ <div class="countdown-timer-container flex items-center justify-center">
3
+ <div class="inner-block">
4
+ <span class="value">{{ props.minutes }}:{{ props.seconds }}</span>
5
+ <span class="seconds-text">{{ localization.common.seconds }}</span>
6
+ </div>
7
+ </div>
8
+ </template>
9
+
10
+ <script lang="ts" setup>
11
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
12
+
13
+ const props = defineProps<{
14
+ minutes: string
15
+ seconds: string
16
+ }>()
17
+
18
+ const localization = computed<UI_I_Localization>(() => useLocal())
19
+ </script>
20
+
21
+ <style>
22
+ :root {
23
+ --countdown-time-block-bg: #e9ebed66;
24
+ --countdown-time-value-color: #182531;
25
+ }
26
+ :root.dark-theme {
27
+ --countdown-time-block-bg: #e9ebed0f;
28
+ --countdown-time-value-color: #e9eaec;
29
+ }
30
+ </style>
31
+
32
+ <style lang="scss" scoped>
33
+ .countdown-timer-container {
34
+ border-radius: 8px;
35
+ background-color: var(--countdown-time-block-bg);
36
+
37
+ .inner-block {
38
+ margin: 16px 0;
39
+
40
+ .value {
41
+ font-weight: 500;
42
+ font-size: 40px;
43
+ color: var(--countdown-time-value-color);
44
+ }
45
+ .seconds-text {
46
+ font-weight: 400;
47
+ font-size: 16px;
48
+ color: #9da6ad;
49
+ margin-left: 6px;
50
+ }
51
+ }
52
+ }
53
+ </style>
@@ -0,0 +1,33 @@
1
+ <template>
2
+ <div class="countdown-timer">
3
+ <h3 class="countdown-timer__inner">
4
+ <span class="countdown-timer__minutes">{{ props.minutes }}</span>
5
+ <span class="countdown-timer__separator">:</span>
6
+ <span class="countdown-timer__seconds"
7
+ >{{ props.seconds }} {{ localization.common.seconds }}</span
8
+ >
9
+ </h3>
10
+ </div>
11
+ </template>
12
+
13
+ <script lang="ts" setup>
14
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
15
+
16
+ const props = defineProps<{
17
+ minutes: string
18
+ seconds: string
19
+ }>()
20
+
21
+ const localization = computed<UI_I_Localization>(() => useLocal())
22
+ </script>
23
+
24
+ <style lang="scss" scoped>
25
+ .countdown-timer {
26
+ &__inner {
27
+ padding-top: 12px;
28
+ & > span {
29
+ font-size: 40px;
30
+ }
31
+ }
32
+ }
33
+ </style>
@@ -1,73 +1,71 @@
1
1
  <template>
2
- <atoms-modal
3
- :show="isShow"
4
- :title="localization.common.connectionTimeout"
5
- test-id="connection-timeout-reconnect-modal"
6
- width="580px"
7
- class="connection-timeout"
8
- is-hide-close-icon
9
- >
10
- <template #modalBody>
11
- <div class="connection-timeout__body">
12
- <span>{{ localization.common.yourSessionExpireAfter }}:</span>
13
- <common-countdown-timer :timer="timer" :total-time="totalTime" />
14
- </div>
15
- </template>
16
-
17
- <template #modalFooter>
18
- <button
19
- id="logout-button"
20
- data-id="logout-button"
21
- class="btn btn-outline"
22
- @click="onLogout"
23
- >
24
- {{ localization.common.logout }}
25
- </button>
26
-
27
- <button
28
- id="reconnect-button"
29
- data-id="reconnect-button"
30
- class="btn btn-primary"
31
- @click="onReconnect"
32
- >
33
- {{ localization.common.reconnect }}
34
- </button>
35
- </template>
36
- </atoms-modal>
2
+ <common-layout-the-header-modals-reconnect-new
3
+ v-if="isNewView"
4
+ :is-show="isShow"
5
+ :title="title"
6
+ :timer="timer"
7
+ :total-time="totalTime"
8
+ @logout="onLogout"
9
+ @reconnect="onReconnect"
10
+ />
11
+ <common-layout-the-header-modals-reconnect-old
12
+ v-else
13
+ :is-show="isShow"
14
+ :title="title"
15
+ :timer="timer"
16
+ :total-time="totalTime"
17
+ @logout="onLogout"
18
+ @reconnect="onReconnect"
19
+ />
37
20
  </template>
38
21
 
39
22
  <script lang="ts" setup>
40
23
  import type { UI_I_Localization } from '~/lib/models/interfaces'
41
24
 
42
- const localization = computed<UI_I_Localization>(() => useLocal())
43
25
  const { $store }: any = useNuxtApp()
44
26
 
27
+ const localization = computed<UI_I_Localization>(() => useLocal())
28
+
29
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
30
+
45
31
  const isShow = computed<boolean>(
46
32
  () => $store.getters['main/isShowReconnectModal']
47
33
  )
48
- const hideModal = (): void => {
49
- $store.dispatch('main/A_SHOW_RECONNECT_MODAL', false)
50
- }
51
34
 
52
- const totalTime = ref<number>(60)
35
+ const title = ref<string>(localization.value.common.connectionTimeout)
36
+
53
37
  const timer = ref<NodeJS.Timer | null>(null)
38
+ const totalTime = ref<number>(60)
54
39
  const countdown = (): void => {
55
40
  totalTime.value--
56
41
  if (totalTime.value === 0) {
57
42
  endTimer()
58
43
  }
59
44
  }
60
- const startTimer = (): void => {
61
- timer.value = setInterval(() => countdown(), 1000)
45
+
46
+ const resetTimer = (): void => {
47
+ timer.value !== null && clearInterval(timer.value)
48
+ totalTime.value = 60
62
49
  }
63
- const endTimer = (): void => {
64
- onLogout()
50
+
51
+ const hideModal = (): void => {
52
+ $store.dispatch('main/A_SHOW_RECONNECT_MODAL', false)
65
53
  }
54
+
66
55
  const onLogout = async (): Promise<void> => {
67
56
  await $store.dispatch('auth/A_LOGOUT')
68
57
  resetTimer()
69
58
  hideModal()
70
59
  }
60
+
61
+ const endTimer = (): void => {
62
+ onLogout()
63
+ }
64
+
65
+ const startTimer = (): void => {
66
+ timer.value = setInterval(() => countdown(), 1000)
67
+ }
68
+
71
69
  const onReconnect = async (): Promise<void> => {
72
70
  location.reload()
73
71
  // await $store.dispatch('auth/A_REFRESH')
@@ -75,10 +73,6 @@ const onReconnect = async (): Promise<void> => {
75
73
  hideModal()
76
74
  }
77
75
 
78
- const resetTimer = (): void => {
79
- timer.value !== null && clearInterval(timer.value)
80
- totalTime.value = 60
81
- }
82
76
  watch(
83
77
  isShow,
84
78
  (newValue) => {
@@ -88,11 +82,4 @@ watch(
88
82
  )
89
83
  </script>
90
84
 
91
- <style lang="scss" scoped>
92
- .connection-timeout {
93
- &__body {
94
- text-align: center;
95
- margin: 15px 0;
96
- }
97
- }
98
- </style>
85
+ <style lang="scss" scoped></style>
@@ -0,0 +1,74 @@
1
+ <template>
2
+ <ui-modal
3
+ :show="props.isShow"
4
+ :title="props.title"
5
+ :texts="modalTexts"
6
+ test-id="reconnect-modal"
7
+ size="sm"
8
+ width="560px"
9
+ @hide="emits('logout')"
10
+ @submit="emits('reconnect')"
11
+ >
12
+ <template #content>
13
+ <div class="reconnect-content">
14
+ <div class="icon-content flex items-center gap-2">
15
+ <span class="icon-sessions"></span>
16
+ <span class="description-text">{{
17
+ localization.common.reconnectDesc
18
+ }}</span>
19
+ </div>
20
+ <div class="timer-block mt-4">
21
+ <common-countdown-timer
22
+ :timer="props.timer"
23
+ :total-time="props.totalTime"
24
+ />
25
+ </div>
26
+ </div>
27
+ </template>
28
+ <template #footerLeftContent>
29
+ <span></span>
30
+ </template>
31
+ </ui-modal>
32
+ </template>
33
+
34
+ <script lang="ts" setup>
35
+ import type { UI_I_ModalTexts } from '~/node_modules/bfg-uikit/components/ui/modal/models/interfaces'
36
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
37
+
38
+ const props = defineProps<{
39
+ isShow: boolean
40
+ title: string
41
+ timer: NodeJS.Timer | null
42
+ totalTime: number
43
+ }>()
44
+
45
+ const emits = defineEmits<{
46
+ (event: 'logout'): void
47
+ (event: 'reconnect'): void
48
+ }>()
49
+
50
+ const localization = computed<UI_I_Localization>(() => useLocal())
51
+
52
+ const modalTexts = ref<UI_I_ModalTexts>({
53
+ button1: localization.value.auth.logout,
54
+ button2: localization.value.common.reconnect,
55
+ })
56
+ </script>
57
+
58
+ <style lang="scss" scoped>
59
+ .reconnect-content {
60
+ padding: 16px 32px 8px 32px;
61
+
62
+ .icon-content {
63
+ .icon-sessions {
64
+ width: 24px;
65
+ height: 24px;
66
+ }
67
+ .description-text {
68
+ font-size: 14px;
69
+ font-weight: 400;
70
+ color: #9da6ad;
71
+ }
72
+ }
73
+ }
74
+ </style>
@@ -0,0 +1,67 @@
1
+ <template>
2
+ <atoms-modal
3
+ :show="props.isShow"
4
+ :title="props.title"
5
+ test-id="connection-timeout-reconnect-modal"
6
+ width="580px"
7
+ class="connection-timeout"
8
+ is-hide-close-icon
9
+ >
10
+ <template #modalBody>
11
+ <div class="connection-timeout__body">
12
+ <span>{{ localization.common.yourSessionExpireAfter }}:</span>
13
+ <common-countdown-timer
14
+ :timer="props.timer"
15
+ :total-time="props.totalTime"
16
+ />
17
+ </div>
18
+ </template>
19
+
20
+ <template #modalFooter>
21
+ <button
22
+ id="logout-button"
23
+ data-id="logout-button"
24
+ class="btn btn-outline"
25
+ @click="emits('logout')"
26
+ >
27
+ {{ localization.common.logout }}
28
+ </button>
29
+
30
+ <button
31
+ id="reconnect-button"
32
+ data-id="reconnect-button"
33
+ class="btn btn-primary"
34
+ @click="emits('reconnect')"
35
+ >
36
+ {{ localization.common.reconnect }}
37
+ </button>
38
+ </template>
39
+ </atoms-modal>
40
+ </template>
41
+
42
+ <script lang="ts" setup>
43
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
44
+
45
+ const props = defineProps<{
46
+ isShow: boolean
47
+ title: string
48
+ timer: NodeJS.Timer | null
49
+ totalTime: number
50
+ }>()
51
+
52
+ const emits = defineEmits<{
53
+ (event: 'logout'): void
54
+ (event: 'reconnect'): void
55
+ }>()
56
+
57
+ const localization = computed<UI_I_Localization>(() => useLocal())
58
+ </script>
59
+
60
+ <style lang="scss" scoped>
61
+ .connection-timeout {
62
+ &__body {
63
+ text-align: center;
64
+ margin: 15px 0;
65
+ }
66
+ }
67
+ </style>
@@ -1,23 +1,23 @@
1
- <template>
2
- <common-vm-actions-common-customize-hardware-virtual-hardware-new-hard-disk-maximum-size-new
3
- v-if="isNewView"
4
- :free-gb="freeGb"
5
- />
6
- <common-vm-actions-common-customize-hardware-virtual-hardware-new-hard-disk-maximum-size-old
7
- v-else
8
- :free-gb="freeGb"
9
- />
10
- </template>
11
-
12
- <script setup lang="ts">
13
- const props = defineProps<{
14
- freeMb: number
15
- }>()
16
-
17
- const { $store, $binary }: any = useNuxtApp()
18
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
19
-
20
- const freeGb = computed<number>(() => $binary.round(props.freeMb))
21
- </script>
22
-
23
- <style scoped></style>
1
+ <template>
2
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-hard-disk-maximum-size-new
3
+ v-if="isNewView"
4
+ :free-gb="freeGb"
5
+ />
6
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-hard-disk-maximum-size-old
7
+ v-else
8
+ :free-gb="freeGb"
9
+ />
10
+ </template>
11
+
12
+ <script setup lang="ts">
13
+ const props = defineProps<{
14
+ freeMb: number
15
+ }>()
16
+
17
+ const { $store, $binary }: any = useNuxtApp()
18
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
19
+
20
+ const freeGb = computed<number>(() => $binary.round(props.freeMb))
21
+ </script>
22
+
23
+ <style scoped></style>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.5.440",
4
+ "version": "1.5.442",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",