bfg-common 1.0.75 → 1.0.76

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 (61) hide show
  1. package/components/atoms/alert/Notification.vue +167 -167
  2. package/components/atoms/autocomplete/Autocomplete.vue +236 -236
  3. package/components/atoms/datepicker/Datepicker.vue +612 -612
  4. package/components/atoms/list/SelectList.vue +62 -62
  5. package/components/atoms/modal/bySteps/BySteps.vue +234 -234
  6. package/components/atoms/nav/NavBar.vue +116 -116
  7. package/components/atoms/nav/VerticalNavBar.vue +89 -89
  8. package/components/atoms/notificationBar/NotificationBar.vue +174 -174
  9. package/components/atoms/perPage/PerPage.vue +52 -52
  10. package/components/atoms/popup/SimplePopup.vue +90 -90
  11. package/components/atoms/step/VerticalStep.vue +104 -104
  12. package/components/atoms/switch/Switch.vue +107 -107
  13. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +204 -204
  14. package/components/atoms/table/dataGrid/DataGridPage.vue +189 -189
  15. package/components/atoms/table/dataGrid/DataGridPagination.vue +83 -83
  16. package/components/atoms/tabs/Tabs.vue +189 -189
  17. package/components/atoms/tooltip/Signpost.vue +224 -224
  18. package/components/common/accordion/Recursion.vue +6 -2
  19. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  20. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  21. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  22. package/components/common/browse/Browse.vue +182 -182
  23. package/components/common/browse/blocks/Title.vue +66 -66
  24. package/components/common/diagramMain/adapter/AdapterItem.vue +227 -227
  25. package/components/common/diagramMain/adapter/AdapterItems.vue +57 -57
  26. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  27. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  28. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  29. package/components/common/diagramMain/modals/viewSettings/Info.vue +94 -94
  30. package/components/common/diagramMain/network/Contents.vue +238 -238
  31. package/components/common/feedback/Buttons.vue +232 -232
  32. package/components/common/feedback/Message.vue +468 -468
  33. package/components/common/feedback/VisitPortal.vue +54 -54
  34. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +359 -359
  35. package/components/common/modals/Rename.vue +165 -165
  36. package/components/common/perPage/PerPage.vue +51 -51
  37. package/components/common/recursionTree/RecursionTree.vue +201 -201
  38. package/components/common/select/radio/RadioGroup.vue +50 -13
  39. package/components/common/select/radio/models/interfaces.ts +2 -6
  40. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +373 -373
  41. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +123 -123
  42. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  43. package/components/common/wizards/datastore/add/nfs/version/Version.vue +9 -37
  44. package/components/common/wizards/datastore/add/nfs/version/config/versionOptions.ts +4 -4
  45. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +131 -131
  46. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  47. package/components/common/wizards/datastore/add/sharedStorm/version/Version.vue +6 -37
  48. package/components/common/wizards/datastore/add/sharedStorm/version/config/versionOptions.ts +6 -4
  49. package/components/common/wizards/datastore/add/types/Types.vue +6 -66
  50. package/components/common/wizards/datastore/add/types/config/typeOptions.ts +11 -11
  51. package/models/store/storage/interfaces.ts +32 -32
  52. package/package.json +1 -1
  53. package/public/spice-console/application/codec.js +257 -257
  54. package/public/spice-console/lib/rasterEngine.js +907 -907
  55. package/public/spice-console/network/spicechannel.js +369 -369
  56. package/public/spice-console-minify/lib/decoder/dixie.min.js +4 -4
  57. package/public/spice-console-minify/lib/jgestures.min.js +24 -24
  58. package/public/spice-console-minify/lib/jquery-2.0.3.min.js +24 -24
  59. package/public/spice-console-minify/lib/jquery-mousewheel.min.js +11 -11
  60. package/public/spice-console-minify/lib/jquery-visibility.min.js +1 -1
  61. package/public/spice-console-minify/lib/lodash.4.0.0.min.js +5 -5
@@ -1,224 +1,224 @@
1
- <template>
2
- <div
3
- id="signpost"
4
- :class="['signpost', signpostClass]"
5
- :style="signpostStyles"
6
- @click.stop
7
- @mouseenter="hovered = true"
8
- @mouseleave="hovered = false"
9
- >
10
- <div class="signpost-wrap">
11
- <div class="popover-pointer" />
12
- <div class="signpost-content-header">
13
- <button
14
- :id="`${props.testId}-close-icon`"
15
- class="signpost-action close"
16
- @click="hide"
17
- >
18
- <atoms-the-icon class="close-icon" name="close" />
19
- </button>
20
- </div>
21
- <div class="signpost-content-body">
22
- <slot />
23
- </div>
24
- </div>
25
- </div>
26
- </template>
27
-
28
- <script setup lang="ts">
29
- import { UI_I_ElPosition } from '~/components/atoms/tooltip/Models/interfaces'
30
- const props = withDefaults(
31
- defineProps<{
32
- elemId: string
33
- testId?: string
34
- }>(),
35
- { testId: 'ui-signpost' }
36
- )
37
- const emits = defineEmits<{
38
- (event: 'hide'): void
39
- }>()
40
- const hide = (): void => {
41
- emits('hide')
42
- }
43
-
44
- const signpostStyles = ref<UI_I_ElPosition | null>(null)
45
- watch(
46
- () => props.elemId,
47
- (id: string) => {
48
- const elem = (document.getElementById(id) as HTMLDivElement) || null
49
- const { width, x, y } = elem.getBoundingClientRect()
50
-
51
- signpostStyles.value = {
52
- top: `${y}px`,
53
- left: `${x + width / 2}px`,
54
- }
55
- setTimeout(() => {
56
- setSignpostPosition()
57
- }, 0)
58
- },
59
- { immediate: true }
60
- )
61
- const signpostClass = ref<string[]>([])
62
- const setSignpostPosition = (): void => {
63
- const signpost =
64
- (document.getElementById('signpost') as HTMLDivElement) || null
65
- const signpostRect = (signpost?.getBoundingClientRect() as DOMRect) || null
66
-
67
- type PositionX = 'right' | 'left'
68
- let positionX: PositionX = 'right'
69
-
70
- type PositionY = 'top' | 'middle'
71
- let positionY: PositionY = 'middle'
72
-
73
- const isOutRight = signpostRect.left + signpostRect.width > window.innerWidth
74
- const isOutTop = signpostRect.top < 0
75
-
76
- if (isOutTop) {
77
- positionY = 'top'
78
- }
79
- if (isOutRight) {
80
- positionX = 'left'
81
- }
82
-
83
- signpostClass.value.push(positionY)
84
- signpostClass.value.push(positionX)
85
- signpostClass.value.push('show')
86
- }
87
-
88
- const hovered = ref(false)
89
- const windowClick = (): void => {
90
- hide()
91
- }
92
- const windowScroll = (): void => {
93
- if (hovered.value) {
94
- return
95
- }
96
- hide()
97
- }
98
- onMounted(() => {
99
- setTimeout(() => {
100
- window.addEventListener('click', windowClick)
101
- window.addEventListener('scroll', windowScroll, true)
102
- })
103
- })
104
- onUnmounted(() => {
105
- window.removeEventListener('click', windowClick)
106
- window.removeEventListener('scroll', windowScroll, true)
107
- })
108
- </script>
109
-
110
- <style scoped lang="scss">
111
- .signpost {
112
- opacity: 0;
113
- position: fixed;
114
- cursor: default;
115
- transform: translateY(calc(-50% + 14px)) translateX(20px);
116
- z-index: 1000000000;
117
-
118
- &.show {
119
- opacity: 1;
120
- }
121
- &.left {
122
- transform: translateY(calc(-50% + 14px)) translateX(calc(-100% - 20px));
123
-
124
- .signpost-wrap {
125
- .popover-pointer {
126
- left: 100%;
127
- border-right: unset;
128
- border-left: 12px solid var(--signpost-border-color);
129
-
130
- &::before {
131
- border-right: unset;
132
- border-left: 12px solid var(--signpost-bgcolor);
133
- left: unset;
134
- right: 2px;
135
- }
136
- }
137
- }
138
- }
139
- &.top {
140
- transform: translateY(calc(0% + 10px)) translateX(20px);
141
-
142
- &.left {
143
- transform: translateY(calc(0% + 10px)) translateX(calc(-100% - 20px));
144
-
145
- .popover-pointer {
146
- top: 5px;
147
- }
148
- }
149
-
150
- .signpost-wrap {
151
- .popover-pointer {
152
- top: 5px;
153
- }
154
- }
155
- }
156
-
157
- .signpost-wrap {
158
- border-radius: 3px;
159
- border: 1px solid var(--signpost-border-color);
160
- background-color: var(--signpost-bgcolor);
161
- position: relative;
162
-
163
- .popover-pointer {
164
- border-bottom: 12px solid transparent;
165
- top: 50%;
166
- transform: translateY(-50%);
167
- border-right: 12px solid var(--signpost-border-color);
168
- left: -12px;
169
- height: 0;
170
- width: 0;
171
- position: absolute;
172
-
173
- &::before {
174
- border-bottom: 12px solid transparent;
175
- top: 1px;
176
- border-right: 12px solid var(--signpost-bgcolor);
177
- left: 2px;
178
- content: '';
179
- height: 0;
180
- width: 0;
181
- position: absolute;
182
- }
183
- }
184
-
185
- .signpost-content-header {
186
- display: flex;
187
- justify-content: flex-end;
188
- position: absolute;
189
- width: 100%;
190
- background-color: inherit;
191
- top: 0;
192
-
193
- button {
194
- line-height: 24px;
195
-
196
- .close-icon {
197
- width: 16px;
198
- height: 16px;
199
- }
200
- }
201
- }
202
-
203
- .signpost-content-body {
204
- padding: 24px;
205
- max-height: 480px;
206
- overflow-y: auto;
207
- text-transform: none;
208
- }
209
- }
210
- }
211
- </style>
212
-
213
- <style>
214
- :root {
215
- --signpost-bgcolor: #fff;
216
- --signpost-border-color: #b3b3b3;
217
- --signpost-color: #acbac3;
218
- }
219
- :root.dark-theme {
220
- --signpost-bgcolor: #21333b;
221
- --signpost-border-color: #000;
222
- --signpost-color: #acbac3;
223
- }
224
- </style>
1
+ <template>
2
+ <div
3
+ id="signpost"
4
+ :class="['signpost', signpostClass]"
5
+ :style="signpostStyles"
6
+ @click.stop
7
+ @mouseenter="hovered = true"
8
+ @mouseleave="hovered = false"
9
+ >
10
+ <div class="signpost-wrap">
11
+ <div class="popover-pointer" />
12
+ <div class="signpost-content-header">
13
+ <button
14
+ :id="`${props.testId}-close-icon`"
15
+ class="signpost-action close"
16
+ @click="hide"
17
+ >
18
+ <atoms-the-icon class="close-icon" name="close" />
19
+ </button>
20
+ </div>
21
+ <div class="signpost-content-body">
22
+ <slot />
23
+ </div>
24
+ </div>
25
+ </div>
26
+ </template>
27
+
28
+ <script setup lang="ts">
29
+ import { UI_I_ElPosition } from '~/components/atoms/tooltip/Models/interfaces'
30
+ const props = withDefaults(
31
+ defineProps<{
32
+ elemId: string
33
+ testId?: string
34
+ }>(),
35
+ { testId: 'ui-signpost' }
36
+ )
37
+ const emits = defineEmits<{
38
+ (event: 'hide'): void
39
+ }>()
40
+ const hide = (): void => {
41
+ emits('hide')
42
+ }
43
+
44
+ const signpostStyles = ref<UI_I_ElPosition | null>(null)
45
+ watch(
46
+ () => props.elemId,
47
+ (id: string) => {
48
+ const elem = (document.getElementById(id) as HTMLDivElement) || null
49
+ const { width, x, y } = elem.getBoundingClientRect()
50
+
51
+ signpostStyles.value = {
52
+ top: `${y}px`,
53
+ left: `${x + width / 2}px`,
54
+ }
55
+ setTimeout(() => {
56
+ setSignpostPosition()
57
+ }, 0)
58
+ },
59
+ { immediate: true }
60
+ )
61
+ const signpostClass = ref<string[]>([])
62
+ const setSignpostPosition = (): void => {
63
+ const signpost =
64
+ (document.getElementById('signpost') as HTMLDivElement) || null
65
+ const signpostRect = (signpost?.getBoundingClientRect() as DOMRect) || null
66
+
67
+ type PositionX = 'right' | 'left'
68
+ let positionX: PositionX = 'right'
69
+
70
+ type PositionY = 'top' | 'middle'
71
+ let positionY: PositionY = 'middle'
72
+
73
+ const isOutRight = signpostRect.left + signpostRect.width > window.innerWidth
74
+ const isOutTop = signpostRect.top < 0
75
+
76
+ if (isOutTop) {
77
+ positionY = 'top'
78
+ }
79
+ if (isOutRight) {
80
+ positionX = 'left'
81
+ }
82
+
83
+ signpostClass.value.push(positionY)
84
+ signpostClass.value.push(positionX)
85
+ signpostClass.value.push('show')
86
+ }
87
+
88
+ const hovered = ref(false)
89
+ const windowClick = (): void => {
90
+ hide()
91
+ }
92
+ const windowScroll = (): void => {
93
+ if (hovered.value) {
94
+ return
95
+ }
96
+ hide()
97
+ }
98
+ onMounted(() => {
99
+ setTimeout(() => {
100
+ window.addEventListener('click', windowClick)
101
+ window.addEventListener('scroll', windowScroll, true)
102
+ })
103
+ })
104
+ onUnmounted(() => {
105
+ window.removeEventListener('click', windowClick)
106
+ window.removeEventListener('scroll', windowScroll, true)
107
+ })
108
+ </script>
109
+
110
+ <style scoped lang="scss">
111
+ .signpost {
112
+ opacity: 0;
113
+ position: fixed;
114
+ cursor: default;
115
+ transform: translateY(calc(-50% + 14px)) translateX(20px);
116
+ z-index: 1000000000;
117
+
118
+ &.show {
119
+ opacity: 1;
120
+ }
121
+ &.left {
122
+ transform: translateY(calc(-50% + 14px)) translateX(calc(-100% - 20px));
123
+
124
+ .signpost-wrap {
125
+ .popover-pointer {
126
+ left: 100%;
127
+ border-right: unset;
128
+ border-left: 12px solid var(--signpost-border-color);
129
+
130
+ &::before {
131
+ border-right: unset;
132
+ border-left: 12px solid var(--signpost-bgcolor);
133
+ left: unset;
134
+ right: 2px;
135
+ }
136
+ }
137
+ }
138
+ }
139
+ &.top {
140
+ transform: translateY(calc(0% + 10px)) translateX(20px);
141
+
142
+ &.left {
143
+ transform: translateY(calc(0% + 10px)) translateX(calc(-100% - 20px));
144
+
145
+ .popover-pointer {
146
+ top: 5px;
147
+ }
148
+ }
149
+
150
+ .signpost-wrap {
151
+ .popover-pointer {
152
+ top: 5px;
153
+ }
154
+ }
155
+ }
156
+
157
+ .signpost-wrap {
158
+ border-radius: 3px;
159
+ border: 1px solid var(--signpost-border-color);
160
+ background-color: var(--signpost-bgcolor);
161
+ position: relative;
162
+
163
+ .popover-pointer {
164
+ border-bottom: 12px solid transparent;
165
+ top: 50%;
166
+ transform: translateY(-50%);
167
+ border-right: 12px solid var(--signpost-border-color);
168
+ left: -12px;
169
+ height: 0;
170
+ width: 0;
171
+ position: absolute;
172
+
173
+ &::before {
174
+ border-bottom: 12px solid transparent;
175
+ top: 1px;
176
+ border-right: 12px solid var(--signpost-bgcolor);
177
+ left: 2px;
178
+ content: '';
179
+ height: 0;
180
+ width: 0;
181
+ position: absolute;
182
+ }
183
+ }
184
+
185
+ .signpost-content-header {
186
+ display: flex;
187
+ justify-content: flex-end;
188
+ position: absolute;
189
+ width: 100%;
190
+ background-color: inherit;
191
+ top: 0;
192
+
193
+ button {
194
+ line-height: 24px;
195
+
196
+ .close-icon {
197
+ width: 16px;
198
+ height: 16px;
199
+ }
200
+ }
201
+ }
202
+
203
+ .signpost-content-body {
204
+ padding: 24px;
205
+ max-height: 480px;
206
+ overflow-y: auto;
207
+ text-transform: none;
208
+ }
209
+ }
210
+ }
211
+ </style>
212
+
213
+ <style>
214
+ :root {
215
+ --signpost-bgcolor: #fff;
216
+ --signpost-border-color: #b3b3b3;
217
+ --signpost-color: #acbac3;
218
+ }
219
+ :root.dark-theme {
220
+ --signpost-bgcolor: #21333b;
221
+ --signpost-border-color: #000;
222
+ --signpost-color: #acbac3;
223
+ }
224
+ </style>
@@ -9,7 +9,6 @@
9
9
  <div
10
10
  :class="['heading-wrap', { group: props.accordion.hasChild }]"
11
11
  :style="{ paddingLeft: `${props.level * 24 || 10}px` }"
12
- @click="toggle"
13
12
  >
14
13
  <div class="flex-align-center heading">
15
14
  <div
@@ -23,7 +22,8 @@
23
22
  <button
24
23
  v-if="props.accordion.hasChild"
25
24
  :id="`${props.testId}-trigger-button`"
26
- class="btn-trigger"
25
+ class="btn-trigger max-width"
26
+ @click="toggle"
27
27
  >
28
28
  <atoms-the-icon
29
29
  :class="[
@@ -197,6 +197,10 @@ const onSelect = (item: UI_I_AccordionRecursion): void => {
197
197
  flex: auto;
198
198
  margin-right: 10px;
199
199
 
200
+ &.max-width {
201
+ width: max-content;
202
+ }
203
+
200
204
  //padding-right: 10px;
201
205
  .trigger-icon {
202
206
  width: 16px;
@@ -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>