@mono-lit/helper 0.0.2 → 0.0.3

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 (497) hide show
  1. package/dist/{breakpoints-CAbhDUht.js → breakpoints-DllybT82.js} +7 -5
  2. package/dist/checkbox.css_raw-AYtSbUtY.js +5 -0
  3. package/dist/{chip-limits-BMoO31JM.js → chip-limits-CFABydIL.js} +5 -3
  4. package/dist/{chip-strip-Cw3gyz0q.js → chip-strip-bNfLn52Z.js} +5 -3
  5. package/dist/chip.css_raw-ChfRSHLO.js +5 -0
  6. package/dist/{color-DHYrfXsX.js → color-CEYYtRX-.js} +8 -7
  7. package/dist/{css-class-BRKRzHx-.js → css-class-B6Tc_MAx.js} +2 -1
  8. package/dist/{css-size-DhHSVZJK.js → css-size-DWAPgQdT.js} +2 -1
  9. package/dist/{data-source-controller-Dbb4fd8I.js → data-source-controller-Cf_sMxEh.js} +4 -2
  10. package/dist/{data-source-controller-B_rgHCjw.js → data-source-controller-Dx6IQ2CN.js} +4 -2
  11. package/dist/{data-source-options-CP-X62Pa.js → data-source-options-Bk-UoaZV.js} +15 -10
  12. package/dist/{data-source-options-Jqj7LU3Z.js → data-source-options-QjuI73g8.js} +17 -12
  13. package/dist/{data-source-read-B4DGp6UQ.js → data-source-read-Cuqw3LcP.js} +7 -4
  14. package/dist/{data-source-read-DL88aH8t.js → data-source-read-FxqzQkk2.js} +8 -5
  15. package/dist/{decorate-DEXtNagw.js → decorate-DbYFpi8R.js} +7 -5
  16. package/dist/{element-props-CLB6yvbm.js → element-props-xvw0EB7H.js} +4 -3
  17. package/dist/{esm-Ptok4SQZ.js → esm-D0We7ndD.js} +48 -44
  18. package/dist/{excel-DopRbEMK.js → excel-BXzr3uI1.js} +192 -16
  19. package/dist/{excel-CY6zGkcx.js → excel-DtRpxmxs.js} +27 -16
  20. package/dist/{export-BiGVyxt6.js → export-B91P6J1y.js} +104 -18
  21. package/dist/export.js +103 -18
  22. package/dist/{field-icons-DELrSdqJ.js → field-icons-FmyBWa0g.js} +3 -1
  23. package/dist/{field-path-C92eGLg3.js → field-path-BabiMrrA.js} +3 -2
  24. package/dist/{filter-builder-CE4zE0V5.js → filter-builder-B6Y2mmbM.js} +7 -4
  25. package/dist/{filter-builder-Bke3qOgJ.js → filter-builder-C0T3pMx2.js} +7 -4
  26. package/dist/{filter-eval-DIfU2EAn.js → filter-eval-ChDSaAUH.js} +7 -5
  27. package/dist/{filter-odata-C1vSGZaY.js → filter-odata-Bi27XUpQ.js} +9 -6
  28. package/dist/{form-control-core-B8d7k6vk.js → form-control-core-CIdMLXMo.js} +9 -6
  29. package/dist/{form-control-core-eeRr0zLU.js → form-control-core-CRZPZ1ru.js} +9 -6
  30. package/dist/hydration-flush-DHrl4_KK.js +1014 -0
  31. package/dist/{icon-CJkTlmTb.js → icon-BM9N-jOt.js} +5 -2
  32. package/dist/{icon-dVhYJUIH.js → icon-ClxnYhBG.js} +4 -2
  33. package/dist/{import-BgJdkwBI.js → import-Dc4eXC02.js} +22 -16
  34. package/dist/import.js +22 -16
  35. package/dist/index.js +17 -16
  36. package/dist/{index.node-BIqEGehH.js → index.node-dvrNviMx.js} +26 -20
  37. package/dist/index.node.js +17 -16
  38. package/dist/input.css_raw-CGESifay.js +5 -0
  39. package/dist/{layout-var-CZnzMC0s.js → layout-var-BSBKY49k.js} +3 -2
  40. package/dist/{light-slots-BVJwyg_2.js → light-slots-4ZCjOcBg.js} +6 -4
  41. package/dist/{light-slots-DW1WgfgT.js → light-slots-DdDdZ6zs.js} +6 -4
  42. package/dist/{markdown-DfqrfOJN.js → markdown-uGlE_OfJ.js} +414 -369
  43. package/dist/mono-button-CeDB9khW.js +878 -0
  44. package/dist/mono-button.shadow-D9NdMsmH.js +790 -0
  45. package/dist/{mono-data-chart-CEv29_NS.js → mono-data-chart-ChkelNT7.js} +15 -12
  46. package/dist/{mono-data-dropdown-Wnoke6zO.js → mono-data-dropdown-DxpUUk2y.js} +5 -3
  47. package/dist/{mono-data-grid-YjR3n9Ar.js → mono-data-grid-8jmeIXUU.js} +56 -38
  48. package/dist/{mono-data-grid-CjkEqxgE.js → mono-data-grid-BHlo1IgR.js} +56 -38
  49. package/dist/{mono-element-B0kP_96P.js → mono-element-C7vCschg.js} +7 -4
  50. package/dist/{mono-event-Bi1qP9uN.js → mono-event-BPku9HpS.js} +4 -3
  51. package/dist/{mono-form-controller-5PfsU4qa.js → mono-form-controller-IYn0MuUQ.js} +7 -4
  52. package/dist/{mono-modal-controller-BMO3n3rP.js → mono-modal-controller-ClObbHUs.js} +9 -7
  53. package/dist/{mono-ui-CPV7rrdo.js → mono-ui-BwUc0L6B.js} +22 -20
  54. package/dist/{normalize-error-Gcgmgh5i.js → normalize-error-D93O4q8g.js} +26 -20
  55. package/dist/{notifier-CE4yxMUQ.js → notifier-BIrqUzRh.js} +11 -1
  56. package/dist/nuxt.js +20 -15
  57. package/dist/{popup-portal-BziRX1yG.js → popup-portal-HWhkd7oy.js} +6 -4
  58. package/dist/{popup-stack-CEEMib__.js → popup-stack-De05Y-mJ.js} +13 -10
  59. package/dist/{rate-limit-BBa2PO79.js → rate-limit-e9Jlpl5l.js} +12 -9
  60. package/dist/{reactive-Di3mTMnV.js → reactive-DFCdZbH9.js} +30 -22
  61. package/dist/{reactive-D3EERqgO.js → reactive-Dtd-esHO.js} +2 -1
  62. package/dist/search.js +5 -4
  63. package/dist/src/components/accordion/accordion-core.d.ts +42 -40
  64. package/dist/src/components/accordion/accordion-types.d.ts +50 -48
  65. package/dist/src/components/accordion/index.d.ts +3 -2
  66. package/dist/src/components/accordion/index.shadow.d.ts +4 -4
  67. package/dist/src/components/accordion/mono-accordion.d.ts +44 -40
  68. package/dist/src/components/accordion/mono-accordion.shadow.d.ts +42 -38
  69. package/dist/src/components/alert/alert-core.d.ts +30 -28
  70. package/dist/src/components/alert/alert-types.d.ts +36 -34
  71. package/dist/src/components/alert/index.d.ts +3 -2
  72. package/dist/src/components/alert/index.shadow.d.ts +4 -4
  73. package/dist/src/components/alert/mono-alert.d.ts +30 -26
  74. package/dist/src/components/alert/mono-alert.shadow.d.ts +24 -20
  75. package/dist/src/components/breadcrumb/breadcrumb-core.d.ts +42 -40
  76. package/dist/src/components/breadcrumb/breadcrumb-list-core.d.ts +31 -29
  77. package/dist/src/components/breadcrumb/breadcrumb-render.d.ts +18 -16
  78. package/dist/src/components/breadcrumb/breadcrumb-types.d.ts +89 -87
  79. package/dist/src/components/breadcrumb/breadcrumb-utils.d.ts +18 -15
  80. package/dist/src/components/breadcrumb/index.d.ts +6 -5
  81. package/dist/src/components/breadcrumb/index.shadow.d.ts +7 -7
  82. package/dist/src/components/breadcrumb/mono-breadcrumb-list.d.ts +18 -14
  83. package/dist/src/components/breadcrumb/mono-breadcrumb-list.shadow.d.ts +33 -29
  84. package/dist/src/components/breadcrumb/mono-breadcrumb.d.ts +24 -20
  85. package/dist/src/components/breadcrumb/mono-breadcrumb.shadow.d.ts +55 -51
  86. package/dist/src/components/button/button-core.d.ts +73 -71
  87. package/dist/src/components/button/button-dropdown-core.d.ts +55 -53
  88. package/dist/src/components/button/button-dropdown-types.d.ts +98 -96
  89. package/dist/src/components/button/button-types.d.ts +157 -155
  90. package/dist/src/components/button/button-utils.d.ts +7 -5
  91. package/dist/src/components/button/index.button-dropdown.d.ts +5 -3
  92. package/dist/src/components/button/index.button-dropdown.shadow.d.ts +5 -3
  93. package/dist/src/components/button/index.d.ts +4 -7
  94. package/dist/src/components/button/index.shadow.d.ts +5 -4
  95. package/dist/src/components/button/mono-button-dropdown.d.ts +24 -19
  96. package/dist/src/components/button/mono-button-dropdown.shadow.d.ts +34 -29
  97. package/dist/src/components/button/mono-button.d.ts +105 -101
  98. package/dist/src/components/button/mono-button.shadow.d.ts +42 -38
  99. package/dist/src/components/card/card-core.d.ts +59 -57
  100. package/dist/src/components/card/card-types.d.ts +91 -89
  101. package/dist/src/components/card/card-utils.d.ts +11 -9
  102. package/dist/src/components/card/index.d.ts +4 -3
  103. package/dist/src/components/card/index.shadow.d.ts +5 -5
  104. package/dist/src/components/card/mono-card.d.ts +36 -32
  105. package/dist/src/components/card/mono-card.shadow.d.ts +32 -28
  106. package/dist/src/components/chart/chart-core.d.ts +30 -28
  107. package/dist/src/components/chart/chart-odata.d.ts +17 -16
  108. package/dist/src/components/chart/chart-types.d.ts +269 -267
  109. package/dist/src/components/chart/index.d.ts +7 -7
  110. package/dist/src/components/chart/index.shadow.d.ts +7 -6
  111. package/dist/src/components/chart/mono-chart-presets.d.ts +33 -29
  112. package/dist/src/components/chart/mono-chart-presets.shadow.d.ts +33 -29
  113. package/dist/src/components/chart/mono-chart.d.ts +13 -9
  114. package/dist/src/components/chart/mono-chart.shadow.d.ts +13 -9
  115. package/dist/src/components/chart/mono-data-chart.d.ts +4 -26
  116. package/dist/src/components/checkbox/checkbox-core.d.ts +39 -37
  117. package/dist/src/components/checkbox/checkbox-types.d.ts +59 -57
  118. package/dist/src/components/checkbox/checkbox-utils.d.ts +13 -11
  119. package/dist/src/components/checkbox/index.d.ts +4 -3
  120. package/dist/src/components/checkbox/index.shadow.d.ts +5 -4
  121. package/dist/src/components/checkbox/mono-checkbox.d.ts +21 -17
  122. package/dist/src/components/checkbox/mono-checkbox.shadow.d.ts +31 -27
  123. package/dist/src/components/chip/chip-core.d.ts +42 -40
  124. package/dist/src/components/chip/chip-types.d.ts +104 -102
  125. package/dist/src/components/chip/chip-utils.d.ts +20 -18
  126. package/dist/src/components/chip/index.d.ts +5 -7
  127. package/dist/src/components/chip/index.shadow.d.ts +6 -5
  128. package/dist/src/components/chip/mono-chip.d.ts +31 -27
  129. package/dist/src/components/chip/mono-chip.shadow.d.ts +19 -15
  130. package/dist/src/components/chip/mono-status-dot.d.ts +19 -17
  131. package/dist/src/components/date/date-core.d.ts +64 -62
  132. package/dist/src/components/date/date-types.d.ts +143 -141
  133. package/dist/src/components/date/index.d.ts +3 -2
  134. package/dist/src/components/date/index.shadow.d.ts +4 -3
  135. package/dist/src/components/date/mono-date.d.ts +12 -8
  136. package/dist/src/components/date/mono-date.shadow.d.ts +21 -17
  137. package/dist/src/components/drawer/drawer-core.d.ts +75 -73
  138. package/dist/src/components/drawer/drawer-types.d.ts +109 -107
  139. package/dist/src/components/drawer/index.d.ts +3 -2
  140. package/dist/src/components/drawer/index.shadow.d.ts +4 -3
  141. package/dist/src/components/drawer/mono-drawer.d.ts +32 -28
  142. package/dist/src/components/drawer/mono-drawer.shadow.d.ts +34 -31
  143. package/dist/src/components/dropdown/dropdown-core.d.ts +31 -29
  144. package/dist/src/components/dropdown/dropdown-types.d.ts +62 -60
  145. package/dist/src/components/dropdown/index.d.ts +3 -2
  146. package/dist/src/components/dropdown/index.shadow.d.ts +4 -3
  147. package/dist/src/components/dropdown/mono-dropdown.d.ts +23 -19
  148. package/dist/src/components/dropdown/mono-dropdown.shadow.d.ts +19 -15
  149. package/dist/src/components/dropdown-table/dropdown-table-core.d.ts +53 -51
  150. package/dist/src/components/dropdown-table/dropdown-table-types.d.ts +218 -216
  151. package/dist/src/components/dropdown-table/index.d.ts +5 -4
  152. package/dist/src/components/dropdown-table/index.shadow.d.ts +6 -5
  153. package/dist/src/components/dropdown-table/mono-data-dropdown.d.ts +119 -129
  154. package/dist/src/components/dropdown-table/mono-dropdown-table.d.ts +20 -16
  155. package/dist/src/components/dropdown-table/mono-dropdown-table.shadow.d.ts +15 -11
  156. package/dist/src/components/file-upload/file-upload-core.d.ts +44 -42
  157. package/dist/src/components/file-upload/file-upload-types.d.ts +123 -121
  158. package/dist/src/components/file-upload/file-upload-utils.d.ts +7 -4
  159. package/dist/src/components/file-upload/index.d.ts +4 -3
  160. package/dist/src/components/file-upload/index.shadow.d.ts +5 -4
  161. package/dist/src/components/file-upload/mono-file-upload.d.ts +20 -16
  162. package/dist/src/components/file-upload/mono-file-upload.shadow.d.ts +34 -30
  163. package/dist/src/components/filter/filter-builder-core.d.ts +17 -15
  164. package/dist/src/components/filter/filter-builder.d.ts +4 -22
  165. package/dist/src/components/filter/filter-odata.d.ts +3 -1
  166. package/dist/src/components/filter/filter-operators.d.ts +3 -1
  167. package/dist/src/components/filter/filter-types.d.ts +172 -170
  168. package/dist/src/components/filter/index.d.ts +6 -5
  169. package/dist/src/components/filter/index.shadow.d.ts +7 -6
  170. package/dist/src/components/filter/mono-filter-builder.d.ts +13 -10
  171. package/dist/src/components/filter/mono-filter-builder.shadow.d.ts +10 -7
  172. package/dist/src/components/form/form-control-core.d.ts +14 -12
  173. package/dist/src/components/form/form-rules.d.ts +7 -5
  174. package/dist/src/components/form/form-types.d.ts +214 -214
  175. package/dist/src/components/form/index.d.ts +5 -5
  176. package/dist/src/components/form/mono-form-controller.d.ts +4 -15
  177. package/dist/src/components/input/index.d.ts +5 -5
  178. package/dist/src/components/input/index.shadow.d.ts +6 -7
  179. package/dist/src/components/input/input-core.d.ts +73 -71
  180. package/dist/src/components/input/input-format.d.ts +22 -20
  181. package/dist/src/components/input/input-types.d.ts +167 -165
  182. package/dist/src/components/input/input-utils.d.ts +7 -5
  183. package/dist/src/components/input/mono-input.d.ts +35 -31
  184. package/dist/src/components/input/mono-input.shadow.d.ts +17 -13
  185. package/dist/src/components/menu/index.d.ts +7 -5
  186. package/dist/src/components/menu/index.shadow.d.ts +7 -6
  187. package/dist/src/components/menu/menu-core.d.ts +47 -45
  188. package/dist/src/components/menu/menu-render.d.ts +42 -40
  189. package/dist/src/components/menu/menu-types.d.ts +132 -130
  190. package/dist/src/components/menu/menu-utils.d.ts +16 -13
  191. package/dist/src/components/menu/mono-menu-list.d.ts +116 -114
  192. package/dist/src/components/menu/mono-menu.d.ts +30 -26
  193. package/dist/src/components/menu/mono-menu.shadow.d.ts +22 -18
  194. package/dist/src/components/modal/index.d.ts +5 -3
  195. package/dist/src/components/modal/index.shadow.d.ts +6 -4
  196. package/dist/src/components/modal/modal-core.d.ts +81 -79
  197. package/dist/src/components/modal/modal-types.d.ts +223 -221
  198. package/dist/src/components/modal/mono-modal-controller.d.ts +4 -3
  199. package/dist/src/components/modal/mono-modal.d.ts +32 -28
  200. package/dist/src/components/modal/mono-modal.shadow.d.ts +38 -35
  201. package/dist/src/components/nav/index.d.ts +4 -3
  202. package/dist/src/components/nav/index.shadow.d.ts +5 -5
  203. package/dist/src/components/nav/mono-nav.d.ts +28 -24
  204. package/dist/src/components/nav/mono-nav.shadow.d.ts +10 -7
  205. package/dist/src/components/nav/nav-core.d.ts +16 -14
  206. package/dist/src/components/nav/nav-types.d.ts +23 -22
  207. package/dist/src/components/nav/nav-utils.d.ts +10 -8
  208. package/dist/src/components/radio/index.d.ts +4 -3
  209. package/dist/src/components/radio/index.shadow.d.ts +5 -4
  210. package/dist/src/components/radio/mono-radio.d.ts +19 -15
  211. package/dist/src/components/radio/mono-radio.shadow.d.ts +22 -18
  212. package/dist/src/components/radio/radio-core.d.ts +31 -29
  213. package/dist/src/components/radio/radio-types.d.ts +48 -46
  214. package/dist/src/components/radio/radio-utils.d.ts +5 -3
  215. package/dist/src/components/rich-text-editor/index.d.ts +5 -4
  216. package/dist/src/components/rich-text-editor/index.shadow.d.ts +6 -5
  217. package/dist/src/components/rich-text-editor/mono-rich-text-editor.d.ts +19 -15
  218. package/dist/src/components/rich-text-editor/mono-rich-text-editor.shadow.d.ts +22 -19
  219. package/dist/src/components/rich-text-editor/rich-text-editor-core.d.ts +61 -59
  220. package/dist/src/components/rich-text-editor/rich-text-editor-loader.d.ts +2 -0
  221. package/dist/src/components/rich-text-editor/rich-text-editor-toolbar.d.ts +5 -3
  222. package/dist/src/components/rich-text-editor/rich-text-editor-types.d.ts +179 -177
  223. package/dist/src/components/select/index.d.ts +4 -3
  224. package/dist/src/components/select/index.shadow.d.ts +5 -4
  225. package/dist/src/components/select/mono-select.d.ts +58 -54
  226. package/dist/src/components/select/mono-select.shadow.d.ts +30 -27
  227. package/dist/src/components/select/select-core.d.ts +82 -80
  228. package/dist/src/components/select/select-types.d.ts +228 -227
  229. package/dist/src/components/select/select-utils.d.ts +7 -5
  230. package/dist/src/components/sidebar/index.d.ts +4 -3
  231. package/dist/src/components/sidebar/index.shadow.d.ts +5 -5
  232. package/dist/src/components/sidebar/mono-sidebar.d.ts +22 -18
  233. package/dist/src/components/sidebar/mono-sidebar.shadow.d.ts +11 -8
  234. package/dist/src/components/sidebar/sidebar-core.d.ts +33 -31
  235. package/dist/src/components/sidebar/sidebar-types.d.ts +77 -75
  236. package/dist/src/components/sidebar/sidebar-utils.d.ts +28 -26
  237. package/dist/src/components/switch/index.d.ts +4 -3
  238. package/dist/src/components/switch/index.shadow.d.ts +5 -4
  239. package/dist/src/components/switch/mono-switch.d.ts +19 -15
  240. package/dist/src/components/switch/mono-switch.shadow.d.ts +23 -19
  241. package/dist/src/components/switch/switch-core.d.ts +35 -33
  242. package/dist/src/components/switch/switch-types.d.ts +55 -53
  243. package/dist/src/components/switch/switch-utils.d.ts +5 -3
  244. package/dist/src/components/table/array-source.d.ts +31 -29
  245. package/dist/src/components/table/date-filter-tree.d.ts +25 -23
  246. package/dist/src/components/table/grouping.d.ts +22 -20
  247. package/dist/src/components/table/index.d.ts +28 -32
  248. package/dist/src/components/table/index.shadow.d.ts +34 -46
  249. package/dist/src/components/table/mono-data-grid.d.ts +1447 -1456
  250. package/dist/src/components/table/mono-table-checkbox-core.d.ts +34 -32
  251. package/dist/src/components/table/mono-table-checkbox.d.ts +12 -8
  252. package/dist/src/components/table/mono-table-checkbox.shadow.d.ts +16 -12
  253. package/dist/src/components/table/mono-table-detail-core.d.ts +29 -27
  254. package/dist/src/components/table/mono-table-detail.d.ts +12 -8
  255. package/dist/src/components/table/mono-table-detail.shadow.d.ts +13 -9
  256. package/dist/src/components/table/mono-table-empty-core.d.ts +24 -22
  257. package/dist/src/components/table/mono-table-empty.d.ts +17 -13
  258. package/dist/src/components/table/mono-table-empty.shadow.d.ts +22 -18
  259. package/dist/src/components/table/mono-table-error-core.d.ts +24 -22
  260. package/dist/src/components/table/mono-table-error.d.ts +12 -8
  261. package/dist/src/components/table/mono-table-error.shadow.d.ts +15 -11
  262. package/dist/src/components/table/mono-table-info-core.d.ts +6 -4
  263. package/dist/src/components/table/mono-table-info.d.ts +12 -8
  264. package/dist/src/components/table/mono-table-info.shadow.d.ts +9 -5
  265. package/dist/src/components/table/mono-table-loading-core.d.ts +7 -5
  266. package/dist/src/components/table/mono-table-loading.d.ts +12 -8
  267. package/dist/src/components/table/mono-table-loading.shadow.d.ts +9 -5
  268. package/dist/src/components/table/mono-table-page-size-core.d.ts +7 -5
  269. package/dist/src/components/table/mono-table-page-size.d.ts +12 -8
  270. package/dist/src/components/table/mono-table-page-size.shadow.d.ts +9 -5
  271. package/dist/src/components/table/mono-table-paging-core.d.ts +16 -14
  272. package/dist/src/components/table/mono-table-paging-group-core.d.ts +10 -8
  273. package/dist/src/components/table/mono-table-paging-group.d.ts +12 -8
  274. package/dist/src/components/table/mono-table-paging-group.shadow.d.ts +9 -5
  275. package/dist/src/components/table/mono-table-paging.d.ts +12 -8
  276. package/dist/src/components/table/mono-table-paging.shadow.d.ts +9 -5
  277. package/dist/src/components/table/mono-table-search-core.d.ts +51 -49
  278. package/dist/src/components/table/mono-table-search.d.ts +25 -22
  279. package/dist/src/components/table/mono-table-search.shadow.d.ts +12 -9
  280. package/dist/src/components/table/mono-table-sort-core.d.ts +16 -14
  281. package/dist/src/components/table/mono-table-sort.d.ts +21 -18
  282. package/dist/src/components/table/mono-table-sort.shadow.d.ts +11 -8
  283. package/dist/src/components/table/mono-table-summary-core.d.ts +9 -7
  284. package/dist/src/components/table/mono-table-summary.d.ts +12 -8
  285. package/dist/src/components/table/mono-table-summary.shadow.d.ts +9 -5
  286. package/dist/src/components/table/mono-table-th-core.d.ts +23 -21
  287. package/dist/src/components/table/mono-table-th.d.ts +21 -18
  288. package/dist/src/components/table/mono-table-th.shadow.d.ts +11 -8
  289. package/dist/src/components/table/store-group-source.d.ts +14 -12
  290. package/dist/src/components/table/table-controller-core.d.ts +17 -15
  291. package/dist/src/components/table/table-filter-icons.d.ts +3 -1
  292. package/dist/src/components/table/table-menu-core.d.ts +40 -38
  293. package/dist/src/components/table/table-overlay.d.ts +43 -41
  294. package/dist/src/components/table/table-sort-icons.d.ts +4 -2
  295. package/dist/src/components/table/table-sort-utils.d.ts +3 -1
  296. package/dist/src/components/table/table-types.d.ts +391 -400
  297. package/dist/src/components/tabs/index.d.ts +3 -2
  298. package/dist/src/components/tabs/index.shadow.d.ts +4 -3
  299. package/dist/src/components/tabs/mono-tabs.d.ts +21 -17
  300. package/dist/src/components/tabs/mono-tabs.shadow.d.ts +21 -17
  301. package/dist/src/components/tabs/tabs-core.d.ts +36 -34
  302. package/dist/src/components/tabs/tabs-types.d.ts +48 -46
  303. package/dist/src/components/tag-input/index.d.ts +5 -3
  304. package/dist/src/components/tag-input/index.shadow.d.ts +6 -4
  305. package/dist/src/components/tag-input/mono-tag-input.d.ts +56 -52
  306. package/dist/src/components/tag-input/mono-tag-input.shadow.d.ts +41 -38
  307. package/dist/src/components/tag-input/tag-input-core.d.ts +95 -93
  308. package/dist/src/components/tag-input/tag-input-types.d.ts +343 -346
  309. package/dist/src/components/tag-input/tag-input-utils.d.ts +7 -5
  310. package/dist/src/components/textarea/index.d.ts +4 -3
  311. package/dist/src/components/textarea/index.shadow.d.ts +5 -4
  312. package/dist/src/components/textarea/mono-textarea.d.ts +19 -15
  313. package/dist/src/components/textarea/mono-textarea.shadow.d.ts +19 -16
  314. package/dist/src/components/textarea/textarea-core.d.ts +48 -46
  315. package/dist/src/components/textarea/textarea-types.d.ts +120 -118
  316. package/dist/src/components/textarea/textarea-utils.d.ts +7 -5
  317. package/dist/src/components/tooltip/control-tooltip.d.ts +3 -1
  318. package/dist/src/components/tooltip/index.d.ts +6 -5
  319. package/dist/src/components/tooltip/tooltip-config.d.ts +17 -15
  320. package/dist/src/components/tooltip/tooltip-declarative.d.ts +3 -1
  321. package/dist/src/components/tooltip/tooltip-loader.d.ts +2 -0
  322. package/dist/src/components/tooltip/tooltip-types.d.ts +74 -72
  323. package/dist/src/composables/breakpoints.d.ts +9 -7
  324. package/dist/src/composables/chip-limits.d.ts +12 -10
  325. package/dist/src/composables/chip-strip.d.ts +91 -89
  326. package/dist/src/composables/color.d.ts +6 -4
  327. package/dist/src/composables/css-class.d.ts +4 -2
  328. package/dist/src/composables/css-size.d.ts +9 -7
  329. package/dist/src/composables/data-source-controller.d.ts +90 -88
  330. package/dist/src/composables/element-props.d.ts +3 -3
  331. package/dist/src/composables/field-icons.d.ts +3 -1
  332. package/dist/src/composables/hybird-prop.d.ts +10 -8
  333. package/dist/src/composables/hydration-flush.d.ts +16 -14
  334. package/dist/src/composables/icon.d.ts +3 -1
  335. package/dist/src/composables/layout-var.d.ts +2 -0
  336. package/dist/src/composables/light-slots.d.ts +34 -32
  337. package/dist/src/composables/mdi-glyphs.d.ts +2 -0
  338. package/dist/src/composables/mono-element.d.ts +3 -1
  339. package/dist/src/composables/mono-event.d.ts +15 -13
  340. package/dist/src/composables/mono-pending.d.ts +4 -2
  341. package/dist/src/composables/mono-skeleton.d.ts +100 -98
  342. package/dist/src/composables/mono-ui.d.ts +17 -18
  343. package/dist/src/composables/notifier.d.ts +20 -18
  344. package/dist/src/composables/popup-portal.d.ts +177 -175
  345. package/dist/src/composables/popup-stack.d.ts +36 -34
  346. package/dist/src/composables/rate-limit.d.ts +33 -31
  347. package/dist/src/composables/reactive.d.ts +3 -1
  348. package/dist/src/composables/shadow-css.d.ts +17 -15
  349. package/dist/src/composables/visibility.d.ts +6 -4
  350. package/dist/src/data/theme/index.d.ts +9 -7
  351. package/dist/src/data/theme/presets.d.ts +64 -62
  352. package/dist/src/entries/index.d.ts +36 -1
  353. package/dist/src/entries/index.node.d.ts +34 -41
  354. package/dist/src/entries/search.d.ts +2 -2
  355. package/dist/src/export/detail.d.ts +14 -12
  356. package/dist/src/export/download.d.ts +2 -0
  357. package/dist/src/export/excel/index.d.ts +13 -11
  358. package/dist/src/export/excel/nodes.d.ts +95 -93
  359. package/dist/src/export/expression.d.ts +3 -1
  360. package/dist/src/export/helpers.d.ts +3 -1
  361. package/dist/src/export/index.d.ts +6 -4
  362. package/dist/src/export/markdown.d.ts +19 -17
  363. package/dist/src/export/resolve-data.d.ts +3 -1
  364. package/dist/src/export/sentinel.d.ts +32 -30
  365. package/dist/src/export/sheet-name.d.ts +7 -5
  366. package/dist/src/export/styles.d.ts +13 -11
  367. package/dist/src/export/template.d.ts +3 -1
  368. package/dist/src/export/types.d.ts +224 -222
  369. package/dist/src/import/coerce.d.ts +5 -3
  370. package/dist/src/import/index.d.ts +12 -10
  371. package/dist/src/import/match.d.ts +20 -18
  372. package/dist/src/import/parse.d.ts +5 -3
  373. package/dist/src/import/types.d.ts +125 -123
  374. package/dist/src/nuxt/index.d.ts +92 -90
  375. package/dist/src/search/data-search.d.ts +92 -90
  376. package/dist/src/search/field-path.d.ts +10 -8
  377. package/dist/src/search/filter-eval.d.ts +2 -0
  378. package/dist/src/search/index.d.ts +6 -22
  379. package/dist/src/search/odata-search.d.ts +9 -7
  380. package/dist/src/search/search-expr.d.ts +16 -14
  381. package/dist/src/utils/data-source-apply.d.ts +11 -9
  382. package/dist/src/utils/data-source-options.d.ts +37 -35
  383. package/dist/src/utils/data-source-read.d.ts +40 -54
  384. package/dist/src/utils/data-source-summary.d.ts +8 -7
  385. package/dist/src/utils/normalize-error.d.ts +16 -14
  386. package/dist/src/vite/index.d.ts +34 -34
  387. package/dist/src/vite/mono-client-only.d.ts +34 -32
  388. package/dist/src/vite/mono-ssr-stub.d.ts +8 -6
  389. package/dist/src/vite/shadow-manifest.d.ts +2 -0
  390. package/dist/{styles-BIJ31TM4.js → styles-D-ergrfR.js} +417 -207
  391. package/dist/{tooltip-DQqNpqk2.js → tooltip-FCMRUSLi.js} +32 -25
  392. package/dist/tooltip.js +3 -2
  393. package/dist/ui/accordion.js +16 -12
  394. package/dist/ui/alert.js +21 -14
  395. package/dist/ui/breadcrumb.js +28 -18
  396. package/dist/ui/button-dropdown.js +18 -14
  397. package/dist/ui/button.js +4 -2
  398. package/dist/ui/card.js +17 -12
  399. package/dist/ui/chart.js +31 -26
  400. package/dist/ui/checkbox.js +17 -12
  401. package/dist/ui/chip.js +19 -12
  402. package/dist/ui/date.js +19 -15
  403. package/dist/ui/drawer.js +26 -20
  404. package/dist/ui/dropdown-table.js +39 -30
  405. package/dist/ui/dropdown.js +19 -15
  406. package/dist/ui/file-upload.js +22 -17
  407. package/dist/ui/filter.js +18 -14
  408. package/dist/ui/form.js +4 -3
  409. package/dist/ui/index.css +1073 -2197
  410. package/dist/ui/input.js +24 -17
  411. package/dist/ui/menu.js +32 -20
  412. package/dist/ui/modal.js +33 -26
  413. package/dist/ui/nav.js +21 -15
  414. package/dist/ui/radio.js +17 -12
  415. package/dist/ui/rich-text-editor.js +34 -28
  416. package/dist/ui/select.js +32 -26
  417. package/dist/ui/shadow/accordion.js +13 -9
  418. package/dist/ui/shadow/alert.js +13 -9
  419. package/dist/ui/shadow/breadcrumb.js +23 -14
  420. package/dist/ui/shadow/button-dropdown.js +17 -13
  421. package/dist/ui/shadow/button.js +4 -2
  422. package/dist/ui/shadow/card.js +15 -10
  423. package/dist/ui/shadow/chart.js +36 -29
  424. package/dist/ui/shadow/checkbox.js +13 -9
  425. package/dist/ui/shadow/chip.js +16 -10
  426. package/dist/ui/shadow/date.js +19 -12
  427. package/dist/ui/shadow/drawer.js +22 -16
  428. package/dist/ui/shadow/dropdown-table.js +39 -28
  429. package/dist/ui/shadow/dropdown.js +15 -11
  430. package/dist/ui/shadow/file-upload.js +26 -19
  431. package/dist/ui/shadow/filter.js +17 -13
  432. package/dist/ui/shadow/input.js +20 -14
  433. package/dist/ui/shadow/menu.js +24 -14
  434. package/dist/ui/shadow/modal.js +35 -27
  435. package/dist/ui/shadow/nav.js +18 -12
  436. package/dist/ui/shadow/radio.js +15 -10
  437. package/dist/ui/shadow/rich-text-editor.js +32 -26
  438. package/dist/ui/shadow/select.js +30 -24
  439. package/dist/ui/shadow/sidebar.js +23 -16
  440. package/dist/ui/shadow/switch.js +15 -10
  441. package/dist/ui/shadow/table.js +123 -84
  442. package/dist/ui/shadow/tabs.js +12 -8
  443. package/dist/ui/shadow/tag-input.js +37 -31
  444. package/dist/ui/shadow/textarea.js +17 -12
  445. package/dist/ui/sidebar.js +27 -20
  446. package/dist/ui/switch.js +17 -12
  447. package/dist/ui/table.js +129 -87
  448. package/dist/ui/tabs.js +15 -11
  449. package/dist/ui/tag-input.js +33 -27
  450. package/dist/ui/textarea.js +19 -14
  451. package/dist/{vite-C5iUK7so.js → vite-DcyRlTTf.js} +17 -9
  452. package/dist/vite.js +3 -2
  453. package/package.json +15 -14
  454. package/dist/checkbox-Cqpie9Ap.js +0 -4
  455. package/dist/chip-DBUUa2eB.js +0 -4
  456. package/dist/data/theme/presets.json.d.ts +0 -140
  457. package/dist/export.d.ts +0 -1
  458. package/dist/hydration-flush-RB5Tz5nl.js +0 -1001
  459. package/dist/import.d.ts +0 -1
  460. package/dist/index.d.ts +0 -1
  461. package/dist/index.node.d.ts +0 -1
  462. package/dist/input-zGOULADt.js +0 -4
  463. package/dist/mono-button-simcTQdW.js +0 -873
  464. package/dist/mono-button.shadow-B_rKOY9N.js +0 -784
  465. package/dist/nuxt.d.ts +0 -1
  466. package/dist/search.d.ts +0 -1
  467. package/dist/tooltip.d.ts +0 -1
  468. package/dist/ui/accordion.d.ts +0 -1
  469. package/dist/ui/alert.d.ts +0 -1
  470. package/dist/ui/breadcrumb.d.ts +0 -1
  471. package/dist/ui/button-dropdown.d.ts +0 -1
  472. package/dist/ui/button.d.ts +0 -1
  473. package/dist/ui/card.d.ts +0 -1
  474. package/dist/ui/chart.d.ts +0 -1
  475. package/dist/ui/checkbox.d.ts +0 -1
  476. package/dist/ui/chip.d.ts +0 -1
  477. package/dist/ui/date.d.ts +0 -1
  478. package/dist/ui/drawer.d.ts +0 -1
  479. package/dist/ui/dropdown-table.d.ts +0 -1
  480. package/dist/ui/dropdown.d.ts +0 -1
  481. package/dist/ui/file-upload.d.ts +0 -1
  482. package/dist/ui/filter.d.ts +0 -1
  483. package/dist/ui/form.d.ts +0 -1
  484. package/dist/ui/input.d.ts +0 -1
  485. package/dist/ui/menu.d.ts +0 -1
  486. package/dist/ui/modal.d.ts +0 -1
  487. package/dist/ui/nav.d.ts +0 -1
  488. package/dist/ui/radio.d.ts +0 -1
  489. package/dist/ui/rich-text-editor.d.ts +0 -1
  490. package/dist/ui/select.d.ts +0 -1
  491. package/dist/ui/sidebar.d.ts +0 -1
  492. package/dist/ui/switch.d.ts +0 -1
  493. package/dist/ui/table.d.ts +0 -1
  494. package/dist/ui/tabs.d.ts +0 -1
  495. package/dist/ui/tag-input.d.ts +0 -1
  496. package/dist/ui/textarea.d.ts +0 -1
  497. package/dist/vite.d.ts +0 -1
@@ -1,18 +1,19 @@
1
- import { a as __decorate, f as customElement, i as withShadowUtilityStyles, l as defineHybridPropAliases, o as arrayHasChanged, r as toShadowCss, s as booleanStringConverter, t as flushSsrHydration } from "../../hydration-flush-RB5Tz5nl.js";
2
- import { t as dispatchMonoEvent } from "../../mono-event-Bi1qP9uN.js";
3
- import { n as toCssSize, t as buildSizeStyle } from "../../css-size-DhHSVZJK.js";
4
- import { t as MonoFormControlCore } from "../../form-control-core-B8d7k6vk.js";
5
- import { t as PopupPortalController } from "../../popup-portal-BziRX1yG.js";
6
- import { a as rateLimitHasChanged } from "../../rate-limit-BBa2PO79.js";
7
- import { t as getFieldValue } from "../../field-path-C92eGLg3.js";
8
- import { _ as searchRowPredicate, a as describeError, c as errorTitle, g as resolveSearchFields, m as MonoSourceSearch, n as unwrapReactive, s as errorText } from "../../reactive-Di3mTMnV.js";
9
- import { t as LateSlotWatcher } from "../../light-slots-BVJwyg_2.js";
10
- import { a as spinnerIcon, i as refreshIcon } from "../../field-icons-DELrSdqJ.js";
11
- import { t as DataSourceController } from "../../data-source-controller-Dbb4fd8I.js";
1
+ import { a as __decorate, f as customElement, i as withShadowUtilityStyles, l as defineHybridPropAliases, o as arrayHasChanged, r as toShadowCss, s as booleanStringConverter, t as flushSsrHydration } from "../../hydration-flush-DHrl4_KK.js";
2
+ import { t as dispatchMonoEvent } from "../../mono-event-BPku9HpS.js";
3
+ import { n as toCssSize, t as buildSizeStyle } from "../../css-size-DWAPgQdT.js";
4
+ import { t as MonoFormControlCore } from "../../form-control-core-CIdMLXMo.js";
5
+ import { t as PopupPortalController } from "../../popup-portal-HWhkd7oy.js";
6
+ import { a as rateLimitHasChanged } from "../../rate-limit-e9Jlpl5l.js";
7
+ import { t as getFieldValue } from "../../field-path-BabiMrrA.js";
8
+ import { _ as searchRowPredicate, a as describeError, c as errorTitle, g as resolveSearchFields, m as MonoSourceSearch, n as unwrapReactive, s as errorText } from "../../reactive-DFCdZbH9.js";
9
+ import { t as LateSlotWatcher } from "../../light-slots-4ZCjOcBg.js";
10
+ import { a as spinnerIcon, i as refreshIcon } from "../../field-icons-FmyBWa0g.js";
11
+ import { t as DataSourceController } from "../../data-source-controller-Cf_sMxEh.js";
12
12
  import { LitElement, html, isServer, nothing, unsafeCSS } from "lit";
13
13
  import { property, query, state } from "lit/decorators.js";
14
14
  import { ifDefined } from "lit/directives/if-defined.js";
15
15
  import { styleMap } from "lit/directives/style-map.js";
16
+
16
17
  //#region src/components/select/select-core.ts
17
18
  /**
18
19
  * `MonoSelectCore` — render-mode-agnostic logic for `mono-select` (props, hybrid
@@ -25,7 +26,7 @@ import { styleMap } from "lit/directives/style-map.js";
25
26
  * `<slot>` + a `firstUpdated` scan), and the `_slotOutlet` / `renderIcon` hooks.
26
27
  * The shared `_has*SlotState` `@state` fields back both strategies.
27
28
  */
28
- var MonoSelectCore = (superClass) => {
29
+ const MonoSelectCore = (superClass) => {
29
30
  class MonoSelectCoreClass extends MonoFormControlCore(superClass) {
30
31
  constructor(...args) {
31
32
  super(...args);
@@ -1298,16 +1299,17 @@ var MonoSelectCore = (superClass) => {
1298
1299
  _renderOption(item, index = -1) {
1299
1300
  const selected = this._isSameValue(this._resolveItemValue(item), this.value);
1300
1301
  const active = index >= 0 && index === this._activeIndex;
1301
- return html`
1302
- <button
1303
- type="button"
1304
- role="option"
1305
- class=${[
1302
+ const itemClass = [
1306
1303
  this._cls("mono-select-item", "item"),
1307
1304
  active ? `active ${this.cssClass?.itemActive ?? ""}` : "",
1308
1305
  selected ? `selected ${this.cssClass?.itemSelected ?? ""}` : "",
1309
1306
  item.disabled ? `disabled ${this.cssClass?.itemDisabled ?? ""}` : ""
1310
- ].filter(Boolean).join(" ")}
1307
+ ].filter(Boolean).join(" ");
1308
+ return html`
1309
+ <button
1310
+ type="button"
1311
+ role="option"
1312
+ class=${itemClass}
1311
1313
  mono-item
1312
1314
  ?mono-active=${active}
1313
1315
  ?mono-selected=${selected}
@@ -2022,23 +2024,25 @@ var MonoSelectCore = (superClass) => {
2022
2024
  })], MonoSelectCoreClass.prototype, "maxHeight", void 0);
2023
2025
  return MonoSelectCoreClass;
2024
2026
  };
2027
+
2025
2028
  //#endregion
2026
- //#region src/components/select/select.css?raw
2027
- var select_default = "/* =========================================================================\r\n mono-select — a port of Basecoat's `.select` (the custom one, `.select:not(select)`)\r\n and `.combobox` (basecoat-css@1.0.2, vega style), on the `.field` / `.label`\r\n chrome mono-input already ported.\r\n\r\n Styled by ATTRIBUTE, like Basecoat (`.select > button`, `[role='option'].active`)\r\n — and the attributes mirror the element's props one for one, so hand-written\r\n markup reads like the Lit / Vue tag:\r\n\r\n <mono-select size=\"sm\" color=\"danger\" variant=\"filled\" label=\"Fruit\">\r\n <div mono-select mono-size=\"sm\" mono-color=\"danger\" mono-variant=\"filled\">\r\n <label mono-label>Fruit</label>\r\n <button mono-trigger><span mono-value mono-placeholder>Pick</span>\r\n <span mono-actions><span mono-arrow>…</span></span></button>\r\n <div mono-dropdown><div mono-dropdown-body><button mono-item>…</button></div></div>\r\n </div>\r\n\r\n An absent attribute is the prop's default (`:not([mono-size])` = md,\r\n `:not([mono-color])` = primary, `:not([mono-variant])` = outlined). The element\r\n renders these attributes on its wrapper (both builds) plus `mono-open` while\r\n the panel is open; the old classes (`.mono-select.sm.open`) are still emitted\r\n as inert hooks for consumer CSS until 2.0 but no rule here reads them.\r\n\r\n Selector map (ours ≡ upstream):\r\n [mono-select] ≡ .field (gap-3, as margins — see the root rule) + .select (position: relative)\r\n [mono-select] > [mono-label] ≡ .field > label / .label\r\n [mono-select] > [mono-trigger] ≡ .select > button (h-9 rounded-md border-input ps-2.5 pe-2 text-sm shadow-xs)\r\n [mono-select][mono-searchable] > [mono-trigger] ≡ .combobox > input[role='combobox'] (same box; the input sits inside it)\r\n [mono-trigger] > [mono-value] ≡ .select > button > span (flex-1 truncate text-start)\r\n [mono-trigger] > [mono-native] ≡ EXTENSION — a plain <select> may stand in for the value + panel (appearance: none)\r\n [mono-actions] > [mono-arrow] > [mono-icon] ≡ .select > button > svg (size-4 text-muted-foreground)\r\n [mono-actions] > [mono-clear] ≡ .combobox [data-clear] (size-6, painted as .btn[data-variant='ghost'])\r\n [mono-dropdown] ≡ .select [data-popover] (bg-popover ring-1 ring-foreground/10 rounded-md shadow-md)\r\n [mono-dropdown-body] ≡ .combobox [role='listbox'] (max-h-72 overflow-y-auto p-1 scroll-py-1)\r\n [mono-item] ≡ .select [role='option'] (gap-2 rounded-sm py-1.5 ps-2 pe-8 text-sm)\r\n [mono-item][mono-active] / :hover ≡ [role='option'].active (bg-muted text-foreground)\r\n [mono-item][mono-selected] ≡ [role='option'][aria-selected='true'] (the --check-icon at the end)\r\n [mono-group] ≡ .select [role='heading'] (px-2 py-1.5 text-xs text-muted-foreground)\r\n [mono-empty-row] ≡ .select [role='listbox']::before (py-6 text-center text-sm)\r\n [mono-load-more] ≡ EXTENSION (an option-shaped ghost button)\r\n [mono-message-wrap] > [mono-message] ≡ .field > p / .field [role='alert']\r\n [mono-validation-state=\"invalid\"] ≡ .select > button[aria-invalid='true']\r\n [mono-validation-state=\"valid|warning\"] ≡ EXTENSION (the invalid pattern in --success / --warning)\r\n [mono-size=\"xs|sm|lg|xl|xxl\"] ≡ EXTENSION (Basecoat has only data-size=sm; the ladder is --mono-control-height-*)\r\n [mono-variant=\"filled\"] ≡ EXTENSION (luma's .select > button: border-transparent bg-input/50)\r\n [mono-variant=\"underlined\"] ≡ EXTENSION (sera's: rounded-none border-b-input px-0, no ring)\r\n\r\n Inner parts are attributes too: [mono-label] (+ [mono-required-mark]),\r\n [mono-trigger], [mono-value] (+ [mono-placeholder]), [mono-search-field],\r\n [mono-native], [mono-actions], [mono-clear], [mono-arrow], [mono-icon],\r\n [mono-dropdown], [mono-dropdown-body], [mono-item] (+ [mono-active] /\r\n [mono-selected] / [mono-disabled]), [mono-group] (+ [mono-sticky],\r\n [mono-level=\"n\"]), [mono-empty-row], [mono-load-more] (+ [mono-loading]),\r\n [mono-list-slot], [mono-message-wrap] > [mono-message=\"helper|valid|invalid|warning\"].\r\n The shadow build marks an unassigned slot wrapper [mono-empty].\r\n\r\n THE PANEL IS PORTALED. The light build moves [mono-dropdown] into a\r\n `<div data-mono-popup-portal>` under <body> while open (composables/popup-\r\n portal.ts), and the portal mirrors the wrapper's class AND its mono-*\r\n attributes — so `[mono-select] > [mono-dropdown]` keeps matching there and\r\n the `--_mono-select-*` resolvers declared on `[mono-select]` re-resolve on\r\n the portal. Nothing here may rely on the panel being inside the trigger's\r\n host, and every option rule is scoped under `[mono-select]`.\r\n\r\n Values are copied from the compiled vendor sheet (vendor/basecoat/basecoat-\r\n vega.cdn.css) through the token layer; `dark:` variants travel as\r\n `--mono-mode-*` tokens (a selector cannot cross a shadow boundary; an\r\n inherited custom property can). FLAVORS set the `--mono-select-*` knobs read\r\n below — the same set as mono-input (`--mono-select-outline-*` for the outlined\r\n variant alone) plus `--mono-select-dropdown-{radius,padding,shadow,ring}`,\r\n `--mono-select-option-{radius,padding-x,padding-y,font-size,line-height,gap,font-weight}`,\r\n `--mono-select-group-*`, `--mono-select-icon-size`. Every fallback here is vega's\r\n value (`node scripts/basecoat-styles.mjs --varying \"^(\\.select:not\\(select\\)|\\.combobox)\"`).\r\n ========================================================================= */\r\n\r\nmono-select {\r\n display: block;\r\n}\r\n\r\n[mono-select] {\r\n /* ── palette: each slot is a public knob over a Basecoat token ─────────── */\r\n --_mono-select-text: var(--mono-select-color, var(--mono-select-text, var(--foreground)));\r\n --_mono-select-placeholder: var(--mono-select-placeholder, var(--muted-foreground));\r\n --_mono-select-muted: var(--mono-select-muted, var(--muted-foreground));\r\n --_mono-select-primary: var(--mono-select-primary, var(--ring));\r\n --_mono-select-secondary: var(--mono-select-secondary, var(--muted-foreground));\r\n --_mono-select-success: var(--mono-select-success, var(--success));\r\n --_mono-select-danger: var(--mono-select-danger, var(--destructive));\r\n --_mono-select-warning: var(--mono-select-warning, var(--warning));\r\n --_mono-select-info: var(--mono-select-info, var(--info));\r\n --_mono-select-teal: var(--mono-select-teal, var(--teal));\r\n --_mono-select-purple: var(--mono-select-purple, var(--purple));\r\n --_mono-select-neutral: var(--mono-select-neutral, var(--neutral));\r\n --_mono-select-dark: var(--mono-select-dark, var(--dark));\r\n --_mono-select-valid: var(--mono-select-valid, var(--success));\r\n --_mono-select-invalid: var(--mono-select-invalid, var(--destructive));\r\n\r\n /* ── the painted result — three tiers, base = .select > button (vega) ─── */\r\n --_mono-select-ring-color: var(--mono-select-ring-color, var(--mono-select-focus-color, var(--_mono-select-ring-color-preset, var(--_mono-select-primary))));\r\n --_mono-select-ring-width: var(--mono-select-ring-width, var(--_mono-select-ring-width-preset, var(--mono-ring-width)));\r\n --_mono-select-ring-alpha: var(--mono-select-ring-alpha, var(--mono-ring-alpha));\r\n --_mono-select-border-color: var(--mono-select-rest-border, var(--mono-select-border-color, var(--mono-select-border, var(--_mono-select-border-color-preset, var(--input)))));\r\n --_mono-select-bg: var(--mono-select-bg, var(--mono-select-surface, var(--_mono-select-bg-preset, var(--mono-mode-surface))));\r\n --_mono-select-hover-bg: var(--mono-select-hover-bg, var(--_mono-select-hover-bg-preset, var(--_mono-select-bg)));\r\n --_mono-select-shadow: var(--mono-select-shadow, var(--_mono-select-shadow-preset, 0 0 #0000));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 4));\r\n\r\n /* ── md metrics live on the unqualified root ON PURPOSE: hand-written\r\n `<div mono-select>` that names no size renders exactly like size=\"md\".\r\n basecoat@1.0.2 styles/vega.css .select:not(select) > button — h-9 gap-1.5\r\n rounded-md ps-2.5 pe-2 text-sm ── */\r\n --_mono-select-height: var(--mono-select-height-md, var(--mono-control-height-md));\r\n --_mono-select-radius: var(--mono-select-radius-md, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-md, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-md, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, calc(var(--mono-spacing) * 1.5));\r\n --_mono-select-font-size: var(--mono-select-font-md, var(--mono-text-sm));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-md, var(--mono-text-sm--lh)));\r\n --_mono-select-action: calc(var(--mono-spacing) * 6);\r\n\r\n /* basecoat@1.0.2 styles/vega.css .field — flex w-full flex-col gap-3; mono: BLOCK\r\n flow with the gap as margins, so a hand-written panel that no controller\r\n positions lands at its static position — right under the trigger, above the\r\n message — instead of a flex container's content-box top */\r\n --_mono-select-gap-y: var(--mono-select-gap, calc(var(--mono-spacing) * 3));\r\n position: relative;\r\n display: block;\r\n width: 100%;\r\n font-family: inherit;\r\n color: var(--_mono-select-text);\r\n}\r\n\r\n/* A page-level `* { box-sizing: border-box }` reset does NOT cross a shadow\r\n boundary; scoped here so both builds measure the same. */\r\n[mono-select],\r\n[mono-select] *,\r\n[mono-select] *::before,\r\n[mono-select] *::after {\r\n box-sizing: border-box;\r\n}\r\n\r\n[mono-select] :is([mono-label], [mono-message])[mono-empty] {\r\n display: none;\r\n}\r\n\r\n/* =========================================\r\n Sizes — the trigger's painted height IS the token (tests/perf/field-heights)\r\n EXTENSION: Basecoat's select has only data-size=sm; the ladder is the shared\r\n --mono-control-height-* scale and the text follows .btn's steps.\r\n ========================================= */\r\n\r\n[mono-select][mono-size=\"xs\"] {\r\n --_mono-select-height: var(--mono-select-height-xs, var(--mono-control-height-xs));\r\n --_mono-select-radius: var(--mono-select-radius-xs, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-xs, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-xs, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 1.5))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, var(--mono-spacing));\r\n --_mono-select-font-size: var(--mono-select-font-xs, var(--mono-text-xs));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-xs, var(--mono-text-xs--lh)));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 3.5));\r\n --_mono-select-action: calc(var(--mono-spacing) * 4);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — data-[size=sm]:h-8 */\r\n[mono-select][mono-size=\"sm\"] {\r\n --_mono-select-height: var(--mono-select-height-sm, var(--mono-control-height-sm));\r\n --_mono-select-radius: var(--mono-select-radius-sm, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-sm, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-sm, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-font-size: var(--mono-select-font-sm, var(--mono-select-font-md, var(--mono-text-sm)));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-sm, var(--mono-text-sm--lh)));\r\n --_mono-select-action: calc(var(--mono-spacing) * 5);\r\n}\r\n\r\n[mono-select][mono-size=\"lg\"] {\r\n --_mono-select-height: var(--mono-select-height-lg, var(--mono-control-height-lg));\r\n --_mono-select-radius: var(--mono-select-radius-lg, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-lg, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-lg, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-font-size: var(--mono-select-font-lg, var(--mono-select-font-md, var(--mono-text-sm)));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-lg, var(--mono-text-sm--lh)));\r\n}\r\n\r\n[mono-select][mono-size=\"xl\"] {\r\n --_mono-select-height: var(--mono-select-height-xl, var(--mono-control-height-xl));\r\n --_mono-select-radius: var(--mono-select-radius-xl, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-xl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 3))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-xl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, calc(var(--mono-spacing) * 2));\r\n --_mono-select-font-size: var(--mono-select-font-xl, var(--mono-text-base));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-xl, var(--mono-text-base--lh)));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 5));\r\n --_mono-select-action: calc(var(--mono-spacing) * 7);\r\n}\r\n\r\n[mono-select][mono-size=\"xxl\"] {\r\n --_mono-select-height: var(--mono-select-height-xxl, var(--mono-control-height-xxl));\r\n --_mono-select-radius: var(--mono-select-radius-xxl, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-xxl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 4))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-xxl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 3))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, calc(var(--mono-spacing) * 2));\r\n --_mono-select-font-size: var(--mono-select-font-xxl, var(--mono-text-lg));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-xxl, var(--mono-text-lg--lh)));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 5));\r\n --_mono-select-action: calc(var(--mono-spacing) * 8);\r\n}\r\n\r\n/* =========================================\r\n Variants — each writes only `*-preset` slots\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — rounded-md border\r\n border-input bg-transparent shadow-xs (dark:bg-input/30 dark:hover:bg-input/50\r\n via the mode tokens). `--mono-select-outline-*` restyle THIS variant alone. */\r\n[mono-select]:is(:not([mono-variant]), [mono-variant=\"outlined\"]) {\r\n --_mono-select-bg-preset: var(--mono-select-outline-bg);\r\n --_mono-select-hover-bg-preset: var(--mono-select-outline-hover-bg, var(--mono-mode-field-hover-bg));\r\n --_mono-select-border-color-preset: var(--mono-select-outline-border-color);\r\n --_mono-select-side-border-color-preset: var(--mono-select-outline-side-border-color);\r\n --_mono-select-shadow-preset: var(--mono-select-outline-shadow, var(--mono-shadow-xs));\r\n --_mono-select-ring-width-preset: var(--mono-select-outline-ring-width);\r\n --_mono-select-radius-preset: var(--mono-select-outline-radius);\r\n --_mono-select-padding-x-preset: var(--mono-select-outline-padding-x);\r\n}\r\n\r\n/* EXTENSION — filled ≡ basecoat@1.0.2 styles/luma.css .select:not(select) > button:\r\n border-transparent bg-input/50, no shadow-xs, no hover */\r\n[mono-select][mono-variant=\"filled\"] {\r\n --_mono-select-bg-preset: var(--mono-select-filled-bg, color-mix(in oklab, var(--input) 50%, transparent));\r\n --_mono-select-hover-bg-preset: var(--_mono-select-bg);\r\n --_mono-select-border-color-preset: transparent;\r\n --_mono-select-shadow-preset: 0 0 #0000;\r\n}\r\n\r\n/* EXTENSION — underlined ≡ basecoat@1.0.2 styles/sera.css .select:not(select) > button:\r\n rounded-none border-transparent border-b-input bg-transparent px-0, no shadow,\r\n no ring, focus-visible:border-b-ring */\r\n[mono-select][mono-variant=\"underlined\"] {\r\n --_mono-select-bg-preset: transparent;\r\n --_mono-select-hover-bg-preset: transparent;\r\n --_mono-select-side-border-color-preset: transparent;\r\n --_mono-select-shadow-preset: 0 0 #0000;\r\n --_mono-select-ring-width-preset: 0px;\r\n --_mono-select-radius-preset: 0;\r\n --_mono-select-padding-x-preset: 0;\r\n}\r\n\r\n/* =========================================\r\n Colours — the `color` prop is the FOCUS colour (ring + focused border)\r\n ========================================= */\r\n\r\n[mono-select]:is(:not([mono-color]), [mono-color=\"primary\"]) {\r\n --_mono-select-ring-color-preset: var(--_mono-select-primary);\r\n}\r\n[mono-select][mono-color=\"secondary\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-secondary);\r\n}\r\n[mono-select][mono-color=\"success\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-success);\r\n}\r\n[mono-select][mono-color=\"danger\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-danger);\r\n}\r\n[mono-select][mono-color=\"warning\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-warning);\r\n}\r\n[mono-select][mono-color=\"info\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-info);\r\n}\r\n[mono-select][mono-color=\"teal\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-teal);\r\n}\r\n[mono-select][mono-color=\"purple\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-purple);\r\n}\r\n[mono-select][mono-color=\"neutral\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-neutral);\r\n}\r\n[mono-select][mono-color=\"dark\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-dark);\r\n}\r\n\r\n/* =========================================\r\n Label\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field > label, .label — flex items-center\r\n gap-2 text-sm leading-none font-medium select-none w-fit */\r\n[mono-select] > [mono-label] {\r\n display: flex;\r\n align-items: center;\r\n width: fit-content;\r\n margin: 0 0 var(--_mono-select-gap-y);\r\n gap: var(--mono-select-label-gap, calc(var(--mono-spacing) * 2));\r\n font-size: var(--mono-select-label-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-label-line-height, 1);\r\n font-weight: var(--mono-select-label-font-weight, var(--mono-label-font-weight, var(--mono-font-weight-medium)));\r\n text-transform: var(--mono-select-label-text-transform, none);\r\n letter-spacing: var(--mono-select-label-letter-spacing, normal);\r\n color: var(--_mono-select-text);\r\n user-select: none;\r\n}\r\n\r\n[mono-select][mono-disabled] > [mono-label] {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field — data-invalid:text-destructive */\r\n[mono-select][mono-validation-state=\"invalid\"] > [mono-label] {\r\n color: var(--_mono-select-invalid);\r\n}\r\n\r\n[mono-select] [mono-required-mark] {\r\n color: var(--_mono-select-danger);\r\n}\r\n\r\n/* =========================================\r\n The trigger — the bordered box (a <button>, or a <div> holding the combobox input)\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) > button */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — h-9 gap-1.5\r\n rounded-md border border-input bg-transparent py-2 ps-2.5 pe-2 text-sm shadow-xs\r\n focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50\r\n aria-invalid:… dark:hover:bg-input/50; mono: `--tw-ring-*` flattened to the\r\n ring + shadow slots, the height is the control token (no block padding — the\r\n token owns the height), the side edges read their own slot */\r\n[mono-select] > [mono-trigger] {\r\n --_mono-select-bc: var(--_mono-select-border-color);\r\n --_mono-select-side-bc: var(--mono-select-side-border-color, var(--_mono-select-side-border-color-preset, var(--_mono-select-bc)));\r\n --_mono-select-ring: 0 0 #0000;\r\n\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n gap: var(--_mono-select-gap);\r\n width: 100%;\r\n min-width: 0;\r\n min-height: var(--_mono-select-height);\r\n margin: 0;\r\n padding-block: var(--mono-select-padding-y, 0);\r\n padding-inline: var(--_mono-select-padding-start) var(--_mono-select-padding-end);\r\n outline-style: none;\r\n border: var(--mono-border-width) solid var(--_mono-select-bc);\r\n border-top-color: var(--_mono-select-side-bc);\r\n border-inline-color: var(--_mono-select-side-bc);\r\n border-radius: var(--_mono-select-radius);\r\n background: var(--_mono-select-bg);\r\n color: var(--_mono-select-text);\r\n box-shadow: var(--_mono-select-ring), var(--_mono-select-shadow);\r\n font-family: inherit;\r\n font-size: var(--_mono-select-font-size);\r\n line-height: var(--_mono-select-line-height);\r\n font-weight: var(--mono-font-weight-normal);\r\n white-space: nowrap;\r\n text-align: start;\r\n cursor: pointer;\r\n user-select: none;\r\n transition-property: color, box-shadow, border-color, background-color;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration);\r\n\r\n &:focus,\r\n &:focus-visible,\r\n &:focus-within {\r\n outline: none !important;\r\n }\r\n\r\n /* focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 —\r\n the combobox form is a <div> whose <input> takes focus, hence :focus-within */\r\n &:focus-visible,\r\n &:focus-within {\r\n --_mono-select-bc: var(--_mono-select-ring-color);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) color-mix(in oklab, var(--_mono-select-ring-color) var(--_mono-select-ring-alpha), transparent);\r\n }\r\n\r\n & svg,\r\n & [mono-icon] {\r\n pointer-events: none;\r\n flex-shrink: 0;\r\n }\r\n}\r\n\r\n/* dark:hover:bg-input/50 (light: none) — carried by --mono-mode-field-hover-bg */\r\n@media (hover: hover) {\r\n [mono-select]:not([mono-disabled]):not([mono-readonly]):not([mono-ds-loading]) > [mono-trigger]:hover {\r\n background: var(--_mono-select-hover-bg);\r\n }\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — aria-invalid:border-destructive\r\n aria-invalid:ring-3 aria-invalid:ring-destructive/20 (dark: /50, /40 via the mode tokens) */\r\n[mono-select][mono-validation-state=\"invalid\"] > [mono-trigger],\r\n[mono-select] > [mono-trigger][aria-invalid=\"true\"] {\r\n --_mono-select-bc: var(--mono-mode-invalid-border);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) var(--mono-mode-invalid-ring);\r\n}\r\n\r\n/* EXTENSION — valid / warning are the invalid pattern in the role's colour */\r\n[mono-select][mono-validation-state=\"valid\"] > [mono-trigger] {\r\n --_mono-select-bc: color-mix(in oklab, var(--_mono-select-valid) var(--mono-mode-state-border-alpha), transparent);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) color-mix(in oklab, var(--_mono-select-valid) var(--mono-mode-state-ring-alpha), transparent);\r\n}\r\n[mono-select][mono-validation-state=\"warning\"] > [mono-trigger] {\r\n --_mono-select-bc: color-mix(in oklab, var(--_mono-select-warning) var(--mono-mode-state-border-alpha), transparent);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) color-mix(in oklab, var(--_mono-select-warning) var(--mono-mode-state-ring-alpha), transparent);\r\n}\r\n\r\n/* EXTENSION — the bound dataSource failed: the invalid outline ONLY. Label,\r\n message and validation state stay as they are; it is not a validation error. */\r\n[mono-select][mono-ds-error] > [mono-trigger] {\r\n --_mono-select-bc: var(--mono-select-ds-error-border, var(--mono-mode-invalid-border));\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) var(--mono-select-ds-error-ring, var(--mono-mode-invalid-ring));\r\n}\r\n\r\n[mono-select] [mono-value][mono-ds-error-text] {\r\n color: var(--mono-select-ds-error-text, var(--_mono-select-invalid));\r\n}\r\n\r\n/* EXTENSION — the first load (or a retry) is in flight: read-only, no hover */\r\n[mono-select][mono-ds-loading] > [mono-trigger] {\r\n cursor: progress;\r\n}\r\n\r\n/* EXTENSION — readonly: focusable, on a muted surface, no gestures */\r\n[mono-select][mono-readonly] > [mono-trigger] {\r\n background: var(--mono-select-readonly-bg, var(--muted));\r\n cursor: default;\r\n}\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) > button — disabled:\r\n pointer-events-none cursor-not-allowed opacity-50 */\r\n[mono-select][mono-disabled] > [mono-trigger],\r\n[mono-select] > [mono-trigger]:disabled,\r\n/* a raw readonly select can only disable its native <select>; the root attribute wins */\r\n[mono-select]:not([mono-readonly]) > [mono-trigger]:has(> [mono-native]:disabled) {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n background: var(--mono-select-disabled-bg, var(--_mono-select-bg));\r\n}\r\n\r\n/* =========================================\r\n Value / search field / native <select>\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) > button > span —\r\n flex flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-start */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button > span — gap-1.5 */\r\n[mono-select] [mono-value] {\r\n flex: 1 1 auto;\r\n min-width: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: var(--_mono-select-gap);\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n text-align: start;\r\n color: var(--_mono-select-text);\r\n}\r\n\r\n[mono-select] [mono-value] > span {\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n[mono-select] [mono-value][mono-placeholder] {\r\n color: var(--_mono-select-placeholder);\r\n}\r\n\r\n/* basecoat@1.0.2 components/combobox.css .combobox > input[role='combobox'] — the\r\n search input lives INSIDE our trigger box, so it is borderless like\r\n .input-group > input and the box around it carries the chrome */\r\n[mono-select] [mono-search-field],\r\n[mono-select] [mono-native] {\r\n flex: 1 1 auto;\r\n width: 100%;\r\n min-width: 0;\r\n align-self: stretch;\r\n appearance: none;\r\n margin: 0;\r\n padding: 0;\r\n border: 0;\r\n border-radius: 0;\r\n outline: none;\r\n background: transparent;\r\n box-shadow: none;\r\n color: var(--_mono-select-text);\r\n font: inherit;\r\n line-height: var(--_mono-select-line-height);\r\n\r\n &:focus,\r\n &:focus-visible {\r\n outline: none !important;\r\n }\r\n\r\n &::placeholder {\r\n color: var(--_mono-select-placeholder);\r\n }\r\n\r\n &:disabled {\r\n cursor: not-allowed;\r\n }\r\n}\r\n\r\n[mono-select] [mono-search-field] {\r\n cursor: text;\r\n}\r\n\r\n[mono-select] [mono-native] {\r\n cursor: inherit;\r\n}\r\n\r\n[mono-select] [mono-native] option {\r\n color: var(--_mono-select-text);\r\n background: var(--popover);\r\n}\r\n\r\n/* =========================================\r\n Actions — the chevron and the clear button\r\n ========================================= */\r\n\r\n[mono-select] [mono-actions] {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--mono-spacing);\r\n flex-shrink: 0;\r\n line-height: 1;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button > svg — size-4\r\n text-muted-foreground; mono: the glyph sits in a square action box so the\r\n chevron and the clear button occupy the same gutter */\r\n/* basecoat@1.0.2 components/combobox.css .combobox [data-clear] — size-6 border-0\r\n bg-transparent p-0 text-current */\r\n[mono-select] [mono-arrow],\r\n[mono-select] [mono-clear],\r\n[mono-select] [mono-ds-retry],\r\n[mono-select] [mono-ds-spinner] {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n flex-shrink: 0;\r\n width: var(--_mono-select-action);\r\n height: var(--_mono-select-action);\r\n margin: 0;\r\n padding: 0;\r\n border: 0;\r\n border-radius: var(--mono-select-clear-radius, calc(var(--radius) - 5px));\r\n background: transparent;\r\n color: var(--_mono-select-muted);\r\n font: inherit;\r\n line-height: 1;\r\n cursor: pointer;\r\n transition-property: color, background-color, transform;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration);\r\n}\r\n\r\n[mono-select] :is([mono-arrow], [mono-clear], [mono-ds-retry], [mono-ds-spinner]) > :is(svg, .mono-icon, [mono-icon]) {\r\n display: block;\r\n width: var(--_mono-select-icon);\r\n height: var(--_mono-select-icon);\r\n pointer-events: none;\r\n}\r\n\r\n/* EXTENSION — the chevron turns while the panel is open */\r\n[mono-select][mono-open] [mono-arrow] > :is(svg, .mono-icon, [mono-icon]) {\r\n transform: rotate(180deg);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .btn[data-variant='ghost'] — hover:bg-muted\r\n hover:text-foreground (dark:hover:bg-muted/50 via --mono-mode-ghost-hover) */\r\n@media (hover: hover) {\r\n [mono-select] :is([mono-arrow], [mono-clear], [mono-ds-retry]):hover {\r\n background: var(--mono-mode-ghost-hover);\r\n color: var(--_mono-select-text);\r\n }\r\n}\r\n\r\n/* EXTENSION — dataSource state glyphs: the busy arc spins, the ↻ wears the\r\n error colour so it reads as the way out of the red field */\r\n[mono-select] [mono-ds-spinner] {\r\n cursor: progress;\r\n}\r\n\r\n[mono-select] [mono-ds-spinner] > svg {\r\n animation: mono-select-spin 0.7s linear infinite;\r\n}\r\n\r\n[mono-select] [mono-ds-retry] {\r\n color: var(--mono-select-ds-error-text, var(--_mono-select-invalid));\r\n}\r\n\r\n@keyframes mono-select-spin {\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce) {\r\n [mono-select] [mono-ds-spinner] > svg {\r\n animation-duration: 2.4s;\r\n }\r\n}\r\n\r\n/* =========================================\r\n The panel\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/popover.css [data-popover] — absolute z-50 min-w-full\r\n overflow-x-hidden; mono: `display: none` while closed (the contents are only\r\n rendered while open), `--mono-popup-z` from the shared popup stack and\r\n `--mono-popup-avail-h` from the portal controller cap the whole panel */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [data-popover] — bg-popover\r\n text-popover-foreground rounded-md shadow-md ring-1 ring-foreground/10; the\r\n `p-1` moves to the scrolling body (the combobox layout), so the scrollbar\r\n never paints over the padding */\r\n[mono-select] > [mono-dropdown] {\r\n position: absolute;\r\n /* `top: auto` = the static position: the panel follows the trigger in the DOM,\r\n so in block flow it lands right under it (the popup controller overrides\r\n this inline for the element; hand-written markup relies on it). */\r\n top: auto;\r\n /* the 6px offset as a transform: the controller writes `transform: none` inline\r\n with its fixed position, so only the hand-written panel is pushed down */\r\n transform: translateY(calc(var(--mono-spacing) * 1.5));\r\n /* Both edges pinned, so the panel matches the field by default. An inline\r\n `width` from `:dropdown.prop=\"{ width }\"` is then the over-constrained case,\r\n which CSS resolves by ignoring `right` — the panel keeps this left edge and\r\n takes the given width. */\r\n left: 0;\r\n right: 0;\r\n z-index: var(--mono-popup-z, 1000);\r\n display: none;\r\n /* Basecoat's `min-w-[max(100%,9rem)]` is relative to the .select box; a portaled\r\n panel is position: fixed, where 100% would be the viewport — the controller\r\n writes the anchor's width inline instead, so only the floor stays. */\r\n min-width: var(--mono-select-dropdown-min-width, 9rem);\r\n max-height: var(--mono-popup-avail-h, none);\r\n overflow: hidden;\r\n isolation: isolate;\r\n border-radius: var(--mono-select-dropdown-radius, var(--mono-radius-md));\r\n background: var(--mono-select-dropdown-bg, var(--popover));\r\n color: var(--mono-select-dropdown-color, var(--popover-foreground));\r\n box-shadow: var(--mono-select-dropdown-ring, 0 0 0 1px color-mix(in oklab, var(--foreground) 10%, transparent)), var(--mono-select-dropdown-shadow, var(--mono-shadow-md));\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n}\r\n\r\n[mono-select][mono-open] > [mono-dropdown] {\r\n /* A flex column (not `block`) so the body can shrink past its own height when\r\n the panel is clamped above. */\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .combobox [role='listbox'] — max-h-[min(18rem,\r\n var(--available-height,18rem))] scroll-py-1 overflow-y-auto p-1 */\r\n[mono-select] [mono-dropdown-body] {\r\n flex: 1 1 auto;\r\n min-height: 0;\r\n max-height: 18rem;\r\n padding: var(--mono-select-dropdown-padding, var(--mono-spacing));\r\n overflow: auto;\r\n overscroll-behavior: contain;\r\n scroll-padding-block: var(--mono-select-dropdown-padding, var(--mono-spacing));\r\n outline-style: none;\r\n}\r\n\r\n/* =========================================\r\n Options\r\n -----------------------------------------\r\n Each rule also lists the stamped twin of a row rendered through `slot=\"list\"`\r\n (`[data-mono-type='row']`, `[data-mono-active]`, `[data-mono-selected]`), so\r\n the two can never drift: what you render in the slot IS an option. `:where()`\r\n wraps only the CONTAINER, keeping the twin at attribute weight.\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) [role='option'] — relative\r\n flex w-full cursor-default items-center overflow-hidden text-ellipsis whitespace-\r\n nowrap outline-none select-none; disabled: pointer-events-none opacity-50 */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='option'] — gap-2\r\n rounded-sm py-1.5 ps-2 pe-8 text-sm, svg size-4 */\r\n[mono-select] [mono-item],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'] {\r\n position: relative;\r\n display: flex;\r\n width: 100%;\r\n align-items: center;\r\n gap: var(--mono-select-option-gap, calc(var(--mono-spacing) * 2));\r\n margin: 0;\r\n padding-block: var(--mono-select-option-padding-y, calc(var(--mono-spacing) * 1.5));\r\n padding-inline: var(--mono-select-option-padding-x, calc(var(--mono-spacing) * 2)) var(--mono-select-option-padding-end, calc(var(--mono-spacing) * 8));\r\n min-height: var(--mono-select-option-min-height, 0);\r\n border: 0;\r\n border-radius: var(--mono-select-option-radius, var(--mono-radius-sm));\r\n /* longhands, so the selected row's check (a background-image) survives the\r\n active / hover background */\r\n background-color: transparent;\r\n background-image: none;\r\n color: var(--_mono-select-text);\r\n font-family: inherit;\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n font-weight: var(--mono-select-option-font-weight, var(--mono-font-weight-normal));\r\n text-align: start;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n outline-style: none;\r\n user-select: none;\r\n cursor: default;\r\n transition-property: color, background-color;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration-fast);\r\n}\r\n\r\n/* EXTENSION: a hair of air between rows. Upstream stacks its options flush, so an\r\n active row directly under the selected one read as ONE tall highlight; a 2px\r\n seam keeps the two rounded-sm washes apart. `--mono-select-option-spacing`. */\r\n[mono-select] [mono-item] + [mono-item],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'] + [data-mono-type='row'] {\r\n margin-top: var(--mono-select-option-spacing, 2px);\r\n}\r\n\r\n[mono-select] [mono-item] svg:not([class*='size-']),\r\n[mono-select] [mono-item] .mono-icon {\r\n width: var(--_mono-select-icon);\r\n height: var(--_mono-select-icon);\r\n flex-shrink: 0;\r\n pointer-events: none;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='option'].active, .select:not(select) [role='option']:focus-visible\r\n — bg-muted text-foreground. The keyboard cursor and the pointer share one look. */\r\n[mono-select] [mono-item][mono-active]:not([mono-disabled]):not(:disabled),\r\n[mono-select] [mono-item]:focus-visible,\r\n[mono-select] :where([mono-list-slot]) [data-mono-active] {\r\n background-color: var(--mono-select-option-active-bg, var(--muted));\r\n color: var(--mono-select-option-active-color, var(--_mono-select-text));\r\n}\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select):not([data-select-initialized]) [role='option']:not([aria-disabled='true']):not(:disabled):hover, .select:not(select) [role='option'].active\r\n — the pointer highlight is NOT behind (hover: hover) upstream */\r\n[mono-select] [mono-item]:hover:not([mono-disabled]):not(:disabled),\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row']:hover {\r\n background-color: var(--mono-select-option-active-bg, var(--muted));\r\n color: var(--mono-select-option-active-color, var(--_mono-select-text));\r\n}\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) [role='option'][aria-selected='true']\r\n — the --check-icon at the end (bg-size .875rem, center right .5rem) */\r\n[mono-select] [mono-item][mono-selected],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'][data-mono-selected] {\r\n background-image: var(--mono-select-check-icon, var(--check-icon));\r\n background-size: var(--mono-select-check-size, 0.875rem);\r\n background-position: center right calc(var(--mono-spacing) * 2);\r\n background-repeat: no-repeat;\r\n font-weight: var(--mono-select-option-selected-font-weight, var(--mono-select-option-font-weight, var(--mono-font-weight-normal)));\r\n}\r\n\r\n[mono-select] [mono-item][mono-selected]:dir(rtl),\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'][data-mono-selected]:dir(rtl) {\r\n background-position: center left calc(var(--mono-spacing) * 2);\r\n}\r\n\r\n[mono-select] [mono-item][mono-disabled],\r\n[mono-select] [mono-item]:disabled {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='listbox']:not(:has([data-value]:not([aria-hidden='true'])))::before\r\n — py-6 text-center text-sm (the \"No results found\" row) */\r\n[mono-select] [mono-empty-row] {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding-block: calc(var(--mono-spacing) * 6);\r\n padding-inline: calc(var(--mono-spacing) * 3);\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n color: var(--_mono-select-muted);\r\n text-align: center;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n cursor: default;\r\n user-select: none;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='heading'] — px-2 py-1.5\r\n text-xs text-muted-foreground; EXTENSION: one indent step per nesting level */\r\n[mono-select] [mono-group],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'] {\r\n --_ms-group-level: 0;\r\n padding-block: var(--mono-select-group-padding-y, calc(var(--mono-spacing) * 1.5));\r\n padding-inline: var(--mono-select-group-padding-x, calc(var(--mono-spacing) * 2));\r\n padding-inline-start: calc(var(--mono-select-group-padding-x, calc(var(--mono-spacing) * 2)) + var(--_ms-group-level) * calc(var(--mono-spacing) * 2));\r\n font-size: var(--mono-select-group-font-size, var(--mono-text-xs));\r\n line-height: var(--mono-select-group-line-height, var(--mono-text-xs--lh));\r\n font-weight: var(--mono-select-group-font-weight, var(--mono-font-weight-normal));\r\n text-transform: var(--mono-select-group-text-transform, none);\r\n letter-spacing: var(--mono-select-group-letter-spacing, normal);\r\n color: var(--_mono-select-muted);\r\n cursor: default;\r\n user-select: none;\r\n}\r\n\r\n[mono-select] [mono-group][mono-level='1'],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'][data-mono-level='1'] { --_ms-group-level: 1; }\r\n[mono-select] [mono-group][mono-level='2'],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'][data-mono-level='2'] { --_ms-group-level: 2; }\r\n[mono-select] [mono-group][mono-level='3'],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'][data-mono-level='3'] { --_ms-group-level: 3; }\r\n\r\n/* group-sticky: pin headers while their rows scroll; nested levels stack on the\r\n panel's own surface so options scroll cleanly underneath. */\r\n[mono-select] [mono-group][mono-sticky] {\r\n position: sticky;\r\n top: calc(var(--_ms-group-level) * 1.5rem);\r\n z-index: calc(5 - var(--_ms-group-level));\r\n background: var(--mono-select-dropdown-bg, var(--popover));\r\n}\r\n\r\n/* EXTENSION — the load-more affordance: an option-shaped ghost button */\r\n[mono-select] [mono-load-more] {\r\n display: flex;\r\n width: 100%;\r\n align-items: center;\r\n justify-content: center;\r\n gap: var(--mono-select-option-gap, calc(var(--mono-spacing) * 2));\r\n margin: 0;\r\n padding-block: var(--mono-select-option-padding-y, calc(var(--mono-spacing) * 1.5));\r\n padding-inline: var(--mono-select-option-padding-x, calc(var(--mono-spacing) * 2));\r\n border: 0;\r\n border-radius: var(--mono-select-option-radius, var(--mono-radius-sm));\r\n background: transparent;\r\n color: var(--_mono-select-muted);\r\n font-family: inherit;\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n font-weight: var(--mono-font-weight-medium);\r\n cursor: pointer;\r\n transition-property: color, background-color;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration-fast);\r\n}\r\n\r\n@media (hover: hover) {\r\n [mono-select] [mono-load-more]:hover:not([mono-loading]) {\r\n background-color: var(--mono-select-option-active-bg, var(--muted));\r\n color: var(--_mono-select-text);\r\n }\r\n}\r\n\r\n[mono-select] [mono-load-more][mono-loading] {\r\n cursor: default;\r\n opacity: 0.7;\r\n}\r\n\r\n/* Consumer-rendered option rows (slot=\"list\"). `display: contents` so mono's own\r\n placement wrapper generates no box: the rows the consumer writes lay out as if\r\n they were direct children of the panel. */\r\n[mono-select] [mono-list-slot] {\r\n display: contents;\r\n}\r\n\r\n/* =========================================\r\n Message — helper / validation text under the field\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 styles/vega.css .fieldset legend + p, .field > p, .field section > p\r\n — text-sm text-muted-foreground leading-normal font-normal */\r\n[mono-select] > [mono-message-wrap] {\r\n display: block;\r\n margin-top: var(--_mono-select-gap-y);\r\n}\r\n\r\n[mono-select] > [mono-message-wrap]:not(:has([mono-message]:not([mono-empty]))) {\r\n display: none;\r\n}\r\n\r\n[mono-select] [mono-message] {\r\n font-size: var(--mono-select-message-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-message-line-height, var(--mono-leading-normal));\r\n font-weight: var(--mono-font-weight-normal);\r\n text-align: start;\r\n color: var(--_mono-select-muted);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field [role=\"alert\"] — text-destructive text-sm */\r\n[mono-select] [mono-message=\"invalid\"] {\r\n color: var(--_mono-select-invalid);\r\n}\r\n\r\n[mono-select] [mono-message=\"valid\"] {\r\n color: var(--_mono-select-valid);\r\n}\r\n\r\n[mono-select] [mono-message=\"warning\"] {\r\n color: var(--_mono-select-warning);\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce) {\r\n [mono-select] > [mono-trigger],\r\n [mono-select] [mono-arrow],\r\n [mono-select] [mono-clear],\r\n [mono-select] [mono-item] {\r\n transition: none;\r\n }\r\n}\r\n";
2029
+ //#region \0raw:C:\Users\VCT-DEV\Desktop\libs\packages\helper\src\components\select\select.css?raw.js
2030
+ var select_css_raw_default = "/* =========================================================================\r\n mono-select — a port of Basecoat's `.select` (the custom one, `.select:not(select)`)\r\n and `.combobox` (basecoat-css@1.0.2, vega style), on the `.field` / `.label`\r\n chrome mono-input already ported.\r\n\r\n Styled by ATTRIBUTE, like Basecoat (`.select > button`, `[role='option'].active`)\r\n — and the attributes mirror the element's props one for one, so hand-written\r\n markup reads like the Lit / Vue tag:\r\n\r\n <mono-select size=\"sm\" color=\"danger\" variant=\"filled\" label=\"Fruit\">\r\n <div mono-select mono-size=\"sm\" mono-color=\"danger\" mono-variant=\"filled\">\r\n <label mono-label>Fruit</label>\r\n <button mono-trigger><span mono-value mono-placeholder>Pick</span>\r\n <span mono-actions><span mono-arrow>…</span></span></button>\r\n <div mono-dropdown><div mono-dropdown-body><button mono-item>…</button></div></div>\r\n </div>\r\n\r\n An absent attribute is the prop's default (`:not([mono-size])` = md,\r\n `:not([mono-color])` = primary, `:not([mono-variant])` = outlined). The element\r\n renders these attributes on its wrapper (both builds) plus `mono-open` while\r\n the panel is open; the old classes (`.mono-select.sm.open`) are still emitted\r\n as inert hooks for consumer CSS until 2.0 but no rule here reads them.\r\n\r\n Selector map (ours ≡ upstream):\r\n [mono-select] ≡ .field (gap-3, as margins — see the root rule) + .select (position: relative)\r\n [mono-select] > [mono-label] ≡ .field > label / .label\r\n [mono-select] > [mono-trigger] ≡ .select > button (h-9 rounded-md border-input ps-2.5 pe-2 text-sm shadow-xs)\r\n [mono-select][mono-searchable] > [mono-trigger] ≡ .combobox > input[role='combobox'] (same box; the input sits inside it)\r\n [mono-trigger] > [mono-value] ≡ .select > button > span (flex-1 truncate text-start)\r\n [mono-trigger] > [mono-native] ≡ EXTENSION — a plain <select> may stand in for the value + panel (appearance: none)\r\n [mono-actions] > [mono-arrow] > [mono-icon] ≡ .select > button > svg (size-4 text-muted-foreground)\r\n [mono-actions] > [mono-clear] ≡ .combobox [data-clear] (size-6, painted as .btn[data-variant='ghost'])\r\n [mono-dropdown] ≡ .select [data-popover] (bg-popover ring-1 ring-foreground/10 rounded-md shadow-md)\r\n [mono-dropdown-body] ≡ .combobox [role='listbox'] (max-h-72 overflow-y-auto p-1 scroll-py-1)\r\n [mono-item] ≡ .select [role='option'] (gap-2 rounded-sm py-1.5 ps-2 pe-8 text-sm)\r\n [mono-item][mono-active] / :hover ≡ [role='option'].active (bg-muted text-foreground)\r\n [mono-item][mono-selected] ≡ [role='option'][aria-selected='true'] (the --check-icon at the end)\r\n [mono-group] ≡ .select [role='heading'] (px-2 py-1.5 text-xs text-muted-foreground)\r\n [mono-empty-row] ≡ .select [role='listbox']::before (py-6 text-center text-sm)\r\n [mono-load-more] ≡ EXTENSION (an option-shaped ghost button)\r\n [mono-message-wrap] > [mono-message] ≡ .field > p / .field [role='alert']\r\n [mono-validation-state=\"invalid\"] ≡ .select > button[aria-invalid='true']\r\n [mono-validation-state=\"valid|warning\"] ≡ EXTENSION (the invalid pattern in --success / --warning)\r\n [mono-size=\"xs|sm|lg|xl|xxl\"] ≡ EXTENSION (Basecoat has only data-size=sm; the ladder is --mono-control-height-*)\r\n [mono-variant=\"filled\"] ≡ EXTENSION (luma's .select > button: border-transparent bg-input/50)\r\n [mono-variant=\"underlined\"] ≡ EXTENSION (sera's: rounded-none border-b-input px-0, no ring)\r\n\r\n Inner parts are attributes too: [mono-label] (+ [mono-required-mark]),\r\n [mono-trigger], [mono-value] (+ [mono-placeholder]), [mono-search-field],\r\n [mono-native], [mono-actions], [mono-clear], [mono-arrow], [mono-icon],\r\n [mono-dropdown], [mono-dropdown-body], [mono-item] (+ [mono-active] /\r\n [mono-selected] / [mono-disabled]), [mono-group] (+ [mono-sticky],\r\n [mono-level=\"n\"]), [mono-empty-row], [mono-load-more] (+ [mono-loading]),\r\n [mono-list-slot], [mono-message-wrap] > [mono-message=\"helper|valid|invalid|warning\"].\r\n The shadow build marks an unassigned slot wrapper [mono-empty].\r\n\r\n THE PANEL IS PORTALED. The light build moves [mono-dropdown] into a\r\n `<div data-mono-popup-portal>` under <body> while open (composables/popup-\r\n portal.ts), and the portal mirrors the wrapper's class AND its mono-*\r\n attributes — so `[mono-select] > [mono-dropdown]` keeps matching there and\r\n the `--_mono-select-*` resolvers declared on `[mono-select]` re-resolve on\r\n the portal. Nothing here may rely on the panel being inside the trigger's\r\n host, and every option rule is scoped under `[mono-select]`.\r\n\r\n Values are copied from the compiled vendor sheet (vendor/basecoat/basecoat-\r\n vega.cdn.css) through the token layer; `dark:` variants travel as\r\n `--mono-mode-*` tokens (a selector cannot cross a shadow boundary; an\r\n inherited custom property can). FLAVORS set the `--mono-select-*` knobs read\r\n below — the same set as mono-input (`--mono-select-outline-*` for the outlined\r\n variant alone) plus `--mono-select-dropdown-{radius,padding,shadow,ring}`,\r\n `--mono-select-option-{radius,padding-x,padding-y,font-size,line-height,gap,font-weight}`,\r\n `--mono-select-group-*`, `--mono-select-icon-size`. Every fallback here is vega's\r\n value (`node scripts/basecoat-styles.mjs --varying \"^(\\.select:not\\(select\\)|\\.combobox)\"`).\r\n ========================================================================= */\r\n\r\nmono-select {\r\n display: block;\r\n}\r\n\r\n[mono-select] {\r\n /* ── palette: each slot is a public knob over a Basecoat token ─────────── */\r\n --_mono-select-text: var(--mono-select-color, var(--mono-select-text, var(--foreground)));\r\n --_mono-select-placeholder: var(--mono-select-placeholder, var(--muted-foreground));\r\n --_mono-select-muted: var(--mono-select-muted, var(--muted-foreground));\r\n --_mono-select-primary: var(--mono-select-primary, var(--ring));\r\n --_mono-select-secondary: var(--mono-select-secondary, var(--muted-foreground));\r\n --_mono-select-success: var(--mono-select-success, var(--success));\r\n --_mono-select-danger: var(--mono-select-danger, var(--destructive));\r\n --_mono-select-warning: var(--mono-select-warning, var(--warning));\r\n --_mono-select-info: var(--mono-select-info, var(--info));\r\n --_mono-select-teal: var(--mono-select-teal, var(--teal));\r\n --_mono-select-purple: var(--mono-select-purple, var(--purple));\r\n --_mono-select-neutral: var(--mono-select-neutral, var(--neutral));\r\n --_mono-select-dark: var(--mono-select-dark, var(--dark));\r\n --_mono-select-valid: var(--mono-select-valid, var(--success));\r\n --_mono-select-invalid: var(--mono-select-invalid, var(--destructive));\r\n\r\n /* ── the painted result — three tiers, base = .select > button (vega) ─── */\r\n --_mono-select-ring-color: var(--mono-select-ring-color, var(--mono-select-focus-color, var(--_mono-select-ring-color-preset, var(--_mono-select-primary))));\r\n --_mono-select-ring-width: var(--mono-select-ring-width, var(--_mono-select-ring-width-preset, var(--mono-ring-width)));\r\n --_mono-select-ring-alpha: var(--mono-select-ring-alpha, var(--mono-ring-alpha));\r\n --_mono-select-border-color: var(--mono-select-rest-border, var(--mono-select-border-color, var(--mono-select-border, var(--_mono-select-border-color-preset, var(--input)))));\r\n --_mono-select-bg: var(--mono-select-bg, var(--mono-select-surface, var(--_mono-select-bg-preset, var(--mono-mode-surface))));\r\n --_mono-select-hover-bg: var(--mono-select-hover-bg, var(--_mono-select-hover-bg-preset, var(--_mono-select-bg)));\r\n --_mono-select-shadow: var(--mono-select-shadow, var(--_mono-select-shadow-preset, 0 0 #0000));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 4));\r\n\r\n /* ── md metrics live on the unqualified root ON PURPOSE: hand-written\r\n `<div mono-select>` that names no size renders exactly like size=\"md\".\r\n basecoat@1.0.2 styles/vega.css .select:not(select) > button — h-9 gap-1.5\r\n rounded-md ps-2.5 pe-2 text-sm ── */\r\n --_mono-select-height: var(--mono-select-height-md, var(--mono-control-height-md));\r\n --_mono-select-radius: var(--mono-select-radius-md, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-md, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-md, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, calc(var(--mono-spacing) * 1.5));\r\n --_mono-select-font-size: var(--mono-select-font-md, var(--mono-text-sm));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-md, var(--mono-text-sm--lh)));\r\n --_mono-select-action: calc(var(--mono-spacing) * 6);\r\n\r\n /* basecoat@1.0.2 styles/vega.css .field — flex w-full flex-col gap-3; mono: BLOCK\r\n flow with the gap as margins, so a hand-written panel that no controller\r\n positions lands at its static position — right under the trigger, above the\r\n message — instead of a flex container's content-box top */\r\n --_mono-select-gap-y: var(--mono-select-gap, calc(var(--mono-spacing) * 3));\r\n position: relative;\r\n display: block;\r\n width: 100%;\r\n font-family: inherit;\r\n color: var(--_mono-select-text);\r\n}\r\n\r\n/* A page-level `* { box-sizing: border-box }` reset does NOT cross a shadow\r\n boundary; scoped here so both builds measure the same. */\r\n[mono-select],\r\n[mono-select] *,\r\n[mono-select] *::before,\r\n[mono-select] *::after {\r\n box-sizing: border-box;\r\n}\r\n\r\n[mono-select] :is([mono-label], [mono-message])[mono-empty] {\r\n display: none;\r\n}\r\n\r\n/* =========================================\r\n Sizes — the trigger's painted height IS the token (tests/perf/field-heights)\r\n EXTENSION: Basecoat's select has only data-size=sm; the ladder is the shared\r\n --mono-control-height-* scale and the text follows .btn's steps.\r\n ========================================= */\r\n\r\n[mono-select][mono-size=\"xs\"] {\r\n --_mono-select-height: var(--mono-select-height-xs, var(--mono-control-height-xs));\r\n --_mono-select-radius: var(--mono-select-radius-xs, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-xs, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-xs, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 1.5))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, var(--mono-spacing));\r\n --_mono-select-font-size: var(--mono-select-font-xs, var(--mono-text-xs));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-xs, var(--mono-text-xs--lh)));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 3.5));\r\n --_mono-select-action: calc(var(--mono-spacing) * 4);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — data-[size=sm]:h-8 */\r\n[mono-select][mono-size=\"sm\"] {\r\n --_mono-select-height: var(--mono-select-height-sm, var(--mono-control-height-sm));\r\n --_mono-select-radius: var(--mono-select-radius-sm, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-sm, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-sm, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-font-size: var(--mono-select-font-sm, var(--mono-select-font-md, var(--mono-text-sm)));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-sm, var(--mono-text-sm--lh)));\r\n --_mono-select-action: calc(var(--mono-spacing) * 5);\r\n}\r\n\r\n[mono-select][mono-size=\"lg\"] {\r\n --_mono-select-height: var(--mono-select-height-lg, var(--mono-control-height-lg));\r\n --_mono-select-radius: var(--mono-select-radius-lg, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-lg, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-lg, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2))));\r\n --_mono-select-font-size: var(--mono-select-font-lg, var(--mono-select-font-md, var(--mono-text-sm)));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-lg, var(--mono-text-sm--lh)));\r\n}\r\n\r\n[mono-select][mono-size=\"xl\"] {\r\n --_mono-select-height: var(--mono-select-height-xl, var(--mono-control-height-xl));\r\n --_mono-select-radius: var(--mono-select-radius-xl, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-xl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 3))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-xl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 2.5))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, calc(var(--mono-spacing) * 2));\r\n --_mono-select-font-size: var(--mono-select-font-xl, var(--mono-text-base));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-xl, var(--mono-text-base--lh)));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 5));\r\n --_mono-select-action: calc(var(--mono-spacing) * 7);\r\n}\r\n\r\n[mono-select][mono-size=\"xxl\"] {\r\n --_mono-select-height: var(--mono-select-height-xxl, var(--mono-control-height-xxl));\r\n --_mono-select-radius: var(--mono-select-radius-xxl, var(--_mono-select-radius-preset, var(--mono-select-radius, var(--mono-radius-md))));\r\n --_mono-select-padding-start: var(--mono-select-padding-x-xxl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 4))));\r\n --_mono-select-padding-end: var(--mono-select-padding-end-xxl, var(--mono-select-padding-x, var(--_mono-select-padding-x-preset, calc(var(--mono-spacing) * 3))));\r\n --_mono-select-gap: var(--mono-select-trigger-gap, calc(var(--mono-spacing) * 2));\r\n --_mono-select-font-size: var(--mono-select-font-xxl, var(--mono-text-lg));\r\n --_mono-select-line-height: var(--mono-select-line-height, var(--mono-select-line-height-xxl, var(--mono-text-lg--lh)));\r\n --_mono-select-icon: var(--mono-select-icon-size, calc(var(--mono-spacing) * 5));\r\n --_mono-select-action: calc(var(--mono-spacing) * 8);\r\n}\r\n\r\n/* =========================================\r\n Variants — each writes only `*-preset` slots\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — rounded-md border\r\n border-input bg-transparent shadow-xs (dark:bg-input/30 dark:hover:bg-input/50\r\n via the mode tokens). `--mono-select-outline-*` restyle THIS variant alone. */\r\n[mono-select]:is(:not([mono-variant]), [mono-variant=\"outlined\"]) {\r\n --_mono-select-bg-preset: var(--mono-select-outline-bg);\r\n --_mono-select-hover-bg-preset: var(--mono-select-outline-hover-bg, var(--mono-mode-field-hover-bg));\r\n --_mono-select-border-color-preset: var(--mono-select-outline-border-color);\r\n --_mono-select-side-border-color-preset: var(--mono-select-outline-side-border-color);\r\n --_mono-select-shadow-preset: var(--mono-select-outline-shadow, var(--mono-shadow-xs));\r\n --_mono-select-ring-width-preset: var(--mono-select-outline-ring-width);\r\n --_mono-select-radius-preset: var(--mono-select-outline-radius);\r\n --_mono-select-padding-x-preset: var(--mono-select-outline-padding-x);\r\n}\r\n\r\n/* EXTENSION — filled ≡ basecoat@1.0.2 styles/luma.css .select:not(select) > button:\r\n border-transparent bg-input/50, no shadow-xs, no hover */\r\n[mono-select][mono-variant=\"filled\"] {\r\n --_mono-select-bg-preset: var(--mono-select-filled-bg, color-mix(in oklab, var(--input) 50%, transparent));\r\n --_mono-select-hover-bg-preset: var(--_mono-select-bg);\r\n --_mono-select-border-color-preset: transparent;\r\n --_mono-select-shadow-preset: 0 0 #0000;\r\n}\r\n\r\n/* EXTENSION — underlined ≡ basecoat@1.0.2 styles/sera.css .select:not(select) > button:\r\n rounded-none border-transparent border-b-input bg-transparent px-0, no shadow,\r\n no ring, focus-visible:border-b-ring */\r\n[mono-select][mono-variant=\"underlined\"] {\r\n --_mono-select-bg-preset: transparent;\r\n --_mono-select-hover-bg-preset: transparent;\r\n --_mono-select-side-border-color-preset: transparent;\r\n --_mono-select-shadow-preset: 0 0 #0000;\r\n --_mono-select-ring-width-preset: 0px;\r\n --_mono-select-radius-preset: 0;\r\n --_mono-select-padding-x-preset: 0;\r\n}\r\n\r\n/* =========================================\r\n Colours — the `color` prop is the FOCUS colour (ring + focused border)\r\n ========================================= */\r\n\r\n[mono-select]:is(:not([mono-color]), [mono-color=\"primary\"]) {\r\n --_mono-select-ring-color-preset: var(--_mono-select-primary);\r\n}\r\n[mono-select][mono-color=\"secondary\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-secondary);\r\n}\r\n[mono-select][mono-color=\"success\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-success);\r\n}\r\n[mono-select][mono-color=\"danger\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-danger);\r\n}\r\n[mono-select][mono-color=\"warning\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-warning);\r\n}\r\n[mono-select][mono-color=\"info\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-info);\r\n}\r\n[mono-select][mono-color=\"teal\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-teal);\r\n}\r\n[mono-select][mono-color=\"purple\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-purple);\r\n}\r\n[mono-select][mono-color=\"neutral\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-neutral);\r\n}\r\n[mono-select][mono-color=\"dark\"] {\r\n --_mono-select-ring-color-preset: var(--_mono-select-dark);\r\n}\r\n\r\n/* =========================================\r\n Label\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field > label, .label — flex items-center\r\n gap-2 text-sm leading-none font-medium select-none w-fit */\r\n[mono-select] > [mono-label] {\r\n display: flex;\r\n align-items: center;\r\n width: fit-content;\r\n margin: 0 0 var(--_mono-select-gap-y);\r\n gap: var(--mono-select-label-gap, calc(var(--mono-spacing) * 2));\r\n font-size: var(--mono-select-label-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-label-line-height, 1);\r\n font-weight: var(--mono-select-label-font-weight, var(--mono-label-font-weight, var(--mono-font-weight-medium)));\r\n text-transform: var(--mono-select-label-text-transform, none);\r\n letter-spacing: var(--mono-select-label-letter-spacing, normal);\r\n color: var(--_mono-select-text);\r\n user-select: none;\r\n}\r\n\r\n[mono-select][mono-disabled] > [mono-label] {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field — data-invalid:text-destructive */\r\n[mono-select][mono-validation-state=\"invalid\"] > [mono-label] {\r\n color: var(--_mono-select-invalid);\r\n}\r\n\r\n[mono-select] [mono-required-mark] {\r\n color: var(--_mono-select-danger);\r\n}\r\n\r\n/* =========================================\r\n The trigger — the bordered box (a <button>, or a <div> holding the combobox input)\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) > button */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — h-9 gap-1.5\r\n rounded-md border border-input bg-transparent py-2 ps-2.5 pe-2 text-sm shadow-xs\r\n focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50\r\n aria-invalid:… dark:hover:bg-input/50; mono: `--tw-ring-*` flattened to the\r\n ring + shadow slots, the height is the control token (no block padding — the\r\n token owns the height), the side edges read their own slot */\r\n[mono-select] > [mono-trigger] {\r\n --_mono-select-bc: var(--_mono-select-border-color);\r\n --_mono-select-side-bc: var(--mono-select-side-border-color, var(--_mono-select-side-border-color-preset, var(--_mono-select-bc)));\r\n --_mono-select-ring: 0 0 #0000;\r\n\r\n position: relative;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n gap: var(--_mono-select-gap);\r\n width: 100%;\r\n min-width: 0;\r\n min-height: var(--_mono-select-height);\r\n margin: 0;\r\n padding-block: var(--mono-select-padding-y, 0);\r\n padding-inline: var(--_mono-select-padding-start) var(--_mono-select-padding-end);\r\n outline-style: none;\r\n border: var(--mono-border-width) solid var(--_mono-select-bc);\r\n border-top-color: var(--_mono-select-side-bc);\r\n border-inline-color: var(--_mono-select-side-bc);\r\n border-radius: var(--_mono-select-radius);\r\n background: var(--_mono-select-bg);\r\n color: var(--_mono-select-text);\r\n box-shadow: var(--_mono-select-ring), var(--_mono-select-shadow);\r\n font-family: inherit;\r\n font-size: var(--_mono-select-font-size);\r\n line-height: var(--_mono-select-line-height);\r\n font-weight: var(--mono-font-weight-normal);\r\n white-space: nowrap;\r\n text-align: start;\r\n cursor: pointer;\r\n user-select: none;\r\n transition-property: color, box-shadow, border-color, background-color;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration);\r\n\r\n &:focus,\r\n &:focus-visible,\r\n &:focus-within {\r\n outline: none !important;\r\n }\r\n\r\n /* focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 —\r\n the combobox form is a <div> whose <input> takes focus, hence :focus-within */\r\n &:focus-visible,\r\n &:focus-within {\r\n --_mono-select-bc: var(--_mono-select-ring-color);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) color-mix(in oklab, var(--_mono-select-ring-color) var(--_mono-select-ring-alpha), transparent);\r\n }\r\n\r\n & svg,\r\n & [mono-icon] {\r\n pointer-events: none;\r\n flex-shrink: 0;\r\n }\r\n}\r\n\r\n/* dark:hover:bg-input/50 (light: none) — carried by --mono-mode-field-hover-bg */\r\n@media (hover: hover) {\r\n [mono-select]:not([mono-disabled]):not([mono-readonly]):not([mono-ds-loading]) > [mono-trigger]:hover {\r\n background: var(--_mono-select-hover-bg);\r\n }\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button — aria-invalid:border-destructive\r\n aria-invalid:ring-3 aria-invalid:ring-destructive/20 (dark: /50, /40 via the mode tokens) */\r\n[mono-select][mono-validation-state=\"invalid\"] > [mono-trigger],\r\n[mono-select] > [mono-trigger][aria-invalid=\"true\"] {\r\n --_mono-select-bc: var(--mono-mode-invalid-border);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) var(--mono-mode-invalid-ring);\r\n}\r\n\r\n/* EXTENSION — valid / warning are the invalid pattern in the role's colour */\r\n[mono-select][mono-validation-state=\"valid\"] > [mono-trigger] {\r\n --_mono-select-bc: color-mix(in oklab, var(--_mono-select-valid) var(--mono-mode-state-border-alpha), transparent);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) color-mix(in oklab, var(--_mono-select-valid) var(--mono-mode-state-ring-alpha), transparent);\r\n}\r\n[mono-select][mono-validation-state=\"warning\"] > [mono-trigger] {\r\n --_mono-select-bc: color-mix(in oklab, var(--_mono-select-warning) var(--mono-mode-state-border-alpha), transparent);\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) color-mix(in oklab, var(--_mono-select-warning) var(--mono-mode-state-ring-alpha), transparent);\r\n}\r\n\r\n/* EXTENSION — the bound dataSource failed: the invalid outline ONLY. Label,\r\n message and validation state stay as they are; it is not a validation error. */\r\n[mono-select][mono-ds-error] > [mono-trigger] {\r\n --_mono-select-bc: var(--mono-select-ds-error-border, var(--mono-mode-invalid-border));\r\n --_mono-select-ring: 0 0 0 var(--_mono-select-ring-width) var(--mono-select-ds-error-ring, var(--mono-mode-invalid-ring));\r\n}\r\n\r\n[mono-select] [mono-value][mono-ds-error-text] {\r\n color: var(--mono-select-ds-error-text, var(--_mono-select-invalid));\r\n}\r\n\r\n/* EXTENSION — the first load (or a retry) is in flight: read-only, no hover */\r\n[mono-select][mono-ds-loading] > [mono-trigger] {\r\n cursor: progress;\r\n}\r\n\r\n/* EXTENSION — readonly: focusable, on a muted surface, no gestures */\r\n[mono-select][mono-readonly] > [mono-trigger] {\r\n background: var(--mono-select-readonly-bg, var(--muted));\r\n cursor: default;\r\n}\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) > button — disabled:\r\n pointer-events-none cursor-not-allowed opacity-50 */\r\n[mono-select][mono-disabled] > [mono-trigger],\r\n[mono-select] > [mono-trigger]:disabled,\r\n/* a raw readonly select can only disable its native <select>; the root attribute wins */\r\n[mono-select]:not([mono-readonly]) > [mono-trigger]:has(> [mono-native]:disabled) {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n background: var(--mono-select-disabled-bg, var(--_mono-select-bg));\r\n}\r\n\r\n/* =========================================\r\n Value / search field / native <select>\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) > button > span —\r\n flex flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-start */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button > span — gap-1.5 */\r\n[mono-select] [mono-value] {\r\n flex: 1 1 auto;\r\n min-width: 0;\r\n display: flex;\r\n align-items: center;\r\n gap: var(--_mono-select-gap);\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n text-align: start;\r\n color: var(--_mono-select-text);\r\n}\r\n\r\n[mono-select] [mono-value] > span {\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n}\r\n\r\n[mono-select] [mono-value][mono-placeholder] {\r\n color: var(--_mono-select-placeholder);\r\n}\r\n\r\n/* basecoat@1.0.2 components/combobox.css .combobox > input[role='combobox'] — the\r\n search input lives INSIDE our trigger box, so it is borderless like\r\n .input-group > input and the box around it carries the chrome */\r\n[mono-select] [mono-search-field],\r\n[mono-select] [mono-native] {\r\n flex: 1 1 auto;\r\n width: 100%;\r\n min-width: 0;\r\n align-self: stretch;\r\n appearance: none;\r\n margin: 0;\r\n padding: 0;\r\n border: 0;\r\n border-radius: 0;\r\n outline: none;\r\n background: transparent;\r\n box-shadow: none;\r\n color: var(--_mono-select-text);\r\n font: inherit;\r\n line-height: var(--_mono-select-line-height);\r\n\r\n &:focus,\r\n &:focus-visible {\r\n outline: none !important;\r\n }\r\n\r\n &::placeholder {\r\n color: var(--_mono-select-placeholder);\r\n }\r\n\r\n &:disabled {\r\n cursor: not-allowed;\r\n }\r\n}\r\n\r\n[mono-select] [mono-search-field] {\r\n cursor: text;\r\n}\r\n\r\n[mono-select] [mono-native] {\r\n cursor: inherit;\r\n}\r\n\r\n[mono-select] [mono-native] option {\r\n color: var(--_mono-select-text);\r\n background: var(--popover);\r\n}\r\n\r\n/* =========================================\r\n Actions — the chevron and the clear button\r\n ========================================= */\r\n\r\n[mono-select] [mono-actions] {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--mono-spacing);\r\n flex-shrink: 0;\r\n line-height: 1;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) > button > svg — size-4\r\n text-muted-foreground; mono: the glyph sits in a square action box so the\r\n chevron and the clear button occupy the same gutter */\r\n/* basecoat@1.0.2 components/combobox.css .combobox [data-clear] — size-6 border-0\r\n bg-transparent p-0 text-current */\r\n[mono-select] [mono-arrow],\r\n[mono-select] [mono-clear],\r\n[mono-select] [mono-ds-retry],\r\n[mono-select] [mono-ds-spinner] {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n flex-shrink: 0;\r\n width: var(--_mono-select-action);\r\n height: var(--_mono-select-action);\r\n margin: 0;\r\n padding: 0;\r\n border: 0;\r\n border-radius: var(--mono-select-clear-radius, calc(var(--radius) - 5px));\r\n background: transparent;\r\n color: var(--_mono-select-muted);\r\n font: inherit;\r\n line-height: 1;\r\n cursor: pointer;\r\n transition-property: color, background-color, transform;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration);\r\n}\r\n\r\n[mono-select] :is([mono-arrow], [mono-clear], [mono-ds-retry], [mono-ds-spinner]) > :is(svg, .mono-icon, [mono-icon]) {\r\n display: block;\r\n width: var(--_mono-select-icon);\r\n height: var(--_mono-select-icon);\r\n pointer-events: none;\r\n}\r\n\r\n/* EXTENSION — the chevron turns while the panel is open */\r\n[mono-select][mono-open] [mono-arrow] > :is(svg, .mono-icon, [mono-icon]) {\r\n transform: rotate(180deg);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .btn[data-variant='ghost'] — hover:bg-muted\r\n hover:text-foreground (dark:hover:bg-muted/50 via --mono-mode-ghost-hover) */\r\n@media (hover: hover) {\r\n [mono-select] :is([mono-arrow], [mono-clear], [mono-ds-retry]):hover {\r\n background: var(--mono-mode-ghost-hover);\r\n color: var(--_mono-select-text);\r\n }\r\n}\r\n\r\n/* EXTENSION — dataSource state glyphs: the busy arc spins, the ↻ wears the\r\n error colour so it reads as the way out of the red field */\r\n[mono-select] [mono-ds-spinner] {\r\n cursor: progress;\r\n}\r\n\r\n[mono-select] [mono-ds-spinner] > svg {\r\n animation: mono-select-spin 0.7s linear infinite;\r\n}\r\n\r\n[mono-select] [mono-ds-retry] {\r\n color: var(--mono-select-ds-error-text, var(--_mono-select-invalid));\r\n}\r\n\r\n@keyframes mono-select-spin {\r\n to {\r\n transform: rotate(360deg);\r\n }\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce) {\r\n [mono-select] [mono-ds-spinner] > svg {\r\n animation-duration: 2.4s;\r\n }\r\n}\r\n\r\n/* =========================================\r\n The panel\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/popover.css [data-popover] — absolute z-50 min-w-full\r\n overflow-x-hidden; mono: `display: none` while closed (the contents are only\r\n rendered while open), `--mono-popup-z` from the shared popup stack and\r\n `--mono-popup-avail-h` from the portal controller cap the whole panel */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [data-popover] — bg-popover\r\n text-popover-foreground rounded-md shadow-md ring-1 ring-foreground/10; the\r\n `p-1` moves to the scrolling body (the combobox layout), so the scrollbar\r\n never paints over the padding */\r\n[mono-select] > [mono-dropdown] {\r\n position: absolute;\r\n /* `top: auto` = the static position: the panel follows the trigger in the DOM,\r\n so in block flow it lands right under it (the popup controller overrides\r\n this inline for the element; hand-written markup relies on it). */\r\n top: auto;\r\n /* the 6px offset as a transform: the controller writes `transform: none` inline\r\n with its fixed position, so only the hand-written panel is pushed down */\r\n transform: translateY(calc(var(--mono-spacing) * 1.5));\r\n /* Both edges pinned, so the panel matches the field by default. An inline\r\n `width` from `:dropdown.prop=\"{ width }\"` is then the over-constrained case,\r\n which CSS resolves by ignoring `right` — the panel keeps this left edge and\r\n takes the given width. */\r\n left: 0;\r\n right: 0;\r\n z-index: var(--mono-popup-z, 1000);\r\n display: none;\r\n /* Basecoat's `min-w-[max(100%,9rem)]` is relative to the .select box; a portaled\r\n panel is position: fixed, where 100% would be the viewport — the controller\r\n writes the anchor's width inline instead, so only the floor stays. */\r\n min-width: var(--mono-select-dropdown-min-width, 9rem);\r\n max-height: var(--mono-popup-avail-h, none);\r\n overflow: hidden;\r\n isolation: isolate;\r\n border-radius: var(--mono-select-dropdown-radius, var(--mono-radius-md));\r\n background: var(--mono-select-dropdown-bg, var(--popover));\r\n color: var(--mono-select-dropdown-color, var(--popover-foreground));\r\n box-shadow: var(--mono-select-dropdown-ring, 0 0 0 1px color-mix(in oklab, var(--foreground) 10%, transparent)), var(--mono-select-dropdown-shadow, var(--mono-shadow-md));\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n}\r\n\r\n[mono-select][mono-open] > [mono-dropdown] {\r\n /* A flex column (not `block`) so the body can shrink past its own height when\r\n the panel is clamped above. */\r\n display: flex;\r\n flex-direction: column;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .combobox [role='listbox'] — max-h-[min(18rem,\r\n var(--available-height,18rem))] scroll-py-1 overflow-y-auto p-1 */\r\n[mono-select] [mono-dropdown-body] {\r\n flex: 1 1 auto;\r\n min-height: 0;\r\n max-height: 18rem;\r\n padding: var(--mono-select-dropdown-padding, var(--mono-spacing));\r\n overflow: auto;\r\n overscroll-behavior: contain;\r\n scroll-padding-block: var(--mono-select-dropdown-padding, var(--mono-spacing));\r\n outline-style: none;\r\n}\r\n\r\n/* =========================================\r\n Options\r\n -----------------------------------------\r\n Each rule also lists the stamped twin of a row rendered through `slot=\"list\"`\r\n (`[data-mono-type='row']`, `[data-mono-active]`, `[data-mono-selected]`), so\r\n the two can never drift: what you render in the slot IS an option. `:where()`\r\n wraps only the CONTAINER, keeping the twin at attribute weight.\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) [role='option'] — relative\r\n flex w-full cursor-default items-center overflow-hidden text-ellipsis whitespace-\r\n nowrap outline-none select-none; disabled: pointer-events-none opacity-50 */\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='option'] — gap-2\r\n rounded-sm py-1.5 ps-2 pe-8 text-sm, svg size-4 */\r\n[mono-select] [mono-item],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'] {\r\n position: relative;\r\n display: flex;\r\n width: 100%;\r\n align-items: center;\r\n gap: var(--mono-select-option-gap, calc(var(--mono-spacing) * 2));\r\n margin: 0;\r\n padding-block: var(--mono-select-option-padding-y, calc(var(--mono-spacing) * 1.5));\r\n padding-inline: var(--mono-select-option-padding-x, calc(var(--mono-spacing) * 2)) var(--mono-select-option-padding-end, calc(var(--mono-spacing) * 8));\r\n min-height: var(--mono-select-option-min-height, 0);\r\n border: 0;\r\n border-radius: var(--mono-select-option-radius, var(--mono-radius-sm));\r\n /* longhands, so the selected row's check (a background-image) survives the\r\n active / hover background */\r\n background-color: transparent;\r\n background-image: none;\r\n color: var(--_mono-select-text);\r\n font-family: inherit;\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n font-weight: var(--mono-select-option-font-weight, var(--mono-font-weight-normal));\r\n text-align: start;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n outline-style: none;\r\n user-select: none;\r\n cursor: default;\r\n transition-property: color, background-color;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration-fast);\r\n}\r\n\r\n/* EXTENSION: a hair of air between rows. Upstream stacks its options flush, so an\r\n active row directly under the selected one read as ONE tall highlight; a 2px\r\n seam keeps the two rounded-sm washes apart. `--mono-select-option-spacing`. */\r\n[mono-select] [mono-item] + [mono-item],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'] + [data-mono-type='row'] {\r\n margin-top: var(--mono-select-option-spacing, 2px);\r\n}\r\n\r\n[mono-select] [mono-item] svg:not([class*='size-']),\r\n[mono-select] [mono-item] .mono-icon {\r\n width: var(--_mono-select-icon);\r\n height: var(--_mono-select-icon);\r\n flex-shrink: 0;\r\n pointer-events: none;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='option'].active, .select:not(select) [role='option']:focus-visible\r\n — bg-muted text-foreground. The keyboard cursor and the pointer share one look. */\r\n[mono-select] [mono-item][mono-active]:not([mono-disabled]):not(:disabled),\r\n[mono-select] [mono-item]:focus-visible,\r\n[mono-select] :where([mono-list-slot]) [data-mono-active] {\r\n background-color: var(--mono-select-option-active-bg, var(--muted));\r\n color: var(--mono-select-option-active-color, var(--_mono-select-text));\r\n}\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select):not([data-select-initialized]) [role='option']:not([aria-disabled='true']):not(:disabled):hover, .select:not(select) [role='option'].active\r\n — the pointer highlight is NOT behind (hover: hover) upstream */\r\n[mono-select] [mono-item]:hover:not([mono-disabled]):not(:disabled),\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row']:hover {\r\n background-color: var(--mono-select-option-active-bg, var(--muted));\r\n color: var(--mono-select-option-active-color, var(--_mono-select-text));\r\n}\r\n\r\n/* basecoat@1.0.2 components/select.css .select:not(select) [role='option'][aria-selected='true']\r\n — the --check-icon at the end (bg-size .875rem, center right .5rem) */\r\n[mono-select] [mono-item][mono-selected],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'][data-mono-selected] {\r\n background-image: var(--mono-select-check-icon, var(--check-icon));\r\n background-size: var(--mono-select-check-size, 0.875rem);\r\n background-position: center right calc(var(--mono-spacing) * 2);\r\n background-repeat: no-repeat;\r\n font-weight: var(--mono-select-option-selected-font-weight, var(--mono-select-option-font-weight, var(--mono-font-weight-normal)));\r\n}\r\n\r\n[mono-select] [mono-item][mono-selected]:dir(rtl),\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='row'][data-mono-selected]:dir(rtl) {\r\n background-position: center left calc(var(--mono-spacing) * 2);\r\n}\r\n\r\n[mono-select] [mono-item][mono-disabled],\r\n[mono-select] [mono-item]:disabled {\r\n opacity: 0.5;\r\n pointer-events: none;\r\n cursor: not-allowed;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='listbox']:not(:has([data-value]:not([aria-hidden='true'])))::before\r\n — py-6 text-center text-sm (the \"No results found\" row) */\r\n[mono-select] [mono-empty-row] {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding-block: calc(var(--mono-spacing) * 6);\r\n padding-inline: calc(var(--mono-spacing) * 3);\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n color: var(--_mono-select-muted);\r\n text-align: center;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n cursor: default;\r\n user-select: none;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .select:not(select) [role='heading'] — px-2 py-1.5\r\n text-xs text-muted-foreground; EXTENSION: one indent step per nesting level */\r\n[mono-select] [mono-group],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'] {\r\n --_ms-group-level: 0;\r\n padding-block: var(--mono-select-group-padding-y, calc(var(--mono-spacing) * 1.5));\r\n padding-inline: var(--mono-select-group-padding-x, calc(var(--mono-spacing) * 2));\r\n padding-inline-start: calc(var(--mono-select-group-padding-x, calc(var(--mono-spacing) * 2)) + var(--_ms-group-level) * calc(var(--mono-spacing) * 2));\r\n font-size: var(--mono-select-group-font-size, var(--mono-text-xs));\r\n line-height: var(--mono-select-group-line-height, var(--mono-text-xs--lh));\r\n font-weight: var(--mono-select-group-font-weight, var(--mono-font-weight-normal));\r\n text-transform: var(--mono-select-group-text-transform, none);\r\n letter-spacing: var(--mono-select-group-letter-spacing, normal);\r\n color: var(--_mono-select-muted);\r\n cursor: default;\r\n user-select: none;\r\n}\r\n\r\n[mono-select] [mono-group][mono-level='1'],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'][data-mono-level='1'] { --_ms-group-level: 1; }\r\n[mono-select] [mono-group][mono-level='2'],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'][data-mono-level='2'] { --_ms-group-level: 2; }\r\n[mono-select] [mono-group][mono-level='3'],\r\n[mono-select] :where([mono-list-slot]) [data-mono-type='group'][data-mono-level='3'] { --_ms-group-level: 3; }\r\n\r\n/* group-sticky: pin headers while their rows scroll; nested levels stack on the\r\n panel's own surface so options scroll cleanly underneath. */\r\n[mono-select] [mono-group][mono-sticky] {\r\n position: sticky;\r\n top: calc(var(--_ms-group-level) * 1.5rem);\r\n z-index: calc(5 - var(--_ms-group-level));\r\n background: var(--mono-select-dropdown-bg, var(--popover));\r\n}\r\n\r\n/* EXTENSION — the load-more affordance: an option-shaped ghost button */\r\n[mono-select] [mono-load-more] {\r\n display: flex;\r\n width: 100%;\r\n align-items: center;\r\n justify-content: center;\r\n gap: var(--mono-select-option-gap, calc(var(--mono-spacing) * 2));\r\n margin: 0;\r\n padding-block: var(--mono-select-option-padding-y, calc(var(--mono-spacing) * 1.5));\r\n padding-inline: var(--mono-select-option-padding-x, calc(var(--mono-spacing) * 2));\r\n border: 0;\r\n border-radius: var(--mono-select-option-radius, var(--mono-radius-sm));\r\n background: transparent;\r\n color: var(--_mono-select-muted);\r\n font-family: inherit;\r\n font-size: var(--mono-select-option-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-option-line-height, var(--mono-text-sm--lh));\r\n font-weight: var(--mono-font-weight-medium);\r\n cursor: pointer;\r\n transition-property: color, background-color;\r\n transition-timing-function: var(--mono-ease);\r\n transition-duration: var(--mono-duration-fast);\r\n}\r\n\r\n@media (hover: hover) {\r\n [mono-select] [mono-load-more]:hover:not([mono-loading]) {\r\n background-color: var(--mono-select-option-active-bg, var(--muted));\r\n color: var(--_mono-select-text);\r\n }\r\n}\r\n\r\n[mono-select] [mono-load-more][mono-loading] {\r\n cursor: default;\r\n opacity: 0.7;\r\n}\r\n\r\n/* Consumer-rendered option rows (slot=\"list\"). `display: contents` so mono's own\r\n placement wrapper generates no box: the rows the consumer writes lay out as if\r\n they were direct children of the panel. */\r\n[mono-select] [mono-list-slot] {\r\n display: contents;\r\n}\r\n\r\n/* =========================================\r\n Message — helper / validation text under the field\r\n ========================================= */\r\n\r\n/* basecoat@1.0.2 styles/vega.css .fieldset legend + p, .field > p, .field section > p\r\n — text-sm text-muted-foreground leading-normal font-normal */\r\n[mono-select] > [mono-message-wrap] {\r\n display: block;\r\n margin-top: var(--_mono-select-gap-y);\r\n}\r\n\r\n[mono-select] > [mono-message-wrap]:not(:has([mono-message]:not([mono-empty]))) {\r\n display: none;\r\n}\r\n\r\n[mono-select] [mono-message] {\r\n font-size: var(--mono-select-message-font-size, var(--mono-text-sm));\r\n line-height: var(--mono-select-message-line-height, var(--mono-leading-normal));\r\n font-weight: var(--mono-font-weight-normal);\r\n text-align: start;\r\n color: var(--_mono-select-muted);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field [role=\"alert\"] — text-destructive text-sm */\r\n[mono-select] [mono-message=\"invalid\"] {\r\n color: var(--_mono-select-invalid);\r\n}\r\n\r\n[mono-select] [mono-message=\"valid\"] {\r\n color: var(--_mono-select-valid);\r\n}\r\n\r\n[mono-select] [mono-message=\"warning\"] {\r\n color: var(--_mono-select-warning);\r\n}\r\n\r\n@media (prefers-reduced-motion: reduce) {\r\n [mono-select] > [mono-trigger],\r\n [mono-select] [mono-arrow],\r\n [mono-select] [mono-clear],\r\n [mono-select] [mono-item] {\r\n transition: none;\r\n }\r\n}\r\n";
2031
+
2028
2032
  //#endregion
2029
2033
  //#region src/components/select/mono-select.shadow.ts
2030
- var SHADOW_EXTRA_CSS = `
2034
+ const SHADOW_EXTRA_CSS = `
2031
2035
  [mono-value] > slot[name='prefix'],
2032
2036
  [mono-value] > slot[name='suffix'] {
2033
2037
  display: contents;
2034
2038
  }
2035
2039
  `;
2036
- var MonoSelectShadow = class MonoSelectShadow extends withShadowUtilityStyles(MonoSelectCore(LitElement)) {
2040
+ let MonoSelectShadow = class MonoSelectShadow extends withShadowUtilityStyles(MonoSelectCore(LitElement)) {
2037
2041
  static {
2038
2042
  this.disableWarning?.("change-in-update");
2039
2043
  }
2040
2044
  static {
2041
- this.styles = [unsafeCSS(toShadowCss(select_default, {
2045
+ this.styles = [unsafeCSS(toShadowCss(select_css_raw_default, {
2042
2046
  host: "mono-select",
2043
2047
  append: SHADOW_EXTRA_CSS
2044
2048
  }))];
@@ -2123,6 +2127,7 @@ var MonoSelectShadow = class MonoSelectShadow extends withShadowUtilityStyles(Mo
2123
2127
  }
2124
2128
  };
2125
2129
  MonoSelectShadow = __decorate([customElement("mono-shadow-select")], MonoSelectShadow);
2130
+
2126
2131
  //#endregion
2127
2132
  //#region src/components/select/select-utils.ts
2128
2133
  function validateSelectProps(props) {
@@ -2163,5 +2168,6 @@ function validateSelectProps(props) {
2163
2168
  if (props.validationState && !validStates.includes(props.validationState)) return false;
2164
2169
  return true;
2165
2170
  }
2171
+
2166
2172
  //#endregion
2167
- export { MonoSelectCore, MonoSelectShadow, validateSelectProps };
2173
+ export { MonoSelectCore, MonoSelectShadow, validateSelectProps };