bfg-common 1.1.2 → 1.1.4

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 (67) 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/nav/NavBar.vue +116 -116
  6. package/components/atoms/nav/VerticalNavBar.vue +89 -89
  7. package/components/atoms/notificationBar/NotificationBar.vue +174 -174
  8. package/components/atoms/perPage/PerPage.vue +52 -52
  9. package/components/atoms/popup/SimplePopup.vue +90 -90
  10. package/components/atoms/step/VerticalStep.vue +104 -104
  11. package/components/atoms/switch/Switch.vue +107 -107
  12. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +204 -204
  13. package/components/atoms/table/dataGrid/DataGridPage.vue +189 -189
  14. package/components/atoms/tabs/Tabs.vue +189 -189
  15. package/components/atoms/tooltip/Signpost.vue +224 -224
  16. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  17. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  18. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  19. package/components/common/browse/Browse.vue +182 -182
  20. package/components/common/browse/blocks/Title.vue +66 -66
  21. package/components/common/diagramMain/adapter/AdapterItem.vue +227 -227
  22. package/components/common/diagramMain/adapter/AdapterItems.vue +57 -57
  23. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  24. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  25. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  26. package/components/common/diagramMain/network/Contents.vue +238 -238
  27. package/components/common/feedback/Buttons.vue +232 -232
  28. package/components/common/feedback/Message.vue +468 -468
  29. package/components/common/feedback/VisitPortal.vue +54 -54
  30. package/components/common/help/navbar/left/Left.vue +139 -139
  31. package/components/common/help/navbar/left/utils/constructAccordion.ts +27 -27
  32. package/components/common/home/Card.vue +63 -0
  33. package/components/common/home/ResourceBlock.vue +117 -0
  34. package/components/common/home/StatusContent.vue +47 -0
  35. package/components/common/home/alertsTable/AlertsTable.vue +105 -0
  36. package/components/common/home/alertsTable/config/config.ts +61 -0
  37. package/components/common/home/alertsTable/models/enums.ts +11 -0
  38. package/components/common/home/alertsTable/models/interfaces.ts +19 -0
  39. package/components/common/home/alertsTable/models/types.ts +18 -0
  40. package/components/common/home/config/configResourceMeterBlock.ts +25 -0
  41. package/components/common/home/models/interfaces.ts +59 -0
  42. package/components/common/home/models/types.ts +18 -0
  43. package/components/common/home/servicesTable/ServicesTable.vue +79 -0
  44. package/components/common/home/servicesTable/config/config.ts +62 -0
  45. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +359 -359
  46. package/components/common/modals/Rename.vue +165 -165
  47. package/components/common/perPage/PerPage.vue +51 -51
  48. package/components/common/recursionTree/RecursionTree.vue +201 -201
  49. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +373 -373
  50. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +123 -123
  51. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  52. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +131 -131
  53. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  54. package/models/store/storage/interfaces.ts +32 -32
  55. package/modules/fixContentBuild/index.ts +80 -84
  56. package/modules/fixContentBuild/utils/methods.ts +114 -117
  57. package/package.json +1 -1
  58. package/public/spice-console/application/codec.js +257 -257
  59. package/public/spice-console/lib/rasterEngine.js +907 -907
  60. package/public/spice-console/network/spicechannel.js +369 -369
  61. package/public/spice-console-minify/lib/decoder/dixie.min.js +4 -4
  62. package/public/spice-console-minify/lib/jgestures.min.js +24 -24
  63. package/public/spice-console-minify/lib/jquery-2.0.3.min.js +24 -24
  64. package/public/spice-console-minify/lib/jquery-mousewheel.min.js +11 -11
  65. package/public/spice-console-minify/lib/jquery-visibility.min.js +1 -1
  66. package/public/spice-console-minify/lib/lodash.4.0.0.min.js +5 -5
  67. package/utils/contentBuild.ts +34 -34
@@ -1,236 +1,236 @@
1
- <template>
2
- <div class="autocomplete" @click.stop>
3
- <div class="content-search">
4
- <div v-show="props.loading" class="loader">
5
- <atoms-loader-pre-loader
6
- id="loader"
7
- class="content-area__loading"
8
- :show="true"
9
- />
10
- </div>
11
- <div class="search-icon">
12
- <atoms-the-icon
13
- fill="#666"
14
- stroke-width="10"
15
- class="alert-icon search-icon"
16
- name="search"
17
- />
18
- </div>
19
- <input
20
- :id="`${props.testId}-search-input`"
21
- v-model.trim="search"
22
- type="text"
23
- class="search-input"
24
- :placeholder="props.placeholder"
25
- @input="onSearch"
26
- />
27
- </div>
28
- <div
29
- v-show="isShow"
30
- :class="['content-filtered', { active: items.length }]"
31
- >
32
- <ul class="dropdown-menu filtered-items">
33
- <li
34
- v-for="(item, key) in items"
35
- :key="`${item}_${key}`"
36
- :class="['item', { active: key === selectedTabIndex }]"
37
- @mouseenter="selectedTabIndex = key"
38
- @click="onSelect(key)"
39
- >
40
- {{ item.firstText }}<b>{{ item.secondText }}</b
41
- >{{ item.thirdText }}
42
- </li>
43
- </ul>
44
- </div>
45
- </div>
46
- </template>
47
-
48
- <script setup lang="ts">
49
- const props = withDefaults(
50
- defineProps<{
51
- testId?: string
52
- placeholder: string
53
- items: string[]
54
- loading: boolean
55
- ms?: number
56
- }>(),
57
- {
58
- testId: 'ui-autocomplete',
59
- ms: 500,
60
- }
61
- )
62
-
63
- const emits = defineEmits<{
64
- (event: 'search', value: string): void
65
- (event: 'select', value: string): void
66
- }>()
67
-
68
- const search = ref<string>('')
69
-
70
- let timer: NodeJS.Timeout
71
- const onSearch = (): void => {
72
- clearTimeout(timer)
73
- timer = setTimeout(
74
- (value) => {
75
- emits('search', value)
76
- },
77
- props.ms,
78
- search.value
79
- )
80
- }
81
-
82
- const items = computed<any[]>(() => {
83
- return [...props.items].map((text) => {
84
- const term = search.value.toLowerCase()
85
- const texts = text.toLowerCase().split(term)
86
- return {
87
- firstText: texts[0],
88
- secondText: term,
89
- thirdText: texts[1],
90
- }
91
- })
92
- })
93
-
94
- const selectedTabIndex = ref<number>(0)
95
- const onSelect = (key: number): void => {
96
- search.value = props.items[key]
97
- emits('select', search.value)
98
- isHide.value = true
99
- }
100
-
101
- const isHide = ref<boolean>(false)
102
- const isShow = computed<boolean>(
103
- () => Boolean(items.value.length) && !isHide.value
104
- )
105
-
106
- const onKeyDown = (event: KeyboardEvent): void => {
107
- switch (event.code) {
108
- case 'ArrowUp':
109
- prevTabItem()
110
- break
111
- case 'ArrowDown':
112
- nextTabItem()
113
- break
114
- case 'Enter':
115
- onSelect(selectedTabIndex.value)
116
- break
117
- case 'Tab':
118
- isHide.value = true
119
- break
120
- }
121
- }
122
-
123
- const nextTabItem = (): void => {
124
- if (selectedTabIndex.value === items.value.length - 1)
125
- selectedTabIndex.value = 0
126
- else selectedTabIndex.value++
127
- }
128
-
129
- const prevTabItem = (): void => {
130
- if (selectedTabIndex.value === 0)
131
- selectedTabIndex.value = items.value.length - 1
132
- else selectedTabIndex.value--
133
- }
134
-
135
- watch(
136
- () => props.items,
137
- (value) => {
138
- if (value.length) {
139
- isHide.value = false
140
- }
141
- }
142
- )
143
- window.addEventListener('keydown', onKeyDown, true)
144
- watch(isHide, (value) => {
145
- if (!value) {
146
- window.addEventListener('keydown', onKeyDown, true)
147
- } else {
148
- window.removeEventListener('keydown', onKeyDown, true)
149
- }
150
- })
151
- </script>
152
-
153
- <style scoped lang="scss">
154
- .autocomplete {
155
- max-width: 180px;
156
- position: relative;
157
-
158
- .content-search {
159
- .loader {
160
- position: absolute;
161
- top: 3px;
162
- left: -6px;
163
- z-index: 1;
164
- height: 16px;
165
- width: 16px;
166
-
167
- #loader {
168
- height: 100%;
169
- width: 100%;
170
-
171
- :deep(.spinner-inverse) {
172
- min-width: auto;
173
- min-height: auto;
174
- width: 100%;
175
- height: 100%;
176
- }
177
- }
178
- }
179
- .search-icon {
180
- position: absolute;
181
- width: 17px;
182
- top: 2px;
183
- bottom: 0;
184
- }
185
- .search-input {
186
- background-color: white;
187
- padding: 0 6px 0 20px;
188
- }
189
- }
190
-
191
- .content-filtered {
192
- position: absolute;
193
- display: block;
194
- overflow-y: visible;
195
- height: auto;
196
- visibility: visible;
197
- will-change: transform;
198
- top: 0;
199
- left: 0;
200
- transform: translate3d(0px, 25px, 0px);
201
- width: 250px;
202
- z-index: 1000;
203
-
204
- &.active .filtered-items {
205
- max-height: 164px;
206
- visibility: visible;
207
- position: absolute;
208
- top: 100%;
209
- left: 0;
210
- min-width: 96px;
211
- max-width: 288px;
212
- border: 0.8px solid #ccc;
213
- padding: 9.6px 0;
214
- z-index: 1060;
215
- overflow: auto;
216
- width: 100%;
217
- margin: 1px 0 0;
218
-
219
- .item {
220
- line-height: 20px;
221
- padding: 5px 0 0 5px;
222
- color: #333;
223
- cursor: pointer;
224
- outline: unset;
225
-
226
- &.active,
227
- &:focus,
228
- &:hover {
229
- background-color: #2b5480;
230
- color: #fff;
231
- }
232
- }
233
- }
234
- }
235
- }
236
- </style>
1
+ <template>
2
+ <div class="autocomplete" @click.stop>
3
+ <div class="content-search">
4
+ <div v-show="props.loading" class="loader">
5
+ <atoms-loader-pre-loader
6
+ id="loader"
7
+ class="content-area__loading"
8
+ :show="true"
9
+ />
10
+ </div>
11
+ <div class="search-icon">
12
+ <atoms-the-icon
13
+ fill="#666"
14
+ stroke-width="10"
15
+ class="alert-icon search-icon"
16
+ name="search"
17
+ />
18
+ </div>
19
+ <input
20
+ :id="`${props.testId}-search-input`"
21
+ v-model.trim="search"
22
+ type="text"
23
+ class="search-input"
24
+ :placeholder="props.placeholder"
25
+ @input="onSearch"
26
+ />
27
+ </div>
28
+ <div
29
+ v-show="isShow"
30
+ :class="['content-filtered', { active: items.length }]"
31
+ >
32
+ <ul class="dropdown-menu filtered-items">
33
+ <li
34
+ v-for="(item, key) in items"
35
+ :key="`${item}_${key}`"
36
+ :class="['item', { active: key === selectedTabIndex }]"
37
+ @mouseenter="selectedTabIndex = key"
38
+ @click="onSelect(key)"
39
+ >
40
+ {{ item.firstText }}<b>{{ item.secondText }}</b
41
+ >{{ item.thirdText }}
42
+ </li>
43
+ </ul>
44
+ </div>
45
+ </div>
46
+ </template>
47
+
48
+ <script setup lang="ts">
49
+ const props = withDefaults(
50
+ defineProps<{
51
+ testId?: string
52
+ placeholder: string
53
+ items: string[]
54
+ loading: boolean
55
+ ms?: number
56
+ }>(),
57
+ {
58
+ testId: 'ui-autocomplete',
59
+ ms: 500,
60
+ }
61
+ )
62
+
63
+ const emits = defineEmits<{
64
+ (event: 'search', value: string): void
65
+ (event: 'select', value: string): void
66
+ }>()
67
+
68
+ const search = ref<string>('')
69
+
70
+ let timer: NodeJS.Timeout
71
+ const onSearch = (): void => {
72
+ clearTimeout(timer)
73
+ timer = setTimeout(
74
+ (value) => {
75
+ emits('search', value)
76
+ },
77
+ props.ms,
78
+ search.value
79
+ )
80
+ }
81
+
82
+ const items = computed<any[]>(() => {
83
+ return [...props.items].map((text) => {
84
+ const term = search.value.toLowerCase()
85
+ const texts = text.toLowerCase().split(term)
86
+ return {
87
+ firstText: texts[0],
88
+ secondText: term,
89
+ thirdText: texts[1],
90
+ }
91
+ })
92
+ })
93
+
94
+ const selectedTabIndex = ref<number>(0)
95
+ const onSelect = (key: number): void => {
96
+ search.value = props.items[key]
97
+ emits('select', search.value)
98
+ isHide.value = true
99
+ }
100
+
101
+ const isHide = ref<boolean>(false)
102
+ const isShow = computed<boolean>(
103
+ () => Boolean(items.value.length) && !isHide.value
104
+ )
105
+
106
+ const onKeyDown = (event: KeyboardEvent): void => {
107
+ switch (event.code) {
108
+ case 'ArrowUp':
109
+ prevTabItem()
110
+ break
111
+ case 'ArrowDown':
112
+ nextTabItem()
113
+ break
114
+ case 'Enter':
115
+ onSelect(selectedTabIndex.value)
116
+ break
117
+ case 'Tab':
118
+ isHide.value = true
119
+ break
120
+ }
121
+ }
122
+
123
+ const nextTabItem = (): void => {
124
+ if (selectedTabIndex.value === items.value.length - 1)
125
+ selectedTabIndex.value = 0
126
+ else selectedTabIndex.value++
127
+ }
128
+
129
+ const prevTabItem = (): void => {
130
+ if (selectedTabIndex.value === 0)
131
+ selectedTabIndex.value = items.value.length - 1
132
+ else selectedTabIndex.value--
133
+ }
134
+
135
+ watch(
136
+ () => props.items,
137
+ (value) => {
138
+ if (value.length) {
139
+ isHide.value = false
140
+ }
141
+ }
142
+ )
143
+ window.addEventListener('keydown', onKeyDown, true)
144
+ watch(isHide, (value) => {
145
+ if (!value) {
146
+ window.addEventListener('keydown', onKeyDown, true)
147
+ } else {
148
+ window.removeEventListener('keydown', onKeyDown, true)
149
+ }
150
+ })
151
+ </script>
152
+
153
+ <style scoped lang="scss">
154
+ .autocomplete {
155
+ max-width: 180px;
156
+ position: relative;
157
+
158
+ .content-search {
159
+ .loader {
160
+ position: absolute;
161
+ top: 3px;
162
+ left: -6px;
163
+ z-index: 1;
164
+ height: 16px;
165
+ width: 16px;
166
+
167
+ #loader {
168
+ height: 100%;
169
+ width: 100%;
170
+
171
+ :deep(.spinner-inverse) {
172
+ min-width: auto;
173
+ min-height: auto;
174
+ width: 100%;
175
+ height: 100%;
176
+ }
177
+ }
178
+ }
179
+ .search-icon {
180
+ position: absolute;
181
+ width: 17px;
182
+ top: 2px;
183
+ bottom: 0;
184
+ }
185
+ .search-input {
186
+ background-color: white;
187
+ padding: 0 6px 0 20px;
188
+ }
189
+ }
190
+
191
+ .content-filtered {
192
+ position: absolute;
193
+ display: block;
194
+ overflow-y: visible;
195
+ height: auto;
196
+ visibility: visible;
197
+ will-change: transform;
198
+ top: 0;
199
+ left: 0;
200
+ transform: translate3d(0px, 25px, 0px);
201
+ width: 250px;
202
+ z-index: 1000;
203
+
204
+ &.active .filtered-items {
205
+ max-height: 164px;
206
+ visibility: visible;
207
+ position: absolute;
208
+ top: 100%;
209
+ left: 0;
210
+ min-width: 96px;
211
+ max-width: 288px;
212
+ border: 0.8px solid #ccc;
213
+ padding: 9.6px 0;
214
+ z-index: 1060;
215
+ overflow: auto;
216
+ width: 100%;
217
+ margin: 1px 0 0;
218
+
219
+ .item {
220
+ line-height: 20px;
221
+ padding: 5px 0 0 5px;
222
+ color: #333;
223
+ cursor: pointer;
224
+ outline: unset;
225
+
226
+ &.active,
227
+ &:focus,
228
+ &:hover {
229
+ background-color: #2b5480;
230
+ color: #fff;
231
+ }
232
+ }
233
+ }
234
+ }
235
+ }
236
+ </style>