bfg-common 1.5.812 → 1.5.813

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 (105) 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/DataGridPagination.vue +97 -97
  10. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  11. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  12. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  13. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  14. package/components/common/configure/advancedSystemSettings/AdvancedSystemSettings.vue +47 -47
  15. package/components/common/configure/advancedSystemSettings/modals/edit/Edit.vue +78 -78
  16. package/components/common/configure/advancedSystemSettings/modals/edit/New.vue +56 -56
  17. package/components/common/configure/advancedSystemSettings/modals/edit/Old.vue +66 -66
  18. package/components/common/configure/advancedSystemSettings/tableView/TableView.vue +40 -40
  19. package/components/common/configure/advancedSystemSettings/tableView/old/Old.vue +122 -122
  20. package/components/common/configure/advancedSystemSettings/tableView/old/field/Field.vue +139 -139
  21. package/components/common/configure/advancedSystemSettings/tableView/old/field/lib/models/enums.ts +13 -13
  22. package/components/common/configure/advancedSystemSettings/tableView/old/lib/config/table.ts +131 -131
  23. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  24. package/components/common/diagramMain/port/Port.vue +580 -580
  25. package/components/common/layout/theHeader/userMenu/UserMenu.vue +116 -116
  26. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +7 -7
  27. package/components/common/layout/topNotification/TopNotification.vue +37 -37
  28. package/components/common/layout/topNotification/lib/models/enums.ts +3 -3
  29. package/components/common/pages/backups/DetailView.vue +52 -52
  30. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  31. package/components/common/pages/backups/modals/Modals.vue +243 -243
  32. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/lib/config/options.ts +6 -6
  33. package/components/common/pages/backups/modals/restore/disks/tableView/old/Table.vue +117 -117
  34. package/components/common/pages/backups/modals/restore/lib/config/readyToCompleteOptions.ts +96 -96
  35. package/components/common/pages/backups/modals/restore/lib/config/steps.ts +134 -134
  36. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  37. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  38. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  39. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  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/scheduledTasks/lib/utils/utils.ts +84 -84
  43. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  44. package/components/common/select/radio/RadioGroup.vue +137 -137
  45. package/components/common/spiceConsole/Drawer.vue +420 -420
  46. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  47. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  48. package/components/common/tools/Actions.vue +207 -207
  49. package/components/common/treeView/TreeView.vue +52 -52
  50. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  51. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  52. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/New.vue +340 -340
  53. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +511 -502
  54. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/Old.vue +279 -279
  55. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/vmStoragePolicy/New.vue +53 -53
  56. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/vmStoragePolicy/Old.vue +45 -45
  57. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/vmStoragePolicy/VmStoragePolicy.vue +31 -31
  58. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/vmStoragePolicy/lib/config/options.ts +12 -12
  59. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  60. package/components/common/vm/actions/common/lib/models/interfaces.ts +192 -192
  61. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  62. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  63. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  64. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  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/steps/name/Old.vue +121 -121
  71. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  72. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  73. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  74. package/components/common/wizards/network/add/steps/portProperties/PortProperties.vue +192 -192
  75. package/composables/useAppVersion.ts +21 -21
  76. package/composables/useLocal.ts +6 -6
  77. package/composables/useLocalCommon.ts +39 -39
  78. package/lib/config/regExp.ts +53 -53
  79. package/package.json +1 -1
  80. package/plugins/console.ts +21 -21
  81. package/plugins/helpers.ts +34 -34
  82. package/plugins/mouse.ts +21 -21
  83. package/plugins/panelStates.ts +70 -70
  84. package/plugins/text.ts +59 -59
  85. package/public/spice-console/application/clientgui.js +854 -854
  86. package/public/spice-console/application/packetfactory.js +211 -211
  87. package/public/spice-console/application/virtualmouse.js +147 -147
  88. package/public/spice-console/lib/images/bitmap.js +203 -203
  89. package/public/spice-console/network/spicechannel.js +440 -440
  90. package/public/spice-console/process/cursorprocess.js +128 -128
  91. package/public/spice-console/process/inputprocess.js +227 -227
  92. package/public/spice-console/process/mainprocess.js +212 -212
  93. package/public/spice-console/run.js +210 -210
  94. package/store/inventory/modules/configure/advancedSystemSettings/actions.ts +92 -92
  95. package/store/inventory/modules/configure/advancedSystemSettings/getters.ts +17 -17
  96. package/store/inventory/modules/configure/advancedSystemSettings/lib/models/interfaces.ts +45 -45
  97. package/store/inventory/modules/configure/advancedSystemSettings/lib/models/types.ts +30 -30
  98. package/store/inventory/modules/configure/advancedSystemSettings/mappers/mapSettings.ts +50 -50
  99. package/store/main/actions.ts +28 -28
  100. package/store/main/getters.ts +14 -14
  101. package/store/main/lib/interfaces.ts +18 -18
  102. package/store/main/mutations.ts +28 -28
  103. package/store/main/state.ts +9 -9
  104. package/store/tasks/mappers/recentTasks.ts +123 -123
  105. package/store/tasks/mutations.ts +82 -82
@@ -1,210 +1,210 @@
1
- const getURLParameter = (parameter) => {
2
- const regex = new RegExp(`${parameter}=([^&]+)`)
3
- const match = regex.exec(window.location.pathname)
4
- return match && match[1]
5
- }
6
-
7
- let vmHost = window.location.hostname
8
- if (vmHost === 'localhost') {
9
- vmHost = '10.10.101.107' // Для разработки
10
- }
11
- const vmId = getURLParameter('id')
12
- const vmPort = window.config.public.PORT
13
-
14
- window.app = new Application({
15
- supportHighDPI: false,
16
- })
17
-
18
- // Custom code
19
- let vmWidth = -1
20
- let vmHeight = -1
21
- window.addEventListener('resize', () => {
22
- if (vmWidth !== -1 && vmHeight !== -1) setVmPosition(vmWidth, vmHeight)
23
- })
24
- const setVmPosition = (width, height) => {
25
- // Делаем выравнивание по центру
26
- vmWidth = width
27
- vmHeight = height
28
- const left = Math.max((window.innerWidth - width) / 2, 0)
29
- const top = Math.max((window.innerHeight - height) / 2, 0)
30
- document.getElementById('canvas_0').style.left = left + 'px'
31
- document.getElementById('eventLayer').style.left = left + 'px'
32
- document.getElementById('canvas_0').style.top = top + 'px'
33
- document.getElementById('eventLayer').style.top = top + 'px'
34
- }
35
- // Custom code end
36
-
37
- function start() {
38
- wdi.graphicDebug = new wdi.GraphicDebug({ debugMode: false })
39
- let cancelReconnection = false
40
- let cancelFreezeTimer, cancelReconnectionTimer
41
-
42
- const handleWindowAction = function (action, params) {
43
- if (action === 'windowClosed') {
44
- $(params.canvas).remove()
45
- $(params.eventLayer).remove()
46
- } else if (action === 'windowMoved') {
47
- $(params.canvas).css({
48
- top: params.info.top + 'px',
49
- left: params.info.left + 'px',
50
- })
51
- $(params.eventLayer).css({
52
- top: params.info.top + 'px',
53
- left: params.info.left + 'px',
54
- })
55
- } else if (action === 'init' || action === 'windowCreated') {
56
- let item = null
57
- let canvas = null
58
- let eventlayer = null
59
- const body = $('body')
60
-
61
- for (let i in params) {
62
- item = params[i]
63
- const position = item.position * 2
64
- canvas = $(item.canvas).css({
65
- zIndex: 10000 - position - 1,
66
- position: 'absolute',
67
- top: item.info.top + 'px',
68
- left: item.info.left + 'px',
69
- })
70
- eventlayer = $(item.eventLayer).css({
71
- top: item.info.top + 'px',
72
- left: item.info.left + 'px',
73
- zIndex: 10000 - position,
74
- })
75
- body.append(canvas)
76
- body.append(eventlayer)
77
- }
78
- } else if (action === 'ready') {
79
- app.setReconnecting(false)
80
- if (cancelReconnectionTimer?.clearTimeout) {
81
- cancelReconnectionTimer()
82
- cancelReconnectionTimer = false
83
- }
84
- const width = $(window).width()
85
- const height = $(window).height()
86
-
87
- app.sendCommand(
88
- 'setResolution',
89
- app.toSpiceResolution({
90
- width: width,
91
- height: height,
92
- })
93
- )
94
- if (wdi.IntegrationBenchmarkEnabled) {
95
- $('#integrationBenchmark').css({ display: 'inline' })
96
- $('#launchWordButton').prop('disabled', false)
97
- }
98
- } else if (action === 'resolution') {
99
- // Делаем выравнивание по центру
100
- const { 0: width, 1: height } = params
101
- setVmPosition(width, height)
102
- } else if (action === 'windowResized') {
103
- // Делаем выравнивание по центру
104
- const { 0: width } = params
105
- const left = (window.innerWidth - width) / 2
106
- if (left >= 0) {
107
- document.getElementById('canvas_0').style.left = left + 'px'
108
- document.getElementById('eventLayer').style.left = left + 'px'
109
- }
110
- } else if (action === 'windowMinimized') {
111
- $(params.canvas).css({ display: 'none' })
112
- $(params.eventLayer).css({ display: 'none' })
113
- } else if (action === 'windowMaximized') {
114
- $(params.canvas).css({
115
- top: params.info.top + 'px',
116
- left: params.info.left + 'px',
117
- })
118
- $(params.eventLayer).css({
119
- top: params.info.top + 'px',
120
- left: params.info.left + 'px',
121
- })
122
- } else if (action === 'windowRestored') {
123
- $(params.canvas).css({ display: 'block' })
124
- $(params.eventLayer).css({ display: 'block' })
125
- $(params.canvas).css({
126
- top: params.info.top + 'px',
127
- left: params.info.left + 'px',
128
- })
129
- $(params.eventLayer).css({
130
- top: params.info.top + 'px',
131
- left: params.info.left + 'px',
132
- })
133
- } else if (action === 'windowFocused') {
134
- //debugger; //eyeos should move the window to front!
135
- } else if (action === 'timeLapseDetected') {
136
- wdi.Debug.log('Detected time lapse of ', params, 'seconds')
137
- } else if (action === 'error') {
138
- if (!app.getReconnecting()) {
139
- if (!cancelFreezeTimer) {
140
- cancelFreezeTimer = setTimeout(function () {
141
- console.log('cancelFreeze')
142
- app.cancelFreeze()
143
- }, 10000)
144
- }
145
- if (!cancelReconnectionTimer) {
146
- cancelReconnectionTimer = setTimeout(function () {
147
- console.log('cancel reconnection')
148
- cancelReconnection = true
149
- }, 60000)
150
- }
151
- }
152
-
153
- setTimeout(function () {
154
- if (!cancelReconnection) {
155
- console.log('Trying reconnect ', Date.now())
156
- app.reconnect({
157
- freeze: true,
158
- })
159
- }
160
- }, 1000)
161
- }
162
- }
163
-
164
- $(window)['resize'](function () {
165
- app.sendCommand(
166
- 'setResolution',
167
- app.toSpiceResolution({
168
- width: $(window).width(),
169
- height: $(window).height(),
170
- })
171
- )
172
- })
173
-
174
- const runParams = {
175
- callback: handleWindowAction,
176
- context: this,
177
- host: vmHost,
178
- port: vmPort,
179
- protocol: 'wss',
180
- // 'vmToken': getURLParameter('vmtoken') || '',
181
- token: 'password',
182
- vmHost: vmHost,
183
- vmPort: vmPort,
184
- vmid: vmId,
185
- useBus: false,
186
- busHost: 'localhost',
187
- busPort: 61613,
188
- busSubscriptions: ['/topic/00000000-0000-0000-0000-000000000000'],
189
- busUser: '00000000-0000-0000-0000-000000000000',
190
- busPass: 'potato',
191
- layout: 'es',
192
- useWorkers: true,
193
- seamlessDesktopIntegration: false,
194
- connectionControl: false,
195
- heartbeatToken: 'heartbeat',
196
- heartbeatTimeout: 4000, //miliseconds
197
- externalClipboardHandling: false,
198
- disableClipboard: false,
199
- layer: document.getElementById('vmw'),
200
- // vmInfoToken: getURLParameter('vmInfoToken'),
201
- disableMessageBuffering: true,
202
- clientOffset: {
203
- x: 0,
204
- y: 0,
205
- },
206
- }
207
- app.run(runParams)
208
- }
209
-
210
- $(document).ready(start)
1
+ const getURLParameter = (parameter) => {
2
+ const regex = new RegExp(`${parameter}=([^&]+)`)
3
+ const match = regex.exec(window.location.pathname)
4
+ return match && match[1]
5
+ }
6
+
7
+ let vmHost = window.location.hostname
8
+ if (vmHost === 'localhost') {
9
+ vmHost = '10.10.101.107' // Для разработки
10
+ }
11
+ const vmId = getURLParameter('id')
12
+ const vmPort = window.config.public.PORT
13
+
14
+ window.app = new Application({
15
+ supportHighDPI: false,
16
+ })
17
+
18
+ // Custom code
19
+ let vmWidth = -1
20
+ let vmHeight = -1
21
+ window.addEventListener('resize', () => {
22
+ if (vmWidth !== -1 && vmHeight !== -1) setVmPosition(vmWidth, vmHeight)
23
+ })
24
+ const setVmPosition = (width, height) => {
25
+ // Делаем выравнивание по центру
26
+ vmWidth = width
27
+ vmHeight = height
28
+ const left = Math.max((window.innerWidth - width) / 2, 0)
29
+ const top = Math.max((window.innerHeight - height) / 2, 0)
30
+ document.getElementById('canvas_0').style.left = left + 'px'
31
+ document.getElementById('eventLayer').style.left = left + 'px'
32
+ document.getElementById('canvas_0').style.top = top + 'px'
33
+ document.getElementById('eventLayer').style.top = top + 'px'
34
+ }
35
+ // Custom code end
36
+
37
+ function start() {
38
+ wdi.graphicDebug = new wdi.GraphicDebug({ debugMode: false })
39
+ let cancelReconnection = false
40
+ let cancelFreezeTimer, cancelReconnectionTimer
41
+
42
+ const handleWindowAction = function (action, params) {
43
+ if (action === 'windowClosed') {
44
+ $(params.canvas).remove()
45
+ $(params.eventLayer).remove()
46
+ } else if (action === 'windowMoved') {
47
+ $(params.canvas).css({
48
+ top: params.info.top + 'px',
49
+ left: params.info.left + 'px',
50
+ })
51
+ $(params.eventLayer).css({
52
+ top: params.info.top + 'px',
53
+ left: params.info.left + 'px',
54
+ })
55
+ } else if (action === 'init' || action === 'windowCreated') {
56
+ let item = null
57
+ let canvas = null
58
+ let eventlayer = null
59
+ const body = $('body')
60
+
61
+ for (let i in params) {
62
+ item = params[i]
63
+ const position = item.position * 2
64
+ canvas = $(item.canvas).css({
65
+ zIndex: 10000 - position - 1,
66
+ position: 'absolute',
67
+ top: item.info.top + 'px',
68
+ left: item.info.left + 'px',
69
+ })
70
+ eventlayer = $(item.eventLayer).css({
71
+ top: item.info.top + 'px',
72
+ left: item.info.left + 'px',
73
+ zIndex: 10000 - position,
74
+ })
75
+ body.append(canvas)
76
+ body.append(eventlayer)
77
+ }
78
+ } else if (action === 'ready') {
79
+ app.setReconnecting(false)
80
+ if (cancelReconnectionTimer?.clearTimeout) {
81
+ cancelReconnectionTimer()
82
+ cancelReconnectionTimer = false
83
+ }
84
+ const width = $(window).width()
85
+ const height = $(window).height()
86
+
87
+ app.sendCommand(
88
+ 'setResolution',
89
+ app.toSpiceResolution({
90
+ width: width,
91
+ height: height,
92
+ })
93
+ )
94
+ if (wdi.IntegrationBenchmarkEnabled) {
95
+ $('#integrationBenchmark').css({ display: 'inline' })
96
+ $('#launchWordButton').prop('disabled', false)
97
+ }
98
+ } else if (action === 'resolution') {
99
+ // Делаем выравнивание по центру
100
+ const { 0: width, 1: height } = params
101
+ setVmPosition(width, height)
102
+ } else if (action === 'windowResized') {
103
+ // Делаем выравнивание по центру
104
+ const { 0: width } = params
105
+ const left = (window.innerWidth - width) / 2
106
+ if (left >= 0) {
107
+ document.getElementById('canvas_0').style.left = left + 'px'
108
+ document.getElementById('eventLayer').style.left = left + 'px'
109
+ }
110
+ } else if (action === 'windowMinimized') {
111
+ $(params.canvas).css({ display: 'none' })
112
+ $(params.eventLayer).css({ display: 'none' })
113
+ } else if (action === 'windowMaximized') {
114
+ $(params.canvas).css({
115
+ top: params.info.top + 'px',
116
+ left: params.info.left + 'px',
117
+ })
118
+ $(params.eventLayer).css({
119
+ top: params.info.top + 'px',
120
+ left: params.info.left + 'px',
121
+ })
122
+ } else if (action === 'windowRestored') {
123
+ $(params.canvas).css({ display: 'block' })
124
+ $(params.eventLayer).css({ display: 'block' })
125
+ $(params.canvas).css({
126
+ top: params.info.top + 'px',
127
+ left: params.info.left + 'px',
128
+ })
129
+ $(params.eventLayer).css({
130
+ top: params.info.top + 'px',
131
+ left: params.info.left + 'px',
132
+ })
133
+ } else if (action === 'windowFocused') {
134
+ //debugger; //eyeos should move the window to front!
135
+ } else if (action === 'timeLapseDetected') {
136
+ wdi.Debug.log('Detected time lapse of ', params, 'seconds')
137
+ } else if (action === 'error') {
138
+ if (!app.getReconnecting()) {
139
+ if (!cancelFreezeTimer) {
140
+ cancelFreezeTimer = setTimeout(function () {
141
+ console.log('cancelFreeze')
142
+ app.cancelFreeze()
143
+ }, 10000)
144
+ }
145
+ if (!cancelReconnectionTimer) {
146
+ cancelReconnectionTimer = setTimeout(function () {
147
+ console.log('cancel reconnection')
148
+ cancelReconnection = true
149
+ }, 60000)
150
+ }
151
+ }
152
+
153
+ setTimeout(function () {
154
+ if (!cancelReconnection) {
155
+ console.log('Trying reconnect ', Date.now())
156
+ app.reconnect({
157
+ freeze: true,
158
+ })
159
+ }
160
+ }, 1000)
161
+ }
162
+ }
163
+
164
+ $(window)['resize'](function () {
165
+ app.sendCommand(
166
+ 'setResolution',
167
+ app.toSpiceResolution({
168
+ width: $(window).width(),
169
+ height: $(window).height(),
170
+ })
171
+ )
172
+ })
173
+
174
+ const runParams = {
175
+ callback: handleWindowAction,
176
+ context: this,
177
+ host: vmHost,
178
+ port: vmPort,
179
+ protocol: 'wss',
180
+ // 'vmToken': getURLParameter('vmtoken') || '',
181
+ token: 'password',
182
+ vmHost: vmHost,
183
+ vmPort: vmPort,
184
+ vmid: vmId,
185
+ useBus: false,
186
+ busHost: 'localhost',
187
+ busPort: 61613,
188
+ busSubscriptions: ['/topic/00000000-0000-0000-0000-000000000000'],
189
+ busUser: '00000000-0000-0000-0000-000000000000',
190
+ busPass: 'potato',
191
+ layout: 'es',
192
+ useWorkers: true,
193
+ seamlessDesktopIntegration: false,
194
+ connectionControl: false,
195
+ heartbeatToken: 'heartbeat',
196
+ heartbeatTimeout: 4000, //miliseconds
197
+ externalClipboardHandling: false,
198
+ disableClipboard: false,
199
+ layer: document.getElementById('vmw'),
200
+ // vmInfoToken: getURLParameter('vmInfoToken'),
201
+ disableMessageBuffering: true,
202
+ clientOffset: {
203
+ x: 0,
204
+ y: 0,
205
+ },
206
+ }
207
+ app.run(runParams)
208
+ }
209
+
210
+ $(document).ready(start)
@@ -1,92 +1,92 @@
1
- import type { UI_I_RefreshStack } from '~/store/main/lib/interfaces'
2
- import type { UI_I_Options } from '~/lib/models/composables/useMyFetch/interfaces'
3
- import type {
4
- API_UI_I_Error,
5
- API_UI_I_Response,
6
- UI_I_CommitOptions,
7
- } from '~/lib/models/store/interfaces'
8
- import type {
9
- UI_API_I_AdvancedSystemSetting,
10
- UI_I_AdvancedSystemSetting, UI_I_AdvancedSystemSettingLoadingPayload,
11
- UI_I_AdvancedSystemSettingPayload,
12
- } from '~/store/inventory/modules/configure/advancedSystemSettings/lib/models/interfaces'
13
- import type { API_UI_I_DataTable } from '~/lib/models/table/interfaces'
14
- import { mapSettings } from '~/store/inventory/modules/configure/advancedSystemSettings/mappers/mapSettings'
15
-
16
- export default {
17
- async A_GET_SETTINGS(
18
- context: {
19
- commit: <T>(arg0: string, arg1: T) => void
20
- dispatch: (
21
- arg0: string,
22
- arg1: UI_I_RefreshStack,
23
- arg2: UI_I_CommitOptions
24
- ) => void
25
- },
26
- payload: string
27
- ): Promise<API_UI_I_Error | void> {
28
- const url = 'ui/host/cfg'
29
- // const url = `ui/hosts/${payload}/advancedSystemSettings`
30
- const options: UI_I_Options = {
31
- method: 'GET',
32
- key: Date.now().toString(),
33
- onRequest() {
34
- context.commit<UI_I_AdvancedSystemSettingLoadingPayload>('M_SET_LOADING', {
35
- prop: 'settings',
36
- value: true
37
- })
38
- },
39
- onResponse({
40
- response,
41
- }: API_UI_I_Response<UI_API_I_AdvancedSystemSetting[]>) {
42
- const data = mapSettings(response._data)
43
- context.commit<API_UI_I_DataTable<UI_I_AdvancedSystemSetting[]>>(
44
- 'M_SET_SETTINGS',
45
- data
46
- )
47
- context.commit<UI_I_AdvancedSystemSettingLoadingPayload>('M_SET_LOADING', {
48
- prop: 'settings',
49
- value: false
50
- })
51
- },
52
- }
53
-
54
- const { error } = await useMyFetch<never, API_UI_I_Error>(url, options)
55
-
56
- if (error.value?.data?.error_code) {
57
- Promise.reject(error.value.data.error_message)
58
- }
59
-
60
- context.dispatch(
61
- 'main/A_ADD_IN_GLOBAL_REFRESH',
62
- { key: 'hostAdvancedSystemSettings', url, options },
63
- { root: true }
64
- )
65
- },
66
- async A_UPDATE_SETTINGS(
67
- context: {
68
- commit: <T>(arg0: string, arg1: T) => void
69
- },
70
- payload: UI_I_AdvancedSystemSettingPayload
71
- ): Promise<API_UI_I_Error | void> {
72
- const { host, onlyUpdatedSettings, allUpdatedSettings } = payload
73
- // const url = `ui/hosts/${host}/advancedSystemSettings`
74
- const url = 'ui/host/cfg'
75
- const options: UI_I_Options = {
76
- method: 'PATCH',
77
- key: Date.now().toString(),
78
- body: onlyUpdatedSettings,
79
- }
80
-
81
- const { error } = await useMyFetch<never, API_UI_I_Error>(url, options)
82
-
83
- if (error.value?.data) {
84
- return error.value.data
85
- } else {
86
- context.commit<API_UI_I_DataTable<UI_I_AdvancedSystemSetting[]>>(
87
- 'M_SET_SETTINGS',
88
- allUpdatedSettings
89
- )
90
- }
91
- },
92
- }
1
+ import type { UI_I_RefreshStack } from '~/store/main/lib/interfaces'
2
+ import type { UI_I_Options } from '~/lib/models/composables/useMyFetch/interfaces'
3
+ import type {
4
+ API_UI_I_Error,
5
+ API_UI_I_Response,
6
+ UI_I_CommitOptions,
7
+ } from '~/lib/models/store/interfaces'
8
+ import type {
9
+ UI_API_I_AdvancedSystemSetting,
10
+ UI_I_AdvancedSystemSetting, UI_I_AdvancedSystemSettingLoadingPayload,
11
+ UI_I_AdvancedSystemSettingPayload,
12
+ } from '~/store/inventory/modules/configure/advancedSystemSettings/lib/models/interfaces'
13
+ import type { API_UI_I_DataTable } from '~/lib/models/table/interfaces'
14
+ import { mapSettings } from '~/store/inventory/modules/configure/advancedSystemSettings/mappers/mapSettings'
15
+
16
+ export default {
17
+ async A_GET_SETTINGS(
18
+ context: {
19
+ commit: <T>(arg0: string, arg1: T) => void
20
+ dispatch: (
21
+ arg0: string,
22
+ arg1: UI_I_RefreshStack,
23
+ arg2: UI_I_CommitOptions
24
+ ) => void
25
+ },
26
+ payload: string
27
+ ): Promise<API_UI_I_Error | void> {
28
+ const url = 'ui/host/cfg'
29
+ // const url = `ui/hosts/${payload}/advancedSystemSettings`
30
+ const options: UI_I_Options = {
31
+ method: 'GET',
32
+ key: Date.now().toString(),
33
+ onRequest() {
34
+ context.commit<UI_I_AdvancedSystemSettingLoadingPayload>('M_SET_LOADING', {
35
+ prop: 'settings',
36
+ value: true
37
+ })
38
+ },
39
+ onResponse({
40
+ response,
41
+ }: API_UI_I_Response<UI_API_I_AdvancedSystemSetting[]>) {
42
+ const data = mapSettings(response._data)
43
+ context.commit<API_UI_I_DataTable<UI_I_AdvancedSystemSetting[]>>(
44
+ 'M_SET_SETTINGS',
45
+ data
46
+ )
47
+ context.commit<UI_I_AdvancedSystemSettingLoadingPayload>('M_SET_LOADING', {
48
+ prop: 'settings',
49
+ value: false
50
+ })
51
+ },
52
+ }
53
+
54
+ const { error } = await useMyFetch<never, API_UI_I_Error>(url, options)
55
+
56
+ if (error.value?.data?.error_code) {
57
+ Promise.reject(error.value.data.error_message)
58
+ }
59
+
60
+ context.dispatch(
61
+ 'main/A_ADD_IN_GLOBAL_REFRESH',
62
+ { key: 'hostAdvancedSystemSettings', url, options },
63
+ { root: true }
64
+ )
65
+ },
66
+ async A_UPDATE_SETTINGS(
67
+ context: {
68
+ commit: <T>(arg0: string, arg1: T) => void
69
+ },
70
+ payload: UI_I_AdvancedSystemSettingPayload
71
+ ): Promise<API_UI_I_Error | void> {
72
+ const { host, onlyUpdatedSettings, allUpdatedSettings } = payload
73
+ // const url = `ui/hosts/${host}/advancedSystemSettings`
74
+ const url = 'ui/host/cfg'
75
+ const options: UI_I_Options = {
76
+ method: 'PATCH',
77
+ key: Date.now().toString(),
78
+ body: onlyUpdatedSettings,
79
+ }
80
+
81
+ const { error } = await useMyFetch<never, API_UI_I_Error>(url, options)
82
+
83
+ if (error.value?.data) {
84
+ return error.value.data
85
+ } else {
86
+ context.commit<API_UI_I_DataTable<UI_I_AdvancedSystemSetting[]>>(
87
+ 'M_SET_SETTINGS',
88
+ allUpdatedSettings
89
+ )
90
+ }
91
+ },
92
+ }
@@ -1,17 +1,17 @@
1
- import type {
2
- UI_I_AdvancedSystemSetting,
3
- UI_I_AdvancedSystemSettingsState,
4
- } from '~/store/inventory/modules/configure/advancedSystemSettings/lib/models/interfaces'
5
- import type { API_UI_I_DataTable } from '~/lib/models/table/interfaces'
6
- import type { T_AdvancedSystemSettingLoading } from '~/store/inventory/modules/configure/advancedSystemSettings/lib/models/types'
7
-
8
- export default {
9
- getSettings: (
10
- state: UI_I_AdvancedSystemSettingsState
11
- ): API_UI_I_DataTable<UI_I_AdvancedSystemSetting[]> => state.settings,
12
- getLoading:
13
- (state: UI_I_AdvancedSystemSettingsState) =>
14
- (type: T_AdvancedSystemSettingLoading): boolean => {
15
- return state.loading[type]
16
- },
17
- }
1
+ import type {
2
+ UI_I_AdvancedSystemSetting,
3
+ UI_I_AdvancedSystemSettingsState,
4
+ } from '~/store/inventory/modules/configure/advancedSystemSettings/lib/models/interfaces'
5
+ import type { API_UI_I_DataTable } from '~/lib/models/table/interfaces'
6
+ import type { T_AdvancedSystemSettingLoading } from '~/store/inventory/modules/configure/advancedSystemSettings/lib/models/types'
7
+
8
+ export default {
9
+ getSettings: (
10
+ state: UI_I_AdvancedSystemSettingsState
11
+ ): API_UI_I_DataTable<UI_I_AdvancedSystemSetting[]> => state.settings,
12
+ getLoading:
13
+ (state: UI_I_AdvancedSystemSettingsState) =>
14
+ (type: T_AdvancedSystemSettingLoading): boolean => {
15
+ return state.loading[type]
16
+ },
17
+ }