bfg-common 1.2.43 → 1.2.45

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 (86) hide show
  1. package/assets/localization/local_be.json +2 -1
  2. package/assets/localization/local_en.json +2 -1
  3. package/assets/localization/local_hy.json +2 -1
  4. package/assets/localization/local_kk.json +2 -1
  5. package/assets/localization/local_ru.json +2 -1
  6. package/assets/localization/local_zh.json +2 -1
  7. package/components/atoms/alert/Notification.vue +167 -167
  8. package/components/atoms/autocomplete/Autocomplete.vue +236 -236
  9. package/components/atoms/datepicker/Datepicker.vue +612 -612
  10. package/components/atoms/list/SelectList.vue +62 -62
  11. package/components/atoms/nav/NavBar.vue +116 -116
  12. package/components/atoms/nav/VerticalNavBar.vue +89 -89
  13. package/components/atoms/notificationBar/NotificationBar.vue +175 -175
  14. package/components/atoms/perPage/PerPage.vue +52 -52
  15. package/components/atoms/popup/SimplePopup.vue +90 -90
  16. package/components/atoms/step/VerticalStep.vue +104 -104
  17. package/components/atoms/switch/Switch.vue +107 -107
  18. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +206 -206
  19. package/components/atoms/table/dataGrid/DataGridPage.vue +189 -189
  20. package/components/atoms/tabs/Tabs.vue +189 -189
  21. package/components/atoms/tooltip/Signpost.vue +224 -224
  22. package/components/common/BadBrowser.vue +114 -114
  23. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  24. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  25. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  26. package/components/common/browse/Browse.vue +182 -182
  27. package/components/common/browse/blocks/Title.vue +66 -66
  28. package/components/common/diagramMain/Diagram.vue +186 -186
  29. package/components/common/diagramMain/DiagramMain.vue +986 -986
  30. package/components/common/diagramMain/adapter/AdapterItem.vue +227 -227
  31. package/components/common/diagramMain/adapter/AdapterItems.vue +57 -57
  32. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  33. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  34. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  35. package/components/common/diagramMain/network/Contents.vue +238 -238
  36. package/components/common/feedback/Buttons.vue +232 -232
  37. package/components/common/feedback/Message.vue +468 -468
  38. package/components/common/feedback/VisitPortal.vue +54 -54
  39. package/components/common/help/navbar/left/Left.vue +159 -159
  40. package/components/common/help/navbar/left/utils/constructAccordion.ts +27 -27
  41. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +359 -359
  42. package/components/common/modals/Rename.vue +165 -165
  43. package/components/common/monitor/advanced/tools/Tools.vue +1 -1
  44. package/components/common/monitor/overview/filters/Filters.vue +17 -10
  45. package/components/common/monitor/overview/filters/customIntervalModal/CustomIntervalModal.vue +29 -8
  46. package/components/common/monitor/overview/filters/customIntervalModal/config/dateChecker.ts +18 -16
  47. package/components/common/perPage/PerPage.vue +51 -51
  48. package/components/common/recursionTree/RecursionTree.vue +201 -201
  49. package/components/common/vm/actions/add/config/capabilities.ts +338 -338
  50. package/components/common/vm/actions/add/customizeHardware/virtualHardware/VirtualHardware.vue +657 -657
  51. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/CoresPerSocket.vue +109 -109
  52. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/Cpu.vue +383 -383
  53. package/components/common/vm/actions/add/customizeHardware/virtualHardware/limit/Limit.vue +234 -234
  54. package/components/common/vm/actions/add/customizeHardware/virtualHardware/limit/config/options.ts +28 -28
  55. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/Memory.vue +316 -316
  56. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/config/memoryOptions.ts +35 -35
  57. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +445 -445
  58. package/components/common/vm/actions/add/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  59. package/components/common/vm/actions/add/customizeHardware/virtualHardware/reservation/Reservation.vue +235 -235
  60. package/components/common/vm/actions/add/customizeHardware/virtualHardware/videoCard/VideoCard.vue +177 -177
  61. package/components/common/vm/actions/add/customizeHardware/vmoptions/bootOptions/order/Order.vue +197 -197
  62. package/components/common/vm/actions/add/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +181 -181
  63. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/CopyPaste.vue +51 -51
  64. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +253 -253
  65. package/components/common/vm/actions/add/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +55 -55
  66. package/components/common/vm/actions/add/select/storage/config/config.ts +154 -154
  67. package/components/common/vm/actions/clone/Clone.vue +545 -545
  68. package/components/common/vm/actions/clone/select/options/Options.vue +65 -65
  69. package/components/common/vm/actions/clone/utils.ts +43 -43
  70. package/components/common/wizards/datastore/add/nfs/Nfs.vue +94 -94
  71. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +377 -377
  72. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +123 -123
  73. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  74. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +131 -131
  75. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  76. package/composables/useLocal.ts +38 -38
  77. package/minify.js +146 -146
  78. package/models/store/interfaces.ts +37 -37
  79. package/models/store/storage/interfaces.ts +32 -32
  80. package/models/store/types.ts +32 -32
  81. package/modules/fixContentBuild/utils/methods.ts +114 -114
  82. package/package.json +1 -1
  83. package/public/spice-console/application/codec.js +257 -257
  84. package/public/spice-console/lib/rasterEngine.js +907 -907
  85. package/public/spice-console/network/spicechannel.js +369 -369
  86. package/utils/contentBuild.ts +34 -34
@@ -1,165 +1,165 @@
1
- <template>
2
- <atoms-modal
3
- :test-id="`${props.testId}-rename`"
4
- width="576px"
5
- class="rename"
6
- :show="true"
7
- :title="localization.rename"
8
- :second-title="name"
9
- @submit="onRename"
10
- @hide="onHide"
11
- >
12
- <template #modalBody>
13
- <div class="rename__body">
14
- <form
15
- :id="`${props.testId}-rename-form`"
16
- class="clr-form clr-form-horizontal"
17
- @submit.prevent
18
- >
19
- <slot v-if="$slots.description" name="description"></slot>
20
-
21
- <div class="clr-row clr-error clr-form-control">
22
- <label
23
- for="rename"
24
- :class="['clr-control-label', `clr-col-md-${labelWidth}`]"
25
- >{{ labelName }}</label
26
- >
27
- <div class="clr-control-container clr-col-8">
28
- <div class="form-group__input">
29
- <input
30
- id="rename"
31
- v-model="form.name.value"
32
- type="text"
33
- :class="nameErrorText && 'clr-input'"
34
- @blur="initValidation"
35
- @input="initValidation"
36
- />
37
- <div v-show="nameErrorText" class="form-validate">
38
- <atoms-the-icon
39
- class="is-error tooltip-trigger"
40
- name="info"
41
- />
42
- </div>
43
- </div>
44
- <div
45
- v-show="nameErrorText"
46
- class="form-group__input-error clr-subtext"
47
- >
48
- {{ nameErrorText }}
49
- </div>
50
- </div>
51
- </div>
52
- </form>
53
- </div>
54
- </template>
55
- </atoms-modal>
56
- </template>
57
-
58
- <script lang="ts" setup>
59
- import { UI_I_ValidationTouchResult } from '~/models/plugins/validation/interfaces'
60
- import { UI_I_Localization } from '~/models/interfaces'
61
- import { UI_I_RenameForm } from '~/components/common/modals/models/interfaces'
62
- import { defaultFormRenameFunc } from '~/components/common/modals/config/defaultForm'
63
- import { labelWidthFunc } from '~/components/common/modals/config/renameLabelWidth'
64
-
65
- const props = withDefaults(
66
- defineProps<{
67
- testId: string
68
- name: string
69
- label?: string
70
- }>(),
71
- {
72
- label: 'enterNewName',
73
- }
74
- )
75
- const emits = defineEmits<{
76
- (event: 'hide'): void
77
- (event: 'apply-changes', value: string): void
78
- }>()
79
-
80
- const localization = computed<UI_I_Localization>(() => useLocal())
81
- const { $validation } = useNuxtApp()
82
-
83
- const validation = $validation.call({})
84
- const defaultForm: UI_I_RenameForm = defaultFormRenameFunc(
85
- localization.value,
86
- props?.name || ''
87
- )
88
- const form = ref<UI_I_RenameForm>(useDeepCopy(defaultForm))
89
-
90
- const setForm = () => {
91
- form.value = useDeepCopy(defaultForm)
92
- validation.setForm(form)
93
- }
94
- setForm()
95
-
96
- const validForm = ref<UI_I_ValidationTouchResult | null>(null)
97
-
98
- const labelName = computed<string>(() => localization.value[props.label])
99
-
100
- /* Validation for Name input */
101
- const initValidation = () => {
102
- validForm.value = validation.touch()
103
- }
104
-
105
- const nameErrorText = computed<string>(() => {
106
- return validForm.value?.errors?.name?.[0] || ''
107
- })
108
- /* Validation Name input end */
109
-
110
- const labelWidth = computed<number>(() => labelWidthFunc(labelName.value))
111
-
112
- const onRename = (): void => {
113
- const { isValid = true } = validForm?.value || {}
114
-
115
- if (!isValid) return
116
- emits('apply-changes', form.value.name.value)
117
- }
118
-
119
- const onHide = (): void => {
120
- emits('hide')
121
- }
122
- </script>
123
-
124
- <style lang="scss" scoped>
125
- @import '~/assets/scss/common/mixins.scss';
126
- .rename {
127
- &__body {
128
- @include flex($dir: column);
129
- .clr-form-control {
130
- @include flex($dir: row);
131
-
132
- .clr-control-container {
133
- min-height: 48px;
134
- }
135
- .form-group {
136
- &__input {
137
- @include flex();
138
- input {
139
- width: 100%;
140
- }
141
- .form-validate {
142
- svg {
143
- width: 24px;
144
- height: 24px;
145
- }
146
- }
147
- &-error {
148
- margin-top: 0;
149
- }
150
- }
151
- }
152
- }
153
- }
154
- :deep(.modal-content) {
155
- .modal-title {
156
- white-space: nowrap;
157
- }
158
- .secondary-title {
159
- word-break: break-all;
160
- font-size: 18px;
161
- font-weight: 300;
162
- }
163
- }
164
- }
165
- </style>
1
+ <template>
2
+ <atoms-modal
3
+ :test-id="`${props.testId}-rename`"
4
+ width="576px"
5
+ class="rename"
6
+ :show="true"
7
+ :title="localization.rename"
8
+ :second-title="name"
9
+ @submit="onRename"
10
+ @hide="onHide"
11
+ >
12
+ <template #modalBody>
13
+ <div class="rename__body">
14
+ <form
15
+ :id="`${props.testId}-rename-form`"
16
+ class="clr-form clr-form-horizontal"
17
+ @submit.prevent
18
+ >
19
+ <slot v-if="$slots.description" name="description"></slot>
20
+
21
+ <div class="clr-row clr-error clr-form-control">
22
+ <label
23
+ for="rename"
24
+ :class="['clr-control-label', `clr-col-md-${labelWidth}`]"
25
+ >{{ labelName }}</label
26
+ >
27
+ <div class="clr-control-container clr-col-8">
28
+ <div class="form-group__input">
29
+ <input
30
+ id="rename"
31
+ v-model="form.name.value"
32
+ type="text"
33
+ :class="nameErrorText && 'clr-input'"
34
+ @blur="initValidation"
35
+ @input="initValidation"
36
+ />
37
+ <div v-show="nameErrorText" class="form-validate">
38
+ <atoms-the-icon
39
+ class="is-error tooltip-trigger"
40
+ name="info"
41
+ />
42
+ </div>
43
+ </div>
44
+ <div
45
+ v-show="nameErrorText"
46
+ class="form-group__input-error clr-subtext"
47
+ >
48
+ {{ nameErrorText }}
49
+ </div>
50
+ </div>
51
+ </div>
52
+ </form>
53
+ </div>
54
+ </template>
55
+ </atoms-modal>
56
+ </template>
57
+
58
+ <script lang="ts" setup>
59
+ import { UI_I_ValidationTouchResult } from '~/models/plugins/validation/interfaces'
60
+ import { UI_I_Localization } from '~/models/interfaces'
61
+ import { UI_I_RenameForm } from '~/components/common/modals/models/interfaces'
62
+ import { defaultFormRenameFunc } from '~/components/common/modals/config/defaultForm'
63
+ import { labelWidthFunc } from '~/components/common/modals/config/renameLabelWidth'
64
+
65
+ const props = withDefaults(
66
+ defineProps<{
67
+ testId: string
68
+ name: string
69
+ label?: string
70
+ }>(),
71
+ {
72
+ label: 'enterNewName',
73
+ }
74
+ )
75
+ const emits = defineEmits<{
76
+ (event: 'hide'): void
77
+ (event: 'apply-changes', value: string): void
78
+ }>()
79
+
80
+ const localization = computed<UI_I_Localization>(() => useLocal())
81
+ const { $validation } = useNuxtApp()
82
+
83
+ const validation = $validation.call({})
84
+ const defaultForm: UI_I_RenameForm = defaultFormRenameFunc(
85
+ localization.value,
86
+ props?.name || ''
87
+ )
88
+ const form = ref<UI_I_RenameForm>(useDeepCopy(defaultForm))
89
+
90
+ const setForm = () => {
91
+ form.value = useDeepCopy(defaultForm)
92
+ validation.setForm(form)
93
+ }
94
+ setForm()
95
+
96
+ const validForm = ref<UI_I_ValidationTouchResult | null>(null)
97
+
98
+ const labelName = computed<string>(() => localization.value[props.label])
99
+
100
+ /* Validation for Name input */
101
+ const initValidation = () => {
102
+ validForm.value = validation.touch()
103
+ }
104
+
105
+ const nameErrorText = computed<string>(() => {
106
+ return validForm.value?.errors?.name?.[0] || ''
107
+ })
108
+ /* Validation Name input end */
109
+
110
+ const labelWidth = computed<number>(() => labelWidthFunc(labelName.value))
111
+
112
+ const onRename = (): void => {
113
+ const { isValid = true } = validForm?.value || {}
114
+
115
+ if (!isValid) return
116
+ emits('apply-changes', form.value.name.value)
117
+ }
118
+
119
+ const onHide = (): void => {
120
+ emits('hide')
121
+ }
122
+ </script>
123
+
124
+ <style lang="scss" scoped>
125
+ @import '~/assets/scss/common/mixins.scss';
126
+ .rename {
127
+ &__body {
128
+ @include flex($dir: column);
129
+ .clr-form-control {
130
+ @include flex($dir: row);
131
+
132
+ .clr-control-container {
133
+ min-height: 48px;
134
+ }
135
+ .form-group {
136
+ &__input {
137
+ @include flex();
138
+ input {
139
+ width: 100%;
140
+ }
141
+ .form-validate {
142
+ svg {
143
+ width: 24px;
144
+ height: 24px;
145
+ }
146
+ }
147
+ &-error {
148
+ margin-top: 0;
149
+ }
150
+ }
151
+ }
152
+ }
153
+ }
154
+ :deep(.modal-content) {
155
+ .modal-title {
156
+ white-space: nowrap;
157
+ }
158
+ .secondary-title {
159
+ word-break: break-all;
160
+ font-size: 18px;
161
+ font-weight: 300;
162
+ }
163
+ }
164
+ }
165
+ </style>
@@ -32,7 +32,6 @@
32
32
  </div>
33
33
  <a
34
34
  id="chart-options-button"
35
- href="#"
36
35
  class="chart-options-button"
37
36
  @click="onShowChartOptions"
38
37
  >{{ localization.chartOptions }}</a
@@ -375,6 +374,7 @@ onMounted(() => {
375
374
  white-space: nowrap;
376
375
  text-transform: capitalize;
377
376
  color: var(--dropdown-item-color);
377
+ cursor: pointer;
378
378
  }
379
379
 
380
380
  .chart-action-bar {
@@ -18,12 +18,9 @@
18
18
  <span v-else class="single-option">{{ periodOptions[0].text }}</span>
19
19
  </div>
20
20
  <div v-show="isShowCustomIntervalButton">
21
- <a
22
- id="show-interval-modal-button"
23
- href="#"
24
- @click="onShowIntervalModal"
25
- >{{ localization.changeCustomInterval }}</a
26
- >
21
+ <a id="show-interval-modal-button" @click="onShowIntervalModal">{{
22
+ localization.changeCustomInterval
23
+ }}</a>
27
24
  </div>
28
25
  <div v-if="!disabledPeriodOptions" class="chart-title">
29
26
  {{ chartTitleDate }}
@@ -47,7 +44,9 @@
47
44
  </div>
48
45
 
49
46
  <common-monitor-overview-filters-custom-interval-modal
50
- v-show="isShowIntervalModal"
47
+ v-if="isShowIntervalModal"
48
+ :selected-periods="props.selectedPeriods"
49
+ :format-date="props.formatDate"
51
50
  @hide="onHideIntervalModal"
52
51
  @submit="onSubmitIntervalModal"
53
52
  />
@@ -72,12 +71,14 @@ const props = defineProps<{
72
71
  endDate: number
73
72
  chartType: 'spline' | 'pie'
74
73
  view: UI_T_OverviewViewType
75
- formatDate?: 'string'
76
- formatTime?: 'string'
74
+ selectedPeriods: number[]
75
+ formatDate: string
76
+ formatTime?: string
77
77
  }>()
78
78
 
79
79
  const emits = defineEmits<{
80
- (event: 'update-filters', filters: UI_I_MonitorGraphPayload): void
80
+ (event: 'update-filters', value: UI_I_MonitorGraphPayload): void
81
+ (event: 'update-custom-date', value: number[]): void
81
82
  }>()
82
83
 
83
84
  const selectedPeriod = ref<string>('')
@@ -107,6 +108,7 @@ const onSubmitIntervalModal = (customDates: number[]): void => {
107
108
  customDatesData.value = customDates
108
109
  sendUpdatedFilters()
109
110
  onHideIntervalModal()
111
+ emits('update-custom-date', customDates)
110
112
  }
111
113
 
112
114
  const chartTitleDate = computed<string>(() => {
@@ -197,6 +199,11 @@ watch(
197
199
  text-transform: uppercase;
198
200
  }
199
201
 
202
+ #show-interval-modal-button {
203
+ cursor: pointer;
204
+ color: var(--dropdown-item-color);
205
+ }
206
+
200
207
  .view-select-label {
201
208
  margin-left: auto;
202
209
  padding-right: 7px;
@@ -105,12 +105,18 @@ import { format } from 'date-fns'
105
105
  import { UI_I_Localization } from '~/models/interfaces'
106
106
  import { checkDateFunc } from '~/components/common/monitor/overview/filters/customIntervalModal/config/dateChecker'
107
107
 
108
+ const props = defineProps<{
109
+ formatDate: string
110
+ selectedPeriods: number[]
111
+ }>()
112
+
108
113
  const emits = defineEmits<{
109
114
  (event: 'hide'): void
110
115
  (event: 'submit', arg1: number[]): void
111
116
  }>()
112
117
 
113
- const { $store, $formattedDate, $isDate, $getUnixByDate } = useNuxtApp()
118
+ const { $store, $formattedDate, $formattedTime, $isDate, $getUnixByDate } =
119
+ useNuxtApp()
114
120
 
115
121
  const localization = computed<UI_I_Localization>(() => useLocal())
116
122
 
@@ -132,12 +138,27 @@ const currentTimeFrom = ref<string>('')
132
138
  const currentTimeTo = ref<string>('')
133
139
 
134
140
  const getCurrentTime = (): void => {
135
- currentDateFrom.value = $formattedDate(yesterday, '')
136
- currentDateTo.value = $formattedDate(new Date(), '')
141
+ if (!props.selectedPeriods.length) {
142
+ currentDateFrom.value = $formattedDate(yesterday, props.formatDate)
143
+ currentDateTo.value = $formattedDate(new Date(), props.formatDate)
144
+
145
+ const currentTime = format(new Date(), 'H:mm:ss')
146
+ currentTimeFrom.value = currentTime
147
+ currentTimeTo.value = currentTime
148
+
149
+ return
150
+ }
137
151
 
138
- const currentTime = format(new Date(), 'H:mm:ss')
139
- currentTimeFrom.value = currentTime
140
- currentTimeTo.value = currentTime
152
+ currentDateFrom.value = $formattedDate(
153
+ props.selectedPeriods[0],
154
+ props.formatDate
155
+ )
156
+ currentDateTo.value = $formattedDate(
157
+ props.selectedPeriods[1],
158
+ props.formatDate
159
+ )
160
+ currentTimeFrom.value = $formattedTime(props.selectedPeriods[0], '', true)
161
+ currentTimeTo.value = $formattedTime(props.selectedPeriods[1], '', true)
141
162
  }
142
163
 
143
164
  const timeFormatUpdater = computed<number>(
@@ -152,7 +173,7 @@ watch(timeFormatUpdater, () => {
152
173
  const onUpdateDateFrom = (val: number): void => {
153
174
  if (!val) return
154
175
 
155
- currentDateFrom.value = $formattedDate(new Date(val), '')
176
+ currentDateFrom.value = $formattedDate(new Date(val), props.formatDate)
156
177
  }
157
178
  watch(currentDateFrom, (newValue) => {
158
179
  if (!newValue) return
@@ -163,7 +184,7 @@ watch(currentDateFrom, (newValue) => {
163
184
  const onUpdateDateTo = (val: number): void => {
164
185
  if (!val) return
165
186
 
166
- currentDateTo.value = $formattedDate(new Date(val), '')
187
+ currentDateTo.value = $formattedDate(new Date(val), props.formatDate)
167
188
  }
168
189
  watch(currentDateTo, (newValue) => {
169
190
  if (!newValue) return
@@ -7,29 +7,31 @@ export const checkDateFunc = (
7
7
  timeFrom: string,
8
8
  timeTo: string
9
9
  ): string | number[] => {
10
- const { $formattedDatetime, $isDate } = useNuxtApp()
10
+ const { $isDate, $getUnixByDate } = useNuxtApp()
11
11
 
12
12
  let result = ''
13
13
  const startDate = dateFrom + ' ' + timeFrom
14
+ const unixStartDate = $getUnixByDate(startDate)
14
15
  const endDate = dateTo + ' ' + timeTo
16
+ const unixEndDate = $getUnixByDate(endDate)
15
17
 
16
- if (!$isDate(startDate) || !$isDate(endDate) || !timeFrom || !timeTo)
18
+ if (
19
+ !$isDate(unixStartDate) ||
20
+ !$isDate(unixEndDate) ||
21
+ !timeFrom ||
22
+ !timeTo
23
+ ) {
17
24
  result = localization.invalidTimeEntry
18
- else {
19
- const endDateFormatted = $formattedDatetime(endDate, '', true)
20
- const endDateTime = new Date(endDateFormatted).getTime()
21
-
22
- const startDateFormatted = $formattedDatetime(startDate, '', true)
23
- const startDateTime = new Date(startDateFormatted).getTime()
24
-
25
- if (endDateTime > new Date().getTime())
26
- result = localization.oneOfSelectedDatesIsInTheFuture
27
- else if (endDateTime === startDateTime)
28
- result = localization.timeToShouldBeLaterTimeFrom
29
- else if (endDateTime - startDateTime <= 3600000)
30
- result = localization.timeRangeShouldNotBeSmallerThanHour
31
- else return [startDateTime, endDateTime]
25
+ return result
32
26
  }
33
27
 
28
+ if (unixEndDate > new Date().getTime())
29
+ result = localization.oneOfSelectedDatesIsInTheFuture
30
+ else if (unixEndDate === unixStartDate)
31
+ result = localization.timeToShouldBeLaterTimeFrom
32
+ else if (unixEndDate - unixStartDate <= 3600000)
33
+ result = localization.timeRangeShouldNotBeSmallerThanHour
34
+ else return [unixStartDate, unixEndDate]
35
+
34
36
  return result
35
37
  }
@@ -1,51 +1,51 @@
1
- <template>
2
- <div class="page-size">
3
- {{ selectLabel }}
4
-
5
- <div class="clr-select-wrapper">
6
- <select
7
- :id="`${props.testId}-page-size-select`"
8
- :value="props.pageSize"
9
- class="clr-page-size-select"
10
- @change="change"
11
- >
12
- <option
13
- v-for="(item, key) in props.options"
14
- :key="key"
15
- :value="item.value"
16
- >
17
- {{ item.text }}
18
- </option>
19
- </select>
20
- </div>
21
- </div>
22
- </template>
23
-
24
- <script setup lang="ts">
25
- import { UI_I_Localization } from '~/models/interfaces'
26
- import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
27
-
28
- const props = withDefaults(
29
- defineProps<{
30
- testId: string
31
- pageSize: number
32
- options: UI_I_OptionItem[]
33
- label?: string
34
- }>(),
35
- {
36
- label: 'itemsPerPage',
37
- }
38
- )
39
- const emits = defineEmits<{
40
- (event: 'change', num: number): void
41
- }>()
42
-
43
- const localization = computed<UI_I_Localization>(() => useLocal())
44
- const selectLabel = computed<string>(() => localization.value[props.label])
45
-
46
- const change = (e: InputEvent): void => {
47
- emits('change', +(e.target as HTMLInputElement).value)
48
- }
49
- </script>
50
-
51
- <style scoped></style>
1
+ <template>
2
+ <div class="page-size">
3
+ {{ selectLabel }}
4
+
5
+ <div class="clr-select-wrapper">
6
+ <select
7
+ :id="`${props.testId}-page-size-select`"
8
+ :value="props.pageSize"
9
+ class="clr-page-size-select"
10
+ @change="change"
11
+ >
12
+ <option
13
+ v-for="(item, key) in props.options"
14
+ :key="key"
15
+ :value="item.value"
16
+ >
17
+ {{ item.text }}
18
+ </option>
19
+ </select>
20
+ </div>
21
+ </div>
22
+ </template>
23
+
24
+ <script setup lang="ts">
25
+ import { UI_I_Localization } from '~/models/interfaces'
26
+ import { UI_I_OptionItem } from '~/components/atoms/models/interfaces'
27
+
28
+ const props = withDefaults(
29
+ defineProps<{
30
+ testId: string
31
+ pageSize: number
32
+ options: UI_I_OptionItem[]
33
+ label?: string
34
+ }>(),
35
+ {
36
+ label: 'itemsPerPage',
37
+ }
38
+ )
39
+ const emits = defineEmits<{
40
+ (event: 'change', num: number): void
41
+ }>()
42
+
43
+ const localization = computed<UI_I_Localization>(() => useLocal())
44
+ const selectLabel = computed<string>(() => localization.value[props.label])
45
+
46
+ const change = (e: InputEvent): void => {
47
+ emits('change', +(e.target as HTMLInputElement).value)
48
+ }
49
+ </script>
50
+
51
+ <style scoped></style>