vueless 0.0.1

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 (938) hide show
  1. package/_readme/README.md +78 -0
  2. package/_readme/UGroup.md +25 -0
  3. package/_readme/UNotify.md +53 -0
  4. package/_readme/UPage.md +37 -0
  5. package/_readme/UTopLoader.md +27 -0
  6. package/_readme/layoutAdmin.md +703 -0
  7. package/_readme/layoutApp.md +153 -0
  8. package/_readme/layoutAuth.md +190 -0
  9. package/composable.ui/index.js +81 -0
  10. package/config.rollup-plugin-visualizer/index.js +11 -0
  11. package/config.unplugin-vue-i18n/index.js +9 -0
  12. package/config.vite-plugin-pwa/index.js +132 -0
  13. package/config.vite-svg-loader/index.js +22 -0
  14. package/constant.component-names/index.js +6 -0
  15. package/index.js +151 -0
  16. package/layout-ui.loader/index.vue +61 -0
  17. package/layout-ui.loader/store/index.js +17 -0
  18. package/layout-ui.loader-top/components/TopProgress.vue +277 -0
  19. package/layout-ui.loader-top/index.vue +218 -0
  20. package/layout-ui.loader-top/store/index.js +55 -0
  21. package/layout-ui.notify/index.stories.js +102 -0
  22. package/layout-ui.notify/index.vue +254 -0
  23. package/layout-ui.viewport/index.vue +78 -0
  24. package/layout-ui.viewport/store/index.js +47 -0
  25. package/layout.admin/AsideBlock.vue +534 -0
  26. package/layout.admin/AsideInfoBlock.vue +85 -0
  27. package/layout.admin/BrandBlock.vue +380 -0
  28. package/layout.admin/ChangeThemeModal.vue +179 -0
  29. package/layout.admin/HelperBlock.vue +132 -0
  30. package/layout.admin/MainMenu.vue +234 -0
  31. package/layout.admin/MainSubMenu.vue +196 -0
  32. package/layout.admin/MobileMainMenu.vue +197 -0
  33. package/layout.admin/MobileSubBlock.vue +171 -0
  34. package/layout.admin/RightInfoBlock.vue +166 -0
  35. package/layout.admin/UserBlock.vue +290 -0
  36. package/layout.admin/images/abstract-01.jpg +0 -0
  37. package/layout.admin/images/abstract-01_preview.jpg +0 -0
  38. package/layout.admin/index.vue +544 -0
  39. package/layout.admin/mixins/index.js +54 -0
  40. package/layout.admin/store/index.js +167 -0
  41. package/layout.auth/FeaturesBlock.vue +57 -0
  42. package/layout.auth/FooterMenu.vue +90 -0
  43. package/layout.auth/LanguageSwitcher.vue +90 -0
  44. package/layout.auth/index.vue +237 -0
  45. package/library.vue-tailwind-3/TDatepicker/components/t-date-trigger.js +257 -0
  46. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-navigator.js +600 -0
  47. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-time-selector.js +522 -0
  48. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-calendar-days-day.js +289 -0
  49. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-calendar-days.js +236 -0
  50. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-calendar-headers.js +64 -0
  51. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-calendar.js +159 -0
  52. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-months-month.js +106 -0
  53. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-months.js +97 -0
  54. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-years-year.js +117 -0
  55. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view-years.js +104 -0
  56. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views-view.js +294 -0
  57. package/library.vue-tailwind-3/TDatepicker/components/t-datepicker-views.js +212 -0
  58. package/library.vue-tailwind-3/TDatepicker/components/t-toggle.js +323 -0
  59. package/library.vue-tailwind-3/TDatepicker/index.js +1051 -0
  60. package/library.vue-tailwind-3/base/Component.js +126 -0
  61. package/library.vue-tailwind-3/base/HtmlInput.js +38 -0
  62. package/library.vue-tailwind-3/base/TextInput.js +102 -0
  63. package/library.vue-tailwind-3/index.js +12 -0
  64. package/library.vue-tailwind-3/l10n/ar.js +27 -0
  65. package/library.vue-tailwind-3/l10n/at.js +29 -0
  66. package/library.vue-tailwind-3/l10n/az.js +40 -0
  67. package/library.vue-tailwind-3/l10n/be.js +35 -0
  68. package/library.vue-tailwind-3/l10n/bg.js +41 -0
  69. package/library.vue-tailwind-3/l10n/bn.js +39 -0
  70. package/library.vue-tailwind-3/l10n/bs.js +28 -0
  71. package/library.vue-tailwind-3/l10n/cat.js +59 -0
  72. package/library.vue-tailwind-3/l10n/cs.js +35 -0
  73. package/library.vue-tailwind-3/l10n/cy.js +68 -0
  74. package/library.vue-tailwind-3/l10n/da.js +31 -0
  75. package/library.vue-tailwind-3/l10n/de.js +30 -0
  76. package/library.vue-tailwind-3/l10n/default.js +54 -0
  77. package/library.vue-tailwind-3/l10n/eo.js +31 -0
  78. package/library.vue-tailwind-3/l10n/es.js +32 -0
  79. package/library.vue-tailwind-3/l10n/et.js +46 -0
  80. package/library.vue-tailwind-3/l10n/fa.js +41 -0
  81. package/library.vue-tailwind-3/l10n/fi.js +50 -0
  82. package/library.vue-tailwind-3/l10n/fo.js +40 -0
  83. package/library.vue-tailwind-3/l10n/fr.js +48 -0
  84. package/library.vue-tailwind-3/l10n/ga.js +36 -0
  85. package/library.vue-tailwind-3/l10n/gr.js +33 -0
  86. package/library.vue-tailwind-3/l10n/he.js +41 -0
  87. package/library.vue-tailwind-3/l10n/hi.js +39 -0
  88. package/library.vue-tailwind-3/l10n/hr.js +41 -0
  89. package/library.vue-tailwind-3/l10n/hu.js +46 -0
  90. package/library.vue-tailwind-3/l10n/id.js +30 -0
  91. package/library.vue-tailwind-3/l10n/index.js +127 -0
  92. package/library.vue-tailwind-3/l10n/is.js +40 -0
  93. package/library.vue-tailwind-3/l10n/it.js +31 -0
  94. package/library.vue-tailwind-3/l10n/ja.js +42 -0
  95. package/library.vue-tailwind-3/l10n/ka.js +35 -0
  96. package/library.vue-tailwind-3/l10n/km.js +45 -0
  97. package/library.vue-tailwind-3/l10n/ko.js +41 -0
  98. package/library.vue-tailwind-3/l10n/kz.js +34 -0
  99. package/library.vue-tailwind-3/l10n/lt.js +41 -0
  100. package/library.vue-tailwind-3/l10n/lv.js +37 -0
  101. package/library.vue-tailwind-3/l10n/mk.js +30 -0
  102. package/library.vue-tailwind-3/l10n/mn.js +42 -0
  103. package/library.vue-tailwind-3/l10n/ms.js +28 -0
  104. package/library.vue-tailwind-3/l10n/my.js +42 -0
  105. package/library.vue-tailwind-3/l10n/nl.js +48 -0
  106. package/library.vue-tailwind-3/l10n/no.js +31 -0
  107. package/library.vue-tailwind-3/l10n/pa.js +27 -0
  108. package/library.vue-tailwind-3/l10n/pl.js +31 -0
  109. package/library.vue-tailwind-3/l10n/pt.js +36 -0
  110. package/library.vue-tailwind-3/l10n/ro.js +29 -0
  111. package/library.vue-tailwind-3/l10n/ru.js +48 -0
  112. package/library.vue-tailwind-3/l10n/si.js +40 -0
  113. package/library.vue-tailwind-3/l10n/sk.js +32 -0
  114. package/library.vue-tailwind-3/l10n/sl.js +32 -0
  115. package/library.vue-tailwind-3/l10n/sq.js +27 -0
  116. package/library.vue-tailwind-3/l10n/sr-cyr.js +29 -0
  117. package/library.vue-tailwind-3/l10n/sr.js +30 -0
  118. package/library.vue-tailwind-3/l10n/sv.js +30 -0
  119. package/library.vue-tailwind-3/l10n/th.js +43 -0
  120. package/library.vue-tailwind-3/l10n/tr.js +32 -0
  121. package/library.vue-tailwind-3/l10n/uk.js +28 -0
  122. package/library.vue-tailwind-3/l10n/uz.js +35 -0
  123. package/library.vue-tailwind-3/l10n/uz_latn.js +48 -0
  124. package/library.vue-tailwind-3/l10n/vn.js +41 -0
  125. package/library.vue-tailwind-3/l10n/zh-tw.js +41 -0
  126. package/library.vue-tailwind-3/l10n/zh.js +41 -0
  127. package/library.vue-tailwind-3/services/date.service.js +294 -0
  128. package/library.vue-tailwind-3/services/formatting.service.js +205 -0
  129. package/library.vue-tailwind-3/services/vueTailwind.service.js +41 -0
  130. package/library.vue-tailwind-3/t-alert.js +151 -0
  131. package/library.vue-tailwind-3/t-button.js +243 -0
  132. package/library.vue-tailwind-3/t-card.js +98 -0
  133. package/library.vue-tailwind-3/t-checkbox.js +292 -0
  134. package/library.vue-tailwind-3/t-dropdown.js +322 -0
  135. package/library.vue-tailwind-3/t-input.js +68 -0
  136. package/library.vue-tailwind-3/t-modal.js +409 -0
  137. package/library.vue-tailwind-3/t-pagination.js +309 -0
  138. package/library.vue-tailwind-3/t-radio.js +301 -0
  139. package/library.vue-tailwind-3/t-table.js +362 -0
  140. package/library.vue-tailwind-3/t-textarea.js +84 -0
  141. package/library.web-types-gen/index.js +17 -0
  142. package/library.web-types-gen/lib/build.js +226 -0
  143. package/library.web-types-gen/lib/config.js +26 -0
  144. package/library.web-types-gen/package.json +3 -0
  145. package/package.json +20 -0
  146. package/resolver.unplugin-vue-components/index.js +94 -0
  147. package/service.api/index.js +275 -0
  148. package/service.data/index.js +75 -0
  149. package/service.date/index.js +222 -0
  150. package/service.i18n/index.js +145 -0
  151. package/service.idb-keyval/index.js +37 -0
  152. package/service.jwt/index.js +27 -0
  153. package/service.money/index.js +86 -0
  154. package/service.notify/index.js +87 -0
  155. package/service.redirect/index.js +20 -0
  156. package/service.storybook/index.js +118 -0
  157. package/service.ui/index.js +174 -0
  158. package/service.validation/index.js +55 -0
  159. package/service.worker/index.js +26 -0
  160. package/ui.button/index.stories.js +165 -0
  161. package/ui.button/index.vue +1018 -0
  162. package/ui.button-expand/index.stories.js +44 -0
  163. package/ui.button-expand/index.vue +22 -0
  164. package/ui.button-expand-item/index.stories.js +69 -0
  165. package/ui.button-expand-item/index.vue +154 -0
  166. package/ui.button-group/index.stories.js +104 -0
  167. package/ui.button-group/index.vue +165 -0
  168. package/ui.button-group-item/index.stories.js +74 -0
  169. package/ui.button-group-item/index.vue +283 -0
  170. package/ui.button-link/index.stories.js +121 -0
  171. package/ui.button-link/index.vue +541 -0
  172. package/ui.container-accordion/index.stories.js +88 -0
  173. package/ui.container-accordion/index.vue +167 -0
  174. package/ui.container-card/index.stories.js +128 -0
  175. package/ui.container-card/index.vue +207 -0
  176. package/ui.container-divider/index.stories.js +91 -0
  177. package/ui.container-divider/index.vue +201 -0
  178. package/ui.container-group/index.stories.js +87 -0
  179. package/ui.container-group/index.vue +172 -0
  180. package/ui.container-groups/index.stories.js +44 -0
  181. package/ui.container-groups/index.vue +18 -0
  182. package/ui.container-modal/components/ArrowLink.vue +87 -0
  183. package/ui.container-modal/index.stories.js +169 -0
  184. package/ui.container-modal/index.vue +416 -0
  185. package/ui.container-modal-confirm/index.stories.js +150 -0
  186. package/ui.container-modal-confirm/index.vue +186 -0
  187. package/ui.container-page/components/ArrowLink.vue +87 -0
  188. package/ui.container-page/index.stories.js +174 -0
  189. package/ui.container-page/index.vue +486 -0
  190. package/ui.container-row/index.stories.js +71 -0
  191. package/ui.container-row/index.vue +52 -0
  192. package/ui.data-list/index.stories.js +90 -0
  193. package/ui.data-list/index.vue +367 -0
  194. package/ui.data-table/components/DateSeparator.vue +99 -0
  195. package/ui.data-table/components/EmptyTableMsg.vue +46 -0
  196. package/ui.data-table/components/TableCheckbox.vue +109 -0
  197. package/ui.data-table/index.stories.js +231 -0
  198. package/ui.data-table/index.vue +1101 -0
  199. package/ui.dropdown-button/index.stories.js +157 -0
  200. package/ui.dropdown-button/index.vue +331 -0
  201. package/ui.dropdown-item/index.stories.js +29 -0
  202. package/ui.dropdown-item/index.vue +70 -0
  203. package/ui.dropdown-link/index.stories.js +127 -0
  204. package/ui.dropdown-link/index.vue +330 -0
  205. package/ui.dropdown-list/index.stories.js +46 -0
  206. package/ui.dropdown-list/index.vue +139 -0
  207. package/ui.dropdown-tag/index.stories.js +125 -0
  208. package/ui.dropdown-tag/index.vue +285 -0
  209. package/ui.form-checkbox/index.stories.js +98 -0
  210. package/ui.form-checkbox/index.vue +301 -0
  211. package/ui.form-checkbox-group/index.stories.js +39 -0
  212. package/ui.form-checkbox-group/index.vue +216 -0
  213. package/ui.form-checkbox-multi-state/index.stories.js +62 -0
  214. package/ui.form-checkbox-multi-state/index.vue +244 -0
  215. package/ui.form-color-picker/index.vue +350 -0
  216. package/ui.form-date-picker/index.stories.js +119 -0
  217. package/ui.form-date-picker/index.vue +851 -0
  218. package/ui.form-date-picker-range/components/VariantButton.vue +136 -0
  219. package/ui.form-date-picker-range/components/VariantInput.vue +101 -0
  220. package/ui.form-date-picker-range/index.stories.js +93 -0
  221. package/ui.form-date-picker-range/index.vue +1537 -0
  222. package/ui.form-date-picker-range/services/dateRange.service.js +178 -0
  223. package/ui.form-input/index.stories.js +132 -0
  224. package/ui.form-input/index.vue +524 -0
  225. package/ui.form-input/text-security-disc.woff +0 -0
  226. package/ui.form-input-file/index.stories.js +85 -0
  227. package/ui.form-input-file/index.vue +584 -0
  228. package/ui.form-input-money/_components/ConvertibleInput.vue +773 -0
  229. package/ui.form-input-money/_components/RangeInput.vue +356 -0
  230. package/ui.form-input-money/_components/SingleInput.vue +378 -0
  231. package/ui.form-input-money/index.stories.js +98 -0
  232. package/ui.form-input-money/index.vue +260 -0
  233. package/ui.form-input-number/index.stories.js +33 -0
  234. package/ui.form-input-number/index.vue +127 -0
  235. package/ui.form-input-rating/index.stories.js +107 -0
  236. package/ui.form-input-rating/index.vue +242 -0
  237. package/ui.form-input-search/index.stories.js +86 -0
  238. package/ui.form-input-search/index.vue +210 -0
  239. package/ui.form-radio/index.stories.js +69 -0
  240. package/ui.form-radio/index.vue +176 -0
  241. package/ui.form-radio-card/index.stories.js +140 -0
  242. package/ui.form-radio-card/index.vue +183 -0
  243. package/ui.form-radio-group/index.stories.js +41 -0
  244. package/ui.form-radio-group/index.vue +98 -0
  245. package/ui.form-select/index.stories.js +183 -0
  246. package/ui.form-select/index.vue +1025 -0
  247. package/ui.form-select-multi/index.stories.js +131 -0
  248. package/ui.form-select-multi/index.vue +882 -0
  249. package/ui.form-switch/index.stories.js +126 -0
  250. package/ui.form-switch/index.vue +673 -0
  251. package/ui.form-textarea/index.stories.js +109 -0
  252. package/ui.form-textarea/index.vue +399 -0
  253. package/ui.icons-metronic/ATM.svg +8 -0
  254. package/ui.icons-metronic/Active-call.svg +8 -0
  255. package/ui.icons-metronic/Add-music.svg +8 -0
  256. package/ui.icons-metronic/Add-user.svg +8 -0
  257. package/ui.icons-metronic/Address-card.svg +7 -0
  258. package/ui.icons-metronic/Adjust.svg +7 -0
  259. package/ui.icons-metronic/Adress-book1.svg +8 -0
  260. package/ui.icons-metronic/Adress-book2.svg +8 -0
  261. package/ui.icons-metronic/Air-ballon.svg +8 -0
  262. package/ui.icons-metronic/Air-conditioning.svg +8 -0
  263. package/ui.icons-metronic/Airplay-video.svg +8 -0
  264. package/ui.icons-metronic/Airplay.svg +8 -0
  265. package/ui.icons-metronic/Airpods.svg +10 -0
  266. package/ui.icons-metronic/Alarm-clock.svg +9 -0
  267. package/ui.icons-metronic/Align-auto.svg +8 -0
  268. package/ui.icons-metronic/Align-center.svg +8 -0
  269. package/ui.icons-metronic/Align-justify.svg +8 -0
  270. package/ui.icons-metronic/Align-left.svg +9 -0
  271. package/ui.icons-metronic/Align-right.svg +8 -0
  272. package/ui.icons-metronic/Anchor-center-down.svg +11 -0
  273. package/ui.icons-metronic/Anchor-center-up.svg +11 -0
  274. package/ui.icons-metronic/Anchor-center.svg +8 -0
  275. package/ui.icons-metronic/Anchor-left-down.svg +11 -0
  276. package/ui.icons-metronic/Anchor-left-up.svg +11 -0
  277. package/ui.icons-metronic/Anchor-left.svg +11 -0
  278. package/ui.icons-metronic/Anchor-right-down.svg +11 -0
  279. package/ui.icons-metronic/Anchor-right-up.svg +11 -0
  280. package/ui.icons-metronic/Anchor-right.svg +11 -0
  281. package/ui.icons-metronic/Android.svg +8 -0
  282. package/ui.icons-metronic/Angle Grinder.svg +9 -0
  283. package/ui.icons-metronic/Angle-double-down.svg +8 -0
  284. package/ui.icons-metronic/Angle-double-left.svg +8 -0
  285. package/ui.icons-metronic/Angle-double-right.svg +8 -0
  286. package/ui.icons-metronic/Angle-double-up.svg +8 -0
  287. package/ui.icons-metronic/Angle-down.svg +7 -0
  288. package/ui.icons-metronic/Angle-left.svg +7 -0
  289. package/ui.icons-metronic/Angle-right.svg +7 -0
  290. package/ui.icons-metronic/Angle-up.svg +7 -0
  291. package/ui.icons-metronic/Apple-Watch.svg +8 -0
  292. package/ui.icons-metronic/Archive.svg +7 -0
  293. package/ui.icons-metronic/Armchair.svg +8 -0
  294. package/ui.icons-metronic/Arrow-down.svg +8 -0
  295. package/ui.icons-metronic/Arrow-from-bottom.svg +9 -0
  296. package/ui.icons-metronic/Arrow-from-left.svg +9 -0
  297. package/ui.icons-metronic/Arrow-from-right.svg +9 -0
  298. package/ui.icons-metronic/Arrow-from-top.svg +9 -0
  299. package/ui.icons-metronic/Arrow-left.svg +8 -0
  300. package/ui.icons-metronic/Arrow-right.svg +8 -0
  301. package/ui.icons-metronic/Arrow-to-bottom.svg +9 -0
  302. package/ui.icons-metronic/Arrow-to-left.svg +9 -0
  303. package/ui.icons-metronic/Arrow-to-right.svg +9 -0
  304. package/ui.icons-metronic/Arrow-to-up.svg +9 -0
  305. package/ui.icons-metronic/Arrow-up.svg +8 -0
  306. package/ui.icons-metronic/Arrows-h.svg +9 -0
  307. package/ui.icons-metronic/Arrows-v.svg +9 -0
  308. package/ui.icons-metronic/Arrows.svg +8 -0
  309. package/ui.icons-metronic/Article.svg +8 -0
  310. package/ui.icons-metronic/Attachment1.svg +8 -0
  311. package/ui.icons-metronic/Attachment2.svg +10 -0
  312. package/ui.icons-metronic/Axe.svg +8 -0
  313. package/ui.icons-metronic/Back.svg +8 -0
  314. package/ui.icons-metronic/Backspace.svg +8 -0
  315. package/ui.icons-metronic/Backward.svg +8 -0
  316. package/ui.icons-metronic/Bag-chair.svg +8 -0
  317. package/ui.icons-metronic/Bag1.svg +8 -0
  318. package/ui.icons-metronic/Bag2.svg +8 -0
  319. package/ui.icons-metronic/Baking-glove.svg +8 -0
  320. package/ui.icons-metronic/Barcode-read.svg +8 -0
  321. package/ui.icons-metronic/Barcode-scan.svg +9 -0
  322. package/ui.icons-metronic/Barcode.svg +8 -0
  323. package/ui.icons-metronic/Bath.svg +8 -0
  324. package/ui.icons-metronic/Battery-charging.svg +9 -0
  325. package/ui.icons-metronic/Battery-empty.svg +8 -0
  326. package/ui.icons-metronic/Battery-full.svg +8 -0
  327. package/ui.icons-metronic/Battery-half.svg +8 -0
  328. package/ui.icons-metronic/Bed.svg +9 -0
  329. package/ui.icons-metronic/Beer.svg +11 -0
  330. package/ui.icons-metronic/Bezier-curve.svg +8 -0
  331. package/ui.icons-metronic/Binocular.svg +7 -0
  332. package/ui.icons-metronic/Bitcoin.svg +9 -0
  333. package/ui.icons-metronic/Blender.svg +7 -0
  334. package/ui.icons-metronic/Bluetooth.svg +8 -0
  335. package/ui.icons-metronic/Bold.svg +7 -0
  336. package/ui.icons-metronic/Book-open.svg +8 -0
  337. package/ui.icons-metronic/Book.svg +13 -0
  338. package/ui.icons-metronic/Bookmark.svg +7 -0
  339. package/ui.icons-metronic/Border.svg +7 -0
  340. package/ui.icons-metronic/Bottle1.svg +8 -0
  341. package/ui.icons-metronic/Bottle2.svg +8 -0
  342. package/ui.icons-metronic/Bowl.svg +8 -0
  343. package/ui.icons-metronic/Box.svg +8 -0
  344. package/ui.icons-metronic/Box1.svg +8 -0
  345. package/ui.icons-metronic/Box2.svg +8 -0
  346. package/ui.icons-metronic/Box3.svg +8 -0
  347. package/ui.icons-metronic/Brassiere.svg +7 -0
  348. package/ui.icons-metronic/Bread.svg +8 -0
  349. package/ui.icons-metronic/Briefcase.svg +8 -0
  350. package/ui.icons-metronic/Broom.svg +8 -0
  351. package/ui.icons-metronic/Brush.svg +8 -0
  352. package/ui.icons-metronic/Brush2.svg +8 -0
  353. package/ui.icons-metronic/Bucket.svg +8 -0
  354. package/ui.icons-metronic/Bucket2.svg +8 -0
  355. package/ui.icons-metronic/Building.svg +9 -0
  356. package/ui.icons-metronic/Bulb1.svg +10 -0
  357. package/ui.icons-metronic/Bulb2.svg +10 -0
  358. package/ui.icons-metronic/Bullet-list.svg +8 -0
  359. package/ui.icons-metronic/Burger.svg +9 -0
  360. package/ui.icons-metronic/CD.svg +8 -0
  361. package/ui.icons-metronic/CMD.svg +7 -0
  362. package/ui.icons-metronic/CPU1.svg +14 -0
  363. package/ui.icons-metronic/CPU2.svg +20 -0
  364. package/ui.icons-metronic/Cake.svg +9 -0
  365. package/ui.icons-metronic/Calculator.svg +8 -0
  366. package/ui.icons-metronic/Call#1.svg +7 -0
  367. package/ui.icons-metronic/Call.svg +7 -0
  368. package/ui.icons-metronic/Camera.svg +9 -0
  369. package/ui.icons-metronic/Cap-1.svg +8 -0
  370. package/ui.icons-metronic/Cap-2.svg +7 -0
  371. package/ui.icons-metronic/Cap-3.svg +8 -0
  372. package/ui.icons-metronic/Cap.svg +8 -0
  373. package/ui.icons-metronic/Cardboard-vr.svg +8 -0
  374. package/ui.icons-metronic/Carrot.svg +10 -0
  375. package/ui.icons-metronic/Cart1.svg +8 -0
  376. package/ui.icons-metronic/Cart2.svg +8 -0
  377. package/ui.icons-metronic/Cart3.svg +8 -0
  378. package/ui.icons-metronic/Cassete.svg +9 -0
  379. package/ui.icons-metronic/Celcium.svg +8 -0
  380. package/ui.icons-metronic/Chair1.svg +8 -0
  381. package/ui.icons-metronic/Chair2.svg +8 -0
  382. package/ui.icons-metronic/Chart-bar1.svg +10 -0
  383. package/ui.icons-metronic/Chart-bar2.svg +10 -0
  384. package/ui.icons-metronic/Chart-bar3.svg +10 -0
  385. package/ui.icons-metronic/Chart-line1.svg +8 -0
  386. package/ui.icons-metronic/Chart-line2.svg +8 -0
  387. package/ui.icons-metronic/Chart-pie.svg +8 -0
  388. package/ui.icons-metronic/Chat-check.svg +8 -0
  389. package/ui.icons-metronic/Chat-error.svg +8 -0
  390. package/ui.icons-metronic/Chat-locked.svg +8 -0
  391. package/ui.icons-metronic/Chat-smile.svg +8 -0
  392. package/ui.icons-metronic/Chat1.svg +8 -0
  393. package/ui.icons-metronic/Chat2.svg +8 -0
  394. package/ui.icons-metronic/Chat4.svg +7 -0
  395. package/ui.icons-metronic/Chat5.svg +8 -0
  396. package/ui.icons-metronic/Chat6.svg +8 -0
  397. package/ui.icons-metronic/Check.svg +7 -0
  398. package/ui.icons-metronic/Cheese.svg +8 -0
  399. package/ui.icons-metronic/Chef.svg +8 -0
  400. package/ui.icons-metronic/Chicken.svg +10 -0
  401. package/ui.icons-metronic/Circle.svg +7 -0
  402. package/ui.icons-metronic/Clip.svg +7 -0
  403. package/ui.icons-metronic/Clipboard-check.svg +9 -0
  404. package/ui.icons-metronic/Clipboard-list.svg +14 -0
  405. package/ui.icons-metronic/Clipboard.svg +10 -0
  406. package/ui.icons-metronic/Clock.svg +8 -0
  407. package/ui.icons-metronic/Close.svg +9 -0
  408. package/ui.icons-metronic/Cloud-download.svg +8 -0
  409. package/ui.icons-metronic/Cloud-fog.svg +8 -0
  410. package/ui.icons-metronic/Cloud-sun.svg +8 -0
  411. package/ui.icons-metronic/Cloud-upload.svg +8 -0
  412. package/ui.icons-metronic/Cloud-wind.svg +9 -0
  413. package/ui.icons-metronic/Cloud1.svg +7 -0
  414. package/ui.icons-metronic/Cloud2.svg +8 -0
  415. package/ui.icons-metronic/Cloudy-night.svg +8 -0
  416. package/ui.icons-metronic/Cloudy.svg +8 -0
  417. package/ui.icons-metronic/Code.svg +8 -0
  418. package/ui.icons-metronic/Code2.svg +7 -0
  419. package/ui.icons-metronic/Coffee1.svg +11 -0
  420. package/ui.icons-metronic/Coffee2.svg +9 -0
  421. package/ui.icons-metronic/Color-profile.svg +8 -0
  422. package/ui.icons-metronic/Color.svg +7 -0
  423. package/ui.icons-metronic/Commit.svg +8 -0
  424. package/ui.icons-metronic/Commode1.svg +8 -0
  425. package/ui.icons-metronic/Commode2.svg +8 -0
  426. package/ui.icons-metronic/Compass.svg +7 -0
  427. package/ui.icons-metronic/Compass2.svg +8 -0
  428. package/ui.icons-metronic/Compilation.svg +11 -0
  429. package/ui.icons-metronic/Compiled-file.svg +11 -0
  430. package/ui.icons-metronic/Compiling.svg +8 -0
  431. package/ui.icons-metronic/Component.svg +7 -0
  432. package/ui.icons-metronic/Contact1.svg +8 -0
  433. package/ui.icons-metronic/Control.svg +7 -0
  434. package/ui.icons-metronic/Cookie.svg +10 -0
  435. package/ui.icons-metronic/Cooking-book.svg +14 -0
  436. package/ui.icons-metronic/Cooking-pot.svg +8 -0
  437. package/ui.icons-metronic/Couch.svg +8 -0
  438. package/ui.icons-metronic/Credit-card.svg +9 -0
  439. package/ui.icons-metronic/Crop.svg +8 -0
  440. package/ui.icons-metronic/Crown.svg +8 -0
  441. package/ui.icons-metronic/Cupboard.svg +8 -0
  442. package/ui.icons-metronic/Cursor.svg +7 -0
  443. package/ui.icons-metronic/Curtains.svg +8 -0
  444. package/ui.icons-metronic/Cutting board.svg +8 -0
  445. package/ui.icons-metronic/DVD.svg +8 -0
  446. package/ui.icons-metronic/Day-rain.svg +8 -0
  447. package/ui.icons-metronic/Deer.svg +8 -0
  448. package/ui.icons-metronic/Delete-user.svg +8 -0
  449. package/ui.icons-metronic/Deleted-file.svg +8 -0
  450. package/ui.icons-metronic/Deleted-folder.svg +8 -0
  451. package/ui.icons-metronic/Diagnostics.svg +9 -0
  452. package/ui.icons-metronic/Dial-numbers.svg +15 -0
  453. package/ui.icons-metronic/Difference.svg +8 -0
  454. package/ui.icons-metronic/Dinner.svg +11 -0
  455. package/ui.icons-metronic/Dinner2.svg +8 -0
  456. package/ui.icons-metronic/Direction1.svg +7 -0
  457. package/ui.icons-metronic/Direction2.svg +7 -0
  458. package/ui.icons-metronic/Dish.svg +8 -0
  459. package/ui.icons-metronic/Dishes.svg +8 -0
  460. package/ui.icons-metronic/Dislike.svg +8 -0
  461. package/ui.icons-metronic/Display1.svg +8 -0
  462. package/ui.icons-metronic/Display2.svg +9 -0
  463. package/ui.icons-metronic/Display3.svg +9 -0
  464. package/ui.icons-metronic/Dollar.svg +9 -0
  465. package/ui.icons-metronic/Done-circle.svg +8 -0
  466. package/ui.icons-metronic/Door-open.svg +8 -0
  467. package/ui.icons-metronic/Double-check.svg +8 -0
  468. package/ui.icons-metronic/Down-2.svg +8 -0
  469. package/ui.icons-metronic/Down-left.svg +8 -0
  470. package/ui.icons-metronic/Down-right.svg +8 -0
  471. package/ui.icons-metronic/Download.svg +9 -0
  472. package/ui.icons-metronic/DownloadedFile.svg +8 -0
  473. package/ui.icons-metronic/Downloads-folder.svg +8 -0
  474. package/ui.icons-metronic/Dress.svg +8 -0
  475. package/ui.icons-metronic/Duplicate.svg +8 -0
  476. package/ui.icons-metronic/Earth.svg +8 -0
  477. package/ui.icons-metronic/Edit-text.svg +8 -0
  478. package/ui.icons-metronic/Edit.svg +8 -0
  479. package/ui.icons-metronic/Edit2.svg +7 -0
  480. package/ui.icons-metronic/Eject.svg +8 -0
  481. package/ui.icons-metronic/Equalizer.svg +10 -0
  482. package/ui.icons-metronic/Eraser.svg +7 -0
  483. package/ui.icons-metronic/Error-circle.svg +8 -0
  484. package/ui.icons-metronic/Euro.svg +8 -0
  485. package/ui.icons-metronic/Exchange.svg +10 -0
  486. package/ui.icons-metronic/Expand-arrows.svg +8 -0
  487. package/ui.icons-metronic/Export.svg +9 -0
  488. package/ui.icons-metronic/Fahrenheit.svg +8 -0
  489. package/ui.icons-metronic/Fan.svg +9 -0
  490. package/ui.icons-metronic/File-cloud.svg +8 -0
  491. package/ui.icons-metronic/File-done.svg +8 -0
  492. package/ui.icons-metronic/File-minus.svg +8 -0
  493. package/ui.icons-metronic/File-plus.svg +8 -0
  494. package/ui.icons-metronic/File.svg +9 -0
  495. package/ui.icons-metronic/Filter.svg +7 -0
  496. package/ui.icons-metronic/Fire.svg +7 -0
  497. package/ui.icons-metronic/Fireplace.svg +8 -0
  498. package/ui.icons-metronic/Fish.svg +8 -0
  499. package/ui.icons-metronic/Flag.svg +8 -0
  500. package/ui.icons-metronic/Flashlight.svg +8 -0
  501. package/ui.icons-metronic/Flatten.svg +8 -0
  502. package/ui.icons-metronic/Flip-horizontal.svg +9 -0
  503. package/ui.icons-metronic/Flip-vertical.svg +9 -0
  504. package/ui.icons-metronic/Flower1.svg +10 -0
  505. package/ui.icons-metronic/Flower2.svg +11 -0
  506. package/ui.icons-metronic/Flower3.svg +9 -0
  507. package/ui.icons-metronic/Fog.svg +12 -0
  508. package/ui.icons-metronic/Folder-check.svg +8 -0
  509. package/ui.icons-metronic/Folder-cloud.svg +8 -0
  510. package/ui.icons-metronic/Folder-error.svg +8 -0
  511. package/ui.icons-metronic/Folder-heart.svg +8 -0
  512. package/ui.icons-metronic/Folder-minus.svg +8 -0
  513. package/ui.icons-metronic/Folder-plus.svg +8 -0
  514. package/ui.icons-metronic/Folder-solid.svg +7 -0
  515. package/ui.icons-metronic/Folder-star.svg +8 -0
  516. package/ui.icons-metronic/Folder-thunder.svg +8 -0
  517. package/ui.icons-metronic/Folder.svg +7 -0
  518. package/ui.icons-metronic/Folder2.svg +7 -0
  519. package/ui.icons-metronic/Font.svg +8 -0
  520. package/ui.icons-metronic/Fork-spoon-knife.svg +12 -0
  521. package/ui.icons-metronic/Fork-spoon.svg +10 -0
  522. package/ui.icons-metronic/Fork.svg +8 -0
  523. package/ui.icons-metronic/Forward.svg +7 -0
  524. package/ui.icons-metronic/Forward2.svg +8 -0
  525. package/ui.icons-metronic/French Bread.svg +7 -0
  526. package/ui.icons-metronic/Fridge.svg +7 -0
  527. package/ui.icons-metronic/Frying-pan.svg +8 -0
  528. package/ui.icons-metronic/Gameboy.svg +8 -0
  529. package/ui.icons-metronic/Gamepad1.svg +8 -0
  530. package/ui.icons-metronic/Gamepad2.svg +8 -0
  531. package/ui.icons-metronic/Gas-stove.svg +8 -0
  532. package/ui.icons-metronic/Generator.svg +10 -0
  533. package/ui.icons-metronic/Gift.svg +8 -0
  534. package/ui.icons-metronic/Git1.svg +9 -0
  535. package/ui.icons-metronic/Git2.svg +12 -0
  536. package/ui.icons-metronic/Git3.svg +10 -0
  537. package/ui.icons-metronic/Git4.svg +10 -0
  538. package/ui.icons-metronic/Github.svg +8 -0
  539. package/ui.icons-metronic/Glass-martini.svg +8 -0
  540. package/ui.icons-metronic/Globe.svg +8 -0
  541. package/ui.icons-metronic/Grater.svg +8 -0
  542. package/ui.icons-metronic/Group-chat.svg +8 -0
  543. package/ui.icons-metronic/Group-folders.svg +8 -0
  544. package/ui.icons-metronic/Group.svg +8 -0
  545. package/ui.icons-metronic/H1.svg +8 -0
  546. package/ui.icons-metronic/H2.svg +8 -0
  547. package/ui.icons-metronic/Half-heart.svg +8 -0
  548. package/ui.icons-metronic/Half-star.svg +8 -0
  549. package/ui.icons-metronic/Hanger.svg +7 -0
  550. package/ui.icons-metronic/Hard-drive.svg +8 -0
  551. package/ui.icons-metronic/Hat.svg +8 -0
  552. package/ui.icons-metronic/Headphones.svg +8 -0
  553. package/ui.icons-metronic/Heart.svg +7 -0
  554. package/ui.icons-metronic/Hidden.svg +9 -0
  555. package/ui.icons-metronic/Highvoltage.svg +7 -0
  556. package/ui.icons-metronic/Home-heart.svg +8 -0
  557. package/ui.icons-metronic/Home.svg +7 -0
  558. package/ui.icons-metronic/Homepod.svg +8 -0
  559. package/ui.icons-metronic/Horizontal.svg +8 -0
  560. package/ui.icons-metronic/Hummer.svg +8 -0
  561. package/ui.icons-metronic/Hummer2.svg +9 -0
  562. package/ui.icons-metronic/Ice-cream1.svg +8 -0
  563. package/ui.icons-metronic/Ice-cream2.svg +8 -0
  564. package/ui.icons-metronic/Image.svg +7 -0
  565. package/ui.icons-metronic/Import.svg +9 -0
  566. package/ui.icons-metronic/Incoming-box.svg +9 -0
  567. package/ui.icons-metronic/Incoming-call.svg +8 -0
  568. package/ui.icons-metronic/Incoming-mail.svg +8 -0
  569. package/ui.icons-metronic/Info-circle.svg +9 -0
  570. package/ui.icons-metronic/Interselect.svg +8 -0
  571. package/ui.icons-metronic/Iron.svg +8 -0
  572. package/ui.icons-metronic/Itallic.svg +7 -0
  573. package/ui.icons-metronic/Join-1.svg +8 -0
  574. package/ui.icons-metronic/Join-2.svg +8 -0
  575. package/ui.icons-metronic/Join-3.svg +8 -0
  576. package/ui.icons-metronic/Kettle.svg +8 -0
  577. package/ui.icons-metronic/Key.svg +8 -0
  578. package/ui.icons-metronic/Keyboard.svg +8 -0
  579. package/ui.icons-metronic/Kitchen-scale.svg +8 -0
  580. package/ui.icons-metronic/Knife1.svg +8 -0
  581. package/ui.icons-metronic/Knife2.svg +8 -0
  582. package/ui.icons-metronic/KnifeAndFork1.svg +10 -0
  583. package/ui.icons-metronic/KnifeAndFork2.svg +10 -0
  584. package/ui.icons-metronic/LTE1.svg +8 -0
  585. package/ui.icons-metronic/LTE2.svg +8 -0
  586. package/ui.icons-metronic/Ladder.svg +8 -0
  587. package/ui.icons-metronic/Ladle.svg +8 -0
  588. package/ui.icons-metronic/Lamp1.svg +10 -0
  589. package/ui.icons-metronic/Lamp2.svg +9 -0
  590. package/ui.icons-metronic/Laptop-macbook.svg +8 -0
  591. package/ui.icons-metronic/Laptop.svg +8 -0
  592. package/ui.icons-metronic/Layers.svg +8 -0
  593. package/ui.icons-metronic/Layout-3d.svg +8 -0
  594. package/ui.icons-metronic/Layout-4-blocks.svg +8 -0
  595. package/ui.icons-metronic/Layout-arrange.svg +8 -0
  596. package/ui.icons-metronic/Layout-grid.svg +8 -0
  597. package/ui.icons-metronic/Layout-horizontal.svg +8 -0
  598. package/ui.icons-metronic/Layout-left-panel-1.svg +8 -0
  599. package/ui.icons-metronic/Layout-left-panel-2.svg +8 -0
  600. package/ui.icons-metronic/Layout-right-panel-1.svg +8 -0
  601. package/ui.icons-metronic/Layout-right-panel-2.svg +8 -0
  602. package/ui.icons-metronic/Layout-top-panel-1.svg +8 -0
  603. package/ui.icons-metronic/Layout-top-panel-2.svg +8 -0
  604. package/ui.icons-metronic/Layout-top-panel-3.svg +8 -0
  605. package/ui.icons-metronic/Layout-top-panel-4.svg +8 -0
  606. package/ui.icons-metronic/Layout-top-panel-5.svg +8 -0
  607. package/ui.icons-metronic/Layout-top-panel-6.svg +8 -0
  608. package/ui.icons-metronic/Layout-vertical.svg +8 -0
  609. package/ui.icons-metronic/Left 3.svg +8 -0
  610. package/ui.icons-metronic/Left-2.svg +8 -0
  611. package/ui.icons-metronic/Left-circle.svg +8 -0
  612. package/ui.icons-metronic/Library.svg +8 -0
  613. package/ui.icons-metronic/Like.svg +8 -0
  614. package/ui.icons-metronic/Line.svg +9 -0
  615. package/ui.icons-metronic/Loader.svg +9 -0
  616. package/ui.icons-metronic/Loading.svg +9 -0
  617. package/ui.icons-metronic/Location-arrow.svg +7 -0
  618. package/ui.icons-metronic/Lock-circle.svg +8 -0
  619. package/ui.icons-metronic/Lock-overturning.svg +8 -0
  620. package/ui.icons-metronic/Lock.svg +13 -0
  621. package/ui.icons-metronic/Locked-folder.svg +8 -0
  622. package/ui.icons-metronic/MC.svg +8 -0
  623. package/ui.icons-metronic/Magic.svg +8 -0
  624. package/ui.icons-metronic/Mail-at.svg +7 -0
  625. package/ui.icons-metronic/Mail-attachment.svg +8 -0
  626. package/ui.icons-metronic/Mail-box.svg +8 -0
  627. package/ui.icons-metronic/Mail-error.svg +8 -0
  628. package/ui.icons-metronic/Mail-heart.svg +8 -0
  629. package/ui.icons-metronic/Mail-locked.svg +8 -0
  630. package/ui.icons-metronic/Mail-notification.svg +8 -0
  631. package/ui.icons-metronic/Mail-opened.svg +8 -0
  632. package/ui.icons-metronic/Mail-unocked.svg +8 -0
  633. package/ui.icons-metronic/Mail.svg +7 -0
  634. package/ui.icons-metronic/Mailbox.svg +8 -0
  635. package/ui.icons-metronic/Marker1.svg +7 -0
  636. package/ui.icons-metronic/Marker2.svg +7 -0
  637. package/ui.icons-metronic/Mask.svg +8 -0
  638. package/ui.icons-metronic/Media-folder.svg +8 -0
  639. package/ui.icons-metronic/Media-library1.svg +10 -0
  640. package/ui.icons-metronic/Media-library2.svg +8 -0
  641. package/ui.icons-metronic/Media-library3.svg +14 -0
  642. package/ui.icons-metronic/Media.svg +8 -0
  643. package/ui.icons-metronic/Menu.svg +8 -0
  644. package/ui.icons-metronic/Menu2.svg +4 -0
  645. package/ui.icons-metronic/Mic.svg +8 -0
  646. package/ui.icons-metronic/Midi.svg +13 -0
  647. package/ui.icons-metronic/Minus.svg +8 -0
  648. package/ui.icons-metronic/Minus2.svg +6 -0
  649. package/ui.icons-metronic/Mirror.svg +8 -0
  650. package/ui.icons-metronic/Miso-soup.svg +8 -0
  651. package/ui.icons-metronic/Missed-call.svg +8 -0
  652. package/ui.icons-metronic/Mixer.svg +8 -0
  653. package/ui.icons-metronic/Money.svg +8 -0
  654. package/ui.icons-metronic/Moon.svg +7 -0
  655. package/ui.icons-metronic/Mouse.svg +9 -0
  656. package/ui.icons-metronic/Movie-Lane2.svg +8 -0
  657. package/ui.icons-metronic/Movie-lane1.svg +8 -0
  658. package/ui.icons-metronic/Music-cloud.svg +8 -0
  659. package/ui.icons-metronic/Music-note.svg +7 -0
  660. package/ui.icons-metronic/Music.svg +8 -0
  661. package/ui.icons-metronic/Music2.svg +7 -0
  662. package/ui.icons-metronic/Mute.svg +8 -0
  663. package/ui.icons-metronic/Next.svg +8 -0
  664. package/ui.icons-metronic/Night-fog.svg +8 -0
  665. package/ui.icons-metronic/Night-rain.svg +8 -0
  666. package/ui.icons-metronic/Notification2.svg +8 -0
  667. package/ui.icons-metronic/Notifications1.svg +7 -0
  668. package/ui.icons-metronic/Option.svg +8 -0
  669. package/ui.icons-metronic/Orange.svg +8 -0
  670. package/ui.icons-metronic/Other1.svg +9 -0
  671. package/ui.icons-metronic/Other2.svg +9 -0
  672. package/ui.icons-metronic/Outgoing-box.svg +9 -0
  673. package/ui.icons-metronic/Outgoing-call.svg +8 -0
  674. package/ui.icons-metronic/Outgoing-mail.svg +8 -0
  675. package/ui.icons-metronic/Outlet.svg +8 -0
  676. package/ui.icons-metronic/Panties.svg +7 -0
  677. package/ui.icons-metronic/Pantone.svg +9 -0
  678. package/ui.icons-metronic/Paragraph.svg +7 -0
  679. package/ui.icons-metronic/Patch.svg +9 -0
  680. package/ui.icons-metronic/Pause.svg +7 -0
  681. package/ui.icons-metronic/Pen-tool-vector.svg +8 -0
  682. package/ui.icons-metronic/PenAndRuller.svg +8 -0
  683. package/ui.icons-metronic/Pencil.svg +8 -0
  684. package/ui.icons-metronic/Phone.svg +9 -0
  685. package/ui.icons-metronic/Picker.svg +8 -0
  686. package/ui.icons-metronic/Picture.svg +10 -0
  687. package/ui.icons-metronic/Pictures1.svg +10 -0
  688. package/ui.icons-metronic/Pictures2.svg +12 -0
  689. package/ui.icons-metronic/Pixels.svg +12 -0
  690. package/ui.icons-metronic/Pizza.svg +10 -0
  691. package/ui.icons-metronic/Play.svg +7 -0
  692. package/ui.icons-metronic/Playlist1.svg +8 -0
  693. package/ui.icons-metronic/Playlist2.svg +8 -0
  694. package/ui.icons-metronic/Plus.svg +8 -0
  695. package/ui.icons-metronic/Plus2.svg +7 -0
  696. package/ui.icons-metronic/Polygon.svg +7 -0
  697. package/ui.icons-metronic/Position.svg +7 -0
  698. package/ui.icons-metronic/Position2.svg +9 -0
  699. package/ui.icons-metronic/Pound.svg +8 -0
  700. package/ui.icons-metronic/Price1.svg +7 -0
  701. package/ui.icons-metronic/Price2.svg +11 -0
  702. package/ui.icons-metronic/Printer.svg +8 -0
  703. package/ui.icons-metronic/Protected-file.svg +8 -0
  704. package/ui.icons-metronic/Puzzle.svg +7 -0
  705. package/ui.icons-metronic/Question-circle.svg +8 -0
  706. package/ui.icons-metronic/Quote1.svg +8 -0
  707. package/ui.icons-metronic/Quote2.svg +8 -0
  708. package/ui.icons-metronic/RSS.svg +9 -0
  709. package/ui.icons-metronic/Radio.svg +11 -0
  710. package/ui.icons-metronic/Rain1.svg +8 -0
  711. package/ui.icons-metronic/Rain2.svg +8 -0
  712. package/ui.icons-metronic/Rain5.svg +8 -0
  713. package/ui.icons-metronic/Rainbow.svg +9 -0
  714. package/ui.icons-metronic/Range-hood.svg +8 -0
  715. package/ui.icons-metronic/Readed-mail.svg +8 -0
  716. package/ui.icons-metronic/Rec.svg +7 -0
  717. package/ui.icons-metronic/Rectangle.svg +7 -0
  718. package/ui.icons-metronic/Redo.svg +7 -0
  719. package/ui.icons-metronic/Repeat-one.svg +8 -0
  720. package/ui.icons-metronic/Repeat.svg +8 -0
  721. package/ui.icons-metronic/Reply-all.svg +8 -0
  722. package/ui.icons-metronic/Reply.svg +7 -0
  723. package/ui.icons-metronic/Right 3.svg +8 -0
  724. package/ui.icons-metronic/Right-2.svg +8 -0
  725. package/ui.icons-metronic/Right-circle.svg +8 -0
  726. package/ui.icons-metronic/Right.svg +7 -0
  727. package/ui.icons-metronic/Road-Cone.svg +8 -0
  728. package/ui.icons-metronic/Roller.svg +9 -0
  729. package/ui.icons-metronic/Rolling-pin.svg +8 -0
  730. package/ui.icons-metronic/Rouble.svg +8 -0
  731. package/ui.icons-metronic/Roulette.svg +8 -0
  732. package/ui.icons-metronic/Route.svg +9 -0
  733. package/ui.icons-metronic/Router1.svg +8 -0
  734. package/ui.icons-metronic/Router2.svg +8 -0
  735. package/ui.icons-metronic/Ruller.svg +7 -0
  736. package/ui.icons-metronic/SD-card.svg +7 -0
  737. package/ui.icons-metronic/Sad.svg +8 -0
  738. package/ui.icons-metronic/Safe-chat.svg +8 -0
  739. package/ui.icons-metronic/Safe.svg +8 -0
  740. package/ui.icons-metronic/Sale1.svg +8 -0
  741. package/ui.icons-metronic/Sale2.svg +10 -0
  742. package/ui.icons-metronic/Saturation.svg +8 -0
  743. package/ui.icons-metronic/Saucepan.svg +8 -0
  744. package/ui.icons-metronic/Save.svg +8 -0
  745. package/ui.icons-metronic/Scale.svg +8 -0
  746. package/ui.icons-metronic/Scissors.svg +8 -0
  747. package/ui.icons-metronic/Screwdriver.svg +8 -0
  748. package/ui.icons-metronic/Search.svg +8 -0
  749. package/ui.icons-metronic/Select.svg +8 -0
  750. package/ui.icons-metronic/Selected-file.svg +8 -0
  751. package/ui.icons-metronic/Send.svg +7 -0
  752. package/ui.icons-metronic/Sending mail.svg +8 -0
  753. package/ui.icons-metronic/Sending.svg +8 -0
  754. package/ui.icons-metronic/Server.svg +9 -0
  755. package/ui.icons-metronic/Settings#3.svg +8 -0
  756. package/ui.icons-metronic/Settings-1.svg +8 -0
  757. package/ui.icons-metronic/Settings-2.svg +7 -0
  758. package/ui.icons-metronic/Settings.svg +8 -0
  759. package/ui.icons-metronic/Settings4.svg +8 -0
  760. package/ui.icons-metronic/Share.svg +8 -0
  761. package/ui.icons-metronic/Share2.svg +10 -0
  762. package/ui.icons-metronic/Shield-check.svg +8 -0
  763. package/ui.icons-metronic/Shield-disabled.svg +8 -0
  764. package/ui.icons-metronic/Shield-protected.svg +8 -0
  765. package/ui.icons-metronic/Shield-thunder.svg +8 -0
  766. package/ui.icons-metronic/Shield-user.svg +9 -0
  767. package/ui.icons-metronic/Shift.svg +7 -0
  768. package/ui.icons-metronic/Shirt.svg +8 -0
  769. package/ui.icons-metronic/Shoes.svg +8 -0
  770. package/ui.icons-metronic/Shorts.svg +7 -0
  771. package/ui.icons-metronic/Shovel.svg +8 -0
  772. package/ui.icons-metronic/Shovel2.svg +8 -0
  773. package/ui.icons-metronic/Shuffle.svg +8 -0
  774. package/ui.icons-metronic/Shutdown.svg +8 -0
  775. package/ui.icons-metronic/Sieve.svg +8 -0
  776. package/ui.icons-metronic/Sign-in.svg +9 -0
  777. package/ui.icons-metronic/Sign-out.svg +9 -0
  778. package/ui.icons-metronic/Size.svg +8 -0
  779. package/ui.icons-metronic/Sketch.svg +8 -0
  780. package/ui.icons-metronic/Smile.svg +8 -0
  781. package/ui.icons-metronic/Sneakers.svg +8 -0
  782. package/ui.icons-metronic/Snoozed-mail.svg +8 -0
  783. package/ui.icons-metronic/Snow.svg +8 -0
  784. package/ui.icons-metronic/Snow1.svg +8 -0
  785. package/ui.icons-metronic/Snow2.svg +8 -0
  786. package/ui.icons-metronic/Snow3.svg +8 -0
  787. package/ui.icons-metronic/Socket-eu.svg +7 -0
  788. package/ui.icons-metronic/Socket-us.svg +7 -0
  789. package/ui.icons-metronic/Socks.svg +8 -0
  790. package/ui.icons-metronic/Sort1.svg +8 -0
  791. package/ui.icons-metronic/Sort2.svg +7 -0
  792. package/ui.icons-metronic/Sort3.svg +7 -0
  793. package/ui.icons-metronic/Spam.svg +7 -0
  794. package/ui.icons-metronic/Spatula.svg +8 -0
  795. package/ui.icons-metronic/Speaker.svg +8 -0
  796. package/ui.icons-metronic/Spoon.svg +9 -0
  797. package/ui.icons-metronic/Spy.svg +8 -0
  798. package/ui.icons-metronic/Stairs.svg +7 -0
  799. package/ui.icons-metronic/Stamp.svg +8 -0
  800. package/ui.icons-metronic/Star-outlined.svg +6 -0
  801. package/ui.icons-metronic/Star.svg +7 -0
  802. package/ui.icons-metronic/Stop.svg +7 -0
  803. package/ui.icons-metronic/Storm.svg +8 -0
  804. package/ui.icons-metronic/Strikethrough.svg +8 -0
  805. package/ui.icons-metronic/Substract.svg +8 -0
  806. package/ui.icons-metronic/Sun-fog.svg +8 -0
  807. package/ui.icons-metronic/Sun-glasses.svg +8 -0
  808. package/ui.icons-metronic/Sun.svg +8 -0
  809. package/ui.icons-metronic/Suset1.svg +8 -0
  810. package/ui.icons-metronic/Suset2.svg +8 -0
  811. package/ui.icons-metronic/Sushi.svg +8 -0
  812. package/ui.icons-metronic/Swiss-knife.svg +8 -0
  813. package/ui.icons-metronic/T-Shirt.svg +7 -0
  814. package/ui.icons-metronic/TV1.svg +9 -0
  815. package/ui.icons-metronic/TV2.svg +8 -0
  816. package/ui.icons-metronic/Tablet.svg +8 -0
  817. package/ui.icons-metronic/Target.svg +8 -0
  818. package/ui.icons-metronic/Temperature-empty.svg +7 -0
  819. package/ui.icons-metronic/Temperature-full.svg +7 -0
  820. package/ui.icons-metronic/Temperature-half.svg +7 -0
  821. package/ui.icons-metronic/Terminal.svg +8 -0
  822. package/ui.icons-metronic/Text-height.svg +8 -0
  823. package/ui.icons-metronic/Text-width.svg +8 -0
  824. package/ui.icons-metronic/Text.svg +7 -0
  825. package/ui.icons-metronic/Thumbtack.svg +8 -0
  826. package/ui.icons-metronic/Thunder-circle.svg +8 -0
  827. package/ui.icons-metronic/Thunder-move.svg +8 -0
  828. package/ui.icons-metronic/Thunder-night.svg +8 -0
  829. package/ui.icons-metronic/Thunder.svg +7 -0
  830. package/ui.icons-metronic/Thunder2.svg +8 -0
  831. package/ui.icons-metronic/Ticket.svg +7 -0
  832. package/ui.icons-metronic/Tie.svg +8 -0
  833. package/ui.icons-metronic/Time-schedule.svg +8 -0
  834. package/ui.icons-metronic/Timer.svg +10 -0
  835. package/ui.icons-metronic/Toilet.svg +8 -0
  836. package/ui.icons-metronic/Tools.svg +8 -0
  837. package/ui.icons-metronic/Towel.svg +7 -0
  838. package/ui.icons-metronic/Trash.svg +8 -0
  839. package/ui.icons-metronic/Trash2.svg +8 -0
  840. package/ui.icons-metronic/Triangle.svg +7 -0
  841. package/ui.icons-metronic/Two-bottles.svg +8 -0
  842. package/ui.icons-metronic/USB.svg +9 -0
  843. package/ui.icons-metronic/Umbrella.svg +8 -0
  844. package/ui.icons-metronic/Underline.svg +8 -0
  845. package/ui.icons-metronic/Undo.svg +7 -0
  846. package/ui.icons-metronic/Union.svg +7 -0
  847. package/ui.icons-metronic/Unlock.svg +13 -0
  848. package/ui.icons-metronic/Up-2.svg +8 -0
  849. package/ui.icons-metronic/Up-down.svg +10 -0
  850. package/ui.icons-metronic/Up-left.svg +8 -0
  851. package/ui.icons-metronic/Up-right.svg +8 -0
  852. package/ui.icons-metronic/Update.svg +7 -0
  853. package/ui.icons-metronic/Upload-folder.svg +8 -0
  854. package/ui.icons-metronic/Upload.svg +9 -0
  855. package/ui.icons-metronic/Uploaded-file.svg +8 -0
  856. package/ui.icons-metronic/Urgent-mail.svg +8 -0
  857. package/ui.icons-metronic/Usb-storage.svg +8 -0
  858. package/ui.icons-metronic/User-folder.svg +9 -0
  859. package/ui.icons-metronic/User.svg +8 -0
  860. package/ui.icons-metronic/Vertical.svg +8 -0
  861. package/ui.icons-metronic/Video-camera.svg +8 -0
  862. package/ui.icons-metronic/Visible.svg +8 -0
  863. package/ui.icons-metronic/Volume-down.svg +8 -0
  864. package/ui.icons-metronic/Volume-full.svg +8 -0
  865. package/ui.icons-metronic/Volume-half.svg +8 -0
  866. package/ui.icons-metronic/Volume-up.svg +8 -0
  867. package/ui.icons-metronic/Vynil.svg +8 -0
  868. package/ui.icons-metronic/Waiting.svg +7 -0
  869. package/ui.icons-metronic/Wallet.svg +9 -0
  870. package/ui.icons-metronic/Wallet2.svg +8 -0
  871. package/ui.icons-metronic/Wallet3.svg +9 -0
  872. package/ui.icons-metronic/Warning-1-circle.svg +9 -0
  873. package/ui.icons-metronic/Warning-2.svg +9 -0
  874. package/ui.icons-metronic/Washer.svg +8 -0
  875. package/ui.icons-metronic/Watch1.svg +10 -0
  876. package/ui.icons-metronic/Watch2.svg +10 -0
  877. package/ui.icons-metronic/Water-mixer.svg +9 -0
  878. package/ui.icons-metronic/Weight1.svg +8 -0
  879. package/ui.icons-metronic/Weight2.svg +8 -0
  880. package/ui.icons-metronic/Wi-fi.svg +8 -0
  881. package/ui.icons-metronic/Wind.svg +8 -0
  882. package/ui.icons-metronic/Wine.svg +8 -0
  883. package/ui.icons-metronic/Wood-horse.svg +7 -0
  884. package/ui.icons-metronic/Wood1.svg +8 -0
  885. package/ui.icons-metronic/Wood2.svg +8 -0
  886. package/ui.icons-metronic/Write.svg +8 -0
  887. package/ui.icons-metronic/Youtube.svg +8 -0
  888. package/ui.icons-metronic/ZoomMinus.svg +9 -0
  889. package/ui.icons-metronic/ZoomPlus.svg +9 -0
  890. package/ui.icons-metronic/air-dryer.svg +8 -0
  891. package/ui.icons-metronic/iMac.svg +9 -0
  892. package/ui.icons-metronic/iPhone-X.svg +8 -0
  893. package/ui.icons-metronic/iPhone-back.svg +7 -0
  894. package/ui.icons-metronic/iPhone-x-back.svg +7 -0
  895. package/ui.icons-metronic/index.js +4 -0
  896. package/ui.image-avatar/default-avatar.png +0 -0
  897. package/ui.image-avatar/index.stories.js +106 -0
  898. package/ui.image-avatar/index.vue +253 -0
  899. package/ui.image-icon/cli.mjs +159 -0
  900. package/ui.image-icon/index.stories.js +129 -0
  901. package/ui.image-icon/index.vue +511 -0
  902. package/ui.image-logo/index.stories.js +84 -0
  903. package/ui.image-logo/index.vue +184 -0
  904. package/ui.navigation-pagination/index.stories.js +35 -0
  905. package/ui.navigation-pagination/index.vue +115 -0
  906. package/ui.navigation-stepper/index.stories.js +29 -0
  907. package/ui.navigation-stepper/index.vue +129 -0
  908. package/ui.navigation-tab/index.stories.js +61 -0
  909. package/ui.navigation-tab/index.vue +112 -0
  910. package/ui.navigation-tabs/index.stories.js +73 -0
  911. package/ui.navigation-tabs/index.vue +119 -0
  912. package/ui.other-dot/index.stories.js +77 -0
  913. package/ui.other-dot/index.vue +100 -0
  914. package/ui.other-loader/index.stories.js +77 -0
  915. package/ui.other-loader/index.vue +185 -0
  916. package/ui.text-alert/index.stories.js +124 -0
  917. package/ui.text-alert/index.vue +236 -0
  918. package/ui.text-block/index.stories.js +111 -0
  919. package/ui.text-block/index.vue +137 -0
  920. package/ui.text-empty/configs/default.config.js +28 -0
  921. package/ui.text-empty/index.stories.js +106 -0
  922. package/ui.text-empty/index.vue +95 -0
  923. package/ui.text-empty/services/variant.service.js +22 -0
  924. package/ui.text-field/index.stories.js +60 -0
  925. package/ui.text-field/index.vue +109 -0
  926. package/ui.text-file/index.stories.js +28 -0
  927. package/ui.text-file/index.vue +102 -0
  928. package/ui.text-files/index.stories.js +31 -0
  929. package/ui.text-files/index.vue +64 -0
  930. package/ui.text-header/index.stories.js +110 -0
  931. package/ui.text-header/index.vue +237 -0
  932. package/ui.text-money/assets/credit.svg +7 -0
  933. package/ui.text-money/assets/debit.svg +12 -0
  934. package/ui.text-money/index.stories.js +263 -0
  935. package/ui.text-money/index.vue +523 -0
  936. package/ui.text-tag/index.stories.js +90 -0
  937. package/ui.text-tag/index.vue +178 -0
  938. package/web-types.json +6320 -0
@@ -0,0 +1,1101 @@
1
+ <template>
2
+ <div class="mono-table-wrapper" :data-cy="dataCy">
3
+ <div
4
+ v-show="isShownFixedOrActionsHeader"
5
+ ref="headerFixedRow"
6
+ class="mono-table-custom-header"
7
+ :class="[headerClasses.actionsHeader, headerClasses.fixedHeader, headerClasses.compact]"
8
+ :style="tableRowWidthStyle"
9
+ >
10
+ <UCheckbox
11
+ v-if="selectable"
12
+ v-model="selectAll"
13
+ :partial="!isSelectedAllRows"
14
+ class="mono-table-custom-header-item"
15
+ size="sm"
16
+ />
17
+
18
+ <template v-if="selectedRowsLength">
19
+ <div class="selected-rows-count">
20
+ {{ selectedRowsLength }}
21
+ </div>
22
+
23
+ <!-- @slot Use it to add actions instead table head (it appears when you select items in table). -->
24
+ <slot name="thead-actions" :selected-rows="selectedRows" />
25
+ </template>
26
+
27
+ <template v-else>
28
+ <div
29
+ v-for="(item, index) in headers"
30
+ :key="index"
31
+ class="mono-table-custom-header-item"
32
+ :class="item.thClass"
33
+ >
34
+ <template v-if="isExistSlot(`thead-${item.value}`)">
35
+ <!-- @slot Use it to customise table header item. -->
36
+ <slot :name="`thead-${item.value}`" :text="item.text" />
37
+ </template>
38
+
39
+ <template v-else>
40
+ {{ item.text }}
41
+ </template>
42
+ </div>
43
+ </template>
44
+
45
+ <UTopLoader
46
+ v-if="loaderResourceName && isFixedHeader"
47
+ class="table-fixed-loader"
48
+ :resource-names="loaderResourceName"
49
+ position="absolute"
50
+ />
51
+ </div>
52
+
53
+ <div ref="tableWrapper" class="mono-table-inner-wrapper" :class="tableWrapClass">
54
+ <t-table class="mono-table" :data="tableItems" :headers="headers" :class="tableClasses">
55
+ <template #thead="{ thClass, data }">
56
+ <thead>
57
+ <tr ref="headerRow" :class="headerClasses.hideHeader">
58
+ <th v-if="selectable" class="table-checkbox">
59
+ <UCheckbox
60
+ v-model="selectAll"
61
+ size="sm"
62
+ :show-partial-icon="!isSelectedAllRows"
63
+ partial
64
+ :data-cy="`${dataCy}-select-all`"
65
+ />
66
+ </th>
67
+
68
+ <th v-for="(item, index) in data" :key="index" :class="[thClass, item.thClass]">
69
+ <template v-if="isExistSlot(`thead-${item.value}`)">
70
+ <!-- @slot Use it to customise table header item. -->
71
+ <slot :name="`thead-${item.value}`" :text="item.text" />
72
+ </template>
73
+
74
+ <template v-else>
75
+ {{ item.text }}
76
+ </template>
77
+ </th>
78
+ </tr>
79
+ <UTopLoader
80
+ v-if="loaderResourceName"
81
+ class="table-loader"
82
+ :resource-names="loaderResourceName"
83
+ position="absolute"
84
+ />
85
+ </thead>
86
+ </template>
87
+
88
+ <template #row="{ row, rowIndex }">
89
+ <tr
90
+ v-if="rowIndex === firstRow && isShownSlot.beforeFirstRow"
91
+ class="more-row"
92
+ :class="beforeFirstRowClass"
93
+ >
94
+ <td v-if="isShownSlot.beforeFirstRow" :colspan="colsCount" :class="firstRowClass">
95
+ <!-- @slot Use it to add something before first row. -->
96
+ <slot name="before-first-row" />
97
+ </td>
98
+
99
+ <td v-else class="first-row" />
100
+ </tr>
101
+
102
+ <DateSeparator
103
+ v-if="isShownDateSeparator(rowIndex, row.date)"
104
+ :class="dateSeparatorRowClass(rowIndex)"
105
+ :date="row.date.primaryRow || row.date"
106
+ :cols-count="colsCount"
107
+ :i18n="i18n"
108
+ />
109
+
110
+ <tr
111
+ v-if="!isShownRow(row)"
112
+ class="table-row"
113
+ :class="rowClass(row)"
114
+ :data-cy="`${dataCy}-row`"
115
+ @click="onClickRow(row)"
116
+ >
117
+ <td v-if="selectable" class="col-checkbox">
118
+ <TableCheckbox
119
+ v-model:values="selectedRows"
120
+ :value="rowIndex"
121
+ :data-cy="`${dataCy}-table-body-checkbox`"
122
+ @click.stop="onClickSelectRow(rowIndex)"
123
+ />
124
+ </td>
125
+
126
+ <td
127
+ v-for="(value, key, index) in getFilteredRow(row)"
128
+ :key="index"
129
+ :class="getTdClass(key)"
130
+ >
131
+ <template v-if="isExistSlot(`cell-${key}`)">
132
+ <div
133
+ :class="tableContainerClass(index)"
134
+ :style="setLeftMargin(row.nestedLevel)"
135
+ @click="onClickShowItem(row)"
136
+ >
137
+ <div v-if="isShownIcon({ index, row })" class="table-button">
138
+ <UIcon
139
+ v-if="row.isHidden"
140
+ name="add"
141
+ class="table-container-icon"
142
+ size="xs"
143
+ :color="isIconActive(row)"
144
+ variant="light"
145
+ interactive
146
+ />
147
+
148
+ <UIcon
149
+ v-else
150
+ name="remove"
151
+ class="table-container-icon"
152
+ size="xs"
153
+ variant="light"
154
+ interactive
155
+ />
156
+ </div>
157
+ <!-- @slot Use it to customise table cell item (in whole column). -->
158
+ <slot :name="`cell-${key}`" :value="value" />
159
+ </div>
160
+ </template>
161
+
162
+ <template v-else-if="isExistSlot('cell-other')">
163
+ <slot name="cell-other" :value="value" />
164
+ </template>
165
+
166
+ <template v-else-if="key === 'date'">
167
+ <div v-if="value.format">
168
+ {{ dateConverter(value.timestamp, value.format) }}
169
+ </div>
170
+
171
+ <div v-else>
172
+ {{ dateConverter(value) }}
173
+ </div>
174
+ </template>
175
+
176
+ <template v-else-if="key === 'email'">
177
+ <div @click.stop>
178
+ <ULink :text="value" :url="`mailto:${value}`" size="sm" />
179
+ </div>
180
+ </template>
181
+
182
+ <template v-else-if="key === 'link'">
183
+ <ULink
184
+ v-if="value.route"
185
+ :data-cy="`${dataCy}-${key}-link`"
186
+ :text="value.label"
187
+ router-link
188
+ :route="value.route"
189
+ size="sm"
190
+ />
191
+
192
+ <span v-else>
193
+ {{ value }}
194
+ </span>
195
+ </template>
196
+
197
+ <template v-else-if="key === 'money'">
198
+ <UMoney :sum="value.sum" :currency-symbol="value.currencySymbol" />
199
+ </template>
200
+
201
+ <template v-else-if="key === 'tags'">
202
+ <div class="tags-cell">
203
+ <UTag
204
+ v-for="item in value.tags"
205
+ :key="item"
206
+ :text="item"
207
+ :color="value.variant"
208
+ />
209
+ </div>
210
+ </template>
211
+
212
+ <template v-else-if="value.hasOwnProperty('secondaryRow')">
213
+ <div :data-cy="`${dataCy}-${key}-cell`">
214
+ {{ value.primaryRow || emptyItem }}
215
+ </div>
216
+
217
+ <div class="secondary-row">
218
+ <template v-if="Array.isArray(value.secondaryRow)">
219
+ <div v-for="(secondaryRow, idx) in value.secondaryRow" :key="idx">
220
+ <span class="children-empty">
221
+ {{ secondaryRow }}
222
+ </span>
223
+ </div>
224
+ </template>
225
+
226
+ <template v-else>
227
+ {{ value.secondaryRow }}
228
+ </template>
229
+ </div>
230
+ </template>
231
+
232
+ <template v-else>
233
+ <div :data-cy="`${dataCy}-${key}-cell`">
234
+ {{ value || emptyItem }}
235
+ </div>
236
+ </template>
237
+ </td>
238
+ </tr>
239
+
240
+ <tr v-if="rowIndex === lastRow" :class="afterLastRowClass">
241
+ <td v-if="isShownSlot.afterLastRow" :colspan="colsCount">
242
+ <!-- @slot Use it to add something after last row. -->
243
+ <slot name="after-last-row" />
244
+ </td>
245
+ </tr>
246
+ </template>
247
+
248
+ <template v-if="isExistSlot('tfoot')" #tfoot>
249
+ <tfoot class="table-footer">
250
+ <tr ref="footerRow" class="table-footer-row">
251
+ <td v-if="selectable" />
252
+
253
+ <!-- @slot Use it to add something in table footer. -->
254
+ <slot name="tfoot" :cols-count="colsCount" />
255
+ </tr>
256
+
257
+ <tr ref="footerFixedRow" class="table-footer-fixed-row" :style="tableRowWidthStyle">
258
+ <td v-if="selectable" />
259
+
260
+ <!-- @slot Use it to add something in table footer. -->
261
+ <slot name="tfoot" :cols-count="colsCount" />
262
+ </tr>
263
+ </tfoot>
264
+ </template>
265
+
266
+ <template v-if="!tableItems.length" #tbody>
267
+ <EmptyTableMsg :colspan="colsCount" :filters="filters" :i18n="i18n">
268
+ <slot name="empty-table-msg" />
269
+ </EmptyTableMsg>
270
+ </template>
271
+ </t-table>
272
+ </div>
273
+ </div>
274
+ </template>
275
+
276
+ <script>
277
+ import DateServiceDefault from "vueless/service.date";
278
+
279
+ import { isSameDay, isValid, secondsToMilliseconds } from "date-fns";
280
+
281
+ import UMoney from "vueless/ui.text-money";
282
+ import UTag from "vueless/ui.text-tag";
283
+ import ULink from "vueless/ui.button-link";
284
+ import UCheckbox from "vueless/ui.form-checkbox";
285
+ import UTopLoader from "vueless/layout-ui.loader-top";
286
+ import TTable from "vueless/library.vue-tailwind-3/t-table";
287
+ import TableCheckbox from "./components/TableCheckbox.vue";
288
+ import EmptyTableMsg from "./components/EmptyTableMsg.vue";
289
+ import DateSeparator from "./components/DateSeparator.vue";
290
+ import I18nServiceDefault from "vueless/service.i18n";
291
+
292
+ const ONE_REM = 16;
293
+ const ONE_AND_HALF_REM = 1.5;
294
+
295
+ export default {
296
+ name: "UTable",
297
+ components: {
298
+ UTag,
299
+ ULink,
300
+ UMoney,
301
+ UCheckbox,
302
+ UTopLoader,
303
+ TTable,
304
+ TableCheckbox,
305
+ EmptyTableMsg,
306
+ DateSeparator,
307
+ },
308
+
309
+ props: {
310
+ /**
311
+ * Set items (rows) for table.
312
+ */
313
+ items: {
314
+ type: Array,
315
+ default: () => [],
316
+ required: true,
317
+ },
318
+
319
+ /**
320
+ * Set headers for table.
321
+ */
322
+ headers: {
323
+ type: Array,
324
+ default: () => [],
325
+ required: true,
326
+ },
327
+
328
+ /**
329
+ * Set filters for table.
330
+ */
331
+ filters: {
332
+ type: Object,
333
+ default: () => ({}),
334
+ },
335
+
336
+ /**
337
+ * It allows selecting table rows.
338
+ */
339
+ selectable: {
340
+ type: Boolean,
341
+ default: false,
342
+ },
343
+
344
+ /**
345
+ * Makes the table more narrow.
346
+ */
347
+ compact: {
348
+ type: Boolean,
349
+ default: false,
350
+ },
351
+
352
+ /**
353
+ * Make footer fixed.
354
+ */
355
+ fixedFooter: {
356
+ type: Boolean,
357
+ default: false,
358
+ },
359
+
360
+ /**
361
+ * Make header sticky.
362
+ */
363
+ stickyHeader: {
364
+ type: Boolean,
365
+ default: false,
366
+ },
367
+
368
+ /**
369
+ * Set loader resource name to activate table top loader exact for that request.
370
+ */
371
+ loaderResourceName: {
372
+ type: String,
373
+ default: "",
374
+ },
375
+
376
+ /**
377
+ * Enable or disable nesting.
378
+ */
379
+ nesting: {
380
+ type: Boolean,
381
+ default: false,
382
+ },
383
+
384
+ /**
385
+ * Sets the nesting level from which folding button need to be shown.
386
+ */
387
+ nestingFromLevel: {
388
+ type: Number,
389
+ default: 0,
390
+ },
391
+
392
+ /**
393
+ * Sets data-cy attribute for automated testing.
394
+ */
395
+ dataCy: {
396
+ type: String,
397
+ default: "",
398
+ },
399
+ },
400
+
401
+ emits: ["clickRow", "update:items"],
402
+
403
+ setup() {
404
+ const { getTranslation } = new I18nServiceDefault();
405
+
406
+ return { getTranslation };
407
+ },
408
+
409
+ data: () => ({
410
+ selectAll: false,
411
+ canSelectAll: true,
412
+ selectedRows: [],
413
+ tableItems: [],
414
+ hiddenIds: [],
415
+ firstRow: 0,
416
+ emptyItem: "-",
417
+ tableWidth: 0,
418
+ tableHeight: 0,
419
+ pagePositionY: 0,
420
+ }),
421
+
422
+ computed: {
423
+ i18n() {
424
+ return {
425
+ noItems: this.getTranslation("noItems"),
426
+ noResultsForFilters: this.getTranslation("noResultsForFilters"),
427
+ yesterday: this.getTranslation("yesterday"),
428
+ today: this.getTranslation("today"),
429
+ tomorrow: this.getTranslation("tomorrow"),
430
+ };
431
+ },
432
+
433
+ tableWrapClass() {
434
+ const selected = this.selectedRowsLength ? "mono-table-inner-wrapper-selected" : "";
435
+ const compact = this.compact ? "mono-table-inner-wrapper-compact" : "";
436
+
437
+ return [selected, compact];
438
+ },
439
+
440
+ selectedRowsLength() {
441
+ return this.selectedRows.length;
442
+ },
443
+
444
+ isSelectedAllRows() {
445
+ return this.selectedRowsLength === this.tableItems.length;
446
+ },
447
+
448
+ colsCount() {
449
+ return this.headers.length + 1;
450
+ },
451
+
452
+ lastRow() {
453
+ return this.items.length - 1;
454
+ },
455
+
456
+ isShownSlot() {
457
+ return {
458
+ beforeFirstRow: !!this.$slots["before-first-row"],
459
+ afterLastRow: !!this.$slots["after-last-row"],
460
+ };
461
+ },
462
+
463
+ tableClasses() {
464
+ return {
465
+ "fixed-footer": this.isFixedFooter,
466
+ };
467
+ },
468
+
469
+ headerClasses() {
470
+ return {
471
+ compact: this.compact ? "compact-header" : "",
472
+ actionsHeader: this.selectedRowsLength ? "actions-header" : "",
473
+ fixedHeader: this.isFixedHeader && this.stickyHeader ? "mono-table-fixed-header" : "",
474
+ hideHeader: this.selectedRowsLength && !this.isFixedHeader ? "hide-header" : "",
475
+ };
476
+ },
477
+
478
+ isShownFixedOrActionsHeader() {
479
+ return this.isFixedHeader || this.selectedRowsLength;
480
+ },
481
+
482
+ isFixedFooter() {
483
+ const windowHeight = window.innerHeight;
484
+
485
+ return (
486
+ windowHeight < this.tableHeight &&
487
+ this.fixedFooter &&
488
+ !this.isShownFooterPosition &&
489
+ this.isCheckedMoreOneTableItems
490
+ );
491
+ },
492
+
493
+ isFixedHeader() {
494
+ return !this.isShownHeaderPosition;
495
+ },
496
+
497
+ isShownHeaderPosition() {
498
+ const positionForFixHeader =
499
+ this.$refs?.headerRow?.getBoundingClientRect().top + window.pageYOffset || 0;
500
+
501
+ return positionForFixHeader >= this.pagePositionY;
502
+ },
503
+
504
+ isShownFooterPosition() {
505
+ const windowHeight = window.innerHeight;
506
+ const pageBottom = this.pagePositionY + windowHeight;
507
+ const positionForFixFooter =
508
+ this.$refs?.footerRow?.getBoundingClientRect().bottom + window.pageYOffset;
509
+
510
+ return pageBottom >= positionForFixFooter;
511
+ },
512
+
513
+ isCheckedMoreOneTableItems() {
514
+ const checkedTableItems = this.tableItems.filter((item) => item.isChecked);
515
+
516
+ return checkedTableItems.length > 1;
517
+ },
518
+
519
+ tableRowWidthStyle() {
520
+ return `width: ${this.tableWidth / ONE_REM}rem`;
521
+ },
522
+
523
+ beforeFirstRowClass() {
524
+ return this.tableItems[0]?.isChecked ? "table-row-checked" : "";
525
+ },
526
+
527
+ firstRowClass() {
528
+ return this.hasContentBeforeFirstRowSlot ? "" : "first-row";
529
+ },
530
+
531
+ afterLastRowClass() {
532
+ return this.isSlotEmpty("after-last-row") ? "more-row-hide" : "more-row";
533
+ },
534
+
535
+ hasContentBeforeFirstRowSlot() {
536
+ return this.isShownSlot.beforeFirstRow
537
+ ? this.$slots["before-first-row"]()?.some((item) => !!item.type?.render)
538
+ : false;
539
+ },
540
+ },
541
+
542
+ watch: {
543
+ selectAll: {
544
+ handler: "onChangeSelectAll",
545
+ deep: true,
546
+ },
547
+ selectedRows: {
548
+ handler: "onChangeSelectedRows",
549
+ deep: true,
550
+ },
551
+ tableItems: {
552
+ handler: "onChangeTableItems",
553
+ deep: true,
554
+ },
555
+ items: {
556
+ handler: "onChangeItems",
557
+ deep: true,
558
+ },
559
+ isFixedFooter: "onChangeFixedFooter",
560
+ isFixedHeader: "onChangeFixedHeader",
561
+ },
562
+
563
+ created() {
564
+ this.tableItems = this.items;
565
+
566
+ document.addEventListener("keyup", this.onKeyupClearCheckbox);
567
+ document.addEventListener("scroll", this.onScrollGetPosition, { passive: true });
568
+ },
569
+
570
+ updated() {
571
+ this.tableHeight = this.$refs.tableWrapper.offsetHeight;
572
+ this.tableWidth = this.$refs.tableWrapper.offsetWidth;
573
+ },
574
+
575
+ beforeUnmount() {
576
+ document.removeEventListener("keyup", this.onKeyupClearCheckbox);
577
+ document.removeEventListener("scroll", this.onScrollGetPosition);
578
+ },
579
+
580
+ methods: {
581
+ isShownIcon({ index, row }) {
582
+ const isChildren = row.childrenIds?.length > 0;
583
+ const isWithinNestingLevel = row.nestedLevel >= this.nestingFromLevel;
584
+
585
+ const isFirstRow = index === 0;
586
+
587
+ return isFirstRow && (isChildren || row.isNestingRow) && this.nesting && isWithinNestingLevel;
588
+ },
589
+
590
+ isIconActive(row) {
591
+ return !row.childrenIds?.length ? "gray" : "";
592
+ },
593
+
594
+ isSlotEmpty(slotName) {
595
+ return Boolean(this.$slots[slotName]);
596
+ },
597
+
598
+ onClickShowItem(row) {
599
+ if (!this.nesting || !row.childrenIds.length) return;
600
+ const [firstElement] = row.childrenIds;
601
+
602
+ row.isHidden = !row.isHidden;
603
+
604
+ if (row.isHidden && row.childrenIds.length) {
605
+ this.hiddenIds.push(...row.childrenIds);
606
+ } else {
607
+ this.hiddenIds =
608
+ row.nestedLevel === this.nestingFromLevel
609
+ ? row.childrenIds.filter((item) => !this.hiddenIds.includes(item))
610
+ : this.hiddenIds.filter((item) => item !== firstElement);
611
+ }
612
+ },
613
+
614
+ tableContainerClass(index) {
615
+ return index === 0 && this.nesting ? "table-container" : "";
616
+ },
617
+
618
+ setLeftMargin(nestedLevel) {
619
+ return `margin-left: ${nestedLevel * ONE_AND_HALF_REM}rem`;
620
+ },
621
+
622
+ isShownRow(row) {
623
+ if (this.hiddenIds.includes(row.id)) {
624
+ row.isHidden = true;
625
+ }
626
+
627
+ return this.hiddenIds.includes(row.id);
628
+ },
629
+
630
+ onChangeFixedFooter() {
631
+ if (this.isFixedFooter) {
632
+ this.$nextTick(() => {
633
+ this.setFooterItemsWidth();
634
+ });
635
+ } else {
636
+ this.setFooterItemsWidth(true);
637
+ }
638
+ },
639
+
640
+ setFooterItemsWidth(setNullWidth) {
641
+ const ZERO_WIDTH = 0;
642
+
643
+ if (!this.fixedFooter) return;
644
+
645
+ const [...mainFooterItems] = this.$refs.footerRow.children;
646
+ const [...fixedFooterItems] = this.$refs.footerFixedRow.children;
647
+
648
+ fixedFooterItems.forEach((item, index) => {
649
+ item.style.width = setNullWidth
650
+ ? `${ZERO_WIDTH}rem`
651
+ : `${mainFooterItems[index].offsetWidth / ONE_REM}rem`;
652
+ });
653
+ },
654
+
655
+ onChangeFixedHeader() {
656
+ this.setHeaderItemsWidth();
657
+ },
658
+
659
+ setHeaderItemsWidth() {
660
+ if (!this.selectedRowsLength) {
661
+ const [...mainHeaderItems] = this.$refs.headerRow.children;
662
+ const [...fixedHeaderItems] = this.$refs.headerFixedRow.children;
663
+
664
+ fixedHeaderItems.forEach((item, index) => {
665
+ item.style.width = `${mainHeaderItems[index]?.offsetWidth / ONE_REM}rem`;
666
+ });
667
+ }
668
+ },
669
+
670
+ onScrollGetPosition() {
671
+ this.pagePositionY = window.pageYOffset;
672
+ },
673
+
674
+ onChangeTableItems(tableItems) {
675
+ this.$emit("update:items", tableItems);
676
+ },
677
+
678
+ onKeyupClearCheckbox(event) {
679
+ const escKeyCode = 27;
680
+
681
+ if (event.keyCode === escKeyCode && this.selectable) {
682
+ this.selectedRows = [];
683
+ }
684
+ },
685
+
686
+ onChangeItems() {
687
+ if (!this.items.length || this.tableItems.length !== this.items.length) {
688
+ this.selectedRows = [];
689
+ }
690
+
691
+ const checkedTableItems = this.tableItems.filter((item) => item.isChecked);
692
+
693
+ this.tableItems = this.items;
694
+
695
+ this.tableItems.forEach((item) => {
696
+ checkedTableItems.forEach((checkedItem) => {
697
+ if (item.id === checkedItem.id) {
698
+ item.isChecked = true;
699
+ }
700
+ });
701
+
702
+ if (this.nesting && item.isHidden && item.childrenIds?.length) {
703
+ this.hiddenIds.push(...item.childrenIds);
704
+ }
705
+ });
706
+ },
707
+
708
+ isShownDateSeparator(rowIndex, date) {
709
+ const prevIndex = rowIndex ? rowIndex - 1 : rowIndex;
710
+ const prevItem = this.tableItems[prevIndex];
711
+ const prevDateInMilliseconds = secondsToMilliseconds(prevItem?.date?.primaryRow);
712
+ const dateInMilliseconds = secondsToMilliseconds(date?.primaryRow);
713
+ const isSameDate = isSameDay(dateInMilliseconds, prevDateInMilliseconds);
714
+
715
+ if (rowIndex === 0) {
716
+ return isValid(prevDateInMilliseconds) && this.hasContentBeforeFirstRowSlot;
717
+ }
718
+
719
+ return isValid(prevDateInMilliseconds) && !isSameDate;
720
+ },
721
+
722
+ rowClass(row) {
723
+ return row.isChecked ? "table-row-checked" : "";
724
+ },
725
+
726
+ dateSeparatorRowClass(rowIndex) {
727
+ const isCheckedRowBefore = this.tableItems[rowIndex - 1]?.isChecked;
728
+ const isCheckedRowAfter = this.tableItems[rowIndex]?.isChecked;
729
+
730
+ return (isCheckedRowBefore && isCheckedRowAfter) || (rowIndex === 0 && isCheckedRowAfter)
731
+ ? "table-row-checked"
732
+ : "";
733
+ },
734
+
735
+ onClickSelectRow(rowIndex) {
736
+ const isRowChecked = this.tableItems[rowIndex].isChecked;
737
+
738
+ this.tableItems[rowIndex].isChecked = !isRowChecked;
739
+ },
740
+
741
+ getFilteredRow(row) {
742
+ const filteredRow = Object.entries(row).filter((col) => {
743
+ const [key] = col;
744
+ const isShownCol = this.headers.some((header) => header.value === key);
745
+
746
+ if (isShownCol) return col;
747
+ });
748
+
749
+ return Object.fromEntries(filteredRow);
750
+ },
751
+
752
+ onClickRow(row) {
753
+ this.$emit("clickRow", row);
754
+ },
755
+
756
+ isExistSlot(slotName) {
757
+ return !!this.$slots[slotName];
758
+ },
759
+
760
+ getTdClass(key) {
761
+ return this.headers.find((item) => item.value === key)?.tdClass;
762
+ },
763
+
764
+ onChangeSelectAll(selectAll) {
765
+ if (selectAll && this.canSelectAll) {
766
+ this.selectedRows = this.tableItems.map((item, index) => index);
767
+
768
+ this.tableItems.forEach((item) => {
769
+ item.isChecked = true;
770
+ });
771
+ } else if (!selectAll) {
772
+ this.selectedRows = [];
773
+
774
+ this.tableItems.forEach((item) => {
775
+ item.isChecked = false;
776
+ });
777
+ }
778
+
779
+ this.canSelectAll = true;
780
+ },
781
+
782
+ onChangeSelectedRows(selectedRows) {
783
+ if (selectedRows.length) {
784
+ this.canSelectAll = false;
785
+
786
+ this.isCheckedMoreOneTableItems ? this.setFooterItemsWidth() : "";
787
+ } else {
788
+ this.$nextTick(() => {
789
+ this.setHeaderItemsWidth();
790
+ });
791
+ }
792
+
793
+ this.selectAll = !!selectedRows.length;
794
+ },
795
+
796
+ dateConverter(value, format) {
797
+ return new DateServiceDefault().dateConverter(value, format);
798
+ },
799
+
800
+ clearSelectedItems() {
801
+ this.selectedRows = [];
802
+ },
803
+ },
804
+ };
805
+ </script>
806
+
807
+ <i18n>
808
+ en:
809
+ noItems: There is no data in the table yet.
810
+ noResultsForFilters: No results were found for the specified filters.
811
+ yesterday: Yesterday
812
+ today: Today
813
+ tomorrow: Tomorrow
814
+ ru:
815
+ noItems: Пока что в таблице нет данных.
816
+ noResultsForFilters: По заданным фильтрам ничего не найдено.
817
+ yesterday: Вчера
818
+ today: Сегодня
819
+ tomorrow: Завтра
820
+ ua:
821
+ noItems: Поки що в таблиці немає даних.
822
+ noResultsForFilters: За даними фільтрами нічого не знайдено.
823
+ yesterday: Вчора
824
+ today: Сьогодні
825
+ tomorrow: Завтра
826
+ </i18n>
827
+
828
+ <style lang="postcss" scoped>
829
+ .mono-table-wrapper {
830
+ @apply relative bg-white rounded-2xl;
831
+ }
832
+
833
+ .more-row {
834
+ .first-row {
835
+ @apply py-1 !important;
836
+ }
837
+
838
+ .last-row {
839
+ @apply py-1 !important;
840
+ }
841
+
842
+ td {
843
+ @apply px-0 py-4 !important;
844
+
845
+ & :deep(:first-child) {
846
+ @apply mx-auto;
847
+ }
848
+ }
849
+
850
+ &-hide {
851
+ td {
852
+ @apply !p-0;
853
+ }
854
+ }
855
+ }
856
+
857
+ .mono-table-fixed-header {
858
+ @apply fixed top-0 border border-t-0 border-gray-200;
859
+ @apply bg-white;
860
+
861
+ &.actions-header {
862
+ @apply rounded-t-none;
863
+ }
864
+ }
865
+
866
+ .actions-header {
867
+ @apply rounded-t-lg border border-blue-200 bg-blue-50;
868
+
869
+ .selected-rows-count {
870
+ @apply flex items-center pr-4;
871
+ @apply font-medium text-gray-900;
872
+ }
873
+ }
874
+
875
+ .mono-table-custom-header {
876
+ @apply flex items-center;
877
+ @apply z-40;
878
+
879
+ &-item {
880
+ @apply flex-none;
881
+ @apply text-sm font-normal text-gray-500;
882
+ @apply px-[1.125rem] py-5;
883
+
884
+ &:first-child {
885
+ @apply p-5;
886
+ }
887
+
888
+ &:nth-child(2) {
889
+ @apply pl-0;
890
+ }
891
+
892
+ &:last-child {
893
+ @apply p-5;
894
+ }
895
+ }
896
+
897
+ &.compact-header {
898
+ .fixed-header-table-loader {
899
+ @apply !top-[3.25rem];
900
+ }
901
+
902
+ .mono-table-custom-header-item {
903
+ @apply p-4;
904
+
905
+ &:nth-child(2) {
906
+ @apply pl-0;
907
+ }
908
+ }
909
+ }
910
+ }
911
+
912
+ .mono-table-inner-wrapper {
913
+ @apply overflow-auto rounded-lg;
914
+ @apply border border-gray-200;
915
+
916
+ &-selected {
917
+ @apply !rounded-t-none border-t-0;
918
+ }
919
+
920
+ .mono-table {
921
+ @apply min-w-full border-none bg-white text-sm;
922
+ @apply w-full;
923
+
924
+ :deep(thead) {
925
+ @apply border-b border-solid border-gray-200;
926
+
927
+ tr {
928
+ th {
929
+ @apply bg-white px-[1.125rem] py-5;
930
+ @apply text-sm font-normal text-gray-500;
931
+
932
+ &:first-child,
933
+ &:last-child {
934
+ @apply p-5;
935
+ }
936
+
937
+ &:nth-child(2) {
938
+ @apply pl-0;
939
+ }
940
+ }
941
+ }
942
+ }
943
+
944
+ :deep(tbody) {
945
+ @apply divide-none;
946
+
947
+ tr {
948
+ td {
949
+ @apply text-ellipsis whitespace-nowrap p-[1.125rem] py-5;
950
+ @apply align-top;
951
+
952
+ &:first-child,
953
+ &:last-child {
954
+ @apply p-5;
955
+ }
956
+
957
+ &:nth-child(2) {
958
+ @apply pl-0;
959
+ }
960
+
961
+ .tags-cell {
962
+ @apply flex space-x-2;
963
+ }
964
+ }
965
+ }
966
+ }
967
+
968
+ :deep(tfoot) {
969
+ @apply border-t border-solid border-gray-200;
970
+
971
+ tr {
972
+ td {
973
+ @apply p-[1.125rem] py-5;
974
+
975
+ &:first-child {
976
+ @apply p-5;
977
+ }
978
+
979
+ &:nth-child(2) {
980
+ @apply pl-0;
981
+ }
982
+ }
983
+ }
984
+ }
985
+
986
+ :deep(.secondary-row) {
987
+ @apply mt-1 text-xs text-gray-500;
988
+ }
989
+ }
990
+
991
+ &-compact {
992
+ .mono-table {
993
+ :deep(thead) {
994
+ tr {
995
+ th {
996
+ @apply bg-white p-4;
997
+
998
+ &:first-child,
999
+ &:last-child {
1000
+ @apply p-4;
1001
+ }
1002
+ }
1003
+ }
1004
+ }
1005
+
1006
+ :deep(tbody) {
1007
+ tr {
1008
+ td {
1009
+ @apply px-4 py-3;
1010
+
1011
+ &:first-child,
1012
+ &:last-child {
1013
+ @apply px-4 py-3;
1014
+ }
1015
+ }
1016
+ }
1017
+ }
1018
+
1019
+ :deep(tfoot) {
1020
+ tr {
1021
+ td {
1022
+ @apply p-4;
1023
+
1024
+ &:first-child {
1025
+ @apply p-4;
1026
+ }
1027
+ }
1028
+ }
1029
+ }
1030
+ }
1031
+ }
1032
+ }
1033
+
1034
+ .col-checkbox {
1035
+ @apply w-[3.75rem];
1036
+ }
1037
+
1038
+ .table-row {
1039
+ @apply transition duration-100;
1040
+ @apply hover:bg-gray-50;
1041
+
1042
+ &-checked {
1043
+ @apply transition duration-100;
1044
+ @apply bg-gray-100;
1045
+ }
1046
+ }
1047
+
1048
+ .table-button {
1049
+ @apply flex relative -top-px;
1050
+ }
1051
+
1052
+ .children-empty {
1053
+ @apply inline-block;
1054
+ }
1055
+
1056
+ .fixed-footer {
1057
+ .table {
1058
+ &-footer {
1059
+ @apply relative;
1060
+
1061
+ &-fixed-row {
1062
+ visibility: inherit;
1063
+ }
1064
+ }
1065
+ }
1066
+ }
1067
+
1068
+ .hide-header {
1069
+ @apply relative -top-[3.75rem];
1070
+ visibility: collapse;
1071
+ }
1072
+
1073
+ .table-footer-fixed-row {
1074
+ @apply fixed bottom-0 -ml-px;
1075
+ @apply border border-b-0 border-gray-200 bg-white;
1076
+ visibility: collapse;
1077
+ }
1078
+
1079
+ .table-loader {
1080
+ @apply !top-auto;
1081
+ }
1082
+
1083
+ .table-fixed-loader {
1084
+ @apply !top-[3.25rem];
1085
+ }
1086
+
1087
+ .fixed-header-table-loader {
1088
+ @apply !top-[3.75rem];
1089
+ }
1090
+
1091
+ .table-checkbox {
1092
+ @apply w-[3.75rem];
1093
+ }
1094
+ .table-container {
1095
+ @apply flex items-center;
1096
+
1097
+ &-icon {
1098
+ @apply mr-2 rounded-sm bg-gray-200;
1099
+ }
1100
+ }
1101
+ </style>