morya-ui 0.3.0 → 0.3.2

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 (309) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/dist/Button-dMqRmoYa.js +222 -0
  3. package/dist/{Card-Dsmnzong.js → Card-B1CB9Trm.js} +3 -5
  4. package/dist/Empty-C5tndBOm.js +147 -0
  5. package/dist/Icon-od9Ob-Ay.js +393 -0
  6. package/dist/Loading-BSsRs6v9.js +420 -0
  7. package/dist/Pagination-CqpC5EAs.js +166 -0
  8. package/dist/Select-CKGrSoaC.js +572 -0
  9. package/dist/Skeleton-DCYdXAH2.js +59 -0
  10. package/dist/accordion/style.css +20 -71
  11. package/dist/auto-complete/index.js +118 -120
  12. package/dist/auto-complete/style.css +24 -88
  13. package/dist/avatar/index.js +1 -1
  14. package/dist/avatar/style.css +10 -67
  15. package/dist/badge/style.css +10 -68
  16. package/dist/block-ui/style.css +10 -68
  17. package/dist/breadcrumb/style.css +10 -61
  18. package/dist/button/index.js +1 -1
  19. package/dist/button/style.css +72 -78
  20. package/dist/card/index.js +1 -1
  21. package/dist/card/style.css +30 -67
  22. package/dist/carousel/index.js +72 -64
  23. package/dist/carousel/style.css +36 -82
  24. package/dist/cascade-select/index.js +1 -1
  25. package/dist/cascade-select/style.css +24 -81
  26. package/dist/checkbox/style.css +10 -61
  27. package/dist/chip/index.js +1 -1
  28. package/dist/chip/style.css +10 -67
  29. package/dist/command-menu/index.js +37 -39
  30. package/dist/command-menu/style.css +10 -75
  31. package/dist/components/Accordion/styles.css +10 -10
  32. package/dist/components/AutoComplete/AutoComplete.vue.d.ts.map +1 -1
  33. package/dist/components/AutoComplete/styles.css +0 -7
  34. package/dist/components/Badge/styles.css +0 -7
  35. package/dist/components/BlockUI/styles.css +0 -7
  36. package/dist/components/Button/Button.vue.d.ts +2 -0
  37. package/dist/components/Button/Button.vue.d.ts.map +1 -1
  38. package/dist/components/Button/styles.css +62 -11
  39. package/dist/components/Button/types.d.ts +4 -0
  40. package/dist/components/Button/types.d.ts.map +1 -1
  41. package/dist/components/Card/Card.vue.d.ts +2 -2
  42. package/dist/components/Card/Card.vue.d.ts.map +1 -1
  43. package/dist/components/Card/index.d.ts +1 -1
  44. package/dist/components/Card/index.d.ts.map +1 -1
  45. package/dist/components/Card/styles.css +20 -6
  46. package/dist/components/Card/types.d.ts +4 -2
  47. package/dist/components/Card/types.d.ts.map +1 -1
  48. package/dist/components/Carousel/Carousel.vue.d.ts.map +1 -1
  49. package/dist/components/Carousel/styles.css +26 -15
  50. package/dist/components/CommandMenu/CommandMenu.vue.d.ts.map +1 -1
  51. package/dist/components/ConfigProvider/ConfigProvider.vue.d.ts +2 -2
  52. package/dist/components/DataView/DataView.vue.d.ts +7 -7
  53. package/dist/components/DataView/DataView.vue.d.ts.map +1 -1
  54. package/dist/components/DataView/styles.css +0 -20
  55. package/dist/components/Dialog/styles.css +3 -46
  56. package/dist/components/Dock/styles.css +0 -10
  57. package/dist/components/Drawer/styles.css +2 -51
  58. package/dist/components/Dropdown/Dropdown.vue.d.ts +2 -2
  59. package/dist/components/Dropdown/Dropdown.vue.d.ts.map +1 -1
  60. package/dist/components/Dropdown/DropdownNodes.vue.d.ts +8 -9
  61. package/dist/components/Dropdown/DropdownNodes.vue.d.ts.map +1 -1
  62. package/dist/components/Dropdown/styles.css +24 -5
  63. package/dist/components/Fieldset/styles.css +0 -7
  64. package/dist/components/FileUpload/FileUpload.vue.d.ts.map +1 -1
  65. package/dist/components/FileUpload/fileUtils.d.ts +8 -0
  66. package/dist/components/FileUpload/fileUtils.d.ts.map +1 -0
  67. package/dist/components/Gallery/styles.css +0 -8
  68. package/dist/components/Icon/Icon.vue.d.ts.map +1 -1
  69. package/dist/components/Icon/icon-categories.d.ts.map +1 -1
  70. package/dist/components/Icon/icons-types.d.ts +4 -2
  71. package/dist/components/Icon/icons-types.d.ts.map +1 -1
  72. package/dist/components/Icon/icons.d.ts +250 -561
  73. package/dist/components/Icon/icons.d.ts.map +1 -1
  74. package/dist/components/Icon/index.d.ts +2 -2
  75. package/dist/components/Icon/index.d.ts.map +1 -1
  76. package/dist/components/Icon/styles.css +0 -6
  77. package/dist/components/Knob/styles.css +0 -6
  78. package/dist/components/Layout/styles.css +5 -14
  79. package/dist/components/Listbox/Listbox.vue.d.ts.map +1 -1
  80. package/dist/components/Loading/styles.css +0 -16
  81. package/dist/components/Menu/Menu.vue.d.ts.map +1 -1
  82. package/dist/components/Menu/styles.css +6 -7
  83. package/dist/components/Menubar/Menubar.vue.d.ts.map +1 -1
  84. package/dist/components/Menubar/styles.css +4 -0
  85. package/dist/components/Message/styles.css +0 -13
  86. package/dist/components/Page/PageContent.vue.d.ts +2 -1
  87. package/dist/components/Page/PageContent.vue.d.ts.map +1 -1
  88. package/dist/components/Page/PageFilterChips.vue.d.ts +16 -0
  89. package/dist/components/Page/PageFilterChips.vue.d.ts.map +1 -0
  90. package/dist/components/Page/PageFilters.vue.d.ts +15 -3
  91. package/dist/components/Page/PageFilters.vue.d.ts.map +1 -1
  92. package/dist/components/Page/PageHeader.vue.d.ts +8 -4
  93. package/dist/components/Page/PageHeader.vue.d.ts.map +1 -1
  94. package/dist/components/Page/PagePlaceholder.vue.d.ts +6 -2
  95. package/dist/components/Page/PagePlaceholder.vue.d.ts.map +1 -1
  96. package/dist/components/Page/PageSection.vue.d.ts +8 -2
  97. package/dist/components/Page/PageSection.vue.d.ts.map +1 -1
  98. package/dist/components/Page/PageStat.vue.d.ts +8 -3
  99. package/dist/components/Page/PageStat.vue.d.ts.map +1 -1
  100. package/dist/components/Page/index.d.ts +2 -1
  101. package/dist/components/Page/index.d.ts.map +1 -1
  102. package/dist/components/Page/styles.css +239 -44
  103. package/dist/components/Page/types.d.ts +40 -0
  104. package/dist/components/Page/types.d.ts.map +1 -1
  105. package/dist/components/Pagination/Pagination.vue.d.ts.map +1 -1
  106. package/dist/components/Pagination/styles.css +7 -10
  107. package/dist/components/Pagination/types.d.ts +1 -1
  108. package/dist/components/Pagination/types.d.ts.map +1 -1
  109. package/dist/components/Panel/styles.css +0 -7
  110. package/dist/components/Popover/styles.css +20 -17
  111. package/dist/components/ProgressBar/styles.css +0 -9
  112. package/dist/components/ProgressSpinner/styles.css +0 -7
  113. package/dist/components/ScrollTop/styles.css +0 -7
  114. package/dist/components/Scrollbar/Scrollbar.vue.d.ts +1 -1
  115. package/dist/components/Scrollbar/styles.css +0 -8
  116. package/dist/components/Select/Select.vue.d.ts +10 -8
  117. package/dist/components/Select/Select.vue.d.ts.map +1 -1
  118. package/dist/components/Select/selectOptions.d.ts +46 -0
  119. package/dist/components/Select/selectOptions.d.ts.map +1 -0
  120. package/dist/components/Select/styles.css +35 -8
  121. package/dist/components/Select/types.d.ts +11 -1
  122. package/dist/components/Select/types.d.ts.map +1 -1
  123. package/dist/components/Sidebar/styles.css +0 -6
  124. package/dist/components/Skeleton/styles.css +0 -6
  125. package/dist/components/Slider/styles.css +9 -0
  126. package/dist/components/SplitButton/styles.css +5 -0
  127. package/dist/components/Status/styles.css +0 -7
  128. package/dist/components/Switch/styles.css +0 -7
  129. package/dist/components/Table/Table.vue.d.ts +26 -26
  130. package/dist/components/Table/Table.vue.d.ts.map +1 -1
  131. package/dist/components/Table/TableLoadingLine.vue.d.ts.map +1 -1
  132. package/dist/components/Table/hooks/useExpandableRow.d.ts.map +1 -1
  133. package/dist/components/Table/hooks/useTotalItems.d.ts.map +1 -1
  134. package/dist/components/Table/styles.css +61 -44
  135. package/dist/components/Table/tableQuery.d.ts +30 -0
  136. package/dist/components/Table/tableQuery.d.ts.map +1 -0
  137. package/dist/components/Tree/Tree.vue.d.ts.map +1 -1
  138. package/dist/components/Tree/treeQuery.d.ts +31 -0
  139. package/dist/components/Tree/treeQuery.d.ts.map +1 -0
  140. package/dist/components/TreeSelect/TreeSelect.vue.d.ts.map +1 -1
  141. package/dist/components/TreeSelect/styles.css +1 -1
  142. package/dist/config-provider/index.js +1 -1
  143. package/dist/config-provider/style.css +72 -72
  144. package/dist/confirm-dialog/index.js +2 -2
  145. package/dist/confirm-dialog/style.css +75 -124
  146. package/dist/confirm-popup/index.js +2 -2
  147. package/dist/confirm-popup/style.css +72 -78
  148. package/dist/context-menu/index.js +2 -2
  149. package/dist/context-menu/style.css +10 -75
  150. package/dist/data-view/index.js +47 -47
  151. package/dist/data-view/style.css +393 -174
  152. package/dist/data-view/style.js +1 -1
  153. package/dist/date-picker/index.js +1 -1
  154. package/dist/date-picker/style.css +10 -67
  155. package/dist/dialog/index.js +2 -2
  156. package/dist/dialog/style.css +75 -124
  157. package/dist/divider/style.css +10 -61
  158. package/dist/dock/index.js +2 -2
  159. package/dist/dock/style.css +10 -77
  160. package/dist/drawer/index.js +1 -1
  161. package/dist/drawer/style.css +12 -118
  162. package/dist/dropdown/index.js +110 -91
  163. package/dist/dropdown/style.css +34 -80
  164. package/dist/empty/index.js +5 -150
  165. package/dist/empty/style.css +10 -67
  166. package/dist/fieldset/index.js +1 -1
  167. package/dist/fieldset/style.css +10 -74
  168. package/dist/file-upload/index.js +148 -146
  169. package/dist/file-upload/style.css +10 -67
  170. package/dist/filterByQuery-Bczaxzih.js +17 -0
  171. package/dist/flex/style.css +10 -61
  172. package/dist/float-label/style.css +10 -61
  173. package/dist/fluid/style.css +10 -61
  174. package/dist/form/style.css +10 -61
  175. package/dist/gallery/index.js +1 -1
  176. package/dist/gallery/style.css +10 -83
  177. package/dist/grid/style.css +10 -61
  178. package/dist/icon/index.js +93 -39
  179. package/dist/icon/style.css +10 -67
  180. package/dist/icon-COrt_N8A.js +18 -0
  181. package/dist/icon-field/style.css +10 -61
  182. package/dist/index.d.ts +3 -2
  183. package/dist/index.d.ts.map +1 -1
  184. package/dist/index.js +5400 -5145
  185. package/dist/inplace/style.css +10 -61
  186. package/dist/input/index.js +1 -1
  187. package/dist/input/style.css +10 -67
  188. package/dist/input-color/style.css +10 -61
  189. package/dist/input-group/style.css +10 -61
  190. package/dist/input-number/index.js +1 -1
  191. package/dist/input-number/style.css +10 -67
  192. package/dist/input-otp/style.css +10 -61
  193. package/dist/input-password/index.js +1 -1
  194. package/dist/input-password/style.css +10 -67
  195. package/dist/input-tags/index.js +1 -1
  196. package/dist/input-tags/style.css +10 -67
  197. package/dist/knob/style.css +10 -67
  198. package/dist/label/style.css +10 -61
  199. package/dist/layout/index.js +1 -1
  200. package/dist/layout/style.css +15 -89
  201. package/dist/listbox/index.js +30 -32
  202. package/dist/listbox/style.css +10 -69
  203. package/dist/loading/index.js +32 -446
  204. package/dist/loading/style.css +10 -77
  205. package/dist/mega-menu/index.js +2 -2
  206. package/dist/mega-menu/style.css +10 -67
  207. package/dist/menu/index.js +265 -255
  208. package/dist/menu/style.css +36 -99
  209. package/dist/menubar/index.js +6 -3
  210. package/dist/menubar/style.css +14 -75
  211. package/dist/message/index.js +1 -1
  212. package/dist/message/style.css +10 -80
  213. package/dist/meter-group/style.css +10 -61
  214. package/dist/order-list/index.js +1 -1
  215. package/dist/order-list/style.css +10 -67
  216. package/dist/page/index.js +229 -70
  217. package/dist/page/style.css +1186 -113
  218. package/dist/page/style.js +3 -0
  219. package/dist/pagination/index.js +1 -1
  220. package/dist/pagination/style.css +210 -77
  221. package/dist/pagination/style.js +1 -0
  222. package/dist/panel/index.js +1 -1
  223. package/dist/panel/style.css +10 -74
  224. package/dist/pick-list/index.js +1 -1
  225. package/dist/pick-list/style.css +10 -67
  226. package/dist/popover/style.css +30 -78
  227. package/dist/progress-bar/style.css +10 -70
  228. package/dist/progress-spinner/index.js +105 -2
  229. package/dist/progress-spinner/style.css +10 -68
  230. package/dist/radio/style.css +10 -61
  231. package/dist/rating/index.js +1 -1
  232. package/dist/rating/style.css +10 -67
  233. package/dist/resolver-map.d.ts.map +1 -1
  234. package/dist/resolver.js +1 -0
  235. package/dist/result/index.js +1 -1
  236. package/dist/result/style.css +10 -67
  237. package/dist/scroll-top/index.js +1 -1
  238. package/dist/scroll-top/style.css +10 -82
  239. package/dist/scrollbar/style.css +10 -69
  240. package/dist/select/index.js +2 -478
  241. package/dist/select/style.css +59 -89
  242. package/dist/select-button/style.css +10 -61
  243. package/dist/shared/config.d.ts +2 -2
  244. package/dist/shared/filterByQuery.d.ts +14 -0
  245. package/dist/shared/filterByQuery.d.ts.map +1 -0
  246. package/dist/shared/menu/expand.d.ts +38 -0
  247. package/dist/shared/menu/expand.d.ts.map +1 -0
  248. package/dist/shared/menu/icon.d.ts.map +1 -1
  249. package/dist/shared/menu/index.d.ts +2 -0
  250. package/dist/shared/menu/index.d.ts.map +1 -1
  251. package/dist/shared/styles/select-overlay.css +14 -6
  252. package/dist/sidebar/index.js +2 -2
  253. package/dist/sidebar/style.css +10 -73
  254. package/dist/skeleton/index.js +2 -59
  255. package/dist/skeleton/style.css +10 -67
  256. package/dist/slider/style.css +19 -61
  257. package/dist/space/style.css +10 -61
  258. package/dist/speed-dial/index.js +2 -2
  259. package/dist/speed-dial/style.css +10 -67
  260. package/dist/split-button/index.js +1 -1
  261. package/dist/split-button/style.css +77 -78
  262. package/dist/splitter/style.css +10 -61
  263. package/dist/status/index.js +1 -1
  264. package/dist/status/style.css +10 -74
  265. package/dist/stepper/index.js +1 -1
  266. package/dist/stepper/style.css +10 -67
  267. package/dist/styles/base.css +5 -50
  268. package/dist/styles.css +1 -1
  269. package/dist/switch/style.css +10 -68
  270. package/dist/table/index.js +409 -373
  271. package/dist/table/style.css +457 -215
  272. package/dist/table/style.js +1 -1
  273. package/dist/tabs/index.js +1 -1
  274. package/dist/tabs/style.css +10 -75
  275. package/dist/tag/index.js +1 -1
  276. package/dist/tag/style.css +10 -67
  277. package/dist/terminal/style.css +10 -61
  278. package/dist/textarea/index.js +1 -1
  279. package/dist/textarea/style.css +10 -67
  280. package/dist/theme/styles.css +5 -11
  281. package/dist/theme/useMotion.d.ts +5 -1
  282. package/dist/theme/useMotion.d.ts.map +1 -1
  283. package/dist/tiered-menu/index.js +1 -1
  284. package/dist/tiered-menu/style.css +10 -75
  285. package/dist/timeline/index.js +1 -1
  286. package/dist/timeline/style.css +10 -75
  287. package/dist/toast/index.js +1 -1
  288. package/dist/toast/style.css +10 -67
  289. package/dist/toggle-button/index.js +2 -2
  290. package/dist/toggle-button/style.css +10 -67
  291. package/dist/toolbar/style.css +10 -61
  292. package/dist/tooltip/style.css +10 -61
  293. package/dist/tree/index.js +159 -173
  294. package/dist/tree/style.css +10 -67
  295. package/dist/tree-select/index.js +200 -213
  296. package/dist/tree-select/style.css +25 -82
  297. package/dist/tree-table/index.js +1 -1
  298. package/dist/tree-table/style.css +10 -67
  299. package/dist/treeQuery-CnHkyYOA.js +107 -0
  300. package/dist/virtual-scroller/style.css +10 -69
  301. package/package.json +1 -1
  302. package/dist/Button-B5X_R4Md.js +0 -156
  303. package/dist/Icon-lcN1rS87.js +0 -610
  304. package/dist/Pagination-CVrH8Ypi.js +0 -158
  305. package/dist/ProgressSpinner-BeWVF6Jv.js +0 -105
  306. package/dist/checkStrategy-CZzuUKDI.js +0 -63
  307. package/dist/components/Icon/icons-tabler.d.ts +0 -77
  308. package/dist/components/Icon/icons-tabler.d.ts.map +0 -1
  309. package/dist/icon-DWXkh-RM.js +0 -27
@@ -50,6 +50,10 @@
50
50
  --m-font-size-sm: 0.8125rem;
51
51
  --m-font-size-md: 0.875rem;
52
52
  --m-font-size-lg: 1.125rem;
53
+ /* Display scale (page titles, KPI figures) */
54
+ --m-font-size-xl: 1.25rem;
55
+ --m-font-size-2xl: 1.5rem;
56
+ --m-font-size-3xl: 1.75rem;
53
57
  --m-opacity-disabled: 0.55;
54
58
  /* Layering: override --m-z-base via ConfigProvider / createMoryaUI */
55
59
  --m-z-base: 1000;
@@ -192,20 +196,10 @@
192
196
 
193
197
  /*
194
198
  * Global motion policy (complements per-component rules):
195
- * - `reduced` / OS prefers-reduced-motion: keep short paint transitions; stop loops
199
+ * - `reduced`: keep short paint transitions; stop loops
196
200
  * and layout/transform size animation.
197
201
  * - `none`: zero all transition/animation durations.
198
202
  */
199
- @media (prefers-reduced-motion: reduce) {
200
- html:not([data-m-ignore-reduced-motion]) *,
201
- html:not([data-m-ignore-reduced-motion]) *::before,
202
- html:not([data-m-ignore-reduced-motion]) *::after {
203
- animation-duration: 0.01ms !important;
204
- animation-iteration-count: 1 !important;
205
- transition-property: background-color, border-color, color, opacity, box-shadow,
206
- outline, fill, stroke, stroke-dashoffset !important;
207
- }
208
- }
209
203
 
210
204
  [data-m-motion="reduced"] *,
211
205
  [data-m-motion="reduced"] *::before,
@@ -529,9 +523,13 @@
529
523
  border-radius: var(--m-radius-md);
530
524
  box-shadow: var(--m-shadow-md);
531
525
  max-height: var(--m-dropdown-submenu-max-height);
526
+ max-width: calc(100vw - 2 * var(--m-space-4));
532
527
  min-width: 10rem;
533
528
  overflow: hidden;
534
529
  padding: var(--m-space-1);
530
+ /* Same as .m-dropdown__menu: size to content instead of being clamped
531
+ by the space left of the anchor in the viewport. */
532
+ width: max-content;
535
533
  }
536
534
 
537
535
  .m-dropdown__submenu--teleported {
@@ -611,7 +609,7 @@
611
609
  .m-zoom-enter-from,
612
610
  .m-zoom-leave-to {
613
611
  opacity: 0;
614
- transform: scale(0.9);
612
+ transform: scale(0.95);
615
613
  }
616
614
 
617
615
  .m-slide-up-enter-active,
@@ -656,44 +654,6 @@
656
654
  transform: translateX(calc(var(--m-motion-distance) * -1));
657
655
  }
658
656
 
659
- @media (prefers-reduced-motion: reduce) {
660
- html:not([data-m-ignore-reduced-motion]) .m-fade-enter-active,
661
- html:not([data-m-ignore-reduced-motion]) .m-fade-leave-active,
662
- html:not([data-m-ignore-reduced-motion]) .m-scale-fade-enter-active,
663
- html:not([data-m-ignore-reduced-motion]) .m-scale-fade-leave-active,
664
- html:not([data-m-ignore-reduced-motion]) .m-slide-fade-enter-active,
665
- html:not([data-m-ignore-reduced-motion]) .m-slide-fade-leave-active,
666
- html:not([data-m-ignore-reduced-motion]) .m-zoom-enter-active,
667
- html:not([data-m-ignore-reduced-motion]) .m-zoom-leave-active,
668
- html:not([data-m-ignore-reduced-motion]) .m-slide-up-enter-active,
669
- html:not([data-m-ignore-reduced-motion]) .m-slide-up-leave-active,
670
- html:not([data-m-ignore-reduced-motion]) .m-slide-down-enter-active,
671
- html:not([data-m-ignore-reduced-motion]) .m-slide-down-leave-active,
672
- html:not([data-m-ignore-reduced-motion]) .m-slide-left-enter-active,
673
- html:not([data-m-ignore-reduced-motion]) .m-slide-left-leave-active,
674
- html:not([data-m-ignore-reduced-motion]) .m-slide-right-enter-active,
675
- html:not([data-m-ignore-reduced-motion]) .m-slide-right-leave-active {
676
- transition: none;
677
- }
678
-
679
- html:not([data-m-ignore-reduced-motion]) .m-scale-fade-enter-from,
680
- html:not([data-m-ignore-reduced-motion]) .m-scale-fade-leave-to,
681
- html:not([data-m-ignore-reduced-motion]) .m-slide-fade-enter-from,
682
- html:not([data-m-ignore-reduced-motion]) .m-slide-fade-leave-to,
683
- html:not([data-m-ignore-reduced-motion]) .m-zoom-enter-from,
684
- html:not([data-m-ignore-reduced-motion]) .m-zoom-leave-to,
685
- html:not([data-m-ignore-reduced-motion]) .m-slide-up-enter-from,
686
- html:not([data-m-ignore-reduced-motion]) .m-slide-up-leave-to,
687
- html:not([data-m-ignore-reduced-motion]) .m-slide-down-enter-from,
688
- html:not([data-m-ignore-reduced-motion]) .m-slide-down-leave-to,
689
- html:not([data-m-ignore-reduced-motion]) .m-slide-left-enter-from,
690
- html:not([data-m-ignore-reduced-motion]) .m-slide-left-leave-to,
691
- html:not([data-m-ignore-reduced-motion]) .m-slide-right-enter-from,
692
- html:not([data-m-ignore-reduced-motion]) .m-slide-right-leave-to {
693
- transform: none;
694
- }
695
- }
696
-
697
657
  [data-m-motion="reduced"] .m-fade-enter-active,
698
658
  [data-m-motion="reduced"] .m-fade-leave-active,
699
659
  [data-m-motion="reduced"] .m-scale-fade-enter-active,
@@ -1188,17 +1148,6 @@
1188
1148
  animation: none !important;
1189
1149
  }
1190
1150
 
1191
- @media (prefers-reduced-motion: reduce) {
1192
- html:not([data-m-ignore-reduced-motion]) *,
1193
- html:not([data-m-ignore-reduced-motion]) *::before,
1194
- html:not([data-m-ignore-reduced-motion]) *::after {
1195
- animation-duration: 0.01ms !important;
1196
- animation-iteration-count: 1 !important;
1197
- scroll-behavior: auto !important;
1198
- transition-duration: 0.01ms !important;
1199
- }
1200
- }
1201
-
1202
1151
  .m-scrollbar {
1203
1152
  --m-scrollbar-track-size: 6px;
1204
1153
  --m-scrollbar-inset: 0.125rem;
@@ -1323,14 +1272,6 @@
1323
1272
  opacity: 0;
1324
1273
  }
1325
1274
 
1326
- @media (prefers-reduced-motion: reduce) {
1327
- html:not([data-m-ignore-reduced-motion]) .m-scrollbar__thumb,
1328
- html:not([data-m-ignore-reduced-motion]) .m-scrollbar-fade-enter-active,
1329
- html:not([data-m-ignore-reduced-motion]) .m-scrollbar-fade-leave-active {
1330
- transition: none;
1331
- }
1332
- }
1333
-
1334
1275
  :root[data-m-motion='none'] .m-scrollbar__thumb,
1335
1276
  :root[data-m-motion='none'] .m-scrollbar-fade-enter-active,
1336
1277
  :root[data-m-motion='none'] .m-scrollbar-fade-leave-active,
@@ -1,479 +1,3 @@
1
- import { i as e } from "../useComponentAttrs-e-5QAjdw.js";
2
- import { t } from "../Icon-lcN1rS87.js";
3
- import { t as n } from "../useMotionTransition-Bxnnb_9u.js";
4
- import { n as ee, t as te } from "../overlay-oR-5MDuE.js";
5
- import { t as ne } from "../overlayPlacement-Cd20JTD_.js";
6
- import { t as re } from "../useFloatingViewportSync-DZdJ7W8n.js";
7
- import { t as ie } from "../useMId-BXFYayPP.js";
8
- import { t as ae } from "../Scrollbar-DTeJ8P5b.js";
9
- import { t as oe } from "../VirtualScroller-CHoFCmpP.js";
10
- import { c as se, i as ce, o as le } from "../config-CapALqt3.js";
11
- import { n as ue, t as de } from "../locale-Bzm2nbEp.js";
1
+ import { t as e } from "../Select-CKGrSoaC.js";
12
2
  import "./style.js";
13
- import { Fragment as r, Teleport as fe, Transition as pe, computed as i, createBlock as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createTextVNode as me, createVNode as l, defineComponent as u, mergeProps as he, nextTick as ge, normalizeClass as d, normalizeStyle as _e, onBeforeUnmount as ve, openBlock as f, ref as p, renderList as ye, renderSlot as be, toDisplayString as m, unref as h, useAttrs as xe, useSlots as Se, vModelText as Ce, watch as g, withCtx as _, withDirectives as we, withModifiers as Te } from "vue";
14
- //#region src/components/Select/Select.vue?vue&type=script&setup=true&lang.ts
15
- var Ee = ["for"], De = [
16
- "id",
17
- "tabindex",
18
- "aria-expanded",
19
- "aria-controls",
20
- "aria-invalid",
21
- "aria-describedby",
22
- "aria-disabled",
23
- "aria-busy",
24
- "aria-multiselectable"
25
- ], Oe = {
26
- key: 0,
27
- class: "m-select__tags"
28
- }, ke = { class: "m-select__tag-label" }, Ae = [
29
- "aria-label",
30
- "disabled",
31
- "onClick"
32
- ], je = ["aria-label"], Me = {
33
- key: 1,
34
- class: "m-select__value"
35
- }, Ne = {
36
- key: 2,
37
- class: "m-select__spinner",
38
- "aria-hidden": "true"
39
- }, Pe = { class: "m-select__suffix" }, Fe = ["aria-label"], Ie = [
40
- "id",
41
- "aria-multiselectable",
42
- "aria-label"
43
- ], Le = ["placeholder", "aria-label"], Re = [
44
- "aria-selected",
45
- "disabled",
46
- "onMouseenter",
47
- "onClick"
48
- ], ze = {
49
- key: 0,
50
- class: "m-select__empty",
51
- role: "status"
52
- }, Be = [
53
- "aria-selected",
54
- "disabled",
55
- "onMouseenter",
56
- "onClick"
57
- ], Ve = {
58
- key: 1,
59
- class: "m-select__empty",
60
- role: "status"
61
- }, He = {
62
- key: 3,
63
- class: "m-select__empty",
64
- role: "status"
65
- }, Ue = {
66
- key: 4,
67
- class: "m-select__empty",
68
- role: "status"
69
- }, We = [
70
- "name",
71
- "required",
72
- "value"
73
- ], Ge = ["id", "role"], Ke = 80, qe = /* @__PURE__ */ u({
74
- inheritAttrs: !1,
75
- __name: "Select",
76
- props: {
77
- modelValue: { default: void 0 },
78
- options: {},
79
- label: {},
80
- helpText: {},
81
- invalid: {
82
- type: Boolean,
83
- default: !1
84
- },
85
- errorMessage: {},
86
- id: {},
87
- disabled: {
88
- type: Boolean,
89
- default: !1
90
- },
91
- required: {
92
- type: Boolean,
93
- default: !1
94
- },
95
- size: {},
96
- fluid: {
97
- type: Boolean,
98
- default: void 0
99
- },
100
- multiple: {
101
- type: Boolean,
102
- default: void 0
103
- },
104
- tag: {
105
- type: Boolean,
106
- default: void 0
107
- },
108
- remote: {
109
- type: Boolean,
110
- default: void 0
111
- },
112
- loading: {
113
- type: Boolean,
114
- default: void 0
115
- },
116
- maxTagCount: {},
117
- showClear: {
118
- type: Boolean,
119
- default: void 0
120
- },
121
- clearable: {
122
- type: Boolean,
123
- default: void 0
124
- },
125
- emptyMessage: {},
126
- filter: {
127
- type: Boolean,
128
- default: void 0
129
- },
130
- teleport: {
131
- type: Boolean,
132
- default: !0
133
- },
134
- appendTo: {},
135
- placement: { default: "bottom-start" },
136
- pt: {},
137
- transition: {
138
- type: [String, Boolean],
139
- default: void 0
140
- },
141
- virtual: {
142
- type: Boolean,
143
- default: void 0
144
- },
145
- placeholder: {},
146
- name: {}
147
- },
148
- emits: [
149
- "update:modelValue",
150
- "change",
151
- "clear",
152
- "show",
153
- "hide",
154
- "search",
155
- "create"
156
- ],
157
- setup(u, { emit: qe }) {
158
- let v = u, y = qe, Je = Se(), Ye = xe(), { rootAttrs: Xe, controlAttrs: Ze } = e(Ye, () => v.pt, { controlKey: "control" }), b = ce("Select"), Qe = se(), { transitionName: $e, transitionCss: et } = n({
159
- role: "popup",
160
- local: () => v.transition,
161
- componentName: "Select",
162
- fallback: "scale-fade"
163
- }), x = ue(), tt = p(null), S = p(null), C = p(null), w = p(null), T = p(!1), E = p(""), D = p(-1), nt = p({}), O = p([]), rt = ie("m-select"), k = i(() => v.id ?? rt), it = i(() => v.emptyMessage ?? x.value.emptyOptions), A = i(() => v.multiple ?? b.value.multiple ?? !1), at = i(() => v.tag ?? b.value.tag ?? !1), j = i(() => v.remote ?? b.value.remote ?? !1), M = i(() => v.loading ?? !1), ot = i(() => v.fluid ?? b.value.fluid ?? !1), st = i(() => v.showClear ?? v.clearable ?? b.value.showClear ?? b.value.clearable ?? !1), N = i(() => v.filter ?? b.value.filter ?? !1), P = le("Select", () => v.size), ct = i(() => ee(v, Qe.value.appendTo)), F = i(() => te(v, Qe.value.appendTo)), I = i(() => v.invalid || !!v.errorMessage), L = i(() => v.errorMessage || v.helpText), lt = i(() => !!v.errorMessage || I.value && !!v.helpText), R = i(() => A.value ? Array.isArray(v.modelValue) ? v.modelValue : v.modelValue == null ? [] : [v.modelValue] : v.modelValue == null || Array.isArray(v.modelValue) ? [] : [v.modelValue]), z = i(() => {
164
- let e = new Set(v.options.map((e) => String(e.value))), t = [];
165
- for (let n of O.value) e.has(String(n.value)) || (t.push(n), e.add(String(n.value)));
166
- for (let n of R.value) e.has(String(n)) || (t.push({
167
- label: String(n),
168
- value: n
169
- }), e.add(String(n)));
170
- return [...v.options, ...t];
171
- });
172
- function ut(e) {
173
- return z.value.find((t) => t.value === e);
174
- }
175
- let B = i(() => R.value.map((e) => ut(e) ?? {
176
- label: String(e),
177
- value: e
178
- })), dt = i(() => {
179
- let e = B.value;
180
- return v.maxTagCount == null || e.length <= v.maxTagCount ? e : e.slice(0, v.maxTagCount);
181
- }), V = i(() => Math.max(0, B.value.length - dt.value.length)), H = i(() => A.value ? void 0 : B.value[0]), ft = i(() => H.value?.label ?? v.placeholder ?? x.value.selectPlaceholder), U = i(() => R.value.length > 0), pt = i(() => st.value && U.value && !v.disabled), W = i(() => E.value.trim()), mt = i(() => !at.value || !N.value || !W.value ? !1 : !z.value.some((e) => e.label.toLowerCase() === W.value.toLowerCase() || String(e.value) === W.value)), ht = i(() => {
182
- if (j.value) return v.options;
183
- let e = W.value.toLowerCase();
184
- return e ? z.value.filter((t) => t.label.toLowerCase().includes(e)) : z.value;
185
- }), G = i(() => mt.value ? [{
186
- label: W.value,
187
- value: W.value,
188
- created: !0
189
- }, ...ht.value] : ht.value), K = i(() => G.value.filter((e) => !e.disabled)), gt = i(() => de(x.value.createOption, { value: W.value })), _t = i(() => de(x.value.moreTags, { count: V.value })), q = i(() => v.virtual === !1 ? !1 : v.virtual === !0 || G.value.length >= Ke), vt = i(() => P.value === "small" ? 28 : P.value === "large" ? 40 : 34), yt = i(() => Math.min(240, Math.max(vt.value * 4, G.value.length * vt.value))), bt = p(null);
190
- function J(e) {
191
- return e;
192
- }
193
- function Y(e) {
194
- return R.value.some((t) => t === e);
195
- }
196
- function X(e) {
197
- y("update:modelValue", e), y("change", e);
198
- }
199
- function xt() {
200
- if (!F.value || !S.value) return;
201
- let e = S.value.getBoundingClientRect();
202
- nt.value = ne(e, v.placement === "bottom-end" ? "bottom-end" : "bottom-start", { minWidth: `${e.width}px` });
203
- }
204
- function Z(e, t = "none") {
205
- if (!(v.disabled || T.value === e)) {
206
- if (T.value = e, e) {
207
- if (E.value = "", t === "none") D.value = -1;
208
- else if (t === "last") D.value = Math.max(0, K.value.length - 1);
209
- else {
210
- let e = K.value.findIndex((e) => !e.created && Y(e.value));
211
- D.value = e >= 0 ? e : K.value.length ? 0 : -1;
212
- }
213
- y("show"), ge(() => {
214
- xt(), N.value ? w.value?.focus({ preventScroll: !0 }) : C.value?.focus({ preventScroll: !0 });
215
- });
216
- } else E.value = "", y("hide");
217
- }
218
- }
219
- function Q(e) {
220
- if (!e.disabled) {
221
- if (e.created) {
222
- St();
223
- return;
224
- }
225
- if (A.value) {
226
- X(Y(e.value) ? R.value.filter((t) => t !== e.value) : [...R.value, e.value]);
227
- return;
228
- }
229
- X(e.value), Z(!1), S.value?.focus({ preventScroll: !0 });
230
- }
231
- }
232
- function St() {
233
- let e = W.value;
234
- if (!e || !mt.value) return;
235
- let t = {
236
- label: e,
237
- value: e
238
- };
239
- O.value.some((e) => e.value === t.value) || (O.value = [...O.value, t]), y("create", t), Q({ ...t }), E.value = "";
240
- }
241
- function Ct(e, t) {
242
- t.stopPropagation(), t.preventDefault(), !(v.disabled || !A.value) && X(R.value.filter((t) => t !== e));
243
- }
244
- function wt(e) {
245
- e?.stopPropagation(), e?.preventDefault(), !(v.disabled || !U.value) && (X(A.value ? [] : void 0), y("clear"), S.value?.focus({ preventScroll: !0 }));
246
- }
247
- function Tt(e) {
248
- v.disabled || [
249
- "Enter",
250
- " ",
251
- "ArrowDown",
252
- "ArrowUp"
253
- ].includes(e.key) && (e.preventDefault(), T.value || Z(!0, e.key === "ArrowUp" ? "last" : "selected"));
254
- }
255
- function Et(e) {
256
- if (e.key === "Escape") {
257
- e.preventDefault(), Z(!1), S.value?.focus({ preventScroll: !0 });
258
- return;
259
- }
260
- let t = K.value.length;
261
- if (t && ((e.key === "ArrowDown" || e.key === "ArrowUp") && (e.preventDefault(), D.value < 0 ? D.value = e.key === "ArrowDown" ? 0 : t - 1 : D.value = (D.value + (e.key === "ArrowDown" ? 1 : -1) + t) % t), e.key === "Home" && (e.preventDefault(), D.value = 0), e.key === "End" && (e.preventDefault(), D.value = t - 1), e.key === "Enter" || e.key === " " && e.target !== w.value)) {
262
- let t = K.value[D.value];
263
- t && (e.preventDefault(), Q(t));
264
- }
265
- }
266
- function $(e) {
267
- T.value && !tt.value?.contains(e.target) && !C.value?.contains(e.target) && Z(!1);
268
- }
269
- function Dt() {
270
- T.value && xt();
271
- }
272
- return re(() => T.value && F.value, Dt), g(D, (e) => {
273
- if (!q.value || e < 0) return;
274
- let t = K.value[e];
275
- if (!t) return;
276
- let n = G.value.findIndex((e) => e.value === t.value && !!e.created == !!t.created);
277
- n >= 0 && bt.value?.scrollToIndex(n);
278
- }), g(E, (e) => {
279
- D.value = K.value.length ? 0 : -1, T.value && (N.value || j.value) && y("search", e);
280
- }), g(T, (e) => {
281
- e && j.value && y("search", E.value), e ? document.addEventListener("click", $) : document.removeEventListener("click", $);
282
- }), ve(() => {
283
- document.removeEventListener("click", $);
284
- }), (e, n) => (f(), s("div", he({
285
- ref_key: "root",
286
- ref: tt
287
- }, h(Xe), { class: ["m-select-field", { "m-select-field--fluid": ot.value }] }), [
288
- u.label ? (f(), s("label", {
289
- key: 0,
290
- class: "m-select-field__label",
291
- for: k.value
292
- }, m(u.label), 9, Ee)) : o("", !0),
293
- c("div", { class: d(["m-select__control", {
294
- "m-select__control--clearable": pt.value,
295
- "m-select__control--open": T.value
296
- }]) }, [c("div", he(h(Ze), {
297
- id: k.value,
298
- ref_key: "trigger",
299
- ref: S,
300
- class: ["m-select", [`m-select--${h(P)}`, {
301
- "m-select--invalid": I.value,
302
- "m-select--open": T.value,
303
- "m-select--placeholder": !U.value,
304
- "m-select--fluid": ot.value,
305
- "m-select--multiple": A.value,
306
- "m-select--disabled": u.disabled,
307
- "m-select--loading": M.value
308
- }]],
309
- role: "combobox",
310
- tabindex: u.disabled ? -1 : 0,
311
- "aria-expanded": T.value,
312
- "aria-haspopup": "listbox",
313
- "aria-controls": `${k.value}-listbox`,
314
- "aria-invalid": I.value || void 0,
315
- "aria-describedby": L.value ? `${k.value}-help` : void 0,
316
- "aria-disabled": u.disabled || void 0,
317
- "aria-busy": M.value || void 0,
318
- "aria-multiselectable": A.value || void 0,
319
- onClick: n[0] ||= (e) => Z(!T.value),
320
- onKeydown: Tt
321
- }), [A.value && U.value ? (f(), s("div", Oe, [(f(!0), s(r, null, ye(dt.value, (e) => (f(), s("span", {
322
- key: String(e.value),
323
- class: "m-select__tag"
324
- }, [c("span", ke, m(e.label), 1), c("button", {
325
- class: "m-select__tag-remove",
326
- type: "button",
327
- "aria-label": h(x).removeTag,
328
- disabled: u.disabled,
329
- onClick: (t) => Ct(e.value, t)
330
- }, [l(t, {
331
- name: "close",
332
- size: "sm"
333
- })], 8, Ae)]))), 128)), V.value ? (f(), s("span", {
334
- key: 0,
335
- class: "m-select__tag m-select__tag--more",
336
- "aria-label": _t.value
337
- }, " +" + m(V.value), 9, je)) : o("", !0)])) : (f(), s("span", Me, [h(Je).value && U.value && H.value ? be(e.$slots, "value", { option: H.value }, void 0, void 0, 0) : (f(), s(r, { key: 1 }, [me(m(ft.value), 1)], 64))])), M.value ? (f(), s("span", Ne)) : o("", !0)], 16, De), c("div", Pe, [pt.value ? (f(), s("button", {
338
- key: 0,
339
- class: "m-select__clear",
340
- type: "button",
341
- "aria-label": h(x).clear,
342
- onClick: wt
343
- }, [l(t, {
344
- name: "close",
345
- class: "m-control-affix-icon"
346
- })], 8, Fe)) : o("", !0), c("span", {
347
- class: d(["m-select__indicator", { "m-select__indicator--open": T.value }]),
348
- "aria-hidden": "true"
349
- }, [l(t, {
350
- name: "chevron-down",
351
- class: "m-control-affix-icon"
352
- })], 2)])], 2),
353
- (f(), a(fe, {
354
- to: ct.value.to,
355
- disabled: ct.value.disabled
356
- }, [l(pe, {
357
- name: h($e),
358
- css: h(et)
359
- }, {
360
- default: _(() => [T.value ? (f(), s("div", {
361
- key: 0,
362
- id: `${k.value}-listbox`,
363
- ref_key: "menu",
364
- ref: C,
365
- class: d(["m-select__menu", [`m-select__menu--${u.placement}`, { "m-select__menu--teleported": F.value }]]),
366
- style: _e(F.value ? nt.value : void 0),
367
- role: "listbox",
368
- tabindex: "-1",
369
- "aria-multiselectable": A.value || void 0,
370
- "aria-label": u.label ?? u.placeholder ?? h(x).selectOption,
371
- onKeydown: Et
372
- }, [
373
- N.value ? we((f(), s("input", {
374
- key: 0,
375
- ref_key: "filterInput",
376
- ref: w,
377
- "onUpdate:modelValue": n[1] ||= (e) => E.value = e,
378
- class: "m-select__filter",
379
- type: "search",
380
- placeholder: h(x).searchPlaceholder,
381
- "aria-label": h(x).filterOptions,
382
- onClick: n[2] ||= Te(() => {}, ["stop"]),
383
- onKeydown: Te(Et, ["stop"])
384
- }, null, 40, Le)), [[Ce, E.value]]) : o("", !0),
385
- q.value && !M.value && G.value.length ? (f(), a(oe, {
386
- key: 1,
387
- id: `${k.value}-listbox`,
388
- ref_key: "virtualList",
389
- ref: bt,
390
- class: "m-select__list m-select__list--virtual",
391
- role: "listbox",
392
- "aria-label": u.label ?? u.placeholder ?? h(x).selectOption,
393
- items: G.value,
394
- "item-size": vt.value,
395
- height: yt.value,
396
- buffer: 4
397
- }, {
398
- item: _(({ item: n }) => [c("button", {
399
- class: d(["m-select__option", {
400
- "m-select__option--selected": !J(n).created && Y(J(n).value),
401
- "m-select__option--highlighted": K.value[D.value]?.value === J(n).value && !!K.value[D.value]?.created == !!J(n).created,
402
- "m-select__option--create": J(n).created
403
- }]),
404
- type: "button",
405
- role: "option",
406
- "aria-selected": J(n).created ? void 0 : Y(J(n).value),
407
- disabled: J(n).disabled,
408
- onMouseenter: (e) => !J(n).disabled && (D.value = K.value.findIndex((e) => e.value === J(n).value && !!e.created == !!J(n).created)),
409
- onClick: (e) => Q(J(n))
410
- }, [be(e.$slots, "option", { option: J(n) }, () => [c("span", null, m(J(n).created ? gt.value : J(n).label), 1)]), !J(n).created && Y(J(n).value) ? (f(), a(t, {
411
- key: 0,
412
- class: "m-select__check",
413
- name: "check",
414
- size: "sm"
415
- })) : o("", !0)], 42, Re)]),
416
- _: 3
417
- }, 8, [
418
- "id",
419
- "aria-label",
420
- "items",
421
- "item-size",
422
- "height"
423
- ])) : (f(), a(ae, {
424
- key: 2,
425
- id: `${k.value}-listbox`,
426
- class: "m-select__list",
427
- "fit-content": "",
428
- "wrap-class": "m-select__list-wrap",
429
- "view-class": "m-select__list-view"
430
- }, {
431
- default: _(() => [
432
- M.value ? (f(), s("div", ze, m(h(x).loading), 1)) : o("", !0),
433
- (f(!0), s(r, null, ye(G.value, (n) => (f(), s("button", {
434
- key: n.created ? `__create:${String(n.value)}` : String(n.value),
435
- class: d(["m-select__option", {
436
- "m-select__option--selected": !n.created && Y(n.value),
437
- "m-select__option--highlighted": K.value[D.value]?.value === n.value && !!K.value[D.value]?.created == !!n.created,
438
- "m-select__option--create": n.created
439
- }]),
440
- type: "button",
441
- role: "option",
442
- "aria-selected": n.created ? void 0 : Y(n.value),
443
- disabled: n.disabled,
444
- onMouseenter: (e) => !n.disabled && (D.value = K.value.findIndex((e) => e.value === n.value && !!e.created == !!n.created)),
445
- onClick: (e) => Q(n)
446
- }, [be(e.$slots, "option", { option: n }, () => [c("span", null, m(n.created ? gt.value : n.label), 1)]), !n.created && Y(n.value) ? (f(), a(t, {
447
- key: 0,
448
- class: "m-select__check",
449
- name: "check",
450
- size: "sm"
451
- })) : o("", !0)], 42, Be))), 128)),
452
- !G.value.length && !M.value ? (f(), s("div", Ve, m(it.value), 1)) : o("", !0)
453
- ]),
454
- _: 3
455
- }, 8, ["id"])),
456
- q.value && M.value ? (f(), s("div", He, m(h(x).loading), 1)) : q.value && !G.value.length && !M.value ? (f(), s("div", Ue, m(it.value), 1)) : o("", !0)
457
- ], 46, Ie)) : o("", !0)]),
458
- _: 3
459
- }, 8, ["name", "css"])], 8, ["to", "disabled"])),
460
- u.required ? (f(), s("input", {
461
- key: 1,
462
- class: "m-select__required-input",
463
- tabindex: "-1",
464
- "aria-hidden": "true",
465
- name: u.name,
466
- required: !U.value,
467
- value: A.value ? R.value.join(",") : R.value[0]
468
- }, null, 8, We)) : o("", !0),
469
- L.value ? (f(), s("span", {
470
- key: 2,
471
- id: `${k.value}-help`,
472
- class: d(["m-select-field__help", { "m-select-field__help--invalid": lt.value }]),
473
- role: lt.value ? "alert" : void 0
474
- }, m(L.value), 11, Ge)) : o("", !0)
475
- ], 16));
476
- }
477
- });
478
- //#endregion
479
- export { qe as MSelect };
3
+ export { e as MSelect };