bfg-common 1.2.45 → 1.2.47

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 (203) hide show
  1. package/components/atoms/alert/Notification.vue +167 -167
  2. package/components/atoms/autocomplete/Autocomplete.vue +236 -236
  3. package/components/atoms/datepicker/Datepicker.vue +612 -612
  4. package/components/atoms/list/SelectList.vue +62 -62
  5. package/components/atoms/nav/NavBar.vue +116 -116
  6. package/components/atoms/nav/VerticalNavBar.vue +89 -89
  7. package/components/atoms/notificationBar/NotificationBar.vue +175 -175
  8. package/components/atoms/perPage/PerPage.vue +52 -52
  9. package/components/atoms/popup/SimplePopup.vue +90 -90
  10. package/components/atoms/step/VerticalStep.vue +104 -104
  11. package/components/atoms/switch/Switch.vue +107 -107
  12. package/components/atoms/table/dataGrid/DataGridColumnSwitch.vue +206 -206
  13. package/components/atoms/table/dataGrid/DataGridPage.vue +189 -189
  14. package/components/atoms/tabs/Tabs.vue +189 -189
  15. package/components/atoms/tooltip/Signpost.vue +224 -224
  16. package/components/common/BadBrowser.vue +114 -114
  17. package/components/common/adapterManager/AddAdapterWarningModal.vue +82 -82
  18. package/components/common/adapterManager/NoActiveAdaptersModal.vue +62 -62
  19. package/components/common/adapterManager/NoConnectedActiveAdaptersModal.vue +62 -62
  20. package/components/common/browse/Browse.vue +182 -182
  21. package/components/common/browse/blocks/Title.vue +66 -66
  22. package/components/common/diagramMain/Diagram.vue +186 -186
  23. package/components/common/diagramMain/DiagramMain.vue +986 -986
  24. package/components/common/diagramMain/adapter/AdapterItem.vue +227 -227
  25. package/components/common/diagramMain/adapter/AdapterItems.vue +57 -57
  26. package/components/common/diagramMain/modals/editSettings/tabs/port/IpvFourSettings.vue +339 -339
  27. package/components/common/diagramMain/modals/editSettings/tabs/port/PortProperties.vue +202 -202
  28. package/components/common/diagramMain/modals/remove/RemoveModal.vue +226 -226
  29. package/components/common/diagramMain/network/Contents.vue +238 -238
  30. package/components/common/feedback/Buttons.vue +232 -232
  31. package/components/common/feedback/Message.vue +468 -468
  32. package/components/common/feedback/VisitPortal.vue +54 -54
  33. package/components/common/help/navbar/left/Left.vue +159 -159
  34. package/components/common/help/navbar/left/utils/constructAccordion.ts +27 -27
  35. package/components/common/mainNavigationPanel/MainNavigationPanel.vue +359 -359
  36. package/components/common/modals/Rename.vue +165 -165
  37. package/components/common/perPage/PerPage.vue +51 -51
  38. package/components/common/recursionTree/RecursionTree.vue +201 -201
  39. package/components/common/vm/actions/add/Add.vue +14 -14
  40. package/components/common/vm/actions/add/utils.ts +2 -2
  41. package/components/common/vm/actions/clone/Clone.vue +544 -545
  42. package/components/common/vm/actions/clone/select/options/Options.vue +65 -65
  43. package/components/common/vm/actions/clone/utils.ts +43 -43
  44. package/components/common/vm/actions/{add → common}/config/capabilities.ts +338 -338
  45. package/components/common/vm/actions/{add → common}/customizeHardware/CustomizeHardware.vue +7 -7
  46. package/components/common/vm/actions/{add → common}/customizeHardware/models/interfaces.ts +2 -2
  47. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/VirtualHardware.vue +657 -657
  48. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/browseView/BrowseView.vue +1 -1
  49. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/bus/Bus.vue +1 -1
  50. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cdDvdDrive/CdDvdDrive.vue +8 -8
  51. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/CoresPerSocket.vue +109 -109
  52. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/Cpu.vue +383 -383
  53. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/shares/Shares.vue +1 -1
  54. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/limit/Limit.vue +234 -234
  55. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/limit/config/options.ts +28 -28
  56. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/memory/Memory.vue +316 -316
  57. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/memory/config/memoryOptions.ts +35 -35
  58. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/Location.vue +1 -1
  59. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/NewHardDisk.vue +445 -445
  60. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/cache/Cache.vue +1 -1
  61. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/limitIops/LimitIops.vue +1 -1
  62. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/mode/Mode.vue +1 -1
  63. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/provisioning/Provisioning.vue +1 -1
  64. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/sharing/Sharing.vue +1 -1
  65. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newNetwork/NewNetwork.vue +288 -288
  66. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newNetwork/adapterType/AdapterType.vue +1 -1
  67. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newNetwork/macAddress/MacAddress.vue +1 -1
  68. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/NewPciDevice.vue +8 -8
  69. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/DynamicDirectPathIo.vue +1 -1
  70. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newUsbController/NewUsbController.vue +1 -1
  71. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/other/Other.vue +1 -1
  72. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/reservation/Reservation.vue +235 -235
  73. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/VideoCard.vue +177 -177
  74. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/model/Model.vue +1 -1
  75. package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/numberDisplays/NumberDisplays.vue +1 -1
  76. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/Vmoptions.vue +6 -6
  77. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/BootOptions.vue +7 -7
  78. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/delay/Delay.vue +1 -1
  79. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/firmware/Firmware.vue +1 -1
  80. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/order/Order.vue +197 -197
  81. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/generalOptions/GeneralOptions.vue +181 -181
  82. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/CopyPaste.vue +51 -51
  83. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/RemoteConsoleOptions.vue +253 -253
  84. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/ImgCompression.vue +1 -1
  85. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/JpegCompression.vue +1 -1
  86. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/keymap/Keymap.vue +55 -55
  87. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/MouseMode.vue +1 -1
  88. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/password/Password.vue +2 -2
  89. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/SharePolicy.vue +1 -1
  90. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/StreamingMode.vue +1 -1
  91. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/type/Type.vue +1 -1
  92. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/UsbRedirection.vue +1 -1
  93. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/ZlibCompression.vue +1 -1
  94. package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/tools/Tools.vue +1 -1
  95. package/components/common/vm/actions/{add → common}/models/interfaces.ts +2 -2
  96. package/components/common/vm/actions/{add → common}/models/types.ts +3 -3
  97. package/components/common/vm/actions/{add → common}/select/computeResource/ComputeResource.vue +1 -1
  98. package/components/common/vm/actions/{add → common}/select/createType/CreateType.vue +1 -1
  99. package/components/common/vm/actions/{add → common}/select/models/types.ts +2 -0
  100. package/components/common/vm/actions/{add → common}/select/os/os.vue +1 -1
  101. package/components/common/vm/actions/{add → common}/select/storage/Storage.vue +1 -1
  102. package/components/common/vm/actions/{add → common}/select/storage/config/config.ts +154 -154
  103. package/components/common/vm/actions/editSettings/EditSettings.vue +4 -4
  104. package/components/common/vm/actions/editSettings/models/types.ts +2 -2
  105. package/components/common/vm/actions/editSettings/utils.ts +2 -5
  106. package/components/common/vm/actions/models/interfaces.ts +1 -1
  107. package/components/common/vm/actions/models/types.ts +1 -1
  108. package/components/common/vm/actions/utils.ts +5 -5
  109. package/components/common/wizards/datastore/add/nfs/Nfs.vue +94 -94
  110. package/components/common/wizards/datastore/add/nfs/configuration/Configuration.vue +377 -377
  111. package/components/common/wizards/datastore/add/nfs/configuration/serversList/ServersList.vue +123 -123
  112. package/components/common/wizards/datastore/add/nfs/kerberosAuthentication/KerberosAuthentication.vue +54 -54
  113. package/components/common/wizards/datastore/add/sharedStorm/deviceSelection/hostTable/HostTable.vue +131 -131
  114. package/components/common/wizards/datastore/add/sharedStorm/partitionConfiguration/PartitionConfiguration.vue +230 -230
  115. package/composables/useLocal.ts +38 -38
  116. package/minify.js +146 -146
  117. package/models/store/interfaces.ts +37 -37
  118. package/models/store/storage/interfaces.ts +32 -32
  119. package/models/store/types.ts +32 -32
  120. package/models/store/vm/interfaces.ts +2 -2
  121. package/modules/fixContentBuild/utils/methods.ts +114 -114
  122. package/package.json +1 -1
  123. package/public/spice-console/application/codec.js +257 -257
  124. package/public/spice-console/lib/rasterEngine.js +907 -907
  125. package/public/spice-console/network/spicechannel.js +369 -369
  126. package/utils/contentBuild.ts +34 -34
  127. package/components/common/vm/actions/clone/readyToComplete/ReadyToComplete.vue +0 -15
  128. /package/components/common/vm/actions/{add → common}/customizeHardware/config/navItems.ts +0 -0
  129. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/browseView/models/interfaces.ts +0 -0
  130. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/bus/config/options.ts +0 -0
  131. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cdDvdDrive/config/fileTypes.ts +0 -0
  132. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cdDvdDrive/config/options.ts +0 -0
  133. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cdDvdDrive/media/Media.vue +0 -0
  134. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cdDvdDrive/models/types.ts +0 -0
  135. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/config/binaryOptions.ts +0 -0
  136. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/config/dropdownItems.ts +0 -0
  137. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/CpuHotPlug.vue +0 -0
  138. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/CpuModel.vue +0 -0
  139. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/Hv.vue +0 -0
  140. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/Iommu.vue +0 -0
  141. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/MaxCpu.vue +0 -0
  142. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/Pc.vue +0 -0
  143. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/Sa.vue +0 -0
  144. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/config/cpuOptions.ts +0 -0
  145. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/shares/config/options.ts +0 -0
  146. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/cpu/tooltip/Tooltip.vue +0 -0
  147. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/memory/MemoryHotPlug.vue +0 -0
  148. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/models/interfaces.ts +0 -0
  149. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/models/types.ts +0 -0
  150. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/DiskFile.vue +0 -0
  151. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/MaximumSize.vue +0 -0
  152. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/cache/config/options.ts +0 -0
  153. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/limitIops/config/options.ts +0 -0
  154. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/mode/config/options.ts +0 -0
  155. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/provisioning/config/options.ts +0 -0
  156. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newHardDisk/sharing/config/options.ts +0 -0
  157. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newNetwork/Location.vue +0 -0
  158. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newNetwork/adapterType/config/options.ts +0 -0
  159. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newNetwork/macAddress/config/options.ts +0 -0
  160. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/config/options.ts +0 -0
  161. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/directPathIo/DirectPathIo.vue +0 -0
  162. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/dynamicDirectPathIo/config/options.ts +0 -0
  163. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/note/Note.vue +0 -0
  164. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/nvidiaGrid/NvidiaGrid.vue +0 -0
  165. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newPciDevice/typeSelection/TypeSelection.vue +0 -0
  166. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/newUsbController/config/options.ts +0 -0
  167. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/other/InputDevices.vue +0 -0
  168. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/reservation/config/options.ts +0 -0
  169. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/Graphics.vue +0 -0
  170. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/TotalVideoMemory.vue +0 -0
  171. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/config/options.ts +0 -0
  172. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/model/config/options.ts +0 -0
  173. /package/components/common/vm/actions/{add → common}/customizeHardware/virtualHardware/videoCard/numberDisplays/config/options.ts +0 -0
  174. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/Menu.vue +0 -0
  175. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/Secure.vue +0 -0
  176. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/delay/config/config.ts +0 -0
  177. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/firmware/config/config.ts +0 -0
  178. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/bootOptions/order/models/interfaces.ts +0 -0
  179. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/models/interfaces.ts +0 -0
  180. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/FileTransfer.vue +0 -0
  181. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/FolderSharing.vue +0 -0
  182. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/PlaybackCompression.vue +0 -0
  183. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/PowerControl.vue +0 -0
  184. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/imgCompression/config/config.ts +0 -0
  185. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/jpegCompression/config/config.ts +0 -0
  186. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/keymap/config/config.ts +0 -0
  187. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/mouseMode/config/config.ts +0 -0
  188. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/password/models/interfaces.ts +0 -0
  189. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/password/utils.ts +0 -0
  190. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/sharePolicy/config/config.ts +0 -0
  191. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/streamingMode/config/config.ts +0 -0
  192. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/type/config/config.ts +0 -0
  193. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/usbRedirection/config/config.ts +0 -0
  194. /package/components/common/vm/actions/{add → common}/customizeHardware/vmoptions/remoteConsoleOptions/zlibCompression/config/config.ts +0 -0
  195. /package/components/common/vm/actions/{add → common}/models/enums.ts +0 -0
  196. /package/components/common/vm/actions/{add → common}/readyToComplete/ReadyToComplete.vue +0 -0
  197. /package/components/common/vm/actions/{add → common}/select/compatibility/Compatibility.vue +0 -0
  198. /package/components/common/vm/actions/{add → common}/select/computeResource/ComputeResource.spec.ts +0 -0
  199. /package/components/common/vm/actions/{add → common}/select/computeResource/TreeView.vue +0 -0
  200. /package/components/common/vm/actions/{add → common}/select/createType/config/items.ts +0 -0
  201. /package/components/common/vm/actions/{add → common}/select/models/interfaces.ts +0 -0
  202. /package/components/common/vm/actions/{add → common}/select/name/Name.vue +0 -0
  203. /package/components/common/vm/actions/{add → common}/select/storage/models/types.ts +0 -0
@@ -1,189 +1,189 @@
1
- <template>
2
- <div v-show="props.totalPages > 1" class="pagination-list">
3
- <button
4
- :id="`${props.testId}-first-button`"
5
- class="pagination-first"
6
- :disabled="currentPage === 1"
7
- @click="changeCurrentPage(1)"
8
- >
9
- <atoms-the-icon
10
- name="step-forward"
11
- class="pagination-icon"
12
- width="14px"
13
- height="14px"
14
- />
15
- </button>
16
- <button
17
- :id="`${props.testId}-prev-button`"
18
- class="pagination-previous"
19
- :disabled="currentPage === 1"
20
- @click="changeCurrentPage(currentPage - 1)"
21
- >
22
- <atoms-the-icon
23
- name="angle"
24
- class="pagination-icon"
25
- width="14px"
26
- height="14px"
27
- />
28
- </button>
29
-
30
- <input
31
- :id="`${props.testId}-page-input`"
32
- v-model="currentPageLazy"
33
- type="text"
34
- class="pagination-current clr-input"
35
- @blur="changeCurrentPageManual"
36
- />
37
- <span class="divider">/</span>
38
- <span class="total-pages">{{ props.totalPages }}</span>
39
-
40
- <button
41
- :id="`${props.testId}-next-button`"
42
- class="pagination-next"
43
- :disabled="currentPage === props.totalPages"
44
- @click="changeCurrentPage(currentPage + 1)"
45
- >
46
- <atoms-the-icon
47
- name="angle"
48
- class="pagination-icon"
49
- width="14px"
50
- height="14px"
51
- />
52
- </button>
53
- <button
54
- :id="`${props.testId}-last-button`"
55
- class="pagination-last"
56
- :disabled="currentPage === props.totalPages"
57
- @click="changeCurrentPage(props.totalPages)"
58
- >
59
- <atoms-the-icon
60
- name="step-forward"
61
- class="pagination-icon"
62
- width="14px"
63
- height="14px"
64
- />
65
- </button>
66
- </div>
67
- </template>
68
-
69
- <script setup lang="ts">
70
- import { UI_I_HTMLSelectElement } from '~/models/interfaces'
71
- const props = withDefaults(
72
- defineProps<{
73
- page: number
74
- totalItems: number
75
- totalPages: number
76
- pageSize: number
77
- testId?: string
78
- }>(),
79
- { testId: 'ui-data-grid-page' }
80
- )
81
- const emits = defineEmits<{
82
- (event: 'change', num: number): void
83
- }>()
84
-
85
- const currentPage = ref(1)
86
- const currentPageLazy = ref(1)
87
- const changePageAndLazy = (page: number): void => {
88
- currentPage.value = currentPageLazy.value = page
89
- emits('change', page)
90
- }
91
- // const totalPages = computed(() => {
92
- // return Math.ceil(props.totalItems / props.pageSize) || 1
93
- // })
94
- // watch(() => props.totalPages, (val) => {
95
- // if (val < currentPage.value) {
96
- // changePageAndLazy(val)
97
- // }
98
- // })
99
- watch(
100
- () => props.page,
101
- (val) => {
102
- changePageAndLazy(Math.min(props.totalPages, val))
103
- },
104
- { immediate: true }
105
- )
106
- const changeCurrentPage = (page: number): void => {
107
- if (page > props.totalPages || page < 1) return
108
- changePageAndLazy(page)
109
- }
110
- const changeCurrentPageManual = (e: UI_I_HTMLSelectElement): void => {
111
- const newVal = parseInt(e.target.value)
112
-
113
- if (typeof newVal !== 'number' || isNaN(newVal)) {
114
- currentPageLazy.value = currentPage.value
115
- return
116
- }
117
- changePageAndLazy(
118
- newVal > props.totalPages ? props.totalPages : newVal < 1 ? 1 : newVal
119
- )
120
- }
121
- </script>
122
-
123
- <style scoped lang="scss">
124
- @import '~/assets/scss/common/mixins';
125
- .pagination-list {
126
- @include flex($align: center);
127
- margin-left: 24px;
128
-
129
- button {
130
- display: flex;
131
-
132
- &:disabled {
133
- cursor: default;
134
- svg {
135
- fill: #959595;
136
- }
137
- }
138
- }
139
-
140
- .pagination-first {
141
- margin-right: 12px;
142
- svg {
143
- transform: rotate(180deg);
144
- }
145
- }
146
- .pagination-previous {
147
- margin-right: 12px;
148
- background-image: none;
149
-
150
- svg {
151
- transform: rotate(-90deg);
152
- }
153
- }
154
- .pagination-last {
155
- margin-left: 12px;
156
- }
157
- .pagination-next {
158
- margin-left: 12px;
159
- background-image: none;
160
-
161
- svg {
162
- transform: rotate(90deg);
163
- }
164
- }
165
- .pagination-current {
166
- border: 1px solid #ccc;
167
- border-radius: 3px;
168
- min-width: 24px;
169
- transition: none !important;
170
- width: 35px;
171
- @include text($fs: 11px, $fw: normal, $align: center);
172
-
173
- &:focus {
174
- background: none;
175
- border: 1px solid #46afd9;
176
- box-shadow: 0 0 1px #46afd9;
177
- }
178
- }
179
- .divider {
180
- margin: 0 4px;
181
- }
182
- .total-pages {
183
- margin: 0;
184
- }
185
- .pagination-icon {
186
- fill: var(--global-text-color3);
187
- }
188
- }
189
- </style>
1
+ <template>
2
+ <div v-show="props.totalPages > 1" class="pagination-list">
3
+ <button
4
+ :id="`${props.testId}-first-button`"
5
+ class="pagination-first"
6
+ :disabled="currentPage === 1"
7
+ @click="changeCurrentPage(1)"
8
+ >
9
+ <atoms-the-icon
10
+ name="step-forward"
11
+ class="pagination-icon"
12
+ width="14px"
13
+ height="14px"
14
+ />
15
+ </button>
16
+ <button
17
+ :id="`${props.testId}-prev-button`"
18
+ class="pagination-previous"
19
+ :disabled="currentPage === 1"
20
+ @click="changeCurrentPage(currentPage - 1)"
21
+ >
22
+ <atoms-the-icon
23
+ name="angle"
24
+ class="pagination-icon"
25
+ width="14px"
26
+ height="14px"
27
+ />
28
+ </button>
29
+
30
+ <input
31
+ :id="`${props.testId}-page-input`"
32
+ v-model="currentPageLazy"
33
+ type="text"
34
+ class="pagination-current clr-input"
35
+ @blur="changeCurrentPageManual"
36
+ />
37
+ <span class="divider">/</span>
38
+ <span class="total-pages">{{ props.totalPages }}</span>
39
+
40
+ <button
41
+ :id="`${props.testId}-next-button`"
42
+ class="pagination-next"
43
+ :disabled="currentPage === props.totalPages"
44
+ @click="changeCurrentPage(currentPage + 1)"
45
+ >
46
+ <atoms-the-icon
47
+ name="angle"
48
+ class="pagination-icon"
49
+ width="14px"
50
+ height="14px"
51
+ />
52
+ </button>
53
+ <button
54
+ :id="`${props.testId}-last-button`"
55
+ class="pagination-last"
56
+ :disabled="currentPage === props.totalPages"
57
+ @click="changeCurrentPage(props.totalPages)"
58
+ >
59
+ <atoms-the-icon
60
+ name="step-forward"
61
+ class="pagination-icon"
62
+ width="14px"
63
+ height="14px"
64
+ />
65
+ </button>
66
+ </div>
67
+ </template>
68
+
69
+ <script setup lang="ts">
70
+ import { UI_I_HTMLSelectElement } from '~/models/interfaces'
71
+ const props = withDefaults(
72
+ defineProps<{
73
+ page: number
74
+ totalItems: number
75
+ totalPages: number
76
+ pageSize: number
77
+ testId?: string
78
+ }>(),
79
+ { testId: 'ui-data-grid-page' }
80
+ )
81
+ const emits = defineEmits<{
82
+ (event: 'change', num: number): void
83
+ }>()
84
+
85
+ const currentPage = ref(1)
86
+ const currentPageLazy = ref(1)
87
+ const changePageAndLazy = (page: number): void => {
88
+ currentPage.value = currentPageLazy.value = page
89
+ emits('change', page)
90
+ }
91
+ // const totalPages = computed(() => {
92
+ // return Math.ceil(props.totalItems / props.pageSize) || 1
93
+ // })
94
+ // watch(() => props.totalPages, (val) => {
95
+ // if (val < currentPage.value) {
96
+ // changePageAndLazy(val)
97
+ // }
98
+ // })
99
+ watch(
100
+ () => props.page,
101
+ (val) => {
102
+ changePageAndLazy(Math.min(props.totalPages, val))
103
+ },
104
+ { immediate: true }
105
+ )
106
+ const changeCurrentPage = (page: number): void => {
107
+ if (page > props.totalPages || page < 1) return
108
+ changePageAndLazy(page)
109
+ }
110
+ const changeCurrentPageManual = (e: UI_I_HTMLSelectElement): void => {
111
+ const newVal = parseInt(e.target.value)
112
+
113
+ if (typeof newVal !== 'number' || isNaN(newVal)) {
114
+ currentPageLazy.value = currentPage.value
115
+ return
116
+ }
117
+ changePageAndLazy(
118
+ newVal > props.totalPages ? props.totalPages : newVal < 1 ? 1 : newVal
119
+ )
120
+ }
121
+ </script>
122
+
123
+ <style scoped lang="scss">
124
+ @import '~/assets/scss/common/mixins';
125
+ .pagination-list {
126
+ @include flex($align: center);
127
+ margin-left: 24px;
128
+
129
+ button {
130
+ display: flex;
131
+
132
+ &:disabled {
133
+ cursor: default;
134
+ svg {
135
+ fill: #959595;
136
+ }
137
+ }
138
+ }
139
+
140
+ .pagination-first {
141
+ margin-right: 12px;
142
+ svg {
143
+ transform: rotate(180deg);
144
+ }
145
+ }
146
+ .pagination-previous {
147
+ margin-right: 12px;
148
+ background-image: none;
149
+
150
+ svg {
151
+ transform: rotate(-90deg);
152
+ }
153
+ }
154
+ .pagination-last {
155
+ margin-left: 12px;
156
+ }
157
+ .pagination-next {
158
+ margin-left: 12px;
159
+ background-image: none;
160
+
161
+ svg {
162
+ transform: rotate(90deg);
163
+ }
164
+ }
165
+ .pagination-current {
166
+ border: 1px solid #ccc;
167
+ border-radius: 3px;
168
+ min-width: 24px;
169
+ transition: none !important;
170
+ width: 35px;
171
+ @include text($fs: 11px, $fw: normal, $align: center);
172
+
173
+ &:focus {
174
+ background: none;
175
+ border: 1px solid #46afd9;
176
+ box-shadow: 0 0 1px #46afd9;
177
+ }
178
+ }
179
+ .divider {
180
+ margin: 0 4px;
181
+ }
182
+ .total-pages {
183
+ margin: 0;
184
+ }
185
+ .pagination-icon {
186
+ fill: var(--global-text-color3);
187
+ }
188
+ }
189
+ </style>