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
  /* Shared picker suffix slot: clear + dropdown indicator (Select, TreeSelect). */
1203
1152
  .m-select__control {
1204
1153
  --m-control-end-padding: var(--m-control-affix-padding);
@@ -1578,21 +1527,29 @@
1578
1527
 
1579
1528
  .m-select__filter,
1580
1529
  .m-treeselect__filter {
1530
+ /* size="1" + min-width:0 keep intrinsic width from inflating width:max-content menus */
1531
+ align-self: stretch;
1581
1532
  background: var(--m-color-surface);
1582
- border: 0;
1583
- border-bottom: var(--m-border-width) solid var(--m-color-border);
1533
+ border: var(--m-border-width) solid var(--m-color-border);
1584
1534
  border-radius: var(--m-radius-sm);
1585
1535
  box-sizing: border-box;
1586
1536
  color: var(--m-color-text);
1587
1537
  flex: 0 0 auto;
1588
- font: inherit;
1589
- margin: calc(var(--m-space-1) * -1) calc(var(--m-space-1) * -1) 0;
1590
- padding: var(--m-space-2) var(--m-space-3);
1591
- width: calc(100% + var(--m-space-1) * 2);
1538
+ font-family: var(--m-font-sans);
1539
+ font-size: var(--m-control-font-small);
1540
+ height: var(--m-control-height-small);
1541
+ line-height: calc(var(--m-control-height-small) - 2 * var(--m-border-width));
1542
+ margin: var(--m-space-2);
1543
+ max-width: calc(100% - 2 * var(--m-space-2));
1544
+ min-width: 0;
1545
+ outline: none;
1546
+ padding: 0 var(--m-control-padding-x-small);
1547
+ width: auto;
1592
1548
  }
1593
1549
 
1594
1550
  .m-select__filter:focus-visible,
1595
1551
  .m-treeselect__filter:focus-visible {
1552
+ border-color: var(--m-color-primary-hover);
1596
1553
  box-shadow: var(--m-focus-shadow);
1597
1554
  outline: none;
1598
1555
  }
@@ -1641,12 +1598,6 @@
1641
1598
  }
1642
1599
  }
1643
1600
 
1644
- @media (prefers-reduced-motion: reduce) {
1645
- html:not([data-m-ignore-reduced-motion]) .m-icon--spin svg {
1646
- animation: none;
1647
- }
1648
- }
1649
-
1650
1601
  :root[data-m-motion='none'] .m-icon--spin svg,
1651
1602
  :root[data-m-motion='reduced'] .m-icon--spin svg {
1652
1603
  animation: none;
@@ -1776,14 +1727,6 @@
1776
1727
  opacity: 0;
1777
1728
  }
1778
1729
 
1779
- @media (prefers-reduced-motion: reduce) {
1780
- html:not([data-m-ignore-reduced-motion]) .m-scrollbar__thumb,
1781
- html:not([data-m-ignore-reduced-motion]) .m-scrollbar-fade-enter-active,
1782
- html:not([data-m-ignore-reduced-motion]) .m-scrollbar-fade-leave-active {
1783
- transition: none;
1784
- }
1785
- }
1786
-
1787
1730
  :root[data-m-motion='none'] .m-scrollbar__thumb,
1788
1731
  :root[data-m-motion='none'] .m-scrollbar-fade-enter-active,
1789
1732
  :root[data-m-motion='none'] .m-scrollbar-fade-leave-active,
@@ -1886,13 +1829,6 @@
1886
1829
  animation: m-progress-spinner-rotate var(--m-motion-spin-medium) linear infinite;
1887
1830
  }
1888
1831
 
1889
- @media (prefers-reduced-motion: reduce) {
1890
- html:not([data-m-ignore-reduced-motion]) .m-select__spinner {
1891
- animation: none;
1892
- border-top-color: var(--m-color-text-muted);
1893
- }
1894
- }
1895
-
1896
1832
  [data-m-motion="reduced"] .m-select__spinner {
1897
1833
  animation: none;
1898
1834
  border-top-color: var(--m-color-text-muted);
@@ -1930,28 +1866,33 @@
1930
1866
  flex-direction: column;
1931
1867
  max-height: var(--m-select-menu-max-height);
1932
1868
  min-width: 100%;
1869
+ overscroll-behavior: contain;
1933
1870
  padding: var(--m-space-1);
1934
1871
  position: absolute;
1872
+ transform-origin: top center;
1935
1873
  width: max-content;
1936
1874
  }
1937
1875
 
1938
1876
  .m-select__menu:has(.m-select__filter) {
1939
1877
  --m-select-list-max-height: calc(
1940
- var(--m-select-menu-max-height) - var(--m-control-height-medium) - var(--m-space-2)
1878
+ var(--m-select-menu-max-height) - var(--m-control-height-small) - var(--m-space-6)
1941
1879
  );
1942
1880
  }
1943
1881
 
1944
1882
  .m-select__list {
1945
1883
  max-height: var(--m-select-list-max-height);
1946
1884
  min-height: 0;
1885
+ overscroll-behavior: contain;
1947
1886
  }
1948
1887
 
1949
1888
  .m-select__menu--bottom-start {
1950
1889
  left: 0;
1890
+ transform-origin: top left;
1951
1891
  }
1952
1892
 
1953
1893
  .m-select__menu--bottom-end {
1954
1894
  right: 0;
1895
+ transform-origin: top right;
1955
1896
  }
1956
1897
 
1957
1898
  .m-select__required-input {
@@ -1985,3 +1926,32 @@
1985
1926
  min-height: 0;
1986
1927
  width: 100%;
1987
1928
  }
1929
+
1930
+ .m-select__group-label {
1931
+ color: var(--m-color-text-muted);
1932
+ font-size: var(--m-font-size-xs);
1933
+ padding: var(--m-space-2) var(--m-control-padding-x-medium) var(--m-space-1);
1934
+ }
1935
+
1936
+ /* Virtual rows are fixed-height: center the group label like an option row. */
1937
+ .m-select__list--virtual .m-select__group-label {
1938
+ align-items: center;
1939
+ box-sizing: border-box;
1940
+ display: flex;
1941
+ height: 100%;
1942
+ padding-bottom: 0;
1943
+ padding-top: 0;
1944
+ }
1945
+
1946
+ .m-select__header,
1947
+ .m-select__footer {
1948
+ flex: 0 0 auto;
1949
+ padding: var(--m-space-2) var(--m-control-padding-x-medium);
1950
+ }
1951
+
1952
+ /* Header/footer live outside the scroll list; let the menu grow past the list
1953
+ cap so the panel's overflow:hidden does not clip them. */
1954
+ .m-select__menu:has(.m-select__header),
1955
+ .m-select__menu:has(.m-select__footer) {
1956
+ max-height: none;
1957
+ }
@@ -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
  /* —— Form: SelectButton —— */
1203
1152
  .m-selectbutton {
1204
1153
  --m-button-padding-x-small: var(--m-control-padding-x-small);
@@ -34,8 +34,8 @@ export interface MGlobalConfig {
34
34
  */
35
35
  density?: MDensity;
36
36
  /**
37
- * When true (default), honor `prefers-reduced-motion` and soften/disable motion.
38
- * Set to `false` to keep component transitions regardless of OS preference.
37
+ * Unused by component motion. Intensity follows `useMotion` / `data-m-motion` only.
38
+ * @deprecated OS `prefers-reduced-motion` no longer changes component animations.
39
39
  */
40
40
  respectReducedMotion?: boolean;
41
41
  /**
@@ -0,0 +1,14 @@
1
+ /** Normalize a user filter string for case-insensitive matching. */
2
+ export declare function normalizeFilterQuery(query: string): string;
3
+ /** Case-insensitive substring match against an already-normalized query. */
4
+ export declare function textMatchesQuery(text: string, normalizedQuery: string): boolean;
5
+ /** Filter items whose `label` contains the query (trimmed, case-insensitive). */
6
+ export declare function filterItemsByLabel<T extends {
7
+ label: string;
8
+ }>(items: readonly T[], query: string): T[];
9
+ /** Filter items whose `label` or `value` contains the query. */
10
+ export declare function filterItemsByLabelOrValue<T extends {
11
+ label: string;
12
+ value: string;
13
+ }>(items: readonly T[], query: string): T[];
14
+ //# sourceMappingURL=filterByQuery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filterByQuery.d.ts","sourceRoot":"","sources":["../../src/shared/filterByQuery.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,OAAO,CAG/E;AAED,iFAAiF;AACjF,wBAAgB,kBAAkB,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,EAC5D,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,KAAK,EAAE,MAAM,GACZ,CAAC,EAAE,CAIL;AAED,gEAAgE;AAChE,wBAAgB,yBAAyB,CAAC,CAAC,SAAS;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,EAClF,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,KAAK,EAAE,MAAM,GACZ,CAAC,EAAE,CAOL"}
@@ -0,0 +1,38 @@
1
+ import { MenuNodeBase } from './types';
2
+ export interface FlatMenuEntry<T extends MenuNodeBase = MenuNodeBase> {
3
+ item: T;
4
+ key: string;
5
+ parentKey: string | null;
6
+ hasChildren: boolean;
7
+ }
8
+ export interface InitialExpandedKeysOptions {
9
+ defaultExpandAll?: boolean;
10
+ defaultExpandedKeys?: string[];
11
+ selectedKey?: string | null;
12
+ }
13
+ /** Resolve the first paint expanded-key set from menu defaults / selection. */
14
+ export declare function resolveInitialExpandedKeys(items: MenuNodeBase[], options?: InitialExpandedKeysOptions): string[];
15
+ /**
16
+ * Toggle one key in an expanded-key list.
17
+ * Accordion mode collapses other top-level groups when opening one.
18
+ */
19
+ export declare function toggleExpandedKeys(expandedKeys: string[], key: string, options?: {
20
+ accordion?: boolean;
21
+ topLevelKeys?: string[];
22
+ }): string[];
23
+ /** Merge ancestor path into expanded keys when selection changes. */
24
+ export declare function mergeExpandedKeysForSelection(expandedKeys: string[], path: string[], options?: {
25
+ accordion?: boolean;
26
+ topLevelKeys?: string[];
27
+ }): string[];
28
+ /**
29
+ * Visible menu entries in DOM order.
30
+ * When `excludeChildren` is true (collapsed / horizontal flyout), nested
31
+ * children stay out of the flat list.
32
+ */
33
+ export declare function flattenVisibleMenuEntries<T extends MenuNodeBase>(items: T[], options: {
34
+ isExpanded: (key: string) => boolean;
35
+ excludeChildren?: boolean;
36
+ prefix?: string;
37
+ }): FlatMenuEntry<T>[];
38
+ //# sourceMappingURL=expand.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expand.d.ts","sourceRoot":"","sources":["../../../src/shared/menu/expand.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAO3C,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY;IAClE,IAAI,EAAE,CAAC,CAAA;IACP,GAAG,EAAE,MAAM,CAAA;IACX,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,WAAW,EAAE,OAAO,CAAA;CACrB;AAED,MAAM,WAAW,0BAA0B;IACzC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC9B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAC5B;AAED,+EAA+E;AAC/E,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,0BAA+B,GACvC,MAAM,EAAE,CAQV;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,MAAM,EAAE,EACtB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GAC7D,MAAM,EAAE,CAkBV;AAED,qEAAqE;AACrE,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,MAAM,EAAE,EACtB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,GAC7D,MAAM,EAAE,CASV;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,SAAS,YAAY,EAC9D,KAAK,EAAE,CAAC,EAAE,EACV,OAAO,EAAE;IACP,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAA;IACpC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,GACA,aAAa,CAAC,CAAC,CAAC,EAAE,CAepB"}
@@ -1 +1 @@
1
- {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../src/shared/menu/icon.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAyB3D,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAInE"}
1
+ {"version":3,"file":"icon.d.ts","sourceRoot":"","sources":["../../../src/shared/menu/icon.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAA;AAgB3D,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAInE"}
@@ -1,5 +1,7 @@
1
1
  export { resolveMenuIcon } from './icon';
2
2
  export { menuNodeKey } from './key';
3
+ export { flattenVisibleMenuEntries, mergeExpandedKeysForSelection, resolveInitialExpandedKeys, toggleExpandedKeys, } from './expand';
4
+ export type { FlatMenuEntry, InitialExpandedKeysOptions } from './expand';
3
5
  export { collectExpandableKeys, collectTopLevelKeys, findMenuKeyPath, menuHasDescendantKey, resolveMenuItemKey, } from './tree';
4
6
  export type { MenuNodeBase } from './types';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,QAAQ,CAAA;AACf,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/menu/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,0BAA0B,EAC1B,kBAAkB,GACnB,MAAM,UAAU,CAAA;AACjB,YAAY,EAAE,aAAa,EAAE,0BAA0B,EAAE,MAAM,UAAU,CAAA;AACzE,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,QAAQ,CAAA;AACf,YAAY,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA"}
@@ -147,21 +147,29 @@
147
147
 
148
148
  .m-select__filter,
149
149
  .m-treeselect__filter {
150
+ /* size="1" + min-width:0 keep intrinsic width from inflating width:max-content menus */
151
+ align-self: stretch;
150
152
  background: var(--m-color-surface);
151
- border: 0;
152
- border-bottom: var(--m-border-width) solid var(--m-color-border);
153
+ border: var(--m-border-width) solid var(--m-color-border);
153
154
  border-radius: var(--m-radius-sm);
154
155
  box-sizing: border-box;
155
156
  color: var(--m-color-text);
156
157
  flex: 0 0 auto;
157
- font: inherit;
158
- margin: calc(var(--m-space-1) * -1) calc(var(--m-space-1) * -1) 0;
159
- padding: var(--m-space-2) var(--m-space-3);
160
- width: calc(100% + var(--m-space-1) * 2);
158
+ font-family: var(--m-font-sans);
159
+ font-size: var(--m-control-font-small);
160
+ height: var(--m-control-height-small);
161
+ line-height: calc(var(--m-control-height-small) - 2 * var(--m-border-width));
162
+ margin: var(--m-space-2);
163
+ max-width: calc(100% - 2 * var(--m-space-2));
164
+ min-width: 0;
165
+ outline: none;
166
+ padding: 0 var(--m-control-padding-x-small);
167
+ width: auto;
161
168
  }
162
169
 
163
170
  .m-select__filter:focus-visible,
164
171
  .m-treeselect__filter:focus-visible {
172
+ border-color: var(--m-color-primary-hover);
165
173
  box-shadow: var(--m-focus-shadow);
166
174
  outline: none;
167
175
  }
@@ -1,6 +1,6 @@
1
1
  import { a as e } from "../useComponentAttrs-e-5QAjdw.js";
2
- import { t } from "../Icon-lcN1rS87.js";
3
- import { t as n } from "../icon-DWXkh-RM.js";
2
+ import { t } from "../Icon-od9Ob-Ay.js";
3
+ import { t as n } from "../icon-COrt_N8A.js";
4
4
  import { n as r } from "../locale-Bzm2nbEp.js";
5
5
  import "./style.js";
6
6
  import { Fragment as i, computed as a, createCommentVNode as o, createElementBlock as s, createElementVNode as c, createVNode as l, defineComponent as u, mergeProps as d, openBlock as f, renderList as p, renderSlot as m, toDisplayString as h, unref as g, useAttrs as _, useSlots as v } from "vue";
@@ -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-icon {
1203
1152
  color: currentColor;
1204
1153
  display: inline-flex;
@@ -1243,12 +1192,6 @@
1243
1192
  }
1244
1193
  }
1245
1194
 
1246
- @media (prefers-reduced-motion: reduce) {
1247
- html:not([data-m-ignore-reduced-motion]) .m-icon--spin svg {
1248
- animation: none;
1249
- }
1250
- }
1251
-
1252
1195
  :root[data-m-motion='none'] .m-icon--spin svg,
1253
1196
  :root[data-m-motion='reduced'] .m-icon--spin svg {
1254
1197
  animation: none;
@@ -1324,12 +1267,6 @@
1324
1267
  text-align: center;
1325
1268
  }
1326
1269
 
1327
- @media (prefers-reduced-motion: reduce) {
1328
- html:not([data-m-ignore-reduced-motion]) .m-sidebar__link {
1329
- transition: none;
1330
- }
1331
- }
1332
-
1333
1270
  [data-m-motion="reduced"] .m-sidebar__link,
1334
1271
  [data-m-motion="none"] .m-sidebar__link {
1335
1272
  transition: none;