bfg-common 1.5.245 → 1.5.246

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 (139) hide show
  1. package/CODE_STYLE.md +109 -109
  2. package/assets/img/icons/icons-sprite-dark-3.svg +227 -227
  3. package/assets/img/icons/icons-sprite-dark-5.svg +488 -488
  4. package/assets/img/icons/icons-sprite-light-3.svg +227 -227
  5. package/assets/img/icons/icons-sprite-light-5.svg +488 -488
  6. package/components/atoms/TheIcon3.vue +50 -50
  7. package/components/atoms/perPage/PerPage.vue +58 -58
  8. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  9. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  10. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  11. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  12. package/components/common/backup/storage/actions/add/Add.vue +250 -250
  13. package/components/common/backup/storage/actions/add/New.vue +288 -283
  14. package/components/common/backup/storage/actions/add/Old.vue +116 -116
  15. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  16. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigure.vue +41 -41
  17. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigureNew.vue +304 -294
  18. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  19. package/components/common/backup/storage/actions/add/steps/readyComplete/lib/config/propertiesDetails.ts +242 -242
  20. package/components/common/backup/storage/actions/add/steps/typeMode/TypeModeNew.vue +12 -3
  21. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  22. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  23. package/components/common/context/lib/models/interfaces.ts +31 -31
  24. package/components/common/diagramMain/DiagramMain.vue +897 -897
  25. package/components/common/diagramMain/Header.vue +214 -214
  26. package/components/common/layout/theHeader/feedback/new/additionalDetails/Headline.vue +8 -67
  27. package/components/common/layout/theHeader/feedback/new/subtitle/Subtitle.vue +8 -72
  28. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  29. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  30. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  31. package/components/common/pages/home/headline/Headline.vue +45 -45
  32. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  33. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  34. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  35. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  36. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  37. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  38. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  39. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  40. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  41. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  42. package/components/common/pages/packages/Packages.vue +208 -208
  43. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  44. package/components/common/pages/tasks/table/Table.vue +15 -7
  45. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +15 -9
  46. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  47. package/components/common/recursionTree/RecursionTree.vue +223 -223
  48. package/components/common/select/button/ButtonDropdown.vue +108 -108
  49. package/components/common/spiceConsole/Drawer.vue +377 -377
  50. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  51. package/components/common/tooltip/Help.vue +132 -0
  52. package/components/common/tooltip/lib/models/types.ts +1 -0
  53. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  54. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  55. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  56. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  57. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -321
  59. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  60. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  61. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +10 -99
  62. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +52 -3
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/model/ModelNew.vue +32 -151
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  71. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -385
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -154
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationNew.vue +75 -75
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -85
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesNew.vue +40 -40
  92. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  93. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  94. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  95. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  96. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +31 -31
  97. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +31 -31
  98. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  99. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  100. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +128 -128
  101. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  102. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +39 -39
  103. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  104. package/components/common/vm/actions/common/lib/utils/capabilities.ts +52 -52
  105. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  106. package/components/common/vm/actions/common/select/computeResource/treeView/New.vue +44 -44
  107. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  108. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  109. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  110. package/components/common/vm/actions/common/select/name/New.vue +10 -70
  111. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  112. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  113. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  114. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  115. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  116. package/components/common/wizards/datastore/add/New.vue +8 -3
  117. package/components/common/wizards/datastore/add/steps/nameAndConfigure/NameAndConfigureNew.vue +17 -6
  118. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +9 -3
  119. package/components/common/wizards/datastore/add/steps/typeMode/TypeModeNew.vue +8 -3
  120. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  121. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  122. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  123. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +135 -135
  124. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  125. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  126. package/composables/productNameLocal.ts +30 -30
  127. package/composables/useAppVersion.ts +21 -21
  128. package/package.json +1 -1
  129. package/plugins/date.ts +233 -233
  130. package/plugins/panelStates.ts +70 -70
  131. package/plugins/text.ts +59 -59
  132. package/public/spice-console/lib/images/bitmap.js +203 -203
  133. package/public/spice-console/network/spicechannel.js +387 -387
  134. package/store/main/mutations.ts +7 -7
  135. package/store/main/state.ts +7 -7
  136. package/store/tasks/mappers/recentTasks.ts +64 -64
  137. package/components/common/backup/storage/actions/add/steps/common/tooltipInfo/TooltipInfo.vue +0 -94
  138. package/components/common/pages/tasks/table/errorInfo/ErrorInfo.vue +0 -128
  139. package/components/common/wizards/datastore/add/steps/common/tooltipInfo/TooltipInfo.vue +0 -93
@@ -1,5 +1,5 @@
1
- export interface UI_I_DeviceOption {
2
- label: string
3
- value: any
4
- disabled?: boolean
5
- }
1
+ export interface UI_I_DeviceOption {
2
+ label: string
3
+ value: any
4
+ disabled?: boolean
5
+ }
@@ -0,0 +1,132 @@
1
+ <template>
2
+ <div class="flex-align-center relative">
3
+ <ui-icon
4
+ :id="`${props.helpId}`"
5
+ :data-id="`${props.testId}-show-help-icon`"
6
+ name="info"
7
+ :width="props.iconWidth || '16'"
8
+ :height="props.iconHeight || '16'"
9
+ :class="['help-icon cursor-pointer', {active: isShowHelp}, {disabled: props.isDisabled}]"
10
+ @click.stop="isShowHelp = !isShowHelp"
11
+ />
12
+ <ui-popup-window
13
+ v-model="isShowHelp"
14
+ :left="props.dropdownLeft"
15
+ :right="props.dropdownRight"
16
+ :top="props.dropdownTop"
17
+ :elem-id="props.helpId"
18
+ :width="props.dropdownWidth || 'max-content'"
19
+ :max-height="props.dropdownMaxHeight || 'unset'"
20
+
21
+ >
22
+ <div class="help-content" :style="{ width: props.dropdownWidth }">
23
+ <div class="headline">
24
+ <ui-icon :name="tooltipStatus" width="16" height="16" />
25
+ <h3 class="help-title">
26
+ {{ props.title || localization.mainNavigation.help }}
27
+ </h3>
28
+ <ui-icon
29
+ name="close"
30
+ width="16"
31
+ height="16"
32
+ class="help-close-icon cursor-pointer"
33
+ @click.stop="isShowHelp = false"
34
+ />
35
+ </div>
36
+
37
+ <slot />
38
+
39
+ <p v-if="props.helpText" class="help-text">
40
+ {{ props.helpText }}
41
+ </p>
42
+ </div>
43
+ </ui-popup-window>
44
+ </div>
45
+ </template>
46
+ <script setup lang="ts">
47
+
48
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
49
+ import { T_TooltipHelpStatus } from '~/components/common/tooltip/lib/models/types'
50
+
51
+ const props = defineProps<{
52
+ testId: string,
53
+ helpId: string,
54
+ dropdownWidth?: string
55
+ helpText?: string,
56
+ iconWidth?: string,
57
+ iconHeight?: string,
58
+ dropdownMaxHeight?: string,
59
+ dropdownLeft?: boolean,
60
+ dropdownRight?: boolean,
61
+ dropdownTop?: boolean,
62
+ isDisabled?: boolean,
63
+ title?: string,
64
+ status?: T_TooltipHelpStatus
65
+ }>()
66
+
67
+ const localization = computed<UI_I_Localization>(() => useLocal())
68
+
69
+ const isShowHelp = ref<boolean>(false)
70
+
71
+ const tooltipStatus = computed<string>(() => props.status === 'error' ? 'error' : 'info-2')
72
+
73
+ </script>
74
+ <style>
75
+ :root {
76
+ --help-color: #4d5d69;
77
+ --help-icon-hover-color: #4d5d69;
78
+ --help-icon-active-color: #008fd6;
79
+ --help-close-icon-color: #182531;
80
+ }
81
+ :root.dark-theme {
82
+ --help-color: #e9eaec;
83
+ --help-icon-hover-color: #e9eaec;
84
+ --help-icon-active-color: #2ba2de;
85
+ --help-close-icon-color: #e9eaec;
86
+ }
87
+ </style>
88
+ <style scoped lang="scss">
89
+ .help-icon {
90
+ color: #9da6ad; // for light and dark
91
+
92
+ &:hover {
93
+ color: var(--help-icon-hover-color);
94
+ }
95
+ &.active {
96
+ color: var(--help-icon-active-color);
97
+ }
98
+ &.disabled {
99
+ color: #bdc3c7;
100
+ pointer-events: none;
101
+ }
102
+ }
103
+ .help-content {
104
+ padding: 16px;
105
+
106
+ .headline {
107
+ display: flex;
108
+ align-items: center;
109
+ gap: 8px;
110
+ margin-bottom: 12px;
111
+
112
+ .help-title {
113
+ flex: 1;
114
+ font-size: 14px;
115
+ font-weight: 500;
116
+ line-height: 16.94px;
117
+ color: var(--help-color);
118
+ }
119
+ .help-close-icon {
120
+ color: var(--help-close-icon-color)
121
+ }
122
+ }
123
+
124
+ :deep(.help-text) {
125
+ font-size: 13px;
126
+ line-height: 15.73px;
127
+ color: var(--help-color);
128
+ word-break: break-word;
129
+ white-space: normal;
130
+ }
131
+ }
132
+ </style>
@@ -0,0 +1 @@
1
+ export type T_TooltipHelpStatus = 'info' | 'error'
@@ -1,72 +1,72 @@
1
- <template>
2
- <common-vm-actions-add-folder-tree-view-new
3
- v-if="isNewView"
4
- :nodes="nodes"
5
- :loading="loading"
6
- @show-nodes="showNodes"
7
- @select-node="selectNode"
8
- />
9
- <common-vm-actions-add-folder-tree-view-old
10
- v-else
11
- :nodes="nodes"
12
- :loading="loading"
13
- @show-nodes="showNodes"
14
- @select-node="selectNode"
15
- />
16
- </template>
17
-
18
- <script setup lang="ts">
19
- import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
20
-
21
- const props = defineProps<{
22
- dataCenter: UI_I_TreeNode
23
- }>()
24
- const emits = defineEmits<{
25
- (event: 'select-node', value: UI_I_TreeNode): void
26
- }>()
27
-
28
- const { $store }: any = useNuxtApp()
29
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
30
-
31
- const nodes = computed<UI_I_TreeNode[]>(
32
- () => $store.getters['inventory/getFolderTree'] || []
33
- )
34
- const loading = ref<boolean>(false)
35
- const getTree = async (): Promise<void> => {
36
- loading.value = true
37
- await $store.dispatch('inventory/A_GET_FOLDER_TREE', null)
38
- loading.value = false
39
- }
40
- getTree().then(() => {
41
- selectNode(props.dataCenter)
42
- })
43
-
44
- const showNodes = ({
45
- node,
46
- cb,
47
- }: {
48
- node: UI_I_TreeNode
49
- cb: () => void
50
- }): void => {
51
- const payload: any = { node, treeName: 'folderTree' }
52
- $store.dispatch('inventory/A_SHOW_NODE', payload)
53
- cb()
54
- }
55
- const selectNode = (node: UI_I_TreeNode): void => {
56
- const payload: any = {
57
- node,
58
- treeName: 'folderTree',
59
- doSelect: false,
60
- }
61
- $store.dispatch('inventory/A_SELECT_NODE', payload)
62
-
63
- emits('select-node', node)
64
- }
65
-
66
- onUnmounted(() => {
67
- $store.dispatch('inventory/A_CLEAR_FOLDER_TREE', null)
68
- })
69
- </script>
70
-
71
- <style scoped lang="scss">
72
- </style>
1
+ <template>
2
+ <common-vm-actions-add-folder-tree-view-new
3
+ v-if="isNewView"
4
+ :nodes="nodes"
5
+ :loading="loading"
6
+ @show-nodes="showNodes"
7
+ @select-node="selectNode"
8
+ />
9
+ <common-vm-actions-add-folder-tree-view-old
10
+ v-else
11
+ :nodes="nodes"
12
+ :loading="loading"
13
+ @show-nodes="showNodes"
14
+ @select-node="selectNode"
15
+ />
16
+ </template>
17
+
18
+ <script setup lang="ts">
19
+ import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
20
+
21
+ const props = defineProps<{
22
+ dataCenter: UI_I_TreeNode
23
+ }>()
24
+ const emits = defineEmits<{
25
+ (event: 'select-node', value: UI_I_TreeNode): void
26
+ }>()
27
+
28
+ const { $store }: any = useNuxtApp()
29
+ const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
30
+
31
+ const nodes = computed<UI_I_TreeNode[]>(
32
+ () => $store.getters['inventory/getFolderTree'] || []
33
+ )
34
+ const loading = ref<boolean>(false)
35
+ const getTree = async (): Promise<void> => {
36
+ loading.value = true
37
+ await $store.dispatch('inventory/A_GET_FOLDER_TREE', null)
38
+ loading.value = false
39
+ }
40
+ getTree().then(() => {
41
+ selectNode(props.dataCenter)
42
+ })
43
+
44
+ const showNodes = ({
45
+ node,
46
+ cb,
47
+ }: {
48
+ node: UI_I_TreeNode
49
+ cb: () => void
50
+ }): void => {
51
+ const payload: any = { node, treeName: 'folderTree' }
52
+ $store.dispatch('inventory/A_SHOW_NODE', payload)
53
+ cb()
54
+ }
55
+ const selectNode = (node: UI_I_TreeNode): void => {
56
+ const payload: any = {
57
+ node,
58
+ treeName: 'folderTree',
59
+ doSelect: false,
60
+ }
61
+ $store.dispatch('inventory/A_SELECT_NODE', payload)
62
+
63
+ emits('select-node', node)
64
+ }
65
+
66
+ onUnmounted(() => {
67
+ $store.dispatch('inventory/A_CLEAR_FOLDER_TREE', null)
68
+ })
69
+ </script>
70
+
71
+ <style scoped lang="scss">
72
+ </style>
@@ -1,40 +1,40 @@
1
- <template>
2
- <div class="tree-view">
3
- <ui-tree
4
- :nodes="props.nodes"
5
- :expand-all="false"
6
- :is-loading="props.loading"
7
- @toggle-node="onShowNodes"
8
- @select-node="emits('select-node', $event)"
9
- >
10
- <template #content="{ node }">
11
- <div class="flex-align-center">
12
- <span :class="['node-icon', node.iconClassName]"></span>
13
- <span class="node-name">{{ node.name }}</span>
14
- </div>
15
- </template>
16
- </ui-tree>
17
- </div>
18
- </template>
19
-
20
- <script setup lang="ts">
21
- import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
22
-
23
- const props = defineProps<{
24
- loading: boolean
25
- nodes: UI_I_TreeNode[]
26
- }>()
27
- const emits = defineEmits<{
28
- (event: 'select-node', value: UI_I_TreeNode): void
29
- (event: 'show-nodes', value: {
30
- node: UI_I_TreeNode
31
- cb: () => void
32
- }): void
33
- }>()
34
-
35
- const onShowNodes = (node: UI_I_TreeNode) => {
36
- emits('show-nodes', { node, cb: (): void => {} })
37
- }
38
- </script>
39
-
40
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <div class="tree-view">
3
+ <ui-tree
4
+ :nodes="props.nodes"
5
+ :expand-all="false"
6
+ :is-loading="props.loading"
7
+ @toggle-node="onShowNodes"
8
+ @select-node="emits('select-node', $event)"
9
+ >
10
+ <template #content="{ node }">
11
+ <div class="flex-align-center">
12
+ <span :class="['node-icon', node.iconClassName]"></span>
13
+ <span class="node-name">{{ node.name }}</span>
14
+ </div>
15
+ </template>
16
+ </ui-tree>
17
+ </div>
18
+ </template>
19
+
20
+ <script setup lang="ts">
21
+ import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
22
+
23
+ const props = defineProps<{
24
+ loading: boolean
25
+ nodes: UI_I_TreeNode[]
26
+ }>()
27
+ const emits = defineEmits<{
28
+ (event: 'select-node', value: UI_I_TreeNode): void
29
+ (event: 'show-nodes', value: {
30
+ node: UI_I_TreeNode
31
+ cb: () => void
32
+ }): void
33
+ }>()
34
+
35
+ const onShowNodes = (node: UI_I_TreeNode) => {
36
+ emits('show-nodes', { node, cb: (): void => {} })
37
+ }
38
+ </script>
39
+
40
+ <style scoped lang="scss"></style>
@@ -1,50 +1,50 @@
1
- <template>
2
- <div class="tree-view">
3
- <atoms-loader-pre-loader
4
- v-show="props.loading"
5
- id="loader"
6
- class="absolute-center tree-view__loading"
7
- :show="true"
8
- />
9
- <common-recursion-tree
10
- :nodes="props.nodes"
11
- class="recursion-tree"
12
- @get-nodes="emits('show-nodes', $event)"
13
- @select-node="emits('select-node', $event)"
14
- @contextmenu.prevent
15
- />
16
- </div>
17
- </template>
18
-
19
- <script setup lang="ts">
20
- import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
21
-
22
- const props = defineProps<{
23
- loading: boolean
24
- nodes: UI_I_TreeNode[]
25
- }>()
26
- const emits = defineEmits<{
27
- (event: 'select-node', value: UI_I_TreeNode): void
28
- (
29
- event: 'show-nodes',
30
- value: {
31
- node: UI_I_TreeNode
32
- cb: () => void
33
- }
34
- ): void
35
- }>()
36
- </script>
37
-
38
- <style scoped lang="scss">
39
- .tree-view {
40
- &__loading {
41
- :deep(.spinner.spinner-inverse) {
42
- position: static;
43
- width: 45px;
44
- height: 45px;
45
- min-width: 45px;
46
- min-height: 45px;
47
- }
48
- }
49
- }
50
- </style>
1
+ <template>
2
+ <div class="tree-view">
3
+ <atoms-loader-pre-loader
4
+ v-show="props.loading"
5
+ id="loader"
6
+ class="absolute-center tree-view__loading"
7
+ :show="true"
8
+ />
9
+ <common-recursion-tree
10
+ :nodes="props.nodes"
11
+ class="recursion-tree"
12
+ @get-nodes="emits('show-nodes', $event)"
13
+ @select-node="emits('select-node', $event)"
14
+ @contextmenu.prevent
15
+ />
16
+ </div>
17
+ </template>
18
+
19
+ <script setup lang="ts">
20
+ import type { UI_I_TreeNode } from '~/components/common/recursionTree/lib/models/interfaces'
21
+
22
+ const props = defineProps<{
23
+ loading: boolean
24
+ nodes: UI_I_TreeNode[]
25
+ }>()
26
+ const emits = defineEmits<{
27
+ (event: 'select-node', value: UI_I_TreeNode): void
28
+ (
29
+ event: 'show-nodes',
30
+ value: {
31
+ node: UI_I_TreeNode
32
+ cb: () => void
33
+ }
34
+ ): void
35
+ }>()
36
+ </script>
37
+
38
+ <style scoped lang="scss">
39
+ .tree-view {
40
+ &__loading {
41
+ :deep(.spinner.spinner-inverse) {
42
+ position: static;
43
+ width: 45px;
44
+ height: 45px;
45
+ min-width: 45px;
46
+ min-height: 45px;
47
+ }
48
+ }
49
+ }
50
+ </style>