bfg-common 1.0.28 → 1.0.30

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 (59) hide show
  1. package/components/atoms/alert/Notification.vue +167 -167
  2. package/components/atoms/autocomplete/Autocomplete.vue +236 -236
  3. package/components/atoms/combobox/Combobox.vue +16 -0
  4. package/components/atoms/datepicker/Datepicker.vue +612 -612
  5. package/components/atoms/list/SelectList.vue +62 -62
  6. package/components/atoms/modal/bySteps/BySteps.vue +234 -234
  7. package/components/atoms/nav/NavBar.vue +116 -116
  8. package/components/atoms/nav/VerticalNavBar.vue +89 -89
  9. package/components/atoms/notificationBar/NotificationBar.vue +175 -175
  10. package/components/atoms/perPage/PerPage.vue +52 -52
  11. package/components/atoms/popup/SimplePopup.vue +90 -90
  12. package/components/atoms/step/VerticalStep.vue +104 -104
  13. package/components/atoms/switch/Switch.vue +107 -107
  14. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +204 -204
  15. package/components/atoms/table/dataGrid/DataGridPage.vue +189 -189
  16. package/components/atoms/table/dataGrid/DataGridPagination.vue +83 -83
  17. package/components/atoms/tabs/Tabs.vue +189 -189
  18. package/components/atoms/tooltip/Signpost.vue +224 -224
  19. package/components/common/accordion/Accordion.vue +176 -176
  20. package/components/common/accordion/Recursion.vue +195 -195
  21. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  22. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  23. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  24. package/components/common/browse/Browse.vue +182 -182
  25. package/components/common/browse/blocks/Title.vue +66 -66
  26. package/components/common/diagramMain/Header.vue +160 -160
  27. package/components/common/diagramMain/adapter/AdapterItem.vue +227 -227
  28. package/components/common/diagramMain/adapter/AdapterItems.vue +57 -57
  29. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  30. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  31. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  32. package/components/common/diagramMain/modals/viewSettings/Info.vue +94 -94
  33. package/components/common/diagramMain/network/Contents.vue +238 -238
  34. package/components/common/feedback/Buttons.vue +232 -232
  35. package/components/common/feedback/Message.vue +468 -468
  36. package/components/common/feedback/VisitPortal.vue +54 -54
  37. package/components/common/modals/Rename.vue +165 -165
  38. package/components/common/perPage/PerPage.vue +51 -51
  39. package/components/common/recursionTree/RecursionTree.vue +201 -201
  40. package/components/common/vm/actions/add/customizeHardware/virtualHardware/cpu/config/cpuOptions.ts +2 -2
  41. package/components/common/vm/actions/add/customizeHardware/virtualHardware/limit/config/options.ts +2 -2
  42. package/components/common/vm/actions/add/customizeHardware/virtualHardware/memory/config/memoryOptions.ts +2 -2
  43. package/components/common/vm/actions/add/customizeHardware/virtualHardware/reservation/config/options.ts +2 -2
  44. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +373 -373
  45. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +123 -123
  46. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  47. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +131 -131
  48. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  49. package/models/store/storage/interfaces.ts +32 -32
  50. package/package.json +1 -1
  51. package/public/spice-console/application/codec.js +257 -257
  52. package/public/spice-console/lib/rasterEngine.js +907 -907
  53. package/public/spice-console/network/spicechannel.js +369 -310
  54. package/public/spice-console-minify/lib/decoder/dixie.min.js +4 -4
  55. package/public/spice-console-minify/lib/jgestures.min.js +24 -24
  56. package/public/spice-console-minify/lib/jquery-2.0.3.min.js +24 -24
  57. package/public/spice-console-minify/lib/jquery-mousewheel.min.js +11 -11
  58. package/public/spice-console-minify/lib/jquery-visibility.min.js +1 -1
  59. package/public/spice-console-minify/lib/lodash.4.0.0.min.js +5 -5
@@ -1,195 +1,195 @@
1
- <template>
2
- <div
3
- class="accordion"
4
- :class="{ isOpen, disabled: props.accordion.disabled }"
5
- >
6
- <NuxtLink
7
- class="accordion-item"
8
- :to="accordion.path"
9
- active-class="active"
10
- @click.prevent="onSelect(accordion)"
11
- >
12
- <div
13
- :class="['heading-wrap', { group: props.accordion.hasChild }]"
14
- :style="{ paddingLeft: `${props.level * 24 || 10}px` }"
15
- @click="toggle"
16
- >
17
- <div class="flex-align-center heading">
18
- <div
19
- v-if="props.accordion.iconClassName"
20
- :class="['icon', props.accordion.iconClassName]"
21
- ></div>
22
- <div :class="['text text-ellipsis', headingClass]">
23
- {{ props.accordion.name }}
24
- </div>
25
- </div>
26
- <button
27
- v-if="props.accordion.hasChild"
28
- :id="`${props.testId}-trigger-button`"
29
- class="btn-trigger"
30
- >
31
- <atoms-the-icon class="trigger-icon" name="angle" />
32
- </button>
33
- </div>
34
- </NuxtLink>
35
-
36
- <transition
37
- v-if="props.accordion.hasChild"
38
- name="accordion"
39
- @before-enter="end"
40
- @enter="start"
41
- @before-leave="start"
42
- @leave="end"
43
- >
44
- <div v-show="isOpen" class="accordion__content">
45
- <common-accordion-recursion
46
- v-for="(item, key) in props.accordion.children"
47
- :test-id="`${props.testId}-${key}`"
48
- :key="item.id"
49
- :accordion="item"
50
- :level="props.level + 1"
51
- @change="onSelect"
52
- />
53
- </div>
54
- </transition>
55
- </div>
56
- </template>
57
-
58
- <script setup lang="ts">
59
- import {
60
- UI_I_AccordionRecursion,
61
- UI_I_HeadingClass,
62
- } from '~/components/common/accordion/models/interfaces'
63
-
64
- const props = withDefaults(
65
- defineProps<{
66
- accordion: UI_I_AccordionRecursion
67
- testId: string
68
- level?: number
69
- }>(),
70
- { level: 0 }
71
- )
72
- const emits = defineEmits<{
73
- (event: 'change', value: UI_I_AccordionRecursion): void
74
- }>()
75
-
76
- const isOpen = ref<boolean>(true)
77
- const toggle = (): void => {
78
- if (!props.accordion.hasChild) return
79
- isOpen.value = !isOpen.value
80
- }
81
-
82
- const start = (element: any): void => {
83
- element.style.height = element.scrollHeight + 'px'
84
- }
85
- const end = (el: any): void => {
86
- el.style.height = 0
87
- }
88
-
89
- const headingClass = computed<UI_I_HeadingClass>(() => {
90
- return {
91
- 'text-normal': !props.accordion.hasChild,
92
- disabled: props.accordion.disabled && !props.accordion.hasChild,
93
- }
94
- })
95
-
96
- const onSelect = (item: UI_I_AccordionRecursion) => {
97
- emits('change', item)
98
- }
99
- </script>
100
-
101
- <style lang="scss">
102
- @import '~/assets/scss/common/mixins';
103
-
104
- %hover-effect {
105
- margin-bottom: -1px;
106
- border-bottom: 1px solid var(--row-hover-border-color);
107
- background-color: var(--row-hover-bg-color);
108
- cursor: pointer;
109
- }
110
- %active-mode {
111
- background-color: var(--row-selected-bg-color);
112
- color: var(--row-selected-text-color);
113
- }
114
- .accordion {
115
- .accordion-item {
116
- display: block;
117
- text-decoration: none;
118
- color: var(--global-font-color);
119
-
120
- &.active {
121
- background-color: #29414e;
122
- color: #fff;
123
- border-bottom: 1px solid transparent;
124
- cursor: default;
125
- %hover-effect {
126
- margin-bottom: unset;
127
- border-bottom: unset;
128
- background-color: unset;
129
- cursor: unset;
130
- }
131
- }
132
-
133
- .heading-wrap {
134
- width: 100%;
135
- @include flex($align: center, $just: space-between);
136
-
137
- &:not(.group) {
138
- display: block;
139
- padding-right: 14px;
140
- }
141
-
142
- &.group .heading {
143
- width: calc(100% - 30px);
144
- }
145
- .heading {
146
- margin-right: 10px;
147
- //overflow: hidden;
148
- .icon {
149
- margin: 1px 4px 0 0;
150
- }
151
-
152
- .text {
153
- font-weight: 600;
154
-
155
- &.text-normal {
156
- font-weight: 400;
157
-
158
- &.disabled {
159
- opacity: 0.3;
160
- cursor: not-allowed;
161
- }
162
- }
163
- }
164
- }
165
- &:hover:not(:has(> .disabled)) {
166
- @extend %hover-effect;
167
- }
168
- &:has(> .disabled) {
169
- cursor: not-allowed;
170
- }
171
- }
172
- }
173
- &__content {
174
- transition: 0.1s ease-in-out;
175
- overflow: hidden;
176
- }
177
- }
178
-
179
- .btn-trigger {
180
- flex: auto;
181
- margin-right: 10px;
182
-
183
- //padding-right: 10px;
184
- .trigger-icon {
185
- width: 16px;
186
- height: 16px;
187
- transform: rotate(90deg);
188
- margin-left: auto;
189
- fill: var(--triger-icon-color);
190
- .isOpen & {
191
- transform: rotate(180deg);
192
- }
193
- }
194
- }
195
- </style>
1
+ <template>
2
+ <div
3
+ class="accordion"
4
+ :class="{ isOpen, disabled: props.accordion.disabled }"
5
+ >
6
+ <NuxtLink
7
+ class="accordion-item"
8
+ :to="accordion.path"
9
+ active-class="active"
10
+ @click.prevent="onSelect(accordion)"
11
+ >
12
+ <div
13
+ :class="['heading-wrap', { group: props.accordion.hasChild }]"
14
+ :style="{ paddingLeft: `${props.level * 24 || 10}px` }"
15
+ @click="toggle"
16
+ >
17
+ <div class="flex-align-center heading">
18
+ <div
19
+ v-if="props.accordion.iconClassName"
20
+ :class="['icon', props.accordion.iconClassName]"
21
+ ></div>
22
+ <div :class="['text text-ellipsis', headingClass]">
23
+ {{ props.accordion.name }}
24
+ </div>
25
+ </div>
26
+ <button
27
+ v-if="props.accordion.hasChild"
28
+ :id="`${props.testId}-trigger-button`"
29
+ class="btn-trigger"
30
+ >
31
+ <atoms-the-icon class="trigger-icon" name="angle" />
32
+ </button>
33
+ </div>
34
+ </NuxtLink>
35
+
36
+ <transition
37
+ v-if="props.accordion.hasChild"
38
+ name="accordion"
39
+ @before-enter="end"
40
+ @enter="start"
41
+ @before-leave="start"
42
+ @leave="end"
43
+ >
44
+ <div v-show="isOpen" class="accordion__content">
45
+ <common-accordion-recursion
46
+ v-for="(item, key) in props.accordion.children"
47
+ :test-id="`${props.testId}-${key}`"
48
+ :key="item.id"
49
+ :accordion="item"
50
+ :level="props.level + 1"
51
+ @change="onSelect"
52
+ />
53
+ </div>
54
+ </transition>
55
+ </div>
56
+ </template>
57
+
58
+ <script setup lang="ts">
59
+ import {
60
+ UI_I_AccordionRecursion,
61
+ UI_I_HeadingClass,
62
+ } from '~/components/common/accordion/models/interfaces'
63
+
64
+ const props = withDefaults(
65
+ defineProps<{
66
+ accordion: UI_I_AccordionRecursion
67
+ testId: string
68
+ level?: number
69
+ }>(),
70
+ { level: 0 }
71
+ )
72
+ const emits = defineEmits<{
73
+ (event: 'change', value: UI_I_AccordionRecursion): void
74
+ }>()
75
+
76
+ const isOpen = ref<boolean>(true)
77
+ const toggle = (): void => {
78
+ if (!props.accordion.hasChild) return
79
+ isOpen.value = !isOpen.value
80
+ }
81
+
82
+ const start = (element: any): void => {
83
+ element.style.height = element.scrollHeight + 'px'
84
+ }
85
+ const end = (el: any): void => {
86
+ el.style.height = 0
87
+ }
88
+
89
+ const headingClass = computed<UI_I_HeadingClass>(() => {
90
+ return {
91
+ 'text-normal': !props.accordion.hasChild,
92
+ disabled: props.accordion.disabled && !props.accordion.hasChild,
93
+ }
94
+ })
95
+
96
+ const onSelect = (item: UI_I_AccordionRecursion) => {
97
+ emits('change', item)
98
+ }
99
+ </script>
100
+
101
+ <style lang="scss">
102
+ @import '~/assets/scss/common/mixins';
103
+
104
+ %hover-effect {
105
+ margin-bottom: -1px;
106
+ border-bottom: 1px solid var(--row-hover-border-color);
107
+ background-color: var(--row-hover-bg-color);
108
+ cursor: pointer;
109
+ }
110
+ %active-mode {
111
+ background-color: var(--row-selected-bg-color);
112
+ color: var(--row-selected-text-color);
113
+ }
114
+ .accordion {
115
+ .accordion-item {
116
+ display: block;
117
+ text-decoration: none;
118
+ color: var(--global-font-color);
119
+
120
+ &.active {
121
+ background-color: #29414e;
122
+ color: #fff;
123
+ border-bottom: 1px solid transparent;
124
+ cursor: default;
125
+ %hover-effect {
126
+ margin-bottom: unset;
127
+ border-bottom: unset;
128
+ background-color: unset;
129
+ cursor: unset;
130
+ }
131
+ }
132
+
133
+ .heading-wrap {
134
+ width: 100%;
135
+ @include flex($align: center, $just: space-between);
136
+
137
+ &:not(.group) {
138
+ display: block;
139
+ padding-right: 14px;
140
+ }
141
+
142
+ &.group .heading {
143
+ width: calc(100% - 30px);
144
+ }
145
+ .heading {
146
+ margin-right: 10px;
147
+ //overflow: hidden;
148
+ .icon {
149
+ margin: 1px 4px 0 0;
150
+ }
151
+
152
+ .text {
153
+ font-weight: 600;
154
+
155
+ &.text-normal {
156
+ font-weight: 400;
157
+
158
+ &.disabled {
159
+ opacity: 0.3;
160
+ cursor: not-allowed;
161
+ }
162
+ }
163
+ }
164
+ }
165
+ &:hover:not(:has(> .disabled)) {
166
+ @extend %hover-effect;
167
+ }
168
+ &:has(> .disabled) {
169
+ cursor: not-allowed;
170
+ }
171
+ }
172
+ }
173
+ &__content {
174
+ transition: 0.1s ease-in-out;
175
+ overflow: hidden;
176
+ }
177
+ }
178
+
179
+ .btn-trigger {
180
+ flex: auto;
181
+ margin-right: 10px;
182
+
183
+ //padding-right: 10px;
184
+ .trigger-icon {
185
+ width: 16px;
186
+ height: 16px;
187
+ transform: rotate(90deg);
188
+ margin-left: auto;
189
+ fill: var(--triger-icon-color);
190
+ .isOpen & {
191
+ transform: rotate(180deg);
192
+ }
193
+ }
194
+ }
195
+ </style>
@@ -1,82 +1,82 @@
1
- <template>
2
- <div>
3
- <atoms-modal
4
- test-id="add-adapter-warning"
5
- width="576"
6
- height="420"
7
- :show="props.show"
8
- :title="props.title"
9
- class="diagram-action__remove"
10
- @hide="onHideModal"
11
- >
12
- <template #modalBody>
13
- <div class="modal-body-content modal-body-content__confirmation">
14
- <div class="confirm-icon-container">
15
- <atoms-diagram-icon name="is-warning" />
16
- </div>
17
- <p class="preserve-newlines">
18
- {{ localization.noFreeNetworkAdaptersAddSwitch }}
19
- </p>
20
- </div>
21
- </template>
22
- <template #modalFooter>
23
- <span>
24
- <button
25
- :id="`${props.testId}-modal-close-button`"
26
- type="button"
27
- class="btn btn-primary"
28
- @click="onHideModal"
29
- >
30
- {{ localization.ok }}
31
- </button>
32
- </span>
33
- </template>
34
- </atoms-modal>
35
- </div>
36
- </template>
37
-
38
- <script setup lang="ts">
39
- import { UI_I_Localization } from '~/models/interfaces'
40
-
41
- // Props from up
42
- const props = defineProps<{
43
- show: boolean
44
- modalName: string
45
- viewName: string
46
- title: string
47
- testId: string
48
- }>()
49
-
50
- // UI_I_Localization
51
- const localization = computed<UI_I_Localization>(() => useLocal())
52
-
53
- // Modal
54
- const emits = defineEmits<{
55
- (event: 'hide'): void
56
- }>()
57
- const onHideModal = (): void => {
58
- emits('hide')
59
- }
60
- </script>
61
-
62
- <style scoped lang="scss">
63
- :deep(.diagram-action__remove) {
64
- .modal-body-content {
65
- display: flex;
66
-
67
- .confirm-icon-container {
68
- margin-right: 20px;
69
- }
70
-
71
- .preserve-newlines {
72
- white-space: pre-line;
73
- font-size: 15px;
74
- }
75
- }
76
- }
77
- .table-fixed-height {
78
- min-height: 287px;
79
- max-height: 287px;
80
- overflow-y: auto;
81
- }
82
- </style>
1
+ <template>
2
+ <div>
3
+ <atoms-modal
4
+ test-id="add-adapter-warning"
5
+ width="576"
6
+ height="420"
7
+ :show="props.show"
8
+ :title="props.title"
9
+ class="diagram-action__remove"
10
+ @hide="onHideModal"
11
+ >
12
+ <template #modalBody>
13
+ <div class="modal-body-content modal-body-content__confirmation">
14
+ <div class="confirm-icon-container">
15
+ <atoms-diagram-icon name="is-warning" />
16
+ </div>
17
+ <p class="preserve-newlines">
18
+ {{ localization.noFreeNetworkAdaptersAddSwitch }}
19
+ </p>
20
+ </div>
21
+ </template>
22
+ <template #modalFooter>
23
+ <span>
24
+ <button
25
+ :id="`${props.testId}-modal-close-button`"
26
+ type="button"
27
+ class="btn btn-primary"
28
+ @click="onHideModal"
29
+ >
30
+ {{ localization.ok }}
31
+ </button>
32
+ </span>
33
+ </template>
34
+ </atoms-modal>
35
+ </div>
36
+ </template>
37
+
38
+ <script setup lang="ts">
39
+ import { UI_I_Localization } from '~/models/interfaces'
40
+
41
+ // Props from up
42
+ const props = defineProps<{
43
+ show: boolean
44
+ modalName: string
45
+ viewName: string
46
+ title: string
47
+ testId: string
48
+ }>()
49
+
50
+ // UI_I_Localization
51
+ const localization = computed<UI_I_Localization>(() => useLocal())
52
+
53
+ // Modal
54
+ const emits = defineEmits<{
55
+ (event: 'hide'): void
56
+ }>()
57
+ const onHideModal = (): void => {
58
+ emits('hide')
59
+ }
60
+ </script>
61
+
62
+ <style scoped lang="scss">
63
+ :deep(.diagram-action__remove) {
64
+ .modal-body-content {
65
+ display: flex;
66
+
67
+ .confirm-icon-container {
68
+ margin-right: 20px;
69
+ }
70
+
71
+ .preserve-newlines {
72
+ white-space: pre-line;
73
+ font-size: 15px;
74
+ }
75
+ }
76
+ }
77
+ .table-fixed-height {
78
+ min-height: 287px;
79
+ max-height: 287px;
80
+ overflow-y: auto;
81
+ }
82
+ </style>
@@ -1,62 +1,62 @@
1
- <template>
2
- <div>
3
- <atoms-modal
4
- test-id="no-active-adapters"
5
- width="576px"
6
- height="257px"
7
- :show="props.show"
8
- :title="localization.physicalNetworkAdaptersWarning"
9
- @hide="onHide"
10
- @submit="onSubmit"
11
- >
12
- <template #modalBody>
13
- <div class="modal-body-content modal-body-content__confirmation">
14
- <div class="confirm-icon-container">
15
- <atoms-diagram-icon name="is-warning" />
16
- </div>
17
- <p class="preserve-newlines">
18
- {{
19
- `${localization.thereAreNoActivePhysicalNetworkAdaptersForSwitch}
20
-
21
- ${localization.okOrCancelToReviewYourChanges}`
22
- }}
23
- </p>
24
- </div>
25
- </template>
26
- </atoms-modal>
27
- </div>
28
- </template>
29
-
30
- <script setup lang="ts">
31
- import { UI_I_Localization } from '~/models/interfaces'
32
-
33
- const props = defineProps<{
34
- show: boolean
35
- title: string
36
- }>()
37
-
38
- const emits = defineEmits<{
39
- (event: 'hide'): void
40
- (event: 'submit'): void
41
- }>()
42
-
43
- const onHide = () => emits('hide')
44
- const onSubmit = () => emits('submit')
45
-
46
- const localization = computed<UI_I_Localization>(() => useLocal())
47
- </script>
48
-
49
- <style scoped lang="scss">
50
- :deep(.modal-body-content.modal-body-content__confirmation) {
51
- display: flex;
52
-
53
- .confirm-icon-container {
54
- margin-right: 20px;
55
- }
56
-
57
- .preserve-newlines {
58
- white-space: pre-line;
59
- font-size: 15px;
60
- }
61
- }
62
- </style>
1
+ <template>
2
+ <div>
3
+ <atoms-modal
4
+ test-id="no-active-adapters"
5
+ width="576px"
6
+ height="257px"
7
+ :show="props.show"
8
+ :title="localization.physicalNetworkAdaptersWarning"
9
+ @hide="onHide"
10
+ @submit="onSubmit"
11
+ >
12
+ <template #modalBody>
13
+ <div class="modal-body-content modal-body-content__confirmation">
14
+ <div class="confirm-icon-container">
15
+ <atoms-diagram-icon name="is-warning" />
16
+ </div>
17
+ <p class="preserve-newlines">
18
+ {{
19
+ `${localization.thereAreNoActivePhysicalNetworkAdaptersForSwitch}
20
+
21
+ ${localization.okOrCancelToReviewYourChanges}`
22
+ }}
23
+ </p>
24
+ </div>
25
+ </template>
26
+ </atoms-modal>
27
+ </div>
28
+ </template>
29
+
30
+ <script setup lang="ts">
31
+ import { UI_I_Localization } from '~/models/interfaces'
32
+
33
+ const props = defineProps<{
34
+ show: boolean
35
+ title: string
36
+ }>()
37
+
38
+ const emits = defineEmits<{
39
+ (event: 'hide'): void
40
+ (event: 'submit'): void
41
+ }>()
42
+
43
+ const onHide = () => emits('hide')
44
+ const onSubmit = () => emits('submit')
45
+
46
+ const localization = computed<UI_I_Localization>(() => useLocal())
47
+ </script>
48
+
49
+ <style scoped lang="scss">
50
+ :deep(.modal-body-content.modal-body-content__confirmation) {
51
+ display: flex;
52
+
53
+ .confirm-icon-container {
54
+ margin-right: 20px;
55
+ }
56
+
57
+ .preserve-newlines {
58
+ white-space: pre-line;
59
+ font-size: 15px;
60
+ }
61
+ }
62
+ </style>