bfg-common 1.3.467 → 1.3.468

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 (109) hide show
  1. package/assets/scss/common/normalize.scss +340 -340
  2. package/components/atoms/TheIcon2.vue +1353 -1353
  3. package/components/atoms/loader/Loader.vue +30 -30
  4. package/components/atoms/loader/PreLoader.vue +38 -38
  5. package/components/atoms/switch/Switch.vue +111 -111
  6. package/components/atoms/table/compact/Compact.vue +526 -526
  7. package/components/common/adapterManager/ui/table/Header.vue +93 -93
  8. package/components/common/adapterManager/ui/table/Table.vue +162 -162
  9. package/components/common/context/Context.vue +99 -99
  10. package/components/common/layout/theHeader/LanguageSwitch.vue +102 -0
  11. package/components/common/layout/theHeader/TheHeader.vue +91 -0
  12. package/components/common/layout/theHeader/TheHeaderNew.vue +229 -0
  13. package/components/common/layout/theHeader/TheHeaderOld.vue +241 -0
  14. package/components/common/layout/theHeader/feedback/Feedback.vue +104 -0
  15. package/components/common/layout/theHeader/feedback/FeedbackNew.vue +63 -0
  16. package/components/common/layout/theHeader/feedback/FeedbackOld.vue +73 -0
  17. package/components/common/layout/theHeader/helpMenu/About.vue +110 -0
  18. package/components/common/layout/theHeader/helpMenu/HelpMenu.vue +45 -0
  19. package/components/common/layout/theHeader/helpMenu/helpMenuNew/HelpMenuNew.vue +112 -0
  20. package/components/common/layout/theHeader/helpMenu/helpMenuNew/lib/config/dropMenu.ts +25 -0
  21. package/components/common/layout/theHeader/helpMenu/helpMenuOld/HelpMenuOld.vue +69 -0
  22. package/components/common/layout/theHeader/helpMenu/helpMenuOld/lib/config/dropMenu.ts +22 -0
  23. package/components/common/layout/theHeader/helpMenu/helpMenuOld/lib/models/types.ts +1 -0
  24. package/components/common/layout/theHeader/lib/models/types.ts +5 -0
  25. package/components/common/layout/theHeader/modals/Reconnect.vue +98 -0
  26. package/components/common/layout/theHeader/modals/RedirectLogin.vue +60 -0
  27. package/components/common/layout/theHeader/userMenu/UserMenu.vue +95 -0
  28. package/components/common/layout/theHeader/userMenu/lib/models/interfaces.ts +32 -0
  29. package/components/common/layout/theHeader/userMenu/modals/changePassword/ChangePassword.vue +210 -0
  30. package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/config/form.ts +31 -0
  31. package/components/common/layout/theHeader/userMenu/modals/changePassword/lib/models/interfaces.ts +12 -0
  32. package/components/common/layout/theHeader/userMenu/modals/preferences/Inventory.vue +43 -0
  33. package/components/common/layout/theHeader/userMenu/modals/preferences/Preferences.vue +119 -0
  34. package/components/common/layout/theHeader/userMenu/modals/preferences/View.vue +113 -0
  35. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/ChangeLanguage.vue +148 -0
  36. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/config/lang.ts +10 -0
  37. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/config/radioOptions.ts +22 -0
  38. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/models/enums.ts +9 -0
  39. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/models/interfaces.ts +11 -0
  40. package/components/common/layout/theHeader/userMenu/modals/preferences/changeLanguage/lib/models/types.ts +1 -0
  41. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/DefaultConsole.vue +66 -0
  42. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/config/consoleOptions.ts +30 -0
  43. package/components/common/layout/theHeader/userMenu/modals/preferences/defaultConsole/lib/models/interfaces.ts +5 -0
  44. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/config/preferencesTabs.ts +68 -0
  45. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +1 -0
  46. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/TimeFormat.vue +67 -0
  47. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/config/formatOptions.ts +27 -0
  48. package/components/common/layout/theHeader/userMenu/modals/preferences/timeFormat/lib/models/types.ts +1 -0
  49. package/components/common/layout/theHeader/userMenu/userMenuNew/UserMenuNew.vue +114 -0
  50. package/components/common/layout/theHeader/userMenu/userMenuNew/lib/config/dropMenu.ts +28 -0
  51. package/components/common/layout/theHeader/userMenu/userMenuOld/UserMenuOld.vue +36 -0
  52. package/components/common/layout/theHeader/userMenu/userMenuOld/lib/config/dropMenu.ts +36 -0
  53. package/components/common/layout/theHeader/userMenu/userMenuOld/lib/models/types.ts +5 -0
  54. package/components/common/lib/config/states.ts +160 -160
  55. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +142 -142
  56. package/components/common/mainNavigationPanel/MainNavigationPanelNew.vue +248 -248
  57. package/components/common/mainNavigationPanel/MainNavigationPanelOld.vue +288 -288
  58. package/components/common/readyToComplete/ReadyToComplete.vue +15 -15
  59. package/components/common/resource/progressBlock/ProgressBlock.vue +142 -142
  60. package/components/common/split/horizontal/Horizontal.vue +70 -70
  61. package/components/common/vm/actions/clone/Clone.vue +511 -511
  62. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +273 -273
  63. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +697 -697
  64. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/Cpu.vue +400 -400
  65. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +329 -329
  66. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +305 -305
  67. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +168 -168
  68. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +82 -82
  69. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +32 -32
  70. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCard.vue +182 -182
  71. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptions.vue +114 -114
  72. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +192 -192
  73. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/Tools.vue +72 -72
  74. package/components/common/vm/actions/common/select/computeResource/ComputeResource.vue +164 -164
  75. package/components/common/vm/actions/common/select/name/Name.vue +235 -235
  76. package/components/common/vm/actions/common/select/storage/Storage.vue +198 -198
  77. package/components/common/vm/actions/editSettings/EditSettings.vue +316 -316
  78. package/components/common/weekSelect/lib/config/options.ts +10 -10
  79. package/components/common/wizards/datastore/add/Add.vue +436 -436
  80. package/components/common/wizards/datastore/add/lib/config/stepItems.ts +191 -191
  81. package/components/common/wizards/datastore/add/lib/models/interfaces.ts +38 -38
  82. package/components/common/wizards/datastore/add/lib/utils.ts +70 -70
  83. package/components/common/wizards/datastore/add/local/createName/CreateName.vue +160 -160
  84. package/components/common/wizards/datastore/add/nfs/Nfs.vue +112 -112
  85. package/components/common/wizards/datastore/add/nfs/accessibility/Accessibility.vue +104 -104
  86. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/compatibleTable.ts +62 -62
  87. package/components/common/wizards/datastore/add/nfs/accessibility/tablesView/lib/config/hostsTableItems.ts +53 -53
  88. package/components/common/wizards/datastore/add/readyComplete/ReadyComplete.vue +86 -86
  89. package/components/common/wizards/datastore/add/readyComplete/lib/config/propertiesDetails.ts +184 -184
  90. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/DeviceSelection.vue +459 -459
  91. package/components/common/wizards/datastore/add/types/Types.vue +80 -80
  92. package/components/common/wizards/datastore/add/types/lib/config/typeOptions.ts +49 -49
  93. package/composables/useAppVersion.ts +22 -22
  94. package/composables/useEnvLanguage.ts +20 -20
  95. package/lib/utils/sendTask.ts +73 -73
  96. package/minify.js +146 -146
  97. package/package.json +2 -1
  98. package/plugins/spice-console/spice.console.ts +147 -147
  99. package/public/spice-console/application/codec.js +263 -263
  100. package/public/spice-console/lib/rasterEngine.js +907 -907
  101. package/public/spice-console/network/spicechannel.js +375 -375
  102. package/store/main/lib/interfaces.ts +9 -9
  103. package/store/tasks/actions.ts +133 -133
  104. package/store/tasks/getters.ts +25 -25
  105. package/store/tasks/lib/models/interfaces.ts +18 -18
  106. package/store/tasks/mutations.ts +58 -58
  107. package/store/tasks/state.ts +16 -16
  108. /package/components/{layout → common/layout}/theHeader/lib/models/enums.ts +0 -0
  109. /package/components/{layout → common/layout}/theHeader/lib/utils/localization.ts +0 -0
@@ -1,9 +1,9 @@
1
- import type { UI_I_Options } from '~/lib/models/composables/useMyFetch/interfaces'
2
-
3
- export interface UI_I_RefreshStack {
4
- key: string
5
- // method: () => void | any
6
- url: string
7
- options: UI_I_Options
8
- paused?: boolean
9
- }
1
+ import type { UI_I_Options } from '~/lib/models/composables/useMyFetch/interfaces'
2
+
3
+ export interface UI_I_RefreshStack {
4
+ key: string
5
+ // method: () => void | any
6
+ url: string
7
+ options: UI_I_Options
8
+ paused?: boolean
9
+ }
@@ -1,133 +1,133 @@
1
- import type {
2
- API_UI_I_Error,
3
- API_UI_I_Response,
4
- UI_I_CommitOptions,
5
- } from '~/lib/models/store/interfaces'
6
- import type {
7
- UI_I_DataTableQuery,
8
- UI_I_TableQuery,
9
- } from '~/lib/models/table/interfaces'
10
- import type { UI_I_Options } from '~/lib/models/composables/useMyFetch/interfaces'
11
- import type {
12
- API_UI_I_RecentTask,
13
- UI_I_RTaskQuery,
14
- UI_I_TasksLoadingPayload,
15
- UI_I_RawRecentTask,
16
- UI_I_RecentTask,
17
- API_UI_I_Task,
18
- } from '~/lib/models/store/tasks/interfaces'
19
- import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
20
- import type { UI_I_RefreshStack } from '~/store/main/lib/interfaces'
21
- import { tasksConstructor } from '~/store/tasks/mappers/tasks'
22
- import { recentTasks } from '~/store/tasks/mappers/recentTasks'
23
-
24
- export default {
25
- async A_GET_TASKS(
26
- context: {
27
- commit: <T>(arg0: string, arg1: T) => void
28
- state: UI_I_TasksState
29
- dispatch: <T>(arg0: string, arg1: T, arg2: UI_I_CommitOptions) => void
30
- },
31
- payload: UI_I_DataTableQuery
32
- ): Promise<API_UI_I_Error | void> {
33
- const { page, pageSize, sortBy } = payload
34
-
35
- const query: UI_I_TableQuery = {
36
- page_size: pageSize,
37
- page,
38
- }
39
-
40
- if (sortBy) query.sortBy = sortBy
41
-
42
- const queryJson: string = JSON.stringify({ type: 'tasks', ...query })
43
- const lastQuery: string = context.state.taskQuery || ''
44
-
45
- if (queryJson === lastQuery) {
46
- // Снимаем с паузы сам запрос, для глобального обновления
47
- context.dispatch<string>('main/A_CONTINUE_GLOBAL_REFRESH', queryJson, {
48
- root: true,
49
- })
50
- return
51
- }
52
- context.commit('M_SET_TASKS_LAST_QUERY', queryJson)
53
-
54
- const url = '/ui/tasks'
55
- const options: UI_I_Options = {
56
- query,
57
- method: 'GET',
58
- key: Date.now().toString(),
59
- onRequest() {
60
- context.commit<UI_I_TasksLoadingPayload>('M_SET_LOADING', {
61
- prop: 'tasks',
62
- value: true,
63
- })
64
- },
65
- onResponse({ response }: API_UI_I_Response<API_UI_I_Task<string>>) {
66
- const tasks = tasksConstructor(response._data)
67
-
68
- context.commit('M_SET_TASKS_LIST', tasks)
69
- context.commit<UI_I_TasksLoadingPayload>('M_SET_LOADING', {
70
- prop: 'tasks',
71
- value: false,
72
- })
73
- },
74
- }
75
- const { error } = await useMyFetch<API_UI_I_Task<string>, API_UI_I_Error>(
76
- url,
77
- options
78
- )
79
-
80
- if (error.value?.data?.error_code)
81
- throw new Error(error.value.data.error_message)
82
-
83
- context.dispatch<UI_I_RefreshStack>(
84
- 'main/A_ADD_IN_GLOBAL_REFRESH',
85
- { key: queryJson, url, options },
86
- { root: true }
87
- )
88
- },
89
- async A_GET_RECENT_TASKS(
90
- context: {
91
- commit: <T>(arg0: string, arg1: T) => void
92
- state: UI_I_TasksState
93
- },
94
- payload: string
95
- ): Promise<void> {
96
- const query: UI_I_RTaskQuery = {
97
- last: context.state.recentTaskList?.last || 0,
98
- }
99
- if (payload) query.sortBy = payload
100
-
101
- const { data, error } = await useMyFetch<
102
- API_UI_I_RecentTask<string>,
103
- API_UI_I_Error
104
- >('/ui/rtasks', {
105
- query,
106
- method: 'GET',
107
- initialCache: false,
108
- })
109
-
110
- if (error.value?.data?.error_code)
111
- throw new Error(error.value.data.error_message)
112
-
113
- context.commit<UI_I_RecentTask<string>>(
114
- 'M_SET_RECENT_TASKS_LIST',
115
- recentTasks(data.value)
116
- )
117
- context.commit<UI_I_RawRecentTask<string>>(
118
- 'M_SET_UPDATED_RECENT_TASKS_LIST',
119
- data.value
120
- )
121
- // context.commit<I_TasksLoadingPayload>('M_SET_LOADING', {
122
- // prop: 'recentTasks',
123
- // value: false,
124
- // })
125
- },
126
-
127
- // Вызывается в useMyFetch когда получаем первый ответ от запроса с url tasks
128
- // и default.vue когда срабатывает watch на recentTasks
129
- // Нужно для того чтобы не обрабатывали те таски которые были сделаны перед загрузкой страницы
130
- A_SET_FIRST_TASK(context: { commit: (arg0: string) => void }): void {
131
- context.commit('M_SET_FIRST_TASK')
132
- },
133
- }
1
+ import type {
2
+ API_UI_I_Error,
3
+ API_UI_I_Response,
4
+ UI_I_CommitOptions,
5
+ } from '~/lib/models/store/interfaces'
6
+ import type {
7
+ UI_I_DataTableQuery,
8
+ UI_I_TableQuery,
9
+ } from '~/lib/models/table/interfaces'
10
+ import type { UI_I_Options } from '~/lib/models/composables/useMyFetch/interfaces'
11
+ import type {
12
+ API_UI_I_RecentTask,
13
+ UI_I_RTaskQuery,
14
+ UI_I_TasksLoadingPayload,
15
+ UI_I_RawRecentTask,
16
+ UI_I_RecentTask,
17
+ API_UI_I_Task,
18
+ } from '~/lib/models/store/tasks/interfaces'
19
+ import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
20
+ import type { UI_I_RefreshStack } from '~/store/main/lib/interfaces'
21
+ import { tasksConstructor } from '~/store/tasks/mappers/tasks'
22
+ import { recentTasks } from '~/store/tasks/mappers/recentTasks'
23
+
24
+ export default {
25
+ async A_GET_TASKS(
26
+ context: {
27
+ commit: <T>(arg0: string, arg1: T) => void
28
+ state: UI_I_TasksState
29
+ dispatch: <T>(arg0: string, arg1: T, arg2: UI_I_CommitOptions) => void
30
+ },
31
+ payload: UI_I_DataTableQuery
32
+ ): Promise<API_UI_I_Error | void> {
33
+ const { page, pageSize, sortBy } = payload
34
+
35
+ const query: UI_I_TableQuery = {
36
+ page_size: pageSize,
37
+ page,
38
+ }
39
+
40
+ if (sortBy) query.sortBy = sortBy
41
+
42
+ const queryJson: string = JSON.stringify({ type: 'tasks', ...query })
43
+ const lastQuery: string = context.state.taskQuery || ''
44
+
45
+ if (queryJson === lastQuery) {
46
+ // Снимаем с паузы сам запрос, для глобального обновления
47
+ context.dispatch<string>('main/A_CONTINUE_GLOBAL_REFRESH', queryJson, {
48
+ root: true,
49
+ })
50
+ return
51
+ }
52
+ context.commit('M_SET_TASKS_LAST_QUERY', queryJson)
53
+
54
+ const url = '/ui/tasks'
55
+ const options: UI_I_Options = {
56
+ query,
57
+ method: 'GET',
58
+ key: Date.now().toString(),
59
+ onRequest() {
60
+ context.commit<UI_I_TasksLoadingPayload>('M_SET_LOADING', {
61
+ prop: 'tasks',
62
+ value: true,
63
+ })
64
+ },
65
+ onResponse({ response }: API_UI_I_Response<API_UI_I_Task<string>>) {
66
+ const tasks = tasksConstructor(response._data)
67
+
68
+ context.commit('M_SET_TASKS_LIST', tasks)
69
+ context.commit<UI_I_TasksLoadingPayload>('M_SET_LOADING', {
70
+ prop: 'tasks',
71
+ value: false,
72
+ })
73
+ },
74
+ }
75
+ const { error } = await useMyFetch<API_UI_I_Task<string>, API_UI_I_Error>(
76
+ url,
77
+ options
78
+ )
79
+
80
+ if (error.value?.data?.error_code)
81
+ throw new Error(error.value.data.error_message)
82
+
83
+ context.dispatch<UI_I_RefreshStack>(
84
+ 'main/A_ADD_IN_GLOBAL_REFRESH',
85
+ { key: queryJson, url, options },
86
+ { root: true }
87
+ )
88
+ },
89
+ async A_GET_RECENT_TASKS(
90
+ context: {
91
+ commit: <T>(arg0: string, arg1: T) => void
92
+ state: UI_I_TasksState
93
+ },
94
+ payload: string
95
+ ): Promise<void> {
96
+ const query: UI_I_RTaskQuery = {
97
+ last: context.state.recentTaskList?.last || 0,
98
+ }
99
+ if (payload) query.sortBy = payload
100
+
101
+ const { data, error } = await useMyFetch<
102
+ API_UI_I_RecentTask<string>,
103
+ API_UI_I_Error
104
+ >('/ui/rtasks', {
105
+ query,
106
+ method: 'GET',
107
+ initialCache: false,
108
+ })
109
+
110
+ if (error.value?.data?.error_code)
111
+ throw new Error(error.value.data.error_message)
112
+
113
+ context.commit<UI_I_RecentTask<string>>(
114
+ 'M_SET_RECENT_TASKS_LIST',
115
+ recentTasks(data.value)
116
+ )
117
+ context.commit<UI_I_RawRecentTask<string>>(
118
+ 'M_SET_UPDATED_RECENT_TASKS_LIST',
119
+ data.value
120
+ )
121
+ // context.commit<I_TasksLoadingPayload>('M_SET_LOADING', {
122
+ // prop: 'recentTasks',
123
+ // value: false,
124
+ // })
125
+ },
126
+
127
+ // Вызывается в useMyFetch когда получаем первый ответ от запроса с url tasks
128
+ // и default.vue когда срабатывает watch на recentTasks
129
+ // Нужно для того чтобы не обрабатывали те таски которые были сделаны перед загрузкой страницы
130
+ A_SET_FIRST_TASK(context: { commit: (arg0: string) => void }): void {
131
+ context.commit('M_SET_FIRST_TASK')
132
+ },
133
+ }
@@ -1,25 +1,25 @@
1
- import type { UI_T_TasksStateLoading } from '~/lib/models/store/tasks/types'
2
- import type {
3
- UI_I_RawRecentTaskItem,
4
- UI_I_RecentTask,
5
- UI_I_Task,
6
- } from '~/lib/models/store/tasks/interfaces'
7
- import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
8
-
9
- export default {
10
- getFirstTask: (state: UI_I_TasksState): boolean => state.hasFirstTask,
11
- getTaskList: (state: UI_I_TasksState): UI_I_Task<string> | null =>
12
- state.taskList,
13
- getTasksLastRequestType: (state: UI_I_TasksState): string | null =>
14
- state.taskLastRequestType,
15
- getRecentTaskList: (
16
- state: UI_I_TasksState
17
- ): UI_I_RecentTask<string> | null => state.recentTaskList,
18
- getUpdatedRecentTasks: (
19
- state: UI_I_TasksState
20
- ): UI_I_RawRecentTaskItem<string>[] | null => state.updatedTaskList,
21
- getLoading:
22
- (state: UI_I_TasksState) =>
23
- (type: UI_T_TasksStateLoading): boolean =>
24
- state.loading[type],
25
- }
1
+ import type { UI_T_TasksStateLoading } from '~/lib/models/store/tasks/types'
2
+ import type {
3
+ UI_I_RawRecentTaskItem,
4
+ UI_I_RecentTask,
5
+ UI_I_Task,
6
+ } from '~/lib/models/store/tasks/interfaces'
7
+ import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
8
+
9
+ export default {
10
+ getFirstTask: (state: UI_I_TasksState): boolean => state.hasFirstTask,
11
+ getTaskList: (state: UI_I_TasksState): UI_I_Task<string> | null =>
12
+ state.taskList,
13
+ getTasksLastRequestType: (state: UI_I_TasksState): string | null =>
14
+ state.taskLastRequestType,
15
+ getRecentTaskList: (
16
+ state: UI_I_TasksState
17
+ ): UI_I_RecentTask<string> | null => state.recentTaskList,
18
+ getUpdatedRecentTasks: (
19
+ state: UI_I_TasksState
20
+ ): UI_I_RawRecentTaskItem<string>[] | null => state.updatedTaskList,
21
+ getLoading:
22
+ (state: UI_I_TasksState) =>
23
+ (type: UI_T_TasksStateLoading): boolean =>
24
+ state.loading[type],
25
+ }
@@ -1,18 +1,18 @@
1
- import type {
2
- UI_I_Task,
3
- UI_I_RecentTask,
4
- UI_I_RawRecentTaskItem,
5
- } from '~/lib/models/store/tasks/interfaces'
6
-
7
- export interface UI_I_TasksState {
8
- hasFirstTask: boolean
9
- taskList: UI_I_Task<string> | null
10
- taskLastRequestType: string
11
- taskQuery: string
12
- recentTaskList: UI_I_RecentTask<string> | null
13
- updatedTaskList: UI_I_RawRecentTaskItem<string>[] | null
14
- loading: {
15
- tasks: boolean
16
- recentTasks: boolean
17
- }
18
- }
1
+ import type {
2
+ UI_I_Task,
3
+ UI_I_RecentTask,
4
+ UI_I_RawRecentTaskItem,
5
+ } from '~/lib/models/store/tasks/interfaces'
6
+
7
+ export interface UI_I_TasksState {
8
+ hasFirstTask: boolean
9
+ taskList: UI_I_Task<string> | null
10
+ taskLastRequestType: string
11
+ taskQuery: string
12
+ recentTaskList: UI_I_RecentTask<string> | null
13
+ updatedTaskList: UI_I_RawRecentTaskItem<string>[] | null
14
+ loading: {
15
+ tasks: boolean
16
+ recentTasks: boolean
17
+ }
18
+ }
@@ -1,58 +1,58 @@
1
- import type {
2
- UI_I_RawRecentTask,
3
- UI_I_TasksLoadingPayload,
4
- UI_I_RecentTask,
5
- UI_I_Task,
6
- } from '~/lib/models/store/tasks/interfaces'
7
- import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
8
-
9
- export default {
10
- M_SET_RECENT_TASKS_LIST(
11
- state: UI_I_TasksState,
12
- payload: UI_I_RecentTask<string>
13
- ): void {
14
- if (state.recentTaskList) {
15
- state.recentTaskList.last = payload.last
16
-
17
- // Заменяем которые уже имеются и удаляем их из payload.items
18
- state.recentTaskList.items = state.recentTaskList.items.map((task) => {
19
- let changedTask = null
20
- payload.items = payload.items.filter((task2) => {
21
- if (task2.id === task.id) changedTask = task2
22
- return task2.id !== task.id
23
- })
24
-
25
- return changedTask || task
26
- })
27
-
28
- // Делаем слияние новых и старых tasks
29
- state.recentTaskList.items = [
30
- ...payload.items,
31
- ...state.recentTaskList.items,
32
- ]
33
- return
34
- }
35
-
36
- state.recentTaskList = payload
37
- },
38
- M_SET_TASKS_LAST_QUERY(state: UI_I_TasksState, payload: string): void {
39
- state.taskLastRequestType = payload
40
- },
41
- M_SET_TASKS_LIST(state: UI_I_TasksState, payload: UI_I_Task<string>): void {
42
- state.taskList = payload
43
- },
44
- M_SET_UPDATED_RECENT_TASKS_LIST(
45
- state: UI_I_TasksState,
46
- payload: UI_I_RawRecentTask<string>
47
- ): void {
48
- state.updatedTaskList = payload.items
49
- },
50
- M_SET_FIRST_TASK(state: UI_I_TasksState): void {
51
- state.hasFirstTask = true
52
- },
53
-
54
- M_SET_LOADING(state: UI_I_TasksState, payload: UI_I_TasksLoadingPayload): void {
55
- const { prop, value } = payload
56
- state.loading[prop] = value
57
- },
58
- }
1
+ import type {
2
+ UI_I_RawRecentTask,
3
+ UI_I_TasksLoadingPayload,
4
+ UI_I_RecentTask,
5
+ UI_I_Task,
6
+ } from '~/lib/models/store/tasks/interfaces'
7
+ import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
8
+
9
+ export default {
10
+ M_SET_RECENT_TASKS_LIST(
11
+ state: UI_I_TasksState,
12
+ payload: UI_I_RecentTask<string>
13
+ ): void {
14
+ if (state.recentTaskList) {
15
+ state.recentTaskList.last = payload.last
16
+
17
+ // Заменяем которые уже имеются и удаляем их из payload.items
18
+ state.recentTaskList.items = state.recentTaskList.items.map((task) => {
19
+ let changedTask = null
20
+ payload.items = payload.items.filter((task2) => {
21
+ if (task2.id === task.id) changedTask = task2
22
+ return task2.id !== task.id
23
+ })
24
+
25
+ return changedTask || task
26
+ })
27
+
28
+ // Делаем слияние новых и старых tasks
29
+ state.recentTaskList.items = [
30
+ ...payload.items,
31
+ ...state.recentTaskList.items,
32
+ ]
33
+ return
34
+ }
35
+
36
+ state.recentTaskList = payload
37
+ },
38
+ M_SET_TASKS_LAST_QUERY(state: UI_I_TasksState, payload: string): void {
39
+ state.taskLastRequestType = payload
40
+ },
41
+ M_SET_TASKS_LIST(state: UI_I_TasksState, payload: UI_I_Task<string>): void {
42
+ state.taskList = payload
43
+ },
44
+ M_SET_UPDATED_RECENT_TASKS_LIST(
45
+ state: UI_I_TasksState,
46
+ payload: UI_I_RawRecentTask<string>
47
+ ): void {
48
+ state.updatedTaskList = payload.items
49
+ },
50
+ M_SET_FIRST_TASK(state: UI_I_TasksState): void {
51
+ state.hasFirstTask = true
52
+ },
53
+
54
+ M_SET_LOADING(state: UI_I_TasksState, payload: UI_I_TasksLoadingPayload): void {
55
+ const { prop, value } = payload
56
+ state.loading[prop] = value
57
+ },
58
+ }
@@ -1,16 +1,16 @@
1
- import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
2
-
3
- const state: UI_I_TasksState = {
4
- hasFirstTask: false,
5
- recentTaskList: null,
6
- updatedTaskList: null,
7
- taskLastRequestType: '',
8
- taskQuery: '',
9
- taskList: null,
10
- loading: {
11
- tasks: false,
12
- recentTasks: false,
13
- },
14
- }
15
-
16
- export default state
1
+ import type { UI_I_TasksState } from '~/store/tasks/lib/models/interfaces'
2
+
3
+ const state: UI_I_TasksState = {
4
+ hasFirstTask: false,
5
+ recentTaskList: null,
6
+ updatedTaskList: null,
7
+ taskLastRequestType: '',
8
+ taskQuery: '',
9
+ taskList: null,
10
+ loading: {
11
+ tasks: false,
12
+ recentTasks: false,
13
+ },
14
+ }
15
+
16
+ export default state