bfg-common 1.5.759 → 1.5.760

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 (124) 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/localization/local_be.json +6 -3
  7. package/assets/localization/local_en.json +6 -3
  8. package/assets/localization/local_hy.json +6 -3
  9. package/assets/localization/local_kk.json +6 -3
  10. package/assets/localization/local_ru.json +6 -3
  11. package/assets/localization/local_zh.json +6 -3
  12. package/components/atoms/TheIcon3.vue +50 -50
  13. package/components/atoms/collapse/CollapseNav.vue +170 -170
  14. package/components/atoms/perPage/PerPage.vue +58 -58
  15. package/components/atoms/table/dataGrid/DataGridPagination.vue +97 -97
  16. package/components/atoms/table/dataGrid/lib/config/settingsTable.ts +94 -94
  17. package/components/atoms/table/dataGrid/lib/utils/export.ts +16 -16
  18. package/components/common/backup/storage/actions/add/lib/utils.ts +51 -51
  19. package/components/common/browse/blocks/contents/filesNew/Skeleton.vue +18 -18
  20. package/components/common/diagramMain/modals/lib/config/vCenterModal.ts +48 -48
  21. package/components/common/diagramMain/port/Port.vue +580 -580
  22. package/components/common/layout/console/Console.vue +70 -70
  23. package/components/common/layout/theHeader/New.vue +2 -0
  24. package/components/common/layout/theHeader/Old.vue +2 -0
  25. package/components/common/layout/theHeader/TheHeader.vue +2 -0
  26. package/components/common/layout/theHeader/modals/reconnect/New.vue +1 -1
  27. package/components/common/layout/theHeader/modals/reconnect/Reconnect.vue +3 -1
  28. package/components/common/layout/theHeader/userMenu/UserMenu.vue +2 -0
  29. package/components/common/layout/theHeader/userMenu/modals/preferences/New.vue +2 -0
  30. package/components/common/layout/theHeader/userMenu/modals/preferences/Old.vue +2 -0
  31. package/components/common/layout/theHeader/userMenu/modals/preferences/Preferences.vue +2 -0
  32. package/components/common/layout/theHeader/userMenu/modals/preferences/lib/models/types.ts +7 -7
  33. package/components/common/layout/theHeader/userMenu/modals/preferences/view/New.vue +64 -47
  34. package/components/common/layout/theHeader/userMenu/modals/preferences/view/Old.vue +19 -0
  35. package/components/common/layout/theHeader/userMenu/modals/preferences/view/View.vue +3 -0
  36. package/components/common/pages/backups/DetailView.vue +52 -52
  37. package/components/common/pages/backups/backupsNew/BackupsNew.vue +107 -19
  38. package/components/common/pages/backups/backupsNew/Skeleton.vue +136 -0
  39. package/components/common/pages/backups/backupsNew/contextMenuView/ContextMenuView.vue +16 -10
  40. package/components/common/pages/backups/lib/models/interfaces.ts +36 -36
  41. package/components/common/pages/backups/modals/Modals.vue +243 -243
  42. package/components/common/pages/backups/modals/createBackup/configuration/backupWindow/BackupWindow.vue +29 -29
  43. package/components/common/pages/backups/modals/createBackup/configuration/maxBandwidth/MaxBandwidth.vue +69 -69
  44. package/components/common/pages/backups/modals/createBackup/configuration/strategy/Strategy.vue +38 -38
  45. package/components/common/pages/backups/modals/createBackup/datastores/tableView/new/lib/config/table.ts +1 -1
  46. package/components/common/pages/backups/modals/createBackup/lib/config/strategyOptions.ts +8 -11
  47. package/components/common/pages/backups/modals/createBackup/lib/models/interfaces.ts +8 -8
  48. package/components/common/pages/backups/modals/lib/config/restore.ts +116 -116
  49. package/components/common/pages/backups/modals/lib/models/interfaces.ts +187 -187
  50. package/components/common/pages/backups/modals/restore/Restore.vue +302 -302
  51. package/components/common/pages/backups/modals/restore/disks/Disks.vue +50 -50
  52. package/components/common/pages/backups/modals/restore/lib/config/readyToCompleteOptions.ts +94 -94
  53. package/components/common/pages/backups/modals/restore/lib/config/steps.ts +130 -130
  54. package/components/common/pages/backups/modals/restore/name/lib/models/interfaces.ts +6 -6
  55. package/components/common/pages/backups/modals/restore/types/New.vue +95 -95
  56. package/components/common/pages/backups/modals/restore/types/Old.vue +62 -62
  57. package/components/common/pages/backups/modals/restore/types/Types.vue +31 -31
  58. package/components/common/pages/home/lib/models/interfaces.ts +48 -48
  59. package/components/common/pages/home/widgets/hosts/Hosts.vue +27 -27
  60. package/components/common/pages/home/widgets/hosts/lib/config/items.ts +23 -23
  61. package/components/common/pages/home/widgets/vms/VmsOld.vue +35 -35
  62. package/components/common/pages/home/widgets/vms/lib/config/items.ts +19 -19
  63. package/components/common/pages/scheduledTasks/lib/utils/utils.ts +84 -84
  64. package/components/common/pages/tasks/Tasks.vue +125 -125
  65. package/components/common/pages/tasks/table/Table.vue +373 -373
  66. package/components/common/pages/tasks/table/lib/config/config.ts +279 -279
  67. package/components/common/pages/tasks/table/lib/models/interfaces.ts +9 -9
  68. package/components/common/readyToComplete/ReadyToComplete.vue +17 -17
  69. package/components/common/select/radio/RadioGroup.vue +137 -137
  70. package/components/common/spiceConsole/Drawer.vue +420 -420
  71. package/components/common/spiceConsole/SpiceConsole.vue +184 -184
  72. package/components/common/spiceConsole/lib/models/interfaces.ts +5 -5
  73. package/components/common/tools/Actions.vue +207 -207
  74. package/components/common/treeView/TreeView.vue +52 -52
  75. package/components/common/vm/actions/clone/lib/config/steps.ts +295 -295
  76. package/components/common/vm/actions/clone/new/New.vue +438 -438
  77. package/components/common/vm/actions/common/customizeHardware/virtualHardware/cpu/shares/lib/config/options.ts +28 -28
  78. package/components/common/vm/actions/common/customizeHardware/virtualHardware/memory/Memory.vue +283 -283
  79. package/components/common/vm/actions/common/customizeHardware/vmoptions/bootOptions/order/Order.vue +156 -156
  80. package/components/common/vm/actions/common/select/compatibility/Old.vue +107 -107
  81. package/components/common/vm/actions/common/select/createType/lib/models/interfaces.ts +5 -5
  82. package/components/common/vm/actions/common/select/options/New.vue +264 -264
  83. package/components/common/vm/actions/common/select/options/Options.vue +58 -58
  84. package/components/common/vm/actions/common/select/storage/Old.vue +125 -125
  85. package/components/common/vm/actions/common/select/storage/new/lib/models/interfaces.ts +5 -5
  86. package/components/common/vm/actions/common/select/storage/new/lib/utils/utils.ts +21 -21
  87. package/components/common/vm/actions/common/select/template/old/Old.vue +50 -50
  88. package/components/common/vm/actions/editSettings/new/Skeleton.vue +88 -88
  89. package/components/common/vm/snapshots/new/New.vue +11 -12
  90. package/components/common/vm/snapshots/new/Skeleton.vue +26 -2
  91. package/components/common/wizards/common/compatibility/Compatibility.vue +35 -35
  92. package/components/common/wizards/common/steps/name/Name.vue +178 -178
  93. package/components/common/wizards/common/steps/name/New.vue +221 -221
  94. package/components/common/wizards/common/steps/name/Old.vue +121 -121
  95. package/components/common/wizards/common/steps/name/lib/models/interfaces.ts +4 -4
  96. package/components/common/wizards/common/steps/name/location/New.vue +40 -40
  97. package/components/common/wizards/datastore/add/Add.vue +227 -227
  98. package/components/common/wizards/datastore/add/lib/utils.ts +85 -85
  99. package/components/common/wizards/datastore/add/steps/typeMode/lib/config/typeOptions.ts +43 -43
  100. package/components/common/wizards/network/add/Add.vue +9 -6
  101. package/components/common/wizards/network/add/lib/config/initialData.ts +2 -1
  102. package/composables/useAppVersion.ts +21 -21
  103. package/composables/useBrowse.ts +24 -24
  104. package/composables/useLocal.ts +6 -6
  105. package/composables/useLocalCommon.ts +39 -39
  106. package/lib/models/types.ts +59 -59
  107. package/package.json +1 -1
  108. package/plugins/console.ts +21 -21
  109. package/plugins/mouse.ts +21 -21
  110. package/plugins/panelStates.ts +70 -70
  111. package/plugins/text.ts +59 -59
  112. package/public/spice-console/application/clientgui.js +854 -854
  113. package/public/spice-console/application/packetfactory.js +211 -211
  114. package/public/spice-console/application/virtualmouse.js +147 -147
  115. package/public/spice-console/lib/images/bitmap.js +203 -203
  116. package/public/spice-console/network/spicechannel.js +440 -440
  117. package/public/spice-console/process/cursorprocess.js +128 -128
  118. package/public/spice-console/process/inputprocess.js +227 -227
  119. package/public/spice-console/process/mainprocess.js +212 -212
  120. package/public/spice-console/run.js +210 -210
  121. package/store/main/mutations.ts +7 -7
  122. package/store/main/state.ts +7 -7
  123. package/store/tasks/mappers/recentTasks.ts +123 -123
  124. package/store/tasks/mutations.ts +82 -82
@@ -3380,7 +3380,7 @@
3380
3380
  },
3381
3381
  "zabbix": {
3382
3382
  "zabbixVersions": "Zabbix версіі",
3383
- "zabbixVersionsDesc": "Калі ласка, абярыце версію сервера Zabbix, на якой вы хочаце ўвайсці: 5.x або 6.x.",
3383
+ "zabbixVersionsDesc": "Калі ласка, абярыце версію сервера Zabbix, на якой вы хочаце ўвайсці: 5.x, 6.x. або 7.x.",
3384
3384
  "logoutConfirmation": "Пацвярджэнне выхаду",
3385
3385
  "logoutDescription": "Вы ўпэўнены, што хочаце выйсці з Zabbix Server?",
3386
3386
  "vmDisk": "Дыск ВМ",
@@ -3843,7 +3843,9 @@
3843
3843
  "otpCodeErrorLength": "Код павінен складацца з 6 лічбаў",
3844
3844
  "enterOtpVerifyCode": "Увядзіце 6-значны код пацверджання",
3845
3845
  "backToLogin": "Вярнуцца да ўваходу",
3846
- "qrcodeDescription": "Скануйце гэты QR-код з дапамогай праграмы-аўтэнтыфікатара альбо ўвядзіце адзін з гэтых кодаў уручную. Пасля гэтага пацвердзіце дзеянне, увёўшы аднаразовы код ніжэй."
3846
+ "qrcodeDescription": "Скануйце гэты QR-код з дапамогай праграмы-аўтэнтыфікатара альбо ўвядзіце адзін з гэтых кодаў уручную. Пасля гэтага пацвердзіце дзеянне, увёўшы аднаразовы код ніжэй.",
3847
+ "showNotification": "Паказваць апавяшчэнне",
3848
+ "showNotificationDescription": "Паказваць апавяшчэнне, калі нешта ідзе не так"
3847
3849
  },
3848
3850
  "ssoConfiguration": {
3849
3851
  "twoFactorPolicy": "Палітыка двухфактарнай аўтэнтыфікацыі",
@@ -3863,7 +3865,8 @@
3863
3865
  "autoUnlockIntervalSec": "Інтэрвал аўтаматычнай разблакіроўкі (сек)",
3864
3866
  "maxDurationSec": "Максімальная працягласць (сек)",
3865
3867
  "idleTimeoutSec": "Час бездзейнасці (сек)",
3866
- "maxConcurrentSessions": "Макс. колькасць адначасовых сесій"
3868
+ "maxConcurrentSessions": "Макс. колькасць адначасовых сесій",
3869
+ "errorMaxLimitField": "Поле не павінна змяшчаць больш за {0} сімвалаў"
3867
3870
  },
3868
3871
  "cacheConfiguration": {
3869
3872
  "cacheConfiguration": "Канфігурацыі кэшавання",
@@ -3384,7 +3384,7 @@
3384
3384
  },
3385
3385
  "zabbix": {
3386
3386
  "zabbixVersions": "Zabbix Versions",
3387
- "zabbixVersionsDesc": "Please choose the Zabbix server version you would like to log in to: 5.x or 6.x.",
3387
+ "zabbixVersionsDesc": "Please choose the Zabbix server version you would like to log in to: 5.x, 6.x. or 7.x.",
3388
3388
  "logoutConfirmation": "Logout Confirmation",
3389
3389
  "logoutDescription": "Are you sure you want to log out from Zabbix Server?",
3390
3390
  "vmDisk": "VM Disk",
@@ -3847,7 +3847,9 @@
3847
3847
  "otpCodeErrorLength": "Code must be 6 digits",
3848
3848
  "enterOtpVerifyCode": "Enter the 6-digit verification code.",
3849
3849
  "backToLogin": "Back to Login",
3850
- "qrcodeDescription": "Scan this QR code with your authenticator app, or enter one of these codes manually. After that, confirm the action by entering the one-time code below."
3850
+ "qrcodeDescription": "Scan this QR code with your authenticator app, or enter one of these codes manually. After that, confirm the action by entering the one-time code below.",
3851
+ "showNotification": "Show a notification",
3852
+ "showNotificationDescription": "Show a notification when something goes wrong"
3851
3853
  },
3852
3854
  "ssoConfiguration": {
3853
3855
  "twoFactorPolicy": "Two-factor policy",
@@ -3867,7 +3869,8 @@
3867
3869
  "autoUnlockIntervalSec": "Auto unlock interval sec",
3868
3870
  "maxDurationSec": "Max duration sec",
3869
3871
  "idleTimeoutSec": "Idle timeout sec",
3870
- "maxConcurrentSessions": "Max concurrent sessions"
3872
+ "maxConcurrentSessions": "Max concurrent sessions",
3873
+ "errorMaxLimitField": "The field must not contain more than {0} characters"
3871
3874
  },
3872
3875
  "cacheConfiguration": {
3873
3876
  "cacheConfiguration": "Cache Configuration",
@@ -3384,7 +3384,7 @@
3384
3384
  },
3385
3385
  "zabbix": {
3386
3386
  "zabbixVersions": "Zabbix տարբերակները",
3387
- "zabbixVersionsDesc": "Խնդրում ենք ընտրել Zabbix սերվերի տարբերակը, որում ցանկանում եք մուտք գործել՝ 5.x կամ 6.x:",
3387
+ "zabbixVersionsDesc": "Խնդրում ենք ընտրել Zabbix սերվերի տարբերակը, որում ցանկանում եք մուտք գործել՝ 5.x, 6.x. կամ 7.x:",
3388
3388
  "logoutConfirmation": "Դուրս գալու հաստատում",
3389
3389
  "logoutDescription": "Վստա՞հ եք, որ ցանկանում եք դուրս գալ Zabbix սերվերից:",
3390
3390
  "vmDisk": "VM սկավառակ",
@@ -3847,7 +3847,9 @@
3847
3847
  "otpCodeErrorLength": "Կոդը պետք է բաղկացած լինի 6 թվից",
3848
3848
  "enterOtpVerifyCode": "Մուտքագրեք 6-նիշ հաստատման կոդը",
3849
3849
  "backToLogin": "Վերադառնալ մուտքի էջ",
3850
- "qrcodeDescription": "Սկանավորեք այս QR կոդը ձեր նույնականացման հավելվածով կամ մուտքագրեք այս կոդերից մեկը ձեռքով: Դրանից հետո հաստատեք գործողությունը՝ ներքևում մուտքագրելով միանգամյա կոդը:"
3850
+ "qrcodeDescription": "Սկանավորեք այս QR կոդը ձեր նույնականացման հավելվածով կամ մուտքագրեք այս կոդերից մեկը ձեռքով: Դրանից հետո հաստատեք գործողությունը՝ ներքևում մուտքագրելով միանգամյա կոդը:",
3851
+ "showNotification": "Ցուցադրել ծանուցում",
3852
+ "showNotificationDescription": "Ցուցադրել ծանուցում, երբ ինչ-որ բան սխալ է ընթանում"
3851
3853
  },
3852
3854
  "ssoConfiguration": {
3853
3855
  "twoFactorPolicy": "Երկու գործոնի քաղաքականություն",
@@ -3867,7 +3869,8 @@
3867
3869
  "autoUnlockIntervalSec": "Ավտոմատ ապակողպման ինտերվալ (վայրկյան)",
3868
3870
  "maxDurationSec": "Առավելագույն տևողություն (վայրկյան)",
3869
3871
  "idleTimeoutSec": "Անգործության ժամանակավոր պատուհան (վայրկյան)",
3870
- "maxConcurrentSessions": "Առավելագույն համաժամանակյա սեսիաներ"
3872
+ "maxConcurrentSessions": "Առավելագույն համաժամանակյա սեսիաներ",
3873
+ "errorMaxLimitField": "Դաշտը չպետք է պարունակի ավելի քան {0} նիշ"
3871
3874
  },
3872
3875
  "cacheConfiguration": {
3873
3876
  "cacheConfiguration": "Քեշավորման կոնֆիգուրացիաներ",
@@ -3383,7 +3383,7 @@
3383
3383
  },
3384
3384
  "zabbix": {
3385
3385
  "zabbixVersions": "Zabbix нұсқалары",
3386
- "zabbixVersionsDesc": "Жүйеге кіргіңіз келетін Zabbix сервер нұсқасын таңдаңыз: 5.x немесе 6.x.",
3386
+ "zabbixVersionsDesc": "Жүйеге кіргіңіз келетін Zabbix сервер нұсқасын таңдаңыз: 5.x, 6.x. немесе 7.x.",
3387
3387
  "logoutConfirmation": "Шығуды растау",
3388
3388
  "logoutDescription": "Zabbix серверінен шынымен шыққыңыз келе ме?",
3389
3389
  "vmDisk": "VM дискі",
@@ -3846,7 +3846,9 @@
3846
3846
  "otpCodeErrorLength": "Код 6 саннан тұруы керек",
3847
3847
  "enterOtpVerifyCode": "6 таңбалы растау кодын енгізіңіз",
3848
3848
  "backToLogin": "Кіру бетіне оралу",
3849
- "qrcodeDescription": "Бұл QR-кодты аутентификатор қолданбасымен сканерлеңіз немесе осы кодтардың бірін қолмен енгізіңіз. Содан кейін әрекетті төмендегі бір реттік кодты енгізу арқылы растаңыз."
3849
+ "qrcodeDescription": "Бұл QR-кодты аутентификатор қолданбасымен сканерлеңіз немесе осы кодтардың бірін қолмен енгізіңіз. Содан кейін әрекетті төмендегі бір реттік кодты енгізу арқылы растаңыз.",
3850
+ "showNotification": "Хабарландыруды көрсету",
3851
+ "showNotificationDescription": "Бірдеңе дұрыс емес болған кезде хабарландыруды көрсету"
3850
3852
  },
3851
3853
  "ssoConfiguration": {
3852
3854
  "twoFactorPolicy": "Екі факторлы саясат",
@@ -3866,7 +3868,8 @@
3866
3868
  "autoUnlockIntervalSec": "Автоматты ашу аралығы (сек)",
3867
3869
  "maxDurationSec": "Максималды ұзақтық (сек)",
3868
3870
  "idleTimeoutSec": "Босқа тұрған уақыт (сек)",
3869
- "maxConcurrentSessions": "Максималды бір уақытта қосылған сессиялар"
3871
+ "maxConcurrentSessions": "Максималды бір уақытта қосылған сессиялар",
3872
+ "errorMaxLimitField": "Өріс {0} таңбадан артық болмауы керек"
3870
3873
  },
3871
3874
  "cacheConfiguration": {
3872
3875
  "cacheConfiguration": "Кэшталу конфигурациялары",
@@ -3383,7 +3383,7 @@
3383
3383
  },
3384
3384
  "zabbix": {
3385
3385
  "zabbixVersions": "Версия Zabbix",
3386
- "zabbixVersionsDesc": "Пожалуйста, выберите версию сервера Zabbix, на которую вы хотите войти: 5.x или 6.x.",
3386
+ "zabbixVersionsDesc": "Пожалуйста, выберите версию сервера Zabbix, на которую вы хотите войти: 5.x, 6.x. или 7.x.",
3387
3387
  "logoutConfirmation": "Подтверждение выхода из системы",
3388
3388
  "logoutDescription": "Вы уверены, что хотите выйти из Zabbix Server?",
3389
3389
  "vmDisk": "Диск ВМ",
@@ -3846,7 +3846,9 @@
3846
3846
  "otpCodeErrorLength": "Код должен состоять из 6 цифр",
3847
3847
  "enterOtpVerifyCode": "Введите 6-значный код подтверждения",
3848
3848
  "backToLogin": "Вернуться ко входу",
3849
- "qrcodeDescription": "Отсканируйте этот QR-код с помощью приложения-аутентификатора или введите один из этих кодов вручную. После этого подтвердите действие, введя одноразовый код ниже."
3849
+ "qrcodeDescription": "Отсканируйте этот QR-код с помощью приложения-аутентификатора или введите один из этих кодов вручную. После этого подтвердите действие, введя одноразовый код ниже.",
3850
+ "showNotification": "Показывать уведомление",
3851
+ "showNotificationDescription": "Показывать уведомление, когда что-то идёт не так"
3850
3852
  },
3851
3853
  "ssoConfiguration": {
3852
3854
  "twoFactorPolicy": "Политика двухфакторной аутентификации",
@@ -3866,7 +3868,8 @@
3866
3868
  "autoUnlockIntervalSec": "Интервал авторазблокировки (сек)",
3867
3869
  "maxDurationSec": "Максимальная продолжительность (сек)",
3868
3870
  "idleTimeoutSec": "Время простоя (сек)",
3869
- "maxConcurrentSessions": "Макс. количество одновременных сессий"
3871
+ "maxConcurrentSessions": "Макс. количество одновременных сессий",
3872
+ "errorMaxLimitField": "Поле не должен содержать более {0} символов"
3870
3873
  },
3871
3874
  "cacheConfiguration": {
3872
3875
  "cacheConfiguration": "Конфигурации кэширования",
@@ -3381,7 +3381,7 @@
3381
3381
  },
3382
3382
  "zabbix": {
3383
3383
  "zabbixVersions": "Zabbix 版本",
3384
- "zabbixVersionsDesc": "请选择您要登录的Zabbix服务器版本:5.x6.x。",
3384
+ "zabbixVersionsDesc": "请选择您要登录的Zabbix服务器版本:5.x6.x.或7.x。",
3385
3385
  "logoutConfirmation": "退出确认",
3386
3386
  "logoutDescription": "您确定要从 Zabbix Server 注销吗?",
3387
3387
  "vmDisk": "虚拟机磁盘",
@@ -3844,7 +3844,9 @@
3844
3844
  "otpCodeErrorLength": "代码必须是 6 位数字",
3845
3845
  "enterOtpVerifyCode": "请输入 6 位数的验证码",
3846
3846
  "backToLogin": "返回登录",
3847
- "qrcodeDescription": "使用您的身份验证器应用程序扫描此QR码,或手动输入其中一个代码。然后,通过输入下面的一次性代码来确认操作。"
3847
+ "qrcodeDescription": "使用您的身份验证器应用程序扫描此QR码,或手动输入其中一个代码。然后,通过输入下面的一次性代码来确认操作。",
3848
+ "showNotification": "显示通知",
3849
+ "showNotificationDescription": "当出现问题时显示通知"
3848
3850
  },
3849
3851
  "ssoConfiguration": {
3850
3852
  "twoFactorPolicy": "双因素策略",
@@ -3864,7 +3866,8 @@
3864
3866
  "autoUnlockIntervalSec": "自动解锁间隔(秒)",
3865
3867
  "maxDurationSec": "最长持续时间(秒)",
3866
3868
  "idleTimeoutSec": "空闲超时(秒)",
3867
- "maxConcurrentSessions": "最大并发会话数"
3869
+ "maxConcurrentSessions": "最大并发会话数",
3870
+ "errorMaxLimitField": "该字段不能超过 {0} 个字符"
3868
3871
  },
3869
3872
  "cacheConfiguration": {
3870
3873
  "cacheConfiguration": "缓存配置",
@@ -1,50 +1,50 @@
1
- <template>
2
- <template v-if="props.name === 'zabbix'">
3
- <svg
4
- xmlns="http://www.w3.org/2000/svg"
5
- width="80"
6
- height="22"
7
- viewBox="0 0 80 22"
8
- fill="none"
9
- >
10
- <g clip-path="url(#clip0_2691_29714)">
11
- <path d="M0 0.522461H80V21.477H0V0.522461Z" fill="#D40000" />
12
- <path
13
- d="M3.42089 3.71582H14.9889V5.2187L5.6782 16.625H15.2164V18.2836H3.19336V16.7807L12.504 5.37438H3.42089V3.71582ZM23.0402 5.65779L20.3378 12.9087H25.7526L23.0402 5.65779ZM21.9145 3.71582H24.1738L29.7862 18.2836H27.7145L26.3753 14.5473H19.735L18.3938 18.2836H16.2922L21.9145 3.71582ZM33.9176 11.326V16.663H37.113C38.1848 16.663 38.9791 16.4434 39.496 16.0043C40.013 15.5652 40.2704 14.8926 40.2704 13.9905C40.2704 13.0804 40.013 12.4078 39.496 11.9747C38.9791 11.5436 38.1848 11.326 37.113 11.326H33.9176ZM33.9176 5.33446V9.72535H36.8675C37.8415 9.72535 38.566 9.54373 39.043 9.18447C39.52 8.82322 39.7575 8.27237 39.7575 7.5319C39.7575 6.79743 39.518 6.24657 39.043 5.88332C38.566 5.52008 37.8415 5.33646 36.8675 5.33646H33.9176V5.33446ZM31.9257 3.71582H37.0152C38.534 3.71582 39.7056 4.02717 40.5259 4.65188C41.3482 5.27658 41.7573 6.16474 41.7573 7.31635C41.7573 8.2065 41.5478 8.91703 41.1266 9.44393C40.7055 9.97084 40.0868 10.3002 39.2725 10.4299C40.2525 10.6375 41.0129 11.0706 41.5558 11.7312C42.0986 12.3918 42.3701 13.2161 42.3701 14.2041C42.3701 15.5054 41.923 16.5093 41.0289 17.2198C40.1347 17.9283 38.8614 18.2836 37.2128 18.2836H31.9257V3.71582ZM47.5573 11.326V16.663H50.7547C51.8265 16.663 52.6208 16.4434 53.1357 16.0043C53.6527 15.5652 53.9101 14.8926 53.9101 13.9905C53.9101 13.0804 53.6527 12.4078 53.1357 11.9747C52.6188 11.5436 51.8245 11.326 50.7547 11.326H47.5573ZM47.5573 5.33446V9.72535H50.5072C51.4812 9.72535 52.2057 9.54373 52.6827 9.18447C53.1597 8.82322 53.3972 8.27237 53.3972 7.5319C53.3972 6.79743 53.1597 6.24657 52.6827 5.88332C52.2057 5.52008 51.4812 5.33646 50.5072 5.33646H47.5573V5.33446ZM45.5654 3.71582H50.6549C52.1737 3.71582 53.3453 4.02717 54.1656 4.65188C54.9879 5.27658 55.399 6.16474 55.399 7.31635C55.399 8.2065 55.1895 8.91703 54.7683 9.44393C54.3472 9.97084 53.7285 10.3002 52.9142 10.4299C53.8942 10.6375 54.6546 11.0706 55.1975 11.7312C55.7403 12.3918 56.0118 13.2161 56.0118 14.2041C56.0118 15.5054 55.5647 16.5093 54.6706 17.2198C53.7764 17.9283 52.503 18.2836 50.8545 18.2836H45.5654V3.71582ZM64.9732 3.71582H67.1646L70.6274 8.94697L74.1242 3.71582H76.2418L71.6833 10.5397L76.8086 18.2836H74.6172L70.5835 12.1882L66.51 18.2836H64.3924L69.5297 10.5955L64.9732 3.71582ZM59.2031 3.71582H61.195V18.2836H59.2031V3.71582Z"
14
- fill="white"
15
- />
16
- </g>
17
- <defs>
18
- <clipPath id="clip0_2691_29714">
19
- <rect
20
- width="80"
21
- height="20.96"
22
- fill="white"
23
- transform="translate(0 0.519531)"
24
- />
25
- </clipPath>
26
- </defs>
27
- </svg>
28
- </template>
29
- <template v-else><span></span></template>
30
- </template>
31
-
32
- <script setup lang="ts">
33
- const props = withDefaults(
34
- defineProps<{
35
- name: string
36
- type?: string
37
- color?: string
38
- width?: string
39
- height?: string
40
- }>(),
41
- {
42
- type: '',
43
- color: 'currentColor',
44
- width: '24',
45
- height: '24',
46
- }
47
- )
48
- </script>
49
-
50
- <style scoped lang="scss"></style>
1
+ <template>
2
+ <template v-if="props.name === 'zabbix'">
3
+ <svg
4
+ xmlns="http://www.w3.org/2000/svg"
5
+ width="80"
6
+ height="22"
7
+ viewBox="0 0 80 22"
8
+ fill="none"
9
+ >
10
+ <g clip-path="url(#clip0_2691_29714)">
11
+ <path d="M0 0.522461H80V21.477H0V0.522461Z" fill="#D40000" />
12
+ <path
13
+ d="M3.42089 3.71582H14.9889V5.2187L5.6782 16.625H15.2164V18.2836H3.19336V16.7807L12.504 5.37438H3.42089V3.71582ZM23.0402 5.65779L20.3378 12.9087H25.7526L23.0402 5.65779ZM21.9145 3.71582H24.1738L29.7862 18.2836H27.7145L26.3753 14.5473H19.735L18.3938 18.2836H16.2922L21.9145 3.71582ZM33.9176 11.326V16.663H37.113C38.1848 16.663 38.9791 16.4434 39.496 16.0043C40.013 15.5652 40.2704 14.8926 40.2704 13.9905C40.2704 13.0804 40.013 12.4078 39.496 11.9747C38.9791 11.5436 38.1848 11.326 37.113 11.326H33.9176ZM33.9176 5.33446V9.72535H36.8675C37.8415 9.72535 38.566 9.54373 39.043 9.18447C39.52 8.82322 39.7575 8.27237 39.7575 7.5319C39.7575 6.79743 39.518 6.24657 39.043 5.88332C38.566 5.52008 37.8415 5.33646 36.8675 5.33646H33.9176V5.33446ZM31.9257 3.71582H37.0152C38.534 3.71582 39.7056 4.02717 40.5259 4.65188C41.3482 5.27658 41.7573 6.16474 41.7573 7.31635C41.7573 8.2065 41.5478 8.91703 41.1266 9.44393C40.7055 9.97084 40.0868 10.3002 39.2725 10.4299C40.2525 10.6375 41.0129 11.0706 41.5558 11.7312C42.0986 12.3918 42.3701 13.2161 42.3701 14.2041C42.3701 15.5054 41.923 16.5093 41.0289 17.2198C40.1347 17.9283 38.8614 18.2836 37.2128 18.2836H31.9257V3.71582ZM47.5573 11.326V16.663H50.7547C51.8265 16.663 52.6208 16.4434 53.1357 16.0043C53.6527 15.5652 53.9101 14.8926 53.9101 13.9905C53.9101 13.0804 53.6527 12.4078 53.1357 11.9747C52.6188 11.5436 51.8245 11.326 50.7547 11.326H47.5573ZM47.5573 5.33446V9.72535H50.5072C51.4812 9.72535 52.2057 9.54373 52.6827 9.18447C53.1597 8.82322 53.3972 8.27237 53.3972 7.5319C53.3972 6.79743 53.1597 6.24657 52.6827 5.88332C52.2057 5.52008 51.4812 5.33646 50.5072 5.33646H47.5573V5.33446ZM45.5654 3.71582H50.6549C52.1737 3.71582 53.3453 4.02717 54.1656 4.65188C54.9879 5.27658 55.399 6.16474 55.399 7.31635C55.399 8.2065 55.1895 8.91703 54.7683 9.44393C54.3472 9.97084 53.7285 10.3002 52.9142 10.4299C53.8942 10.6375 54.6546 11.0706 55.1975 11.7312C55.7403 12.3918 56.0118 13.2161 56.0118 14.2041C56.0118 15.5054 55.5647 16.5093 54.6706 17.2198C53.7764 17.9283 52.503 18.2836 50.8545 18.2836H45.5654V3.71582ZM64.9732 3.71582H67.1646L70.6274 8.94697L74.1242 3.71582H76.2418L71.6833 10.5397L76.8086 18.2836H74.6172L70.5835 12.1882L66.51 18.2836H64.3924L69.5297 10.5955L64.9732 3.71582ZM59.2031 3.71582H61.195V18.2836H59.2031V3.71582Z"
14
+ fill="white"
15
+ />
16
+ </g>
17
+ <defs>
18
+ <clipPath id="clip0_2691_29714">
19
+ <rect
20
+ width="80"
21
+ height="20.96"
22
+ fill="white"
23
+ transform="translate(0 0.519531)"
24
+ />
25
+ </clipPath>
26
+ </defs>
27
+ </svg>
28
+ </template>
29
+ <template v-else><span></span></template>
30
+ </template>
31
+
32
+ <script setup lang="ts">
33
+ const props = withDefaults(
34
+ defineProps<{
35
+ name: string
36
+ type?: string
37
+ color?: string
38
+ width?: string
39
+ height?: string
40
+ }>(),
41
+ {
42
+ type: '',
43
+ color: 'currentColor',
44
+ width: '24',
45
+ height: '24',
46
+ }
47
+ )
48
+ </script>
49
+
50
+ <style scoped lang="scss"></style>
@@ -1,170 +1,170 @@
1
- <template>
2
- <div class="tabs-overflow bottom-right">
3
- <button
4
- :id="collapsedBtnId"
5
- :class="[
6
- 'btn btn-link nav-link dropdown-toggle',
7
- { active: collapsedBtnActive },
8
- ]"
9
- :data-id="`${props.testId}-toggle-button`"
10
- @mouseenter="hover = true"
11
- @mouseleave="hover = false"
12
- @mousedown="showMenu"
13
- >
14
- <atoms-the-icon
15
- :class="['collapse-icon', { active: open }]"
16
- name="ellipsis-horizontal"
17
- width="16px"
18
- height="16px"
19
- />
20
- </button>
21
-
22
- <Teleport to="body">
23
- <ul
24
- v-show="open"
25
- :class="['navbar-dropdown-menu', props.popupClass]"
26
- :style="dropdownMenuStyles"
27
- >
28
- <li
29
- v-for="(item, key) in props.items"
30
- :key="key"
31
- v-permission="item.permission"
32
- :title="item.title"
33
- class="navbar-dropdown-menu-item"
34
- @mousedown.stop
35
- >
36
- <div
37
- v-if="item.separate"
38
- class="navbar-dropdown-menu-separator"
39
- ></div>
40
- <atoms-collapse-nav-item
41
- v-else
42
- :is-link="props.isLink"
43
- :item="item"
44
- :value="value"
45
- btn-class="btn"
46
- @change="change"
47
- @select-file="onSelectFile($event, key)"
48
- />
49
- </li>
50
- </ul>
51
- </Teleport>
52
- </div>
53
- </template>
54
-
55
- <script setup lang="ts">
56
- import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
57
-
58
- const props = withDefaults(
59
- defineProps<{
60
- items: UI_I_CollapseNavItem[]
61
- isLink?: boolean
62
- value?: number | string
63
- popupClass?: string
64
- closeAfterClick?: boolean
65
- testId?: string
66
- }>(),
67
- {
68
- isLink: undefined,
69
- value: undefined,
70
- popupClass: undefined,
71
- closeAfterClick: undefined,
72
- testId: '',
73
- }
74
- )
75
- const emits = defineEmits<{
76
- (event: 'change', value: number): void
77
- (event: 'select-file', value1: Event, value2: string, value3: number): void
78
- }>()
79
-
80
- const change = (value: number): void => {
81
- emits('change', value)
82
- props.closeAfterClick && (open.value = false)
83
- }
84
- const onSelectFile = (event: Event, type: string, key: number): void => {
85
- emits('select-file', event, type, key)
86
- }
87
-
88
- const collapsedBtnId = ref<string>('')
89
-
90
- const route = useRoute()
91
- const collapsedBtnActive = computed<boolean>(() => {
92
- if (props.isLink)
93
- return props.items.some((item) => route.path.includes(item.path || ''))
94
-
95
- return props.items.some((item) => item.value === props.value)
96
- })
97
-
98
- const open = ref<boolean>(false)
99
- const hover = ref<boolean>(false)
100
- const dropdownMenuStyles = ref<any>({})
101
- const showMenu = (): void => {
102
- if (open.value) {
103
- hideMenu(true)
104
- return
105
- }
106
-
107
- open.value = true
108
-
109
- const btn = document.querySelector(`#${collapsedBtnId.value}`)
110
- const { top, height, right } = btn!.getBoundingClientRect()
111
- dropdownMenuStyles.value = {
112
- top: `${top + height}px`,
113
- left: `${right}px`,
114
- }
115
- }
116
- const hideMenu = (force?: boolean): void => {
117
- if (hover.value && !force) return
118
-
119
- open.value = false
120
- }
121
-
122
- const windowClick = (): void => {
123
- hideMenu()
124
- }
125
- const windowResize = (): void => {
126
- hideMenu(true)
127
- }
128
- onMounted(() => {
129
- collapsedBtnId.value = `collapsed-btn${useUniqueId()}`
130
- window.addEventListener('mousedown', windowClick)
131
- window.addEventListener('resize', windowResize)
132
- })
133
- onUnmounted(() => {
134
- window.removeEventListener('mousedown', windowClick)
135
- window.removeEventListener('resize', windowResize)
136
- })
137
- </script>
138
-
139
- <style scoped lang="scss">
140
- .tabs-overflow {
141
- position: absolute;
142
- top: 0;
143
- right: 24px;
144
-
145
- .dropdown-toggle {
146
- .collapse-icon {
147
- fill: var(--main-color-mode);
148
-
149
- &.active {
150
- fill: #0077b8;
151
- }
152
- }
153
- }
154
- }
155
-
156
- .navbar-dropdown-menu {
157
- position: fixed;
158
- z-index: var(--z-dropdown);
159
- transform: translateX(-100%);
160
- border: 1px solid var(--global-border-color);
161
- border-radius: 3px;
162
- margin-top: 2px;
163
- background-color: var(--global-bg-color);
164
- padding: 12px 0;
165
- }
166
- .navbar-dropdown-menu-separator {
167
- margin: 6px 0;
168
- border-bottom: 0.8px solid #e8e8e8;
169
- }
170
- </style>
1
+ <template>
2
+ <div class="tabs-overflow bottom-right">
3
+ <button
4
+ :id="collapsedBtnId"
5
+ :class="[
6
+ 'btn btn-link nav-link dropdown-toggle',
7
+ { active: collapsedBtnActive },
8
+ ]"
9
+ :data-id="`${props.testId}-toggle-button`"
10
+ @mouseenter="hover = true"
11
+ @mouseleave="hover = false"
12
+ @mousedown="showMenu"
13
+ >
14
+ <atoms-the-icon
15
+ :class="['collapse-icon', { active: open }]"
16
+ name="ellipsis-horizontal"
17
+ width="16px"
18
+ height="16px"
19
+ />
20
+ </button>
21
+
22
+ <Teleport to="body">
23
+ <ul
24
+ v-show="open"
25
+ :class="['navbar-dropdown-menu', props.popupClass]"
26
+ :style="dropdownMenuStyles"
27
+ >
28
+ <li
29
+ v-for="(item, key) in props.items"
30
+ :key="key"
31
+ v-permission="item.permission"
32
+ :title="item.title"
33
+ class="navbar-dropdown-menu-item"
34
+ @mousedown.stop
35
+ >
36
+ <div
37
+ v-if="item.separate"
38
+ class="navbar-dropdown-menu-separator"
39
+ ></div>
40
+ <atoms-collapse-nav-item
41
+ v-else
42
+ :is-link="props.isLink"
43
+ :item="item"
44
+ :value="value"
45
+ btn-class="btn"
46
+ @change="change"
47
+ @select-file="onSelectFile($event, key)"
48
+ />
49
+ </li>
50
+ </ul>
51
+ </Teleport>
52
+ </div>
53
+ </template>
54
+
55
+ <script setup lang="ts">
56
+ import type { UI_I_CollapseNavItem } from '~/components/atoms/collapse/lib/models/interfaces'
57
+
58
+ const props = withDefaults(
59
+ defineProps<{
60
+ items: UI_I_CollapseNavItem[]
61
+ isLink?: boolean
62
+ value?: number | string
63
+ popupClass?: string
64
+ closeAfterClick?: boolean
65
+ testId?: string
66
+ }>(),
67
+ {
68
+ isLink: undefined,
69
+ value: undefined,
70
+ popupClass: undefined,
71
+ closeAfterClick: undefined,
72
+ testId: '',
73
+ }
74
+ )
75
+ const emits = defineEmits<{
76
+ (event: 'change', value: number): void
77
+ (event: 'select-file', value1: Event, value2: string, value3: number): void
78
+ }>()
79
+
80
+ const change = (value: number): void => {
81
+ emits('change', value)
82
+ props.closeAfterClick && (open.value = false)
83
+ }
84
+ const onSelectFile = (event: Event, type: string, key: number): void => {
85
+ emits('select-file', event, type, key)
86
+ }
87
+
88
+ const collapsedBtnId = ref<string>('')
89
+
90
+ const route = useRoute()
91
+ const collapsedBtnActive = computed<boolean>(() => {
92
+ if (props.isLink)
93
+ return props.items.some((item) => route.path.includes(item.path || ''))
94
+
95
+ return props.items.some((item) => item.value === props.value)
96
+ })
97
+
98
+ const open = ref<boolean>(false)
99
+ const hover = ref<boolean>(false)
100
+ const dropdownMenuStyles = ref<any>({})
101
+ const showMenu = (): void => {
102
+ if (open.value) {
103
+ hideMenu(true)
104
+ return
105
+ }
106
+
107
+ open.value = true
108
+
109
+ const btn = document.querySelector(`#${collapsedBtnId.value}`)
110
+ const { top, height, right } = btn!.getBoundingClientRect()
111
+ dropdownMenuStyles.value = {
112
+ top: `${top + height}px`,
113
+ left: `${right}px`,
114
+ }
115
+ }
116
+ const hideMenu = (force?: boolean): void => {
117
+ if (hover.value && !force) return
118
+
119
+ open.value = false
120
+ }
121
+
122
+ const windowClick = (): void => {
123
+ hideMenu()
124
+ }
125
+ const windowResize = (): void => {
126
+ hideMenu(true)
127
+ }
128
+ onMounted(() => {
129
+ collapsedBtnId.value = `collapsed-btn${useUniqueId()}`
130
+ window.addEventListener('mousedown', windowClick)
131
+ window.addEventListener('resize', windowResize)
132
+ })
133
+ onUnmounted(() => {
134
+ window.removeEventListener('mousedown', windowClick)
135
+ window.removeEventListener('resize', windowResize)
136
+ })
137
+ </script>
138
+
139
+ <style scoped lang="scss">
140
+ .tabs-overflow {
141
+ position: absolute;
142
+ top: 0;
143
+ right: 24px;
144
+
145
+ .dropdown-toggle {
146
+ .collapse-icon {
147
+ fill: var(--main-color-mode);
148
+
149
+ &.active {
150
+ fill: #0077b8;
151
+ }
152
+ }
153
+ }
154
+ }
155
+
156
+ .navbar-dropdown-menu {
157
+ position: fixed;
158
+ z-index: var(--z-dropdown);
159
+ transform: translateX(-100%);
160
+ border: 1px solid var(--global-border-color);
161
+ border-radius: 3px;
162
+ margin-top: 2px;
163
+ background-color: var(--global-bg-color);
164
+ padding: 12px 0;
165
+ }
166
+ .navbar-dropdown-menu-separator {
167
+ margin: 6px 0;
168
+ border-bottom: 0.8px solid #e8e8e8;
169
+ }
170
+ </style>