bfg-common 1.5.679 → 1.5.683

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 (125) 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/collapse/CollapseNav.vue +170 -170
  8. package/components/atoms/perPage/PerPage.vue +58 -58
  9. package/components/atoms/table/dataGrid/DataGrid.vue +1718 -1718
  10. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  11. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  12. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  13. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  14. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  15. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  16. package/components/common/diagramMain/port/Port.vue +580 -580
  17. package/components/common/layout/theHeader/TheHeaderNew.vue +315 -315
  18. package/components/common/layout/theHeader/TheHeaderOld.vue +262 -262
  19. package/components/common/layout/theHeader/helpMenu/About.vue +79 -79
  20. package/components/common/layout/theHeader/helpMenu/aboutOld/AboutOld.vue +79 -79
  21. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +93 -93
  22. package/components/common/layout/theHeader/userMenu/modals/changePassword/New.vue +193 -193
  23. package/components/common/layout/theHeader/userMenu/modals/preferences/PreferencesOld.vue +144 -144
  24. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +7 -7
  25. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Old.vue +216 -216
  26. package/components/common/layout/theHeader/userMenu/modals/preferences/security/Security.vue +31 -31
  27. package/components/common/pages/backups/DetailView.vue +52 -52
  28. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  29. package/components/common/pages/backups/modals/Modals.vue +243 -243
  30. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  31. package/components/common/pages/backups/modals/createBackup/lib/config/readyToCompleteOptions.ts +69 -69
  32. package/components/common/pages/backups/modals/lib/config/restore.ts +115 -115
  33. package/components/common/pages/backups/modals/lib/models/interfaces.ts +186 -186
  34. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  35. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  36. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  37. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  38. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  39. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  40. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  41. package/components/common/qr/Qr.vue +57 -57
  42. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  43. package/components/common/select/radio/RadioGroup.vue +137 -137
  44. package/components/common/spiceConsole/Drawer.vue +420 -420
  45. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  46. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  47. package/components/common/tools/Actions.vue +207 -207
  48. package/components/common/treeView/TreeView.vue +52 -52
  49. package/components/common/vm/actions/add/New.vue +1 -1
  50. package/components/common/vm/actions/add/Old.vue +1 -1
  51. package/components/common/vm/actions/clone/lib/config/steps.ts +295 -295
  52. package/components/common/vm/actions/clone/new/New.vue +438 -438
  53. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +698 -698
  54. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +489 -489
  57. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  58. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  59. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  60. package/components/common/vm/actions/common/select/options/New.vue +264 -264
  61. package/components/common/vm/actions/common/select/options/Old.vue +109 -110
  62. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  63. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  64. package/components/common/vm/actions/common/select/storage/new/New.vue +311 -311
  65. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  66. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  67. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  68. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  69. package/components/common/wizards/common/compatibility/Compatibility.vue +35 -35
  70. package/components/common/wizards/common/compatibility/New.vue +99 -99
  71. package/components/common/wizards/common/compatibility/Old.vue +53 -53
  72. package/components/common/wizards/common/steps/computeResource/New.vue +93 -93
  73. package/components/common/wizards/common/steps/name/Name.vue +178 -178
  74. package/components/common/wizards/common/steps/name/New.vue +221 -221
  75. package/components/common/wizards/common/steps/name/Old.vue +121 -121
  76. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  77. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  78. package/components/common/wizards/datastore/add/Add.vue +228 -228
  79. package/components/common/wizards/datastore/add/lib/config/createDatastore.ts +1 -0
  80. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +1 -0
  81. package/components/common/wizards/datastore/add/lib/utils.ts +85 -85
  82. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +232 -227
  83. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceOld.vue +231 -226
  84. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/AdvancedOptions.vue +43 -0
  85. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/New.vue +101 -0
  86. package/components/common/wizards/datastore/add/steps/nameAndDevice/advancedOptions/Old.vue +101 -0
  87. package/components/common/wizards/datastore/add/steps/nameAndDevice/table/old/Old.vue +2 -3
  88. package/components/common/wizards/datastore/add/steps/readyComplete/lib/config/propertiesDetails.ts +8 -1
  89. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  90. package/composables/useAppVersion.ts +21 -21
  91. package/composables/useEnvLanguage.ts +22 -22
  92. package/composables/useLocal.ts +6 -6
  93. package/composables/useLocalCommon.ts +39 -39
  94. package/lib/models/enums.ts +1 -65
  95. package/package.json +1 -1
  96. package/plugins/console.ts +21 -21
  97. package/plugins/mouse.ts +21 -21
  98. package/plugins/panelStates.ts +70 -70
  99. package/plugins/text.ts +59 -59
  100. package/public/spice-console/application/clientgui.js +854 -854
  101. package/public/spice-console/application/packetfactory.js +211 -211
  102. package/public/spice-console/application/virtualmouse.js +147 -147
  103. package/public/spice-console/lib/images/bitmap.js +203 -203
  104. package/public/spice-console/network/spicechannel.js +440 -440
  105. package/public/spice-console/process/cursorprocess.js +128 -128
  106. package/public/spice-console/process/inputprocess.js +227 -227
  107. package/public/spice-console/process/mainprocess.js +212 -212
  108. package/public/spice-console/run.js +210 -210
  109. package/store/main/mutations.ts +7 -7
  110. package/store/main/state.ts +7 -7
  111. package/store/tasks/mappers/recentTasks.ts +123 -123
  112. package/store/tasks/mutations.ts +82 -82
  113. package/components/common/layout/bottomPanel/BottomPanel.vue +0 -68
  114. package/components/common/layout/bottomPanel/New.vue +0 -227
  115. package/components/common/layout/bottomPanel/Old.vue +0 -144
  116. package/components/common/layout/bottomPanel/lib/config/statusFilter.ts +0 -19
  117. package/components/common/layout/bottomPanel/lib/models/types.ts +0 -1
  118. package/components/common/layout/bottomPanel/recentTasks/RecentTasks.vue +0 -49
  119. package/components/common/layout/bottomPanel/recentTasks/lib/models/interfaces.ts +0 -14
  120. package/components/common/layout/bottomPanel/recentTasks/new/New.vue +0 -428
  121. package/components/common/layout/bottomPanel/recentTasks/new/lib/config/config.ts +0 -259
  122. package/components/common/layout/bottomPanel/recentTasks/old/Old.vue +0 -277
  123. package/components/common/layout/bottomPanel/recentTasks/old/lib/config/recentTaskTable.ts +0 -240
  124. package/components/common/layout/bottomPanel/recentTasks/old/lib/config/tableKeys.ts +0 -15
  125. package/components/common/layout/bottomPanel/recentTasks/old/lib/models/types.ts +0 -14
@@ -1,227 +0,0 @@
1
- <template>
2
- <div
3
- :class="[
4
- 'bottom-panel flex flex-col h-full',
5
- { collapsed: props.panelCollapsedModel },
6
- ]"
7
- >
8
- <div class="bottom-panel__tab-list flex">
9
- <div class="bottom-panel__collapse relative">
10
- <button
11
- id="bottom-panel-collapse"
12
- data-id="bottom-panel-toggle-button"
13
- class="btn-collapse flex items-center"
14
- @click="emits('collapse-panel')"
15
- >
16
- <ui-icon class="collapse-icon" name="arrow" />
17
- </button>
18
- </div>
19
- <ui-tabs
20
- v-model="activeTabModel"
21
- :tabs="tabListLocal"
22
- test-id="bottom-panel-tab-list"
23
- type="underline"
24
- class="bottom-panel__tab"
25
- />
26
-
27
- <div
28
- v-show="isShowRecentTasksActions"
29
- class="actions flex items-center gap-4 pr-4"
30
- >
31
- <ui-select
32
- v-model="statusFilter"
33
- :items="statusFilterItems"
34
- test-id="status-filter"
35
- class="status-filter-select"
36
- />
37
- <ui-button
38
- test-id="more-tasks-button"
39
- variant="primary"
40
- type="text"
41
- class="more-tasks-button"
42
- is-without-sizes
43
- @click="onNavigateToTasksPage"
44
- >
45
- {{ localization.tasks.moreTasks }}
46
- </ui-button>
47
- </div>
48
- </div>
49
- <div
50
- v-show="!props.panelCollapsedModel"
51
- class="bottom-panel__table-wrapper overflow-hidden"
52
- >
53
- <common-layout-bottom-panel-recent-tasks
54
- v-show="activeTabModel === 'recentTask'"
55
- v-model:status-filter="statusFilter"
56
- :data-table="props.dataTableRecentTasks"
57
- :total-items="props.totalItemsRecentTasks"
58
- :total-pages="props.totalPagesRecentTasks"
59
- :pagination="props.paginationRecentTasks"
60
- :loading="props.loadingRecentTasks"
61
- @sort="emits('sort-recent-task', $event)"
62
- @pagination="emits('pagination-recent-task', $event)"
63
- />
64
-
65
- <slot name="alarms" />
66
- </div>
67
- </div>
68
- </template>
69
-
70
- <script setup lang="ts">
71
- import type { UI_I_TabItem } from '~/node_modules/bfg-uikit/components/ui/tabs/models/interfaces'
72
- import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
73
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
74
- import type { UI_I_Localization } from '~/lib/models/interfaces'
75
- import type { UI_T_BottomPanelTabType } from '~/components/common/layout/bottomPanel/lib/models/types'
76
- import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
77
- import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
78
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
79
- import type { UI_T_SelectedStatus } from '~/components/common/layout/bottomPanel/recentTasks/old/lib/models/types'
80
- import { statusFilterItemsFunc } from '~/components/common/layout/bottomPanel/lib/config/statusFilter'
81
-
82
- const activeTabModel = defineModel<UI_T_BottomPanelTabType>('selectedTab', {
83
- required: true,
84
- })
85
- const statusFilter = defineModel<UI_T_SelectedStatus>('statusFilter', {
86
- required: true,
87
- })
88
-
89
- const props = defineProps<{
90
- panelCollapsedModel: boolean
91
- tabList: UI_I_CollapseNavItem[]
92
- dataTableRecentTasks: UI_I_RecentTaskItem<UI_T_NodeType>[]
93
- totalItemsRecentTasks: number
94
- totalPagesRecentTasks: number
95
- paginationRecentTasks: UI_I_Pagination
96
- loadingRecentTasks: boolean
97
- }>()
98
-
99
- const emits = defineEmits<{
100
- (event: 'collapse-panel'): void
101
- (event: 'sort-recent-task', value: string): void
102
- (event: 'pagination-recent-task', value: UI_I_Pagination | null): void
103
- }>()
104
-
105
- const tabListLocal = computed<UI_I_TabItem[]>(() =>
106
- props.tabList.map(({ value, text: name, testId, development }) => ({
107
- name,
108
- development,
109
- value: value + '',
110
- testId: testId + '',
111
- }))
112
- )
113
-
114
- const localization = computed<UI_I_Localization>(() => useLocal())
115
- const statusFilterItems = ref<UI_I_Dropdown[]>(
116
- statusFilterItemsFunc(localization.value)
117
- )
118
-
119
- const onNavigateToTasksPage = (): void => {
120
- const router = useRouter()
121
- router.push('/tasks')
122
- }
123
-
124
- const isShowRecentTasksActions = computed<boolean>(
125
- () => activeTabModel.value === 'recentTask' && !props.panelCollapsedModel
126
- )
127
- </script>
128
-
129
- <style>
130
- :root {
131
- --bottom-pannel-bg-color: #fff;
132
- --bottom-pannel-border-color: #e9ebed;
133
- --bottom-pannel-rtask-link-text: #008fd6;
134
- --bottom-pannel-rtask-link-hover-text: #0081c1;
135
- --bottom-pannel-divider-color: #e9ebeda3;
136
- --bottom-pannel-collapse-button-icon: #213444;
137
- }
138
- :root.dark-theme {
139
- --bottom-pannel-bg-color: #213444;
140
- --bottom-pannel-border-color: #e9ebed1f;
141
- --bottom-pannel-rtask-link-text: #2ba2de;
142
- --bottom-pannel-rtask-link-hover-text: #008fd6;
143
- --bottom-pannel-divider-color: #e9ebed1f;
144
- --bottom-pannel-collapse-button-icon: #e9eaec;
145
- }
146
- </style>
147
- <style scoped lang="scss">
148
- @import '~/assets/scss/common/mixins';
149
- .bottom-panel {
150
- background-color: var(--bottom-pannel-bg-color);
151
-
152
- &__tab-list {
153
- border-bottom: 1px solid var(--bottom-pannel-border-color);
154
- }
155
- &__tab {
156
- align-items: flex-end;
157
- margin-left: 16px;
158
-
159
- &.tabs-wrapper.is-link:before {
160
- display: none;
161
- }
162
- .collapsed &.tabs-wrapper.is-link {
163
- :deep(.tab-item.active.tab-underline) {
164
- border-bottom: 3px solid transparent;
165
- }
166
- }
167
- }
168
- &__table-wrapper {
169
- height: inherit;
170
- }
171
-
172
- .btn-collapse {
173
- border: 0;
174
- outline: none;
175
- background-color: transparent;
176
- cursor: pointer;
177
-
178
- .collapse-icon {
179
- width: 20px;
180
- height: 20px;
181
- transform: rotate(180deg);
182
- color: var(--bottom-pannel-collapse-button-icon);
183
-
184
- .collapsed & {
185
- transform: rotate(0deg);
186
- }
187
- }
188
- }
189
- &__collapse {
190
- padding: 12px 16px;
191
-
192
- &:before {
193
- content: '';
194
- position: absolute;
195
- top: 8px;
196
- right: 0;
197
- bottom: 8px;
198
- width: 1px;
199
- background-color: var(--bottom-pannel-divider-color);
200
- }
201
- }
202
-
203
- .actions {
204
- flex: 1;
205
- justify-content: flex-end;
206
-
207
- .more-tasks-button {
208
- width: auto;
209
- }
210
-
211
- :deep(.ui-select-toggle-button) {
212
- height: 24px;
213
- min-width: 80px;
214
- padding: 4px 4px 4px 8px;
215
- border-radius: 6px;
216
- }
217
- :deep(.ui-popup-window) {
218
- border-radius: 6px;
219
- width: unset !important;
220
- }
221
- }
222
- }
223
-
224
- :deep(.table-container.default-layout) {
225
- border-radius: 0;
226
- }
227
- </style>
@@ -1,144 +0,0 @@
1
- <template>
2
- <div
3
- :class="[
4
- 'bottom-panel flex flex-col h-full',
5
- { collapsed: props.panelCollapsedModel },
6
- ]"
7
- >
8
- <div class="flex">
9
- <div class="bottom-panel__trigger">
10
- <button
11
- id="bottom-panel-trigger"
12
- data-id="bottom-panel-toggle-button"
13
- class="btn-trigger flex items-center"
14
- @click="emits('collapse-panel')"
15
- >
16
- <atoms-the-icon class="trigger-icon" name="angle" />
17
- </button>
18
- </div>
19
- <atoms-nav-bar
20
- v-model="activeTabModel"
21
- :items="props.tabList"
22
- :class="[
23
- 'bottom-panel__tabs',
24
- props.panelCollapsedModel && 'collapsed',
25
- ]"
26
- test-id="bottom-panel-nav-bar"
27
- />
28
- </div>
29
- <div
30
- v-show="!props.panelCollapsedModel"
31
- class="bottom-panel__table-wrapper overflow-hidden"
32
- >
33
- <common-layout-bottom-panel-recent-tasks
34
- v-show="activeTabModel === 'recentTask'"
35
- v-model:status-filter="statusFilter"
36
- :data-table="props.dataTableRecentTasks"
37
- :total-items="props.totalItemsRecentTasks"
38
- :total-pages="props.totalPagesRecentTasks"
39
- :pagination="props.paginationRecentTasks"
40
- :loading="props.loadingRecentTasks"
41
- @sort="emits('sort-recent-task', $event)"
42
- @pagination="emits('pagination-recent-task', $event)"
43
- />
44
-
45
- <slot name="alarms" />
46
- </div>
47
- </div>
48
- </template>
49
-
50
- <script setup lang="ts">
51
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
52
- import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
53
- import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
54
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
55
- import type { UI_T_BottomPanelTabType } from '~/components/common/layout/bottomPanel/lib/models/types'
56
- import type { UI_T_SelectedStatus } from '~/components/common/layout/bottomPanel/recentTasks/old/lib/models/types'
57
-
58
- const statusFilter = defineModel<UI_T_SelectedStatus>('statusFilter', {
59
- required: true,
60
- })
61
- const activeTabModel = defineModel<UI_T_BottomPanelTabType>('selectedTab', {
62
- required: true,
63
- })
64
-
65
- const props = defineProps<{
66
- panelCollapsedModel: boolean
67
- tabList: UI_I_CollapseNavItem[]
68
- dataTableRecentTasks: UI_I_RecentTaskItem<UI_T_NodeType>[]
69
- totalItemsRecentTasks: number
70
- totalPagesRecentTasks: number
71
- paginationRecentTasks: UI_I_Pagination
72
- loadingRecentTasks: boolean
73
- }>()
74
-
75
- const emits = defineEmits<{
76
- (event: 'collapse-panel'): void
77
- (event: 'sort-recent-task', value: string): void
78
- (event: 'pagination-recent-task', value: UI_I_Pagination | null): void
79
- }>()
80
- </script>
81
-
82
- <style scoped lang="scss">
83
- @import '~/assets/scss/common/mixins';
84
- .bottom-panel {
85
- background-color: var(--pannel-bg-color);
86
- & > div:first-child {
87
- height: 36px;
88
- }
89
- &__table-wrapper {
90
- height: inherit;
91
- :deep(.datagrid-outer-wrapper) {
92
- padding-top: 0;
93
- .datagrid {
94
- border-radius: 0;
95
- margin-top: 0;
96
- }
97
- }
98
- }
99
- &__tabs {
100
- &.collapsed {
101
- :deep(button.nav-link) {
102
- box-shadow: none;
103
- }
104
- }
105
- }
106
-
107
- &.collapsed {
108
- .btn-trigger {
109
- .trigger-icon {
110
- transform: rotate(0deg);
111
- }
112
- }
113
- }
114
- .btn-trigger {
115
- height: 31px;
116
- border: 0;
117
- outline: none;
118
- background-color: transparent;
119
- padding-left: 15px;
120
- cursor: pointer;
121
- .trigger-icon {
122
- width: 16px;
123
- height: 16px;
124
- fill: var(--triger-icon-color);
125
- transform: rotate(180deg);
126
- }
127
- }
128
- &__trigger {
129
- padding-right: 15px;
130
- margin-right: 15px;
131
- border-right: 0.05rem solid #ccc;
132
- box-shadow: inset 0 -0.05rem 0 var(--nav-panel-border-color);
133
- }
134
- }
135
- </style>
136
-
137
- <style>
138
- :root {
139
- --pannel-bg-color: #fafafa;
140
- }
141
- :root.dark-theme {
142
- --pannel-bg-color: #1b2a32;
143
- }
144
- </style>
@@ -1,19 +0,0 @@
1
- import type { UI_I_Dropdown } from '~/node_modules/bfg-uikit/components/ui/dropdown/models/interfaces'
2
- import type { UI_I_Localization } from '~/lib/models/interfaces'
3
-
4
- export const statusFilterItemsFunc = (
5
- localization: UI_I_Localization
6
- ): UI_I_Dropdown[] => [
7
- {
8
- text: localization.common.all,
9
- value: -1,
10
- },
11
- {
12
- text: localization.common.running,
13
- value: 1,
14
- },
15
- {
16
- text: localization.common.failed,
17
- value: 3,
18
- },
19
- ]
@@ -1 +0,0 @@
1
- export type UI_T_BottomPanelTabType = 'recentTask' | 'alarms'
@@ -1,49 +0,0 @@
1
- <template>
2
- <component
3
- :is="currentComponent"
4
- v-model:status-filter="statusFilter"
5
- :data-table="props.dataTable"
6
- :total-items="props.totalItems"
7
- :total-pages="props.totalPages"
8
- :pagination="props.pagination"
9
- :loading="props.loading"
10
- @pagination="emits('pagination', $event)"
11
- @sort="emits('sort', $event)"
12
- />
13
- </template>
14
-
15
- <script setup lang="ts">
16
- import type { UI_I_RecentTaskItem } from '~/lib/models/store/tasks/interfaces'
17
- import type { UI_I_Pagination } from '~/lib/models/table/interfaces'
18
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
19
- import type { UI_T_SelectedStatus } from '~/components/common/layout/bottomPanel/recentTasks/old/lib/models/types'
20
-
21
- const statusFilter = defineModel<UI_T_SelectedStatus>('statusFilter', {
22
- required: true,
23
- })
24
-
25
- const props = defineProps<{
26
- dataTable: UI_I_RecentTaskItem<UI_T_NodeType>[]
27
- totalItems: number
28
- totalPages: number
29
- pagination: UI_I_Pagination
30
- loading: boolean
31
- }>()
32
-
33
- const emits = defineEmits<{
34
- (event: 'pagination', value: UI_I_Pagination | null): void
35
- (event: 'sort', value: string): void
36
- }>()
37
-
38
- const { $store }: any = useNuxtApp()
39
-
40
- const isNewView = computed<boolean>(() => $store.getters['main/getIsNewView'])
41
-
42
- const currentComponent = computed(() =>
43
- isNewView.value
44
- ? defineAsyncComponent(() => import('./new/New.vue'))
45
- : defineAsyncComponent(() => import('./old/Old.vue'))
46
- )
47
- </script>
48
-
49
- <style scoped lang="scss"></style>
@@ -1,14 +0,0 @@
1
- import type { UI_T_NodeType } from '~/components/common/pages/home/lib/models/types'
2
- import type { UI_T_NavNodes } from '~/lib/models/types'
3
-
4
- interface UI_I_TargetData {
5
- id: string
6
- type: UI_T_NodeType
7
- }
8
-
9
- export interface UI_I_DataTargetForTable extends UI_I_TargetData {
10
- nav: UI_T_NavNodes
11
- isLink: boolean
12
- iconClassName: string
13
- testId?: string
14
- }