bfg-common 1.5.244 → 1.5.245

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 (193) 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/assets/scss/common/icons/icons-1.scss +2 -2
  7. package/assets/scss/common/icons/icons-5.scss +5 -5
  8. package/assets/scss/common/icons/icons-6.scss +1 -1
  9. package/assets/scss/common/theme.scss +6 -0
  10. package/components/atoms/TheIcon3.vue +50 -50
  11. package/components/atoms/perPage/PerPage.vue +58 -58
  12. package/components/atoms/table/dataGrid/DataGrid.vue +1717 -1717
  13. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  14. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  15. package/components/atoms/tabs/VerticalTabs.vue +105 -105
  16. package/components/common/backup/actions/deleteBackup/DeleteBackup.vue +38 -0
  17. package/components/common/backup/storage/actions/add/Add.vue +250 -247
  18. package/components/common/backup/storage/actions/add/New.vue +283 -286
  19. package/components/common/backup/storage/actions/add/Old.vue +116 -114
  20. package/components/common/backup/storage/actions/add/lib/config/steps.ts +168 -168
  21. package/components/common/backup/storage/actions/add/steps/common/tooltipInfo/TooltipInfo.vue +94 -0
  22. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigure.vue +41 -41
  23. package/components/common/backup/storage/actions/add/steps/nameAndConfigure/NameAndConfigureNew.vue +294 -304
  24. package/components/common/backup/storage/actions/add/steps/readyComplete/ReadyComplete.vue +45 -45
  25. package/components/common/backup/storage/actions/add/steps/readyComplete/lib/config/propertiesDetails.ts +242 -242
  26. package/components/common/backup/storage/actions/add/steps/typeMode/TypeModeNew.vue +3 -12
  27. package/components/common/backup/storage/actions/delete/Delete.vue +65 -65
  28. package/components/common/browse/BrowseNew.vue +8 -2
  29. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  30. package/components/common/context/lib/models/interfaces.ts +31 -31
  31. package/components/common/diagramMain/DiagramMain.vue +897 -897
  32. package/components/common/diagramMain/Header.vue +214 -214
  33. package/components/common/layout/theHeader/feedback/new/additionalDetails/Headline.vue +67 -8
  34. package/components/common/layout/theHeader/feedback/new/subtitle/Subtitle.vue +72 -8
  35. package/components/common/layout/theHeader/helpMenu/About.vue +82 -82
  36. package/components/common/layout/theHeader/userMenu/modals/preferences/view/ViewOld.vue +112 -112
  37. package/components/common/monitor/overview/OverviewOld.vue +139 -139
  38. package/components/common/pages/home/headline/Headline.vue +45 -45
  39. package/components/common/pages/home/headline/HeadlineOld.vue +42 -42
  40. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  41. package/components/common/pages/home/widgets/Widgets.vue +49 -49
  42. package/components/common/pages/home/widgets/WidgetsNew.vue +86 -86
  43. package/components/common/pages/home/widgets/WidgetsOld.vue +34 -34
  44. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  45. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  46. package/components/common/pages/home/widgets/vms/Vms.vue +26 -26
  47. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  48. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  49. package/components/common/pages/packages/Packages.vue +208 -208
  50. package/components/common/pages/shortcuts/block/BlockOld.vue +68 -68
  51. package/components/common/pages/tasks/table/Table.vue +7 -15
  52. package/components/common/pages/tasks/table/errorInfo/ErrorInfo.vue +128 -0
  53. package/components/common/pages/tasks/table/expandDetails/ExpandDetails.vue +9 -15
  54. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  55. package/components/common/recursionTree/RecursionTree.vue +223 -223
  56. package/components/common/select/button/ButtonDropdown.vue +108 -108
  57. package/components/common/spiceConsole/Drawer.vue +377 -377
  58. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  59. package/components/common/vm/actions/add/Add.vue +3 -0
  60. package/components/common/vm/actions/add/New.vue +4 -0
  61. package/components/common/vm/actions/add/Old.vue +4 -0
  62. package/components/common/vm/actions/add/folderTreeView/FolderTreeView.vue +72 -72
  63. package/components/common/vm/actions/add/folderTreeView/New.vue +40 -40
  64. package/components/common/vm/actions/add/folderTreeView/Old.vue +50 -50
  65. package/components/common/vm/actions/clone/Clone.vue +3 -0
  66. package/components/common/vm/actions/clone/lib/config/steps.ts +291 -291
  67. package/components/common/vm/actions/clone/toTemplate/ToTemplate.vue +3 -0
  68. package/components/common/vm/actions/clone/toTemplate/lib/config/steps.ts +116 -116
  69. package/components/common/vm/actions/common/customizeHardware/CustomizeHardware.vue +3 -0
  70. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareNew.vue +7 -2
  71. package/components/common/vm/actions/common/customizeHardware/CustomizeHardwareOld.vue +2 -0
  72. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardware.vue +3 -0
  73. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareNew.vue +9 -7
  74. package/components/common/vm/actions/common/customizeHardware/virtualHardware/VirtualHardwareOld.vue +321 -319
  75. package/components/common/vm/actions/common/customizeHardware/virtualHardware/browseView/BrowseView.vue +219 -219
  76. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/Bus.vue +100 -100
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/bus/BusNew.vue +99 -8
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +232 -232
  79. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveNew.vue +4 -0
  80. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDriveOld.vue +168 -168
  81. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +25 -25
  82. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaNew.vue +78 -78
  83. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cdDvdDrive/media/MediaOld.vue +50 -50
  84. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/CpuNew.vue +8 -53
  85. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/model/ModelNew.vue +162 -34
  86. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/Shares.vue +140 -140
  87. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/SharesNew.vue +6 -1
  88. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  89. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/tooltip/TooltipNew.vue +154 -154
  90. package/components/common/vm/actions/common/customizeHardware/virtualHardware/limit/Limit.vue +220 -220
  91. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +307 -307
  92. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/MemoryNew.vue +5 -1
  93. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/hotPlug/HotPlugNew.vue +8 -2
  94. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +385 -382
  95. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskNew.vue +6 -0
  96. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/NewHardDiskOld.vue +2 -0
  97. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/file/FileNew.vue +8 -3
  98. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/Location.vue +154 -151
  99. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationNew.vue +75 -73
  100. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/LocationOld.vue +85 -83
  101. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/StorageModal.vue +3 -0
  102. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/StorageModalNew.vue +2 -0
  103. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/location/StorageModalOld.vue +2 -0
  104. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/maximumSize/MaximumSizeNew.vue +8 -4
  105. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/provisioning/ProvisioningNew.vue +6 -1
  106. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newHardDisk/sharing/SharingNew.vue +6 -1
  107. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  108. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/NewNetworkNew.vue +1 -1
  109. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/New.vue +4 -3
  110. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/Table.vue +1 -0
  111. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/location/new/table/lib/config/config.ts +94 -94
  112. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +119 -119
  113. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +205 -205
  114. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoNew.vue +66 -66
  115. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIoOld.vue +62 -62
  116. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +31 -31
  117. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIoOld.vue +76 -76
  118. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +15 -15
  119. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteNew.vue +42 -42
  120. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/note/NoteOld.vue +30 -30
  121. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGridOld.vue +84 -84
  122. package/components/common/vm/actions/common/customizeHardware/virtualHardware/newUsbController/NewUsbControllerNew.vue +1 -0
  123. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/Other.vue +16 -16
  124. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/OtherNew.vue +8 -2
  125. package/components/common/vm/actions/common/customizeHardware/virtualHardware/other/inputDevices/InputDevicesNew.vue +40 -40
  126. package/components/common/vm/actions/common/customizeHardware/virtualHardware/reservation/ReservationNew.vue +5 -2
  127. package/components/common/vm/actions/common/customizeHardware/virtualHardware/videoCard/VideoCardNew.vue +5 -2
  128. package/components/common/vm/actions/common/customizeHardware/vmoptions/Vmoptions.vue +145 -145
  129. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/BootOptionsNew.vue +5 -1
  130. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +32 -32
  131. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +60 -60
  132. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +174 -174
  133. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/OrderNew.vue +4 -0
  134. package/components/common/vm/actions/common/customizeHardware/vmoptions/generalOptions/GeneralOptionsNew.vue +1 -0
  135. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/New.vue +8 -2
  136. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/copyPaste/CopyPasteNew.vue +31 -31
  137. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/fileTransfer/FileTransferNew.vue +31 -31
  138. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +32 -32
  139. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +103 -103
  140. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/password/PasswordNew.vue +128 -128
  141. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +28 -28
  142. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionNew.vue +39 -39
  143. package/components/common/vm/actions/common/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirectionOld.vue +44 -44
  144. package/components/common/vm/actions/common/customizeHardware/vmoptions/tools/ToolsNew.vue +5 -1
  145. package/components/common/vm/actions/common/lib/utils/capabilities.ts +52 -52
  146. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  147. package/components/common/vm/actions/common/select/computeResource/treeView/New.vue +44 -44
  148. package/components/common/vm/actions/common/select/computeResource/treeView/TreeView.vue +118 -118
  149. package/components/common/vm/actions/common/select/createType/CreateType.vue +38 -38
  150. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  151. package/components/common/vm/actions/common/select/name/New.vue +70 -10
  152. package/components/common/vm/actions/common/select/os/Old.vue +152 -152
  153. package/components/common/vm/actions/common/select/os/Os.vue +139 -139
  154. package/components/common/vm/actions/common/select/storage/Old.vue +2 -0
  155. package/components/common/vm/actions/common/select/storage/Storage.vue +3 -0
  156. package/components/common/vm/actions/common/select/storage/new/New.vue +10 -5
  157. package/components/common/vm/actions/common/select/storage/new/lib/config/table.ts +2 -1
  158. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  159. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  160. package/components/common/vm/actions/editSettings/EditSettings.vue +3 -0
  161. package/components/common/vm/actions/editSettings/EditSettingsOld.vue +2 -0
  162. package/components/common/vm/actions/editSettings/new/New.vue +2 -0
  163. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  164. package/components/common/wizards/datastore/add/New.vue +3 -8
  165. package/components/common/wizards/datastore/add/steps/common/tooltipInfo/TooltipInfo.vue +93 -0
  166. package/components/common/wizards/datastore/add/steps/nameAndConfigure/NameAndConfigureNew.vue +6 -17
  167. package/components/common/wizards/datastore/add/steps/nameAndDevice/NameAndDeviceNew.vue +3 -9
  168. package/components/common/wizards/datastore/add/steps/typeMode/TypeModeNew.vue +3 -8
  169. package/components/common/wizards/vm/migrate/lib/config/constructDataReady.ts +220 -220
  170. package/components/common/wizards/vm/migrate/lib/config/steps.ts +157 -157
  171. package/components/common/wizards/vm/migrate/lib/validations.ts +68 -68
  172. package/components/common/wizards/vm/migrate/select/computeResource/tableView/TableView.vue +135 -137
  173. package/components/common/wizards/vm/migrate/select/network/Network.vue +103 -103
  174. package/components/common/wizards/vm/migrate/select/network/table/network/lib/config/advancedTable.ts +91 -91
  175. package/composables/productNameLocal.ts +30 -30
  176. package/composables/useAppVersion.ts +21 -21
  177. package/lib/utils/utils.ts +14 -2
  178. package/package.json +2 -2
  179. package/plugins/cron.ts +75 -0
  180. package/plugins/date.ts +233 -233
  181. package/plugins/helpers.ts +18 -0
  182. package/plugins/number.ts +18 -0
  183. package/plugins/panelStates.ts +70 -0
  184. package/plugins/text.ts +59 -48
  185. package/plugins/time.ts +17 -0
  186. package/public/spice-console/lib/images/bitmap.js +203 -203
  187. package/public/spice-console/network/spicechannel.js +387 -387
  188. package/store/main/mutations.ts +7 -7
  189. package/store/main/state.ts +7 -7
  190. package/store/tasks/mappers/recentTasks.ts +64 -64
  191. package/components/common/tooltip/Help.vue +0 -132
  192. package/components/common/tooltip/lib/models/types.ts +0 -1
  193. /package/{components/common/split/horizontal/lib/models → lib/models/plugins/panelStates}/interfaces.ts +0 -0
@@ -1,30 +1,30 @@
1
- import type { UI_I_Localization } from '~/lib/models/interfaces'
2
- import type { UI_T_LanguageKey } from '~/lib/models/types'
3
-
4
- export function productNameLocal(
5
- localization: UI_I_Localization
6
- ): UI_I_Localization {
7
- const config = useRuntimeConfig()
8
-
9
- const productName =
10
- config.public.LOCALIZATION_CODE === 'ru'
11
- ? config.public.PRODUCT_NAME_RU
12
- : config.public.PRODUCT_NAME_EN
13
-
14
- return replaceProductNameRecursion(localization, productName)
15
- }
16
-
17
- const replaceProductNameRecursion = (
18
- localization: UI_I_Localization,
19
- productName: any
20
- ): UI_I_Localization => {
21
- for (const key of Object.keys(localization)) {
22
- let item = localization[key as UI_T_LanguageKey]
23
-
24
- for (const key2 of Object.keys(item)) {
25
- item[key2] = item[key2].replaceAll('{productName}', productName)
26
- }
27
- }
28
-
29
- return localization
30
- }
1
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
2
+ import type { UI_T_LanguageKey } from '~/lib/models/types'
3
+
4
+ export function productNameLocal(
5
+ localization: UI_I_Localization
6
+ ): UI_I_Localization {
7
+ const config = useRuntimeConfig()
8
+
9
+ const productName =
10
+ config.public.LOCALIZATION_CODE === 'ru'
11
+ ? config.public.PRODUCT_NAME_RU
12
+ : config.public.PRODUCT_NAME_EN
13
+
14
+ return replaceProductNameRecursion(localization, productName)
15
+ }
16
+
17
+ const replaceProductNameRecursion = (
18
+ localization: UI_I_Localization,
19
+ productName: any
20
+ ): UI_I_Localization => {
21
+ for (const key of Object.keys(localization)) {
22
+ let item = localization[key as UI_T_LanguageKey]
23
+
24
+ for (const key2 of Object.keys(item)) {
25
+ item[key2] = item[key2].replaceAll('{productName}', productName)
26
+ }
27
+ }
28
+
29
+ return localization
30
+ }
@@ -1,21 +1,21 @@
1
- import type { UI_I_UseAppVersionReturnType } from '~/lib/models/composables/useAppVersion/interfaces'
2
-
3
- export function useAppVersion(): UI_I_UseAppVersionReturnType {
4
- const config = useRuntimeConfig()
5
- const version = config.public.APP_VERSION as string
6
-
7
- // const regexHasDot = /\./
8
- // const regexHasDotAndB = /\.\d*b$/
9
- // const regexHasDotAndD = /\..*d/
10
-
11
- // const isBeta = regexHasDotAndB.test(version)
12
- // const isDev =
13
- // regexHasDotAndD.test(version) ||
14
- // (!regexHasDot.test(version) && version.length < 8)
15
-
16
- return {
17
- version,
18
- // isBeta,
19
- // isDev,
20
- }
21
- }
1
+ import type { UI_I_UseAppVersionReturnType } from '~/lib/models/composables/useAppVersion/interfaces'
2
+
3
+ export function useAppVersion(): UI_I_UseAppVersionReturnType {
4
+ const config = useRuntimeConfig()
5
+ const version = config.public.APP_VERSION as string
6
+
7
+ // const regexHasDot = /\./
8
+ // const regexHasDotAndB = /\.\d*b$/
9
+ // const regexHasDotAndD = /\..*d/
10
+
11
+ // const isBeta = regexHasDotAndB.test(version)
12
+ // const isDev =
13
+ // regexHasDotAndD.test(version) ||
14
+ // (!regexHasDot.test(version) && version.length < 8)
15
+
16
+ return {
17
+ version,
18
+ // isBeta,
19
+ // isDev,
20
+ }
21
+ }
@@ -10,9 +10,15 @@ export const enumKeyFromValue = (
10
10
  return dataFromEnum ? dataFromEnum[0] : undefined
11
11
  }
12
12
 
13
+ export const extractContentInBrackets = (inputString: string): string => {
14
+ const regex = /\[([^\]]+)\]/
15
+ const match = inputString.match(regex)
16
+
17
+ return match ? match[1] : ''
18
+ }
13
19
  export const extractContentLastSlash = (
14
- inputString: string,
15
- after = false
20
+ inputString: string,
21
+ after = false
16
22
  ): string => {
17
23
  const regex = after ? /\/([^/]+)\/?$/ : /(.*)\//
18
24
 
@@ -21,6 +27,12 @@ export const extractContentLastSlash = (
21
27
  return match ? match[1] : ''
22
28
  }
23
29
 
30
+ export const removeLastSlash = (
31
+ inputString: string
32
+ ): string => {
33
+ return inputString.endsWith('/') ? inputString.slice(0, -1) : inputString
34
+ }
35
+
24
36
  export const intToIp = (value: number): string => {
25
37
  return [
26
38
  (value >> 24) & 0xff,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "bfg-common",
3
3
  "private": false,
4
- "version": "1.5.244",
4
+ "version": "1.5.245",
5
5
  "scripts": {
6
6
  "build": "nuxt build",
7
7
  "dev": "nuxt dev --port=3002",
@@ -35,7 +35,7 @@
35
35
  "@vueuse/components": "^10.1.2",
36
36
  "date-fns": "^2.29.3",
37
37
  "bfg-nuxt-3-graph": "1.0.26",
38
- "bfg-uikit": "1.0.438",
38
+ "bfg-uikit": "1.0.442",
39
39
  "html2canvas": "^1.4.1",
40
40
  "prettier-eslint": "^15.0.1"
41
41
  }
@@ -0,0 +1,75 @@
1
+ import { defineNuxtPlugin } from '#app'
2
+ import type { UI_I_Localization } from '~/lib/models/interfaces'
3
+
4
+ export default defineNuxtPlugin(() => {
5
+ const cron = function (): any {
6
+ const self: any = {}
7
+
8
+ self.cronToHumanReadable = (
9
+ cronString: string,
10
+ localization: UI_I_Localization
11
+ ): string => {
12
+ const [minutes, hours, , , daysString] = cronString.split(' ')
13
+
14
+ const daysMap = {
15
+ 0: localization.sundays,
16
+ 1: localization.mondays,
17
+ 2: localization.tuesdays,
18
+ 3: localization.wednesdays,
19
+ 4: localization.thursdays,
20
+ 5: localization.fridays,
21
+ 6: localization.saturdays,
22
+ }
23
+
24
+ let days = localization.everyDay
25
+ if (daysString !== '*') {
26
+ const daysArray = daysString
27
+ .split(',')
28
+ // @ts-ignore
29
+ .map((day: number) => daysMap[day])
30
+ days = `${localization.on2} ${daysArray.join(', ')}`
31
+ }
32
+
33
+ // Формирование строки времени
34
+ const time = `${String(hours).padStart(2, '0')}:${String(
35
+ minutes
36
+ ).padStart(2, '0')}`
37
+
38
+ return `${days} ${localization.in} ${time}`
39
+ }
40
+
41
+ self.decodeCron = (cronString: string): any => {
42
+ const [minutes, hours, , , daysString] = cronString.split(' ')
43
+
44
+ const days =
45
+ daysString === '*'
46
+ ? [0, 1, 2, 3, 4, 5, 6]
47
+ : daysString.split(',').map(Number)
48
+
49
+ const h = hours === '*' ? '00' : String(hours).padStart(2, '0')
50
+ const m = minutes === '*' ? '00' : String(minutes).padStart(2, '0')
51
+ const time = `${h}:${m}`
52
+
53
+ return [
54
+ days,
55
+ time,
56
+ ]
57
+ }
58
+
59
+ self.encodeCron = (days: number[], time: string): string => {
60
+ const { 0: hours, 1: minutes } = time.split(':').map(Number)
61
+
62
+ const daysString = days.length === 7 ? '*' : days.join(',')
63
+
64
+ return `${minutes} ${hours} * * ${daysString}`
65
+ }
66
+
67
+ return self
68
+ }.call({})
69
+
70
+ return {
71
+ provide: {
72
+ cron,
73
+ },
74
+ }
75
+ })