bfg-common 1.4.498 → 1.4.500

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 (124) hide show
  1. package/assets/img/icons/icons-sprite-dark-1.svg +407 -407
  2. package/assets/img/icons/icons-sprite-dark-2.svg +343 -343
  3. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  4. package/assets/img/icons/icons-sprite-dark-4.svg +255 -255
  5. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  6. package/assets/img/icons/icons-sprite-dark-6.svg +94 -94
  7. package/assets/img/icons/icons-sprite-light-1.svg +407 -407
  8. package/assets/img/icons/icons-sprite-light-2.svg +343 -343
  9. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  10. package/assets/img/icons/icons-sprite-light-4.svg +255 -255
  11. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  12. package/assets/img/icons/icons-sprite-light-6.svg +94 -94
  13. package/components/atoms/TheIcon3.vue +50 -50
  14. package/components/atoms/modal/bySteps/BySteps.vue +253 -253
  15. package/components/atoms/stack/StackBlock.vue +185 -185
  16. package/components/atoms/table/dataGrid/DataGrid.vue +1633 -1633
  17. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +222 -222
  18. package/components/common/browse/blocks/lib/models/types.ts +1 -1
  19. package/components/common/browse/lib/models/interfaces.ts +5 -5
  20. package/components/common/context/lib/models/interfaces.ts +30 -30
  21. package/components/common/context/recursion/Recursion.vue +86 -86
  22. package/components/common/context/recursion/RecursionNew.vue +199 -199
  23. package/components/common/context/recursion/RecursionOld.vue +213 -213
  24. package/components/common/diagramMain/Diagram.vue +364 -364
  25. package/components/common/diagramMain/Header.vue +211 -211
  26. package/components/common/diagramMain/adapter/Adapter.vue +123 -123
  27. package/components/common/diagramMain/adapter/AdapterItems.vue +61 -61
  28. package/components/common/diagramMain/adapter/block/Block.vue +27 -27
  29. package/components/common/diagramMain/adapter/secondBlock/SecondBlock.vue +27 -27
  30. package/components/common/diagramMain/adapter/secondBlock/SecondBlockOld.vue +51 -51
  31. package/components/common/diagramMain/lib/config/initial.ts +50 -50
  32. package/components/common/diagramMain/lib/models/enums.ts +44 -44
  33. package/components/common/diagramMain/lib/models/types.ts +21 -21
  34. package/components/common/diagramMain/lib/utils/utils.ts +331 -331
  35. package/components/common/diagramMain/modals/ManagePhysicalAdaptersModal.vue +330 -330
  36. package/components/common/diagramMain/modals/editSettings/ConfirmTeamingSettingsModal.vue +40 -40
  37. package/components/common/diagramMain/modals/editSettings/EditSettings.vue +497 -497
  38. package/components/common/diagramMain/modals/editSettings/EditSettingsModal.vue +812 -812
  39. package/components/common/diagramMain/modals/editSettings/tabs/NetworkProperties.vue +214 -214
  40. package/components/common/diagramMain/modals/editSettings/tabs/Security.vue +189 -189
  41. package/components/common/diagramMain/modals/editSettings/tabs/SwitchProperties.vue +163 -163
  42. package/components/common/diagramMain/modals/editSettings/tabs/TeamingFailover.vue +175 -175
  43. package/components/common/diagramMain/modals/editSettings/tabs/TrafficShaping.vue +398 -398
  44. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +346 -346
  45. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +205 -205
  46. package/components/common/diagramMain/modals/lib/config/diagramConfig.ts +23 -23
  47. package/components/common/diagramMain/modals/lib/config/initial.ts +180 -180
  48. package/components/common/diagramMain/modals/lib/config/vmKernelAdapter.ts +90 -90
  49. package/components/common/diagramMain/modals/lib/mappers/mappers.ts +87 -87
  50. package/components/common/diagramMain/modals/lib/utils/index.ts +24 -24
  51. package/components/common/diagramMain/modals/migrateVmkernelAdapter/MigrateVmkernelAdapter.vue +537 -537
  52. package/components/common/diagramMain/modals/migrateVmkernelAdapter/lib/config/steps.ts +114 -114
  53. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/ConnectionSettings.vue +169 -169
  54. package/components/common/diagramMain/modals/migrateVmkernelAdapter/steps/SelectVmkernelAdapter.vue +159 -159
  55. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/common.ts +14 -14
  56. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/connectionSettings.ts +137 -137
  57. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/selectVmkernelAdapter.ts +52 -52
  58. package/components/common/diagramMain/modals/migrateVmkernelAdapter/validations/validations.ts +19 -19
  59. package/components/common/diagramMain/network/Network.vue +1 -1
  60. package/components/common/diagramMain/network/block/BlockOld.vue +64 -64
  61. package/components/common/diagramMain/network/noNetwork/NoNetwork.vue +12 -12
  62. package/components/common/diagramMain/network/noNetwork/NoNetworkOld.vue +61 -61
  63. package/components/common/diagramMain/network/secondBlock/SecondBlockOld.vue +60 -60
  64. package/components/common/diagramMain/port/Ports.vue +47 -47
  65. package/components/common/modals/confirmation/Confirmation.vue +70 -70
  66. package/components/common/vm/actions/add/Add.vue +617 -617
  67. package/components/common/vm/actions/clone/lib/config/steps.ts +129 -129
  68. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +267 -267
  69. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +254 -204
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +118 -118
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +163 -164
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +55 -55
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +0 -1
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/config/dropdownItems.ts +147 -147
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryNew.vue +0 -1
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +0 -1
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +44 -44
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +124 -125
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkOld.vue +2 -2
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/Location.vue +71 -0
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/{Location.vue → location/LocationOld.vue} +134 -145
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +63 -0
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +74 -0
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +95 -0
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressNew.vue +69 -69
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddressOld.vue +83 -84
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +56 -53
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +27 -27
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +0 -1
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/totalVideoMemory/TotalVideoMemoryNew.vue +54 -54
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/VmoptionsNew.vue +102 -102
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +75 -75
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +26 -26
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +57 -57
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/FirmwareNew.vue +42 -42
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/menu/MenuNew.vue +25 -25
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +171 -171
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +50 -50
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +141 -141
  104. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +140 -140
  105. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +30 -30
  106. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +30 -30
  107. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/folderSharing/FolderSharingNew.vue +30 -30
  108. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  109. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/KeymapNew.vue +39 -39
  110. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +100 -100
  111. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +38 -38
  112. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  113. package/components/common/vm/actions/common/select/storage/Storage.vue +130 -130
  114. package/components/common/vm/actions/common/select/storage/StorageOld.vue +129 -129
  115. package/components/common/vm/actions/common/select/storage/new/New.vue +159 -159
  116. package/components/common/vm/actions/editSettings/EditSettings.vue +214 -214
  117. package/components/common/vm/actions/editSettings/EditSettingsOld.vue +182 -182
  118. package/components/common/wizards/network/add/lib/config/steps.ts +464 -464
  119. package/composables/productNameLocal.ts +30 -30
  120. package/package.json +1 -1
  121. package/plugins/date.ts +233 -233
  122. package/plugins/recursion.ts +311 -311
  123. package/public/spice-console/lib/images/bitmap.js +203 -203
  124. package/public/spice-console/network/spicechannel.js +383 -383
@@ -1,125 +1,124 @@
1
- <template>
2
- <ui-stack-block
3
- :has-children="true"
4
- :removable="props.isRemovable"
5
- :test-id="`network-stack-block-${props.index}`"
6
- @remove="emits('remove')"
7
- >
8
- <template #stackBlockKey>
9
- <div
10
- :id="`vm-wizard-toggle-block-network-${props.index}`"
11
- :data-id="`vm-wizard-toggle-block-network-${props.index}`"
12
- class="vm-wizard-toggle-block-network flex-align-center"
13
- >
14
- <span class="title">{{ props.label }}</span>
15
- <ui-icon
16
- v-show="newNetworkInvalid"
17
- width="18px"
18
- height="18px"
19
- name="error-outline"
20
- />
21
- </div>
22
- </template>
23
- <template #stackBlockContent>
24
- <ui-select
25
- :id="`vm-wizard-network-field-${props.index}`"
26
- v-model="selectedLocation"
27
- width="auto"
28
- :items="props.locationOptions"
29
- :disabled="props.type === 'edit' && props.state !== 1"
30
- :test-id="`vm-wizard-network-field-${props.index}`"
31
- :class="`vm-wizard-network-field-${props.index} network-select`"
32
- :error-text="props.errorText"
33
- theme="light"
34
- @change="onChangeLocation"
35
- @click.stop
36
- />
37
- </template>
38
- <template #stackChildren>
39
- <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-adapter-type
40
- v-model:adapter-type="adapterType"
41
- :index="props.index"
42
- :disabled="props.type === 'edit' || props.isRunning"
43
- :error-validation-fields="props.errorValidationFields"
44
- @remove-error-by-title="emits('remove-error-by-title', $event)"
45
- />
46
- <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-mac-address
47
- v-model:mac-address="macAddress"
48
- v-model:mac-address-type="macAddressType"
49
- :index="props.index"
50
- :disabled="props.type === 'edit'"
51
- :error-validation-fields="props.errorValidationFields"
52
- @invalid="newNetworkInvalid = $event"
53
- @remove-error-by-title="emits('remove-error-by-title', $event)"
54
- />
55
- </template>
56
- </ui-stack-block>
57
-
58
- <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-location
59
- v-if="props.locationModalIsShow"
60
- :location-modal-is-show="props.locationModalIsShow"
61
- :networks-table="props.networksTable"
62
- @hide="emits('hide-location-modal')"
63
- @select="emits('select-location')"
64
- />
65
- </template>
66
-
67
- <script setup lang="ts">
68
- import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
69
- import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
70
- import type { UI_T_NetworkType } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/types'
71
- import type {
72
- UI_I_HTMLSelectElement,
73
- } from '~/lib/models/interfaces'
74
- import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
75
-
76
- const selectedLocation = defineModel<string>('selected-location')
77
- const adapterType = defineModel<string>('adapter-type', { required: true })
78
- const macAddress = defineModel<string>('mac-address', { required: true })
79
- const macAddressType = defineModel<string>('mac-address-type', {
80
- required: true,
81
- })
82
- const newNetworkInvalid = defineModel<boolean>('new-network-invalid', {
83
- required: true,
84
- })
85
-
86
- const props = defineProps<{
87
- index: number
88
- type: UI_T_NetworkType
89
- networksTable: UI_I_NetworkTableItem[]
90
- errorValidationFields: UI_I_ErrorValidationField[]
91
- isRemovable: boolean
92
- label: string
93
- errorText: string
94
- typeError: string
95
- locationOptions: UI_I_OptionItem[]
96
- isRunning: boolean
97
- locationModalIsShow: boolean
98
- state?: string | number
99
- }>()
100
-
101
- const emits = defineEmits<{
102
- (event: 'remove'): void
103
- (event: 'remove-error-by-title', value: string): void
104
- (event: 'change-location', value: UI_I_HTMLSelectElement): void
105
- (event: 'hide-location-modal'): void
106
- (event: 'select-location'): void
107
- }>()
108
-
109
- const onChangeLocation = (data: UI_T_SelectedValue): void => {
110
- emits('change-location', { target: { value: data } })
111
- }
112
- </script>
113
-
114
- <style scoped lang="scss">
115
- .title {
116
- margin-right: 10px;
117
- }
118
-
119
- :deep(.network-select .ui-main-select-toggle) {
120
- display: flex;
121
- justify-content: space-between;
122
- width: 196px;
123
- //background-color: #ffffff;
124
- }
125
- </style>
1
+ <template>
2
+ <ui-stack-block
3
+ :has-children="true"
4
+ :removable="props.isRemovable"
5
+ :test-id="`network-stack-block-${props.index}`"
6
+ @remove="emits('remove')"
7
+ >
8
+ <template #stackBlockKey>
9
+ <div
10
+ :id="`vm-wizard-toggle-block-network-${props.index}`"
11
+ :data-id="`vm-wizard-toggle-block-network-${props.index}`"
12
+ class="vm-wizard-toggle-block-network flex-align-center"
13
+ >
14
+ <span class="title">{{ props.label }}</span>
15
+ <ui-icon
16
+ v-show="newNetworkInvalid"
17
+ width="18px"
18
+ height="18px"
19
+ name="error-outline"
20
+ />
21
+ </div>
22
+ </template>
23
+ <template #stackBlockContent>
24
+ <ui-select
25
+ :id="`vm-wizard-network-field-${props.index}`"
26
+ v-model="selectedLocation"
27
+ width="auto"
28
+ :items="props.locationOptions"
29
+ :disabled="props.type === 'edit' && props.state !== 1"
30
+ :test-id="`vm-wizard-network-field-${props.index}`"
31
+ :class="`vm-wizard-network-field-${props.index} network-select`"
32
+ :error-text="props.errorText"
33
+ @change="onChangeLocation"
34
+ @click.stop
35
+ />
36
+ </template>
37
+ <template #stackChildren>
38
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-adapter-type
39
+ v-model:adapter-type="adapterType"
40
+ :index="props.index"
41
+ :disabled="props.type === 'edit' || props.isRunning"
42
+ :error-validation-fields="props.errorValidationFields"
43
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
44
+ />
45
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-mac-address
46
+ v-model:mac-address="macAddress"
47
+ v-model:mac-address-type="macAddressType"
48
+ :index="props.index"
49
+ :disabled="props.type === 'edit'"
50
+ :error-validation-fields="props.errorValidationFields"
51
+ @invalid="newNetworkInvalid = $event"
52
+ @remove-error-by-title="emits('remove-error-by-title', $event)"
53
+ />
54
+ </template>
55
+ </ui-stack-block>
56
+
57
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-location
58
+ v-if="props.locationModalIsShow"
59
+ :location-modal-is-show="props.locationModalIsShow"
60
+ :networks-table="props.networksTable"
61
+ @hide="emits('hide-location-modal')"
62
+ @select="emits('select-location', $event)"
63
+ />
64
+ </template>
65
+
66
+ <script setup lang="ts">
67
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
68
+ import type { UI_I_ErrorValidationField } from '~/lib/models/store/interfaces'
69
+ import type { UI_T_NetworkType } from '~/components/common/vm/actions/common/customizeHardware/virtualHardware/lib/models/types'
70
+ import type {
71
+ UI_I_HTMLSelectElement,
72
+ } from '~/lib/models/interfaces'
73
+ import type { UI_I_OptionItem } from '~/components/atoms/lib/models/interfaces'
74
+
75
+ const selectedLocation = defineModel<string>('selected-location')
76
+ const adapterType = defineModel<string>('adapter-type', { required: true })
77
+ const macAddress = defineModel<string>('mac-address', { required: true })
78
+ const macAddressType = defineModel<string>('mac-address-type', {
79
+ required: true,
80
+ })
81
+ const newNetworkInvalid = defineModel<boolean>('new-network-invalid', {
82
+ required: true,
83
+ })
84
+
85
+ const props = defineProps<{
86
+ index: number
87
+ type: UI_T_NetworkType
88
+ networksTable: UI_I_NetworkTableItem[]
89
+ errorValidationFields: UI_I_ErrorValidationField[]
90
+ isRemovable: boolean
91
+ label: string
92
+ errorText: string
93
+ typeError: string
94
+ locationOptions: UI_I_OptionItem[]
95
+ isRunning: boolean
96
+ locationModalIsShow: boolean
97
+ state?: string | number
98
+ }>()
99
+
100
+ const emits = defineEmits<{
101
+ (event: 'remove'): void
102
+ (event: 'remove-error-by-title', value: string): void
103
+ (event: 'change-location', value: UI_I_HTMLSelectElement): void
104
+ (event: 'hide-location-modal'): void
105
+ (event: 'select-location', value: UI_I_NetworkTableItem): void
106
+ }>()
107
+
108
+ const onChangeLocation = (data: UI_T_SelectedValue): void => {
109
+ emits('change-location', { target: { value: data } })
110
+ }
111
+ </script>
112
+
113
+ <style scoped lang="scss">
114
+ .title {
115
+ margin-right: 10px;
116
+ }
117
+
118
+ :deep(.network-select .ui-main-select-toggle) {
119
+ display: flex;
120
+ justify-content: space-between;
121
+ width: 196px;
122
+ //background-color: #ffffff;
123
+ }
124
+ </style>
@@ -79,7 +79,7 @@
79
79
  :location-modal-is-show="props.locationModalIsShow"
80
80
  :networks-table="props.networksTable"
81
81
  @hide="emits('hide-location-modal')"
82
- @select="emits('select-location')"
82
+ @select="emits('select-location', $event)"
83
83
  />
84
84
  </div>
85
85
  </template>
@@ -119,7 +119,7 @@ const emits = defineEmits<{
119
119
  (event: 'remove-error-by-title', value: string): void
120
120
  (event: 'change-location', value: UI_I_HTMLSelectElement): void
121
121
  (event: 'hide-location-modal'): void
122
- (event: 'select-location'): void
122
+ (event: 'select-location', value: UI_I_NetworkTableItem): void
123
123
  }>()
124
124
 
125
125
  </script>
@@ -0,0 +1,71 @@
1
+ <template>
2
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-location-new
3
+ v-if="isNewView"
4
+ :location-modal-is-show="props.locationModalIsShow"
5
+ :networks-table="props.networksTable"
6
+ :errors="errors"
7
+ @submit="onSubmitLocationModal"
8
+ @select="onSelectLocation"
9
+ @remove-errors="onRemoveValidationErrors"
10
+ @hide="onHideLocationModal"
11
+ />
12
+ <common-vm-actions-common-customize-hardware-virtual-hardware-new-network-location-old
13
+ v-else
14
+ v-model:location-filter="locationFilter"
15
+ :location-modal-is-show="props.locationModalIsShow"
16
+ :networks-table="props.networksTable"
17
+ :errors="errors"
18
+ @submit="onSubmitLocationModal"
19
+ @select="onSelectLocation"
20
+ @remove-errors="onRemoveValidationErrors"
21
+ @hide="onHideLocationModal"
22
+ />
23
+ </template>
24
+
25
+ <script setup lang="ts">
26
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
27
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
28
+
29
+ const props = defineProps<{
30
+ locationModalIsShow: boolean
31
+ networksTable: UI_I_NetworkTableItem[]
32
+ }>()
33
+ const emits = defineEmits<{
34
+ (event: 'hide'): void
35
+ (event: 'select', value: UI_I_NetworkTableItem): void
36
+ }>()
37
+
38
+ const { $store }: any = useNuxtApp()
39
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
40
+
41
+ const localization = computed<UI_I_Localization>(() => useLocal())
42
+
43
+ const onSubmitLocationModal = (): void => {
44
+ if (selectedLocation.value === null) {
45
+ errors.value = [localization.value.common.noNetworkSelected]
46
+ return
47
+ }
48
+ emits('select', selectedLocation.value)
49
+ }
50
+ const onHideLocationModal = (): void => {
51
+ emits('hide')
52
+ }
53
+
54
+ const locationFilter = ref<string>('')
55
+
56
+ const selectedLocation = ref<UI_I_NetworkTableItem | null>(null)
57
+ const getNetworkByName = (name: string): UI_I_NetworkTableItem | null => {
58
+ return props.networksTable?.find((network) => network.name === name) || null
59
+ }
60
+ const onSelectLocation = (name: string): void => {
61
+ selectedLocation.value = getNetworkByName(name)
62
+ }
63
+
64
+ const errors = ref<string[]>([])
65
+ const onRemoveValidationErrors = (): void => {
66
+ errors.value = []
67
+ }
68
+ </script>
69
+
70
+ <style scoped lang="scss">
71
+ </style>
@@ -1,145 +1,134 @@
1
- <template>
2
- <div>
3
- <Teleport to="body">
4
- <atoms-modal
5
- class="network-modal"
6
- :show="props.locationModalIsShow"
7
- :title="localization.common.selectNetwork"
8
- test-id="select-network-modal"
9
- @submit="onSubmitLocationModal"
10
- @hide="onHideLocationModal"
11
- >
12
- <template #modalBody>
13
- <atoms-alert
14
- v-show="errors.length"
15
- status="alert-danger"
16
- :items="errors"
17
- test-id="location-alert"
18
- @remove="onRemoveValidationErrors"
19
- />
20
- <div class="network-select-dialog-content">
21
- <div class="k-header k-grid-toolbar flex-justify-end">
22
- <div class="filter-input pull-right flex">
23
- <button
24
- id="location-filter-button"
25
- data-id="location-filter-button"
26
- class="nav-icon fa fa-filter filter-button"
27
- >
28
- <atoms-the-icon
29
- class="filter-icon"
30
- fill="#4c5356"
31
- name="filter"
32
- />
33
- </button>
34
- <input
35
- id="location-filter"
36
- v-model="locationFilter"
37
- data-id="location-filter-input"
38
- type="text"
39
- :placeholder="localization.common.filter"
40
- />
41
- </div>
42
- </div>
43
- <atoms-table-simple-table
44
- :head-items="tagsHeadItems"
45
- :body-items="tagsBodyItems"
46
- editable
47
- @select="onSelectLocation"
48
- />
49
- </div>
50
- </template>
51
- </atoms-modal>
52
- </Teleport>
53
- </div>
54
- </template>
55
-
56
- <script setup lang="ts">
57
- import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
58
- import type { UI_I_Localization } from '~/lib/models/interfaces'
59
- import type {
60
- UI_I_TableHeadItem,
61
- UI_I_TableBodyItem,
62
- } from '~/components/atoms/table/simpleTable/lib/models/interfaces'
63
-
64
- const localization = computed<UI_I_Localization>(() => useLocal())
65
-
66
- const props = defineProps<{
67
- locationModalIsShow: boolean
68
- networksTable: UI_I_NetworkTableItem[]
69
- }>()
70
- const emits = defineEmits<{
71
- (event: 'hide'): void
72
- (event: 'select', value: UI_I_NetworkTableItem): void
73
- }>()
74
-
75
- const onSubmitLocationModal = (): void => {
76
- if (selectedLocation.value === null) {
77
- errors.value = [localization.value.common.noNetworkSelected]
78
- return
79
- }
80
- emits('select', selectedLocation.value)
81
- }
82
- const onHideLocationModal = (): void => {
83
- emits('hide')
84
- }
85
-
86
- const locationFilter = ref<string>('')
87
- const tagsHeadItems = ref<UI_I_TableHeadItem[]>([
88
- { text: localization.value.common.name },
89
- { text: localization.value.common.nsxPortGroupId },
90
- { text: localization.value.common.distributedSwitch },
91
- ])
92
- const tagsBodyItemsDefault = ref<UI_I_TableBodyItem[][]>([])
93
- const tagsBodyItems = computed<UI_I_TableBodyItem[][]>(() => {
94
- const term = locationFilter.value.trim().toLowerCase()
95
- return tagsBodyItemsDefault.value.filter((row) => {
96
- return row.some((item) => item.text.trim().toLowerCase().includes(term))
97
- })
98
- })
99
- watch(
100
- () => props.networksTable,
101
- (newValue) => {
102
- tagsBodyItemsDefault.value = []
103
- newValue?.forEach((network) => {
104
- tagsBodyItemsDefault.value.push([
105
- { text: network.name, editable: false, testId: `network-${network.name}` },
106
- { text: '--', editable: false },
107
- { text: '--', editable: false },
108
- ])
109
- })
110
- },
111
- { immediate: true }
112
- )
113
-
114
- const selectedLocation = ref<UI_I_NetworkTableItem | null>(null)
115
- const getNetworkByName = (name: string): UI_I_NetworkTableItem | null => {
116
- return props.networksTable?.find((network) => network.name === name) || null
117
- }
118
- const onSelectLocation = (_key: number, value: UI_I_TableBodyItem[]): void => {
119
- const networkName = value[0].text
120
- selectedLocation.value = getNetworkByName(networkName)
121
- }
122
-
123
- const errors = ref<string[]>([])
124
- const onRemoveValidationErrors = (): void => {
125
- errors.value = []
126
- }
127
- </script>
128
-
129
- <style scoped lang="scss">
130
- .network-select-dialog-content {
131
- min-height: 300px;
132
- margin-top: 10px;
133
-
134
- .filter-button {
135
- border-style: none;
136
- background-color: transparent;
137
- padding: 0;
138
-
139
- .filter-icon {
140
- width: 18px;
141
- height: 18px;
142
- }
143
- }
144
- }
145
- </style>
1
+ <template>
2
+ <div>
3
+ <Teleport to="body">
4
+ <atoms-modal
5
+ class="network-modal"
6
+ :show="props.locationModalIsShow"
7
+ :title="localization.common.selectNetwork"
8
+ test-id="select-network-modal"
9
+ @submit="emits('submit')"
10
+ @hide="emits('hide')"
11
+ >
12
+ <template #modalBody>
13
+ <atoms-alert
14
+ v-show="props.errors.length"
15
+ status="alert-danger"
16
+ :items="props.errors"
17
+ test-id="location-alert"
18
+ @remove="emits('remove-errors')"
19
+ />
20
+ <div class="network-select-dialog-content">
21
+ <div class="k-header k-grid-toolbar flex-justify-end">
22
+ <div class="filter-input pull-right flex">
23
+ <button
24
+ id="location-filter-button"
25
+ data-id="location-filter-button"
26
+ class="nav-icon fa fa-filter filter-button"
27
+ >
28
+ <atoms-the-icon
29
+ class="filter-icon"
30
+ fill="#4c5356"
31
+ name="filter"
32
+ />
33
+ </button>
34
+ <input
35
+ id="location-filter"
36
+ v-model="locationFilter"
37
+ data-id="location-filter-input"
38
+ type="text"
39
+ :placeholder="localization.common.filter"
40
+ />
41
+ </div>
42
+ </div>
43
+ <atoms-table-simple-table
44
+ :head-items="headItems"
45
+ :body-items="bodyItems"
46
+ editable
47
+ @select="onSelect"
48
+ />
49
+ </div>
50
+ </template>
51
+ </atoms-modal>
52
+ </Teleport>
53
+ </div>
54
+ </template>
55
+
56
+ <script setup lang="ts">
57
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
58
+ import type { UI_I_NetworkTableItem } from '~/lib/models/store/network/interfaces'
59
+ import type {
60
+ UI_I_TableHeadItem,
61
+ UI_I_TableBodyItem,
62
+ } from '~/components/atoms/table/simpleTable/lib/models/interfaces'
63
+
64
+ const locationFilter = defineModel<string>('location-filter', {
65
+ required: true,
66
+ })
67
+
68
+ const props = defineProps<{
69
+ locationModalIsShow: boolean
70
+ networksTable: UI_I_NetworkTableItem[]
71
+ errors: string[]
72
+ }>()
73
+ const emits = defineEmits<{
74
+ (event: 'submit'): void
75
+ (event: 'select', value: string): void
76
+ (event: 'remove-errors'): void
77
+ (event: 'hide'): void
78
+ }>()
79
+
80
+ const localization = computed<UI_I_Localization>(() => useLocal())
81
+
82
+ const headItems = ref<UI_I_TableHeadItem[]>([
83
+ { text: localization.value.common.name },
84
+ { text: localization.value.common.nsxPortGroupId },
85
+ { text: localization.value.common.distributedSwitch },
86
+ ])
87
+ const bodyItemsDefault = ref<UI_I_TableBodyItem[][]>([])
88
+ const bodyItems = computed<UI_I_TableBodyItem[][]>(() => {
89
+ const term = locationFilter.value.trim().toLowerCase()
90
+ return bodyItemsDefault.value.filter((row) => {
91
+ return row.some((item) => item.text.trim().toLowerCase().includes(term))
92
+ })
93
+ })
94
+ watch(
95
+ () => props.networksTable,
96
+ (newValue) => {
97
+ bodyItemsDefault.value = []
98
+ newValue?.forEach((network) => {
99
+ bodyItemsDefault.value.push([
100
+ {
101
+ text: network.name,
102
+ editable: false,
103
+ testId: `network-${network.name}`,
104
+ },
105
+ { text: '--', editable: false },
106
+ { text: '--', editable: false },
107
+ ])
108
+ })
109
+ },
110
+ { immediate: true }
111
+ )
112
+
113
+ const onSelect = (_key: number, value: UI_I_TableBodyItem[]): void => {
114
+ emits('select', value[0].text)
115
+ }
116
+ </script>
117
+
118
+ <style scoped lang="scss">
119
+ .network-select-dialog-content {
120
+ min-height: 300px;
121
+ margin-top: 10px;
122
+
123
+ .filter-button {
124
+ border-style: none;
125
+ background-color: transparent;
126
+ padding: 0;
127
+
128
+ .filter-icon {
129
+ width: 18px;
130
+ height: 18px;
131
+ }
132
+ }
133
+ }
134
+ </style>