@mono-lit/helper 0.0.0-stage → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (539) hide show
  1. package/LICENSE.md +55 -0
  2. package/README.md +35 -3
  3. package/dist/breakpoints-CAbhDUht.js +84 -0
  4. package/dist/checkbox-Cqpie9Ap.js +4 -0
  5. package/dist/chip-DBUUa2eB.js +4 -0
  6. package/dist/chip-limits-BMoO31JM.js +213 -0
  7. package/dist/chip-strip-Cw3gyz0q.js +213 -0
  8. package/dist/color-DHYrfXsX.js +253 -0
  9. package/dist/css-class-BRKRzHx-.js +60 -0
  10. package/dist/css-size-DhHSVZJK.js +37 -0
  11. package/dist/data/theme/presets.json.d.ts +140 -0
  12. package/dist/data-source-controller-B_rgHCjw.js +241 -0
  13. package/dist/data-source-controller-Dbb4fd8I.js +241 -0
  14. package/dist/data-source-options-CP-X62Pa.js +535 -0
  15. package/dist/data-source-options-Jqj7LU3Z.js +537 -0
  16. package/dist/data-source-read-B4DGp6UQ.js +216 -0
  17. package/dist/data-source-read-DL88aH8t.js +217 -0
  18. package/dist/decorate-DEXtNagw.js +141 -0
  19. package/dist/element-props-CLB6yvbm.js +114 -0
  20. package/dist/esm-Ptok4SQZ.js +2026 -0
  21. package/dist/excel-CY6zGkcx.js +608 -0
  22. package/dist/excel-DopRbEMK.js +608 -0
  23. package/dist/export-BiGVyxt6.js +2302 -0
  24. package/dist/export.d.ts +1 -0
  25. package/dist/export.js +2302 -0
  26. package/dist/field-icons-DELrSdqJ.js +86 -0
  27. package/dist/field-path-C92eGLg3.js +251 -0
  28. package/dist/filter-builder-Bke3qOgJ.js +205 -0
  29. package/dist/filter-builder-CE4zE0V5.js +205 -0
  30. package/dist/filter-eval-DIfU2EAn.js +173 -0
  31. package/dist/filter-odata-C1vSGZaY.js +591 -0
  32. package/dist/form-control-core-B8d7k6vk.js +223 -0
  33. package/dist/form-control-core-eeRr0zLU.js +223 -0
  34. package/dist/hydration-flush-RB5Tz5nl.js +1001 -0
  35. package/dist/icon-CJkTlmTb.js +55 -0
  36. package/dist/icon-dVhYJUIH.js +17 -0
  37. package/dist/import-BgJdkwBI.js +606 -0
  38. package/dist/import.d.ts +1 -0
  39. package/dist/import.js +606 -0
  40. package/dist/index.d.ts +1 -0
  41. package/dist/index.js +16 -0
  42. package/dist/index.node-BIqEGehH.js +396 -0
  43. package/dist/index.node.d.ts +1 -0
  44. package/dist/index.node.js +16 -0
  45. package/dist/input-zGOULADt.js +4 -0
  46. package/dist/layout-var-CZnzMC0s.js +73 -0
  47. package/dist/light-slots-BVJwyg_2.js +244 -0
  48. package/dist/light-slots-DW1WgfgT.js +254 -0
  49. package/dist/markdown-DfqrfOJN.js +20146 -0
  50. package/dist/mono-button-simcTQdW.js +873 -0
  51. package/dist/mono-button.shadow-B_rKOY9N.js +784 -0
  52. package/dist/mono-data-chart-CEv29_NS.js +779 -0
  53. package/dist/mono-data-dropdown-Wnoke6zO.js +357 -0
  54. package/dist/mono-data-grid-CjkEqxgE.js +3913 -0
  55. package/dist/mono-data-grid-YjR3n9Ar.js +3915 -0
  56. package/dist/mono-element-B0kP_96P.js +232 -0
  57. package/dist/mono-event-Bi1qP9uN.js +129 -0
  58. package/dist/mono-form-controller-5PfsU4qa.js +409 -0
  59. package/dist/mono-modal-controller-BMO3n3rP.js +223 -0
  60. package/dist/mono-ui-CPV7rrdo.js +358 -0
  61. package/dist/normalize-error-Gcgmgh5i.js +871 -0
  62. package/dist/notifier-CE4yxMUQ.js +88 -0
  63. package/dist/nuxt.d.ts +1 -0
  64. package/dist/nuxt.js +130 -0
  65. package/dist/popup-portal-BziRX1yG.js +465 -0
  66. package/dist/popup-stack-CEEMib__.js +189 -0
  67. package/dist/rate-limit-BBa2PO79.js +521 -0
  68. package/dist/reactive-D3EERqgO.js +47 -0
  69. package/dist/reactive-Di3mTMnV.js +1087 -0
  70. package/dist/search.d.ts +1 -0
  71. package/dist/search.js +97 -0
  72. package/dist/src/components/accordion/accordion-core.d.ts +62 -0
  73. package/dist/src/components/accordion/accordion-types.d.ts +62 -0
  74. package/dist/src/components/accordion/index.d.ts +3 -0
  75. package/dist/src/components/accordion/index.shadow.d.ts +5 -0
  76. package/dist/src/components/accordion/mono-accordion.d.ts +55 -0
  77. package/dist/src/components/accordion/mono-accordion.shadow.d.ts +56 -0
  78. package/dist/src/components/alert/alert-core.d.ts +46 -0
  79. package/dist/src/components/alert/alert-types.d.ts +44 -0
  80. package/dist/src/components/alert/index.d.ts +3 -0
  81. package/dist/src/components/alert/index.shadow.d.ts +5 -0
  82. package/dist/src/components/alert/mono-alert.d.ts +44 -0
  83. package/dist/src/components/alert/mono-alert.shadow.d.ts +34 -0
  84. package/dist/src/components/breadcrumb/breadcrumb-core.d.ts +61 -0
  85. package/dist/src/components/breadcrumb/breadcrumb-list-core.d.ts +49 -0
  86. package/dist/src/components/breadcrumb/breadcrumb-render.d.ts +31 -0
  87. package/dist/src/components/breadcrumb/breadcrumb-types.d.ts +117 -0
  88. package/dist/src/components/breadcrumb/breadcrumb-utils.d.ts +43 -0
  89. package/dist/src/components/breadcrumb/index.d.ts +6 -0
  90. package/dist/src/components/breadcrumb/index.shadow.d.ts +8 -0
  91. package/dist/src/components/breadcrumb/mono-breadcrumb-list.d.ts +29 -0
  92. package/dist/src/components/breadcrumb/mono-breadcrumb-list.shadow.d.ts +48 -0
  93. package/dist/src/components/breadcrumb/mono-breadcrumb.d.ts +38 -0
  94. package/dist/src/components/breadcrumb/mono-breadcrumb.shadow.d.ts +73 -0
  95. package/dist/src/components/button/button-core.d.ts +90 -0
  96. package/dist/src/components/button/button-dropdown-core.d.ts +57 -0
  97. package/dist/src/components/button/button-dropdown-types.d.ts +129 -0
  98. package/dist/src/components/button/button-types.d.ts +219 -0
  99. package/dist/src/components/button/button-utils.d.ts +18 -0
  100. package/dist/src/components/button/index.button-dropdown.d.ts +4 -0
  101. package/dist/src/components/button/index.button-dropdown.shadow.d.ts +4 -0
  102. package/dist/src/components/button/index.d.ts +8 -0
  103. package/dist/src/components/button/index.shadow.d.ts +5 -0
  104. package/dist/src/components/button/mono-button-dropdown.d.ts +35 -0
  105. package/dist/src/components/button/mono-button-dropdown.shadow.d.ts +45 -0
  106. package/dist/src/components/button/mono-button.d.ts +123 -0
  107. package/dist/src/components/button/mono-button.shadow.d.ts +56 -0
  108. package/dist/src/components/card/card-core.d.ts +75 -0
  109. package/dist/src/components/card/card-types.d.ts +137 -0
  110. package/dist/src/components/card/card-utils.d.ts +23 -0
  111. package/dist/src/components/card/index.d.ts +4 -0
  112. package/dist/src/components/card/index.shadow.d.ts +6 -0
  113. package/dist/src/components/card/mono-card.d.ts +56 -0
  114. package/dist/src/components/card/mono-card.shadow.d.ts +52 -0
  115. package/dist/src/components/chart/chart-core.d.ts +43 -0
  116. package/dist/src/components/chart/chart-odata.d.ts +52 -0
  117. package/dist/src/components/chart/chart-types.d.ts +356 -0
  118. package/dist/src/components/chart/index.d.ts +8 -0
  119. package/dist/src/components/chart/index.shadow.d.ts +7 -0
  120. package/dist/src/components/chart/mono-chart-presets.d.ts +43 -0
  121. package/dist/src/components/chart/mono-chart-presets.shadow.d.ts +43 -0
  122. package/dist/src/components/chart/mono-chart.d.ts +30 -0
  123. package/dist/src/components/chart/mono-chart.shadow.d.ts +22 -0
  124. package/dist/src/components/chart/mono-data-chart.d.ts +27 -0
  125. package/dist/src/components/checkbox/checkbox-core.d.ts +53 -0
  126. package/dist/src/components/checkbox/checkbox-types.d.ts +69 -0
  127. package/dist/src/components/checkbox/checkbox-utils.d.ts +35 -0
  128. package/dist/src/components/checkbox/index.d.ts +4 -0
  129. package/dist/src/components/checkbox/index.shadow.d.ts +5 -0
  130. package/dist/src/components/checkbox/mono-checkbox.d.ts +34 -0
  131. package/dist/src/components/checkbox/mono-checkbox.shadow.d.ts +45 -0
  132. package/dist/src/components/chip/chip-core.d.ts +58 -0
  133. package/dist/src/components/chip/chip-types.d.ts +142 -0
  134. package/dist/src/components/chip/chip-utils.d.ts +24 -0
  135. package/dist/src/components/chip/index.d.ts +8 -0
  136. package/dist/src/components/chip/index.shadow.d.ts +6 -0
  137. package/dist/src/components/chip/mono-chip.d.ts +48 -0
  138. package/dist/src/components/chip/mono-chip.shadow.d.ts +33 -0
  139. package/dist/src/components/chip/mono-status-dot.d.ts +34 -0
  140. package/dist/src/components/date/date-core.d.ts +80 -0
  141. package/dist/src/components/date/date-types.d.ts +163 -0
  142. package/dist/src/components/date/index.d.ts +3 -0
  143. package/dist/src/components/date/index.shadow.d.ts +4 -0
  144. package/dist/src/components/date/mono-date.d.ts +22 -0
  145. package/dist/src/components/date/mono-date.shadow.d.ts +31 -0
  146. package/dist/src/components/drawer/drawer-core.d.ts +99 -0
  147. package/dist/src/components/drawer/drawer-types.d.ts +153 -0
  148. package/dist/src/components/drawer/index.d.ts +3 -0
  149. package/dist/src/components/drawer/index.shadow.d.ts +4 -0
  150. package/dist/src/components/drawer/mono-drawer.d.ts +45 -0
  151. package/dist/src/components/drawer/mono-drawer.shadow.d.ts +46 -0
  152. package/dist/src/components/dropdown/dropdown-core.d.ts +33 -0
  153. package/dist/src/components/dropdown/dropdown-types.d.ts +88 -0
  154. package/dist/src/components/dropdown/index.d.ts +3 -0
  155. package/dist/src/components/dropdown/index.shadow.d.ts +4 -0
  156. package/dist/src/components/dropdown/mono-dropdown.d.ts +34 -0
  157. package/dist/src/components/dropdown/mono-dropdown.shadow.d.ts +28 -0
  158. package/dist/src/components/dropdown-table/dropdown-table-core.d.ts +65 -0
  159. package/dist/src/components/dropdown-table/dropdown-table-types.d.ts +278 -0
  160. package/dist/src/components/dropdown-table/index.d.ts +5 -0
  161. package/dist/src/components/dropdown-table/index.shadow.d.ts +6 -0
  162. package/dist/src/components/dropdown-table/mono-data-dropdown.d.ts +152 -0
  163. package/dist/src/components/dropdown-table/mono-dropdown-table.d.ts +46 -0
  164. package/dist/src/components/dropdown-table/mono-dropdown-table.shadow.d.ts +22 -0
  165. package/dist/src/components/file-upload/file-upload-core.d.ts +60 -0
  166. package/dist/src/components/file-upload/file-upload-types.d.ts +145 -0
  167. package/dist/src/components/file-upload/file-upload-utils.d.ts +16 -0
  168. package/dist/src/components/file-upload/index.d.ts +4 -0
  169. package/dist/src/components/file-upload/index.shadow.d.ts +5 -0
  170. package/dist/src/components/file-upload/mono-file-upload.d.ts +33 -0
  171. package/dist/src/components/file-upload/mono-file-upload.shadow.d.ts +50 -0
  172. package/dist/src/components/filter/filter-builder-core.d.ts +36 -0
  173. package/dist/src/components/filter/filter-builder.d.ts +23 -0
  174. package/dist/src/components/filter/filter-odata.d.ts +27 -0
  175. package/dist/src/components/filter/filter-operators.d.ts +13 -0
  176. package/dist/src/components/filter/filter-types.d.ts +253 -0
  177. package/dist/src/components/filter/index.d.ts +6 -0
  178. package/dist/src/components/filter/index.shadow.d.ts +7 -0
  179. package/dist/src/components/filter/mono-filter-builder.d.ts +21 -0
  180. package/dist/src/components/filter/mono-filter-builder.shadow.d.ts +17 -0
  181. package/dist/src/components/form/form-control-core.d.ts +37 -0
  182. package/dist/src/components/form/form-rules.d.ts +25 -0
  183. package/dist/src/components/form/form-types.d.ts +307 -0
  184. package/dist/src/components/form/index.d.ts +6 -0
  185. package/dist/src/components/form/mono-form-controller.d.ts +16 -0
  186. package/dist/src/components/input/index.d.ts +6 -0
  187. package/dist/src/components/input/index.shadow.d.ts +8 -0
  188. package/dist/src/components/input/input-core.d.ts +91 -0
  189. package/dist/src/components/input/input-format.d.ts +118 -0
  190. package/dist/src/components/input/input-types.d.ts +179 -0
  191. package/dist/src/components/input/input-utils.d.ts +10 -0
  192. package/dist/src/components/input/mono-input.d.ts +46 -0
  193. package/dist/src/components/input/mono-input.shadow.d.ts +34 -0
  194. package/dist/src/components/menu/index.d.ts +6 -0
  195. package/dist/src/components/menu/index.shadow.d.ts +7 -0
  196. package/dist/src/components/menu/menu-core.d.ts +65 -0
  197. package/dist/src/components/menu/menu-render.d.ts +55 -0
  198. package/dist/src/components/menu/menu-types.d.ts +195 -0
  199. package/dist/src/components/menu/menu-utils.d.ts +53 -0
  200. package/dist/src/components/menu/mono-menu-list.d.ts +118 -0
  201. package/dist/src/components/menu/mono-menu.d.ts +39 -0
  202. package/dist/src/components/menu/mono-menu.shadow.d.ts +40 -0
  203. package/dist/src/components/modal/index.d.ts +4 -0
  204. package/dist/src/components/modal/index.shadow.d.ts +5 -0
  205. package/dist/src/components/modal/modal-core.d.ts +110 -0
  206. package/dist/src/components/modal/modal-types.d.ts +304 -0
  207. package/dist/src/components/modal/mono-modal-controller.d.ts +4 -0
  208. package/dist/src/components/modal/mono-modal.d.ts +45 -0
  209. package/dist/src/components/modal/mono-modal.shadow.d.ts +50 -0
  210. package/dist/src/components/nav/index.d.ts +4 -0
  211. package/dist/src/components/nav/index.shadow.d.ts +6 -0
  212. package/dist/src/components/nav/mono-nav.d.ts +41 -0
  213. package/dist/src/components/nav/mono-nav.shadow.d.ts +21 -0
  214. package/dist/src/components/nav/nav-core.d.ts +34 -0
  215. package/dist/src/components/nav/nav-types.d.ts +48 -0
  216. package/dist/src/components/nav/nav-utils.d.ts +12 -0
  217. package/dist/src/components/radio/index.d.ts +4 -0
  218. package/dist/src/components/radio/index.shadow.d.ts +5 -0
  219. package/dist/src/components/radio/mono-radio.d.ts +31 -0
  220. package/dist/src/components/radio/mono-radio.shadow.d.ts +35 -0
  221. package/dist/src/components/radio/radio-core.d.ts +45 -0
  222. package/dist/src/components/radio/radio-types.d.ts +58 -0
  223. package/dist/src/components/radio/radio-utils.d.ts +12 -0
  224. package/dist/src/components/rich-text-editor/index.d.ts +5 -0
  225. package/dist/src/components/rich-text-editor/index.shadow.d.ts +6 -0
  226. package/dist/src/components/rich-text-editor/mono-rich-text-editor.d.ts +31 -0
  227. package/dist/src/components/rich-text-editor/mono-rich-text-editor.shadow.d.ts +34 -0
  228. package/dist/src/components/rich-text-editor/rich-text-editor-core.d.ts +100 -0
  229. package/dist/src/components/rich-text-editor/rich-text-editor-loader.d.ts +17 -0
  230. package/dist/src/components/rich-text-editor/rich-text-editor-toolbar.d.ts +65 -0
  231. package/dist/src/components/rich-text-editor/rich-text-editor-types.d.ts +231 -0
  232. package/dist/src/components/select/index.d.ts +4 -0
  233. package/dist/src/components/select/index.shadow.d.ts +5 -0
  234. package/dist/src/components/select/mono-select.d.ts +69 -0
  235. package/dist/src/components/select/mono-select.shadow.d.ts +48 -0
  236. package/dist/src/components/select/select-core.d.ts +98 -0
  237. package/dist/src/components/select/select-types.d.ts +284 -0
  238. package/dist/src/components/select/select-utils.d.ts +7 -0
  239. package/dist/src/components/sidebar/index.d.ts +4 -0
  240. package/dist/src/components/sidebar/index.shadow.d.ts +6 -0
  241. package/dist/src/components/sidebar/mono-sidebar.d.ts +34 -0
  242. package/dist/src/components/sidebar/mono-sidebar.shadow.d.ts +27 -0
  243. package/dist/src/components/sidebar/sidebar-core.d.ts +51 -0
  244. package/dist/src/components/sidebar/sidebar-types.d.ts +119 -0
  245. package/dist/src/components/sidebar/sidebar-utils.d.ts +55 -0
  246. package/dist/src/components/switch/index.d.ts +4 -0
  247. package/dist/src/components/switch/index.shadow.d.ts +5 -0
  248. package/dist/src/components/switch/mono-switch.d.ts +31 -0
  249. package/dist/src/components/switch/mono-switch.shadow.d.ts +36 -0
  250. package/dist/src/components/switch/switch-core.d.ts +49 -0
  251. package/dist/src/components/switch/switch-types.d.ts +64 -0
  252. package/dist/src/components/switch/switch-utils.d.ts +12 -0
  253. package/dist/src/components/table/array-source.d.ts +44 -0
  254. package/dist/src/components/table/date-filter-tree.d.ts +93 -0
  255. package/dist/src/components/table/grouping.d.ts +55 -0
  256. package/dist/src/components/table/index.d.ts +33 -0
  257. package/dist/src/components/table/index.shadow.d.ts +47 -0
  258. package/dist/src/components/table/mono-data-grid.d.ts +1756 -0
  259. package/dist/src/components/table/mono-table-checkbox-core.d.ts +76 -0
  260. package/dist/src/components/table/mono-table-checkbox.d.ts +34 -0
  261. package/dist/src/components/table/mono-table-checkbox.shadow.d.ts +26 -0
  262. package/dist/src/components/table/mono-table-detail-core.d.ts +87 -0
  263. package/dist/src/components/table/mono-table-detail.d.ts +32 -0
  264. package/dist/src/components/table/mono-table-detail.shadow.d.ts +31 -0
  265. package/dist/src/components/table/mono-table-empty-core.d.ts +60 -0
  266. package/dist/src/components/table/mono-table-empty.d.ts +35 -0
  267. package/dist/src/components/table/mono-table-empty.shadow.d.ts +40 -0
  268. package/dist/src/components/table/mono-table-error-core.d.ts +84 -0
  269. package/dist/src/components/table/mono-table-error.d.ts +28 -0
  270. package/dist/src/components/table/mono-table-error.shadow.d.ts +21 -0
  271. package/dist/src/components/table/mono-table-info-core.d.ts +13 -0
  272. package/dist/src/components/table/mono-table-info.d.ts +19 -0
  273. package/dist/src/components/table/mono-table-info.shadow.d.ts +14 -0
  274. package/dist/src/components/table/mono-table-loading-core.d.ts +41 -0
  275. package/dist/src/components/table/mono-table-loading.d.ts +50 -0
  276. package/dist/src/components/table/mono-table-loading.shadow.d.ts +14 -0
  277. package/dist/src/components/table/mono-table-page-size-core.d.ts +14 -0
  278. package/dist/src/components/table/mono-table-page-size.d.ts +16 -0
  279. package/dist/src/components/table/mono-table-page-size.shadow.d.ts +11 -0
  280. package/dist/src/components/table/mono-table-paging-core.d.ts +22 -0
  281. package/dist/src/components/table/mono-table-paging-group-core.d.ts +18 -0
  282. package/dist/src/components/table/mono-table-paging-group.d.ts +20 -0
  283. package/dist/src/components/table/mono-table-paging-group.shadow.d.ts +13 -0
  284. package/dist/src/components/table/mono-table-paging.d.ts +16 -0
  285. package/dist/src/components/table/mono-table-paging.shadow.d.ts +11 -0
  286. package/dist/src/components/table/mono-table-search-core.d.ts +74 -0
  287. package/dist/src/components/table/mono-table-search.d.ts +34 -0
  288. package/dist/src/components/table/mono-table-search.shadow.d.ts +21 -0
  289. package/dist/src/components/table/mono-table-sort-core.d.ts +35 -0
  290. package/dist/src/components/table/mono-table-sort.d.ts +38 -0
  291. package/dist/src/components/table/mono-table-sort.shadow.d.ts +20 -0
  292. package/dist/src/components/table/mono-table-summary-core.d.ts +26 -0
  293. package/dist/src/components/table/mono-table-summary.d.ts +24 -0
  294. package/dist/src/components/table/mono-table-summary.shadow.d.ts +14 -0
  295. package/dist/src/components/table/mono-table-th-core.d.ts +56 -0
  296. package/dist/src/components/table/mono-table-th.d.ts +41 -0
  297. package/dist/src/components/table/mono-table-th.shadow.d.ts +19 -0
  298. package/dist/src/components/table/store-group-source.d.ts +24 -0
  299. package/dist/src/components/table/table-controller-core.d.ts +40 -0
  300. package/dist/src/components/table/table-filter-icons.d.ts +3 -0
  301. package/dist/src/components/table/table-menu-core.d.ts +65 -0
  302. package/dist/src/components/table/table-overlay.d.ts +165 -0
  303. package/dist/src/components/table/table-sort-icons.d.ts +4 -0
  304. package/dist/src/components/table/table-sort-utils.d.ts +20 -0
  305. package/dist/src/components/table/table-types.d.ts +475 -0
  306. package/dist/src/components/tabs/index.d.ts +3 -0
  307. package/dist/src/components/tabs/index.shadow.d.ts +4 -0
  308. package/dist/src/components/tabs/mono-tabs.d.ts +33 -0
  309. package/dist/src/components/tabs/mono-tabs.shadow.d.ts +37 -0
  310. package/dist/src/components/tabs/tabs-core.d.ts +57 -0
  311. package/dist/src/components/tabs/tabs-types.d.ts +65 -0
  312. package/dist/src/components/tag-input/index.d.ts +4 -0
  313. package/dist/src/components/tag-input/index.shadow.d.ts +5 -0
  314. package/dist/src/components/tag-input/mono-tag-input.d.ts +66 -0
  315. package/dist/src/components/tag-input/mono-tag-input.shadow.d.ts +40 -0
  316. package/dist/src/components/tag-input/tag-input-core.d.ts +108 -0
  317. package/dist/src/components/tag-input/tag-input-types.d.ts +420 -0
  318. package/dist/src/components/tag-input/tag-input-utils.d.ts +8 -0
  319. package/dist/src/components/textarea/index.d.ts +4 -0
  320. package/dist/src/components/textarea/index.shadow.d.ts +5 -0
  321. package/dist/src/components/textarea/mono-textarea.d.ts +29 -0
  322. package/dist/src/components/textarea/mono-textarea.shadow.d.ts +31 -0
  323. package/dist/src/components/textarea/textarea-core.d.ts +60 -0
  324. package/dist/src/components/textarea/textarea-types.d.ts +131 -0
  325. package/dist/src/components/textarea/textarea-utils.d.ts +7 -0
  326. package/dist/src/components/tooltip/control-tooltip.d.ts +36 -0
  327. package/dist/src/components/tooltip/index.d.ts +6 -0
  328. package/dist/src/components/tooltip/tooltip-config.d.ts +27 -0
  329. package/dist/src/components/tooltip/tooltip-declarative.d.ts +41 -0
  330. package/dist/src/components/tooltip/tooltip-loader.d.ts +1 -0
  331. package/dist/src/components/tooltip/tooltip-types.d.ts +110 -0
  332. package/dist/src/composables/breakpoints.d.ts +59 -0
  333. package/dist/src/composables/chip-limits.d.ts +48 -0
  334. package/dist/src/composables/chip-strip.d.ts +93 -0
  335. package/dist/src/composables/color.d.ts +103 -0
  336. package/dist/src/composables/css-class.d.ts +27 -0
  337. package/dist/src/composables/css-size.d.ts +40 -0
  338. package/dist/src/composables/data-source-controller.d.ts +113 -0
  339. package/dist/src/composables/element-props.d.ts +46 -0
  340. package/dist/src/composables/field-icons.d.ts +15 -0
  341. package/dist/src/composables/hybird-prop.d.ts +79 -0
  342. package/dist/src/composables/hydration-flush.d.ts +34 -0
  343. package/dist/src/composables/icon.d.ts +17 -0
  344. package/dist/src/composables/layout-var.d.ts +34 -0
  345. package/dist/src/composables/light-slots.d.ts +133 -0
  346. package/dist/src/composables/mdi-glyphs.d.ts +4 -0
  347. package/dist/src/composables/mono-element.d.ts +9 -0
  348. package/dist/src/composables/mono-event.d.ts +55 -0
  349. package/dist/src/composables/mono-pending.d.ts +8 -0
  350. package/dist/src/composables/mono-skeleton.d.ts +193 -0
  351. package/dist/src/composables/mono-ui.d.ts +58 -0
  352. package/dist/src/composables/notifier.d.ts +46 -0
  353. package/dist/src/composables/popup-portal.d.ts +226 -0
  354. package/dist/src/composables/popup-stack.d.ts +70 -0
  355. package/dist/src/composables/rate-limit.d.ts +108 -0
  356. package/dist/src/composables/reactive.d.ts +53 -0
  357. package/dist/src/composables/shadow-css.d.ts +42 -0
  358. package/dist/src/composables/visibility.d.ts +36 -0
  359. package/dist/src/data/theme/index.d.ts +30 -0
  360. package/dist/src/data/theme/presets.d.ts +94 -0
  361. package/dist/src/entries/index.d.ts +2 -0
  362. package/dist/src/entries/index.node.d.ts +42 -0
  363. package/dist/src/entries/search.d.ts +3 -0
  364. package/dist/src/export/detail.d.ts +29 -0
  365. package/dist/src/export/download.d.ts +9 -0
  366. package/dist/src/export/excel/index.d.ts +27 -0
  367. package/dist/src/export/excel/nodes.d.ts +123 -0
  368. package/dist/src/export/expression.d.ts +36 -0
  369. package/dist/src/export/helpers.d.ts +6 -0
  370. package/dist/src/export/index.d.ts +13 -0
  371. package/dist/src/export/markdown.d.ts +52 -0
  372. package/dist/src/export/resolve-data.d.ts +31 -0
  373. package/dist/src/export/sentinel.d.ts +97 -0
  374. package/dist/src/export/sheet-name.d.ts +45 -0
  375. package/dist/src/export/styles.d.ts +33 -0
  376. package/dist/src/export/template.d.ts +10 -0
  377. package/dist/src/export/types.d.ts +259 -0
  378. package/dist/src/import/coerce.d.ts +38 -0
  379. package/dist/src/import/index.d.ts +16 -0
  380. package/dist/src/import/match.d.ts +54 -0
  381. package/dist/src/import/parse.d.ts +15 -0
  382. package/dist/src/import/types.d.ts +153 -0
  383. package/dist/src/nuxt/index.d.ts +94 -0
  384. package/dist/src/search/data-search.d.ts +207 -0
  385. package/dist/src/search/field-path.d.ts +107 -0
  386. package/dist/src/search/filter-eval.d.ts +30 -0
  387. package/dist/src/search/index.d.ts +22 -0
  388. package/dist/src/search/odata-search.d.ts +18 -0
  389. package/dist/src/search/search-expr.d.ts +160 -0
  390. package/dist/src/utils/data-source-apply.d.ts +97 -0
  391. package/dist/src/utils/data-source-options.d.ts +116 -0
  392. package/dist/src/utils/data-source-read.d.ts +85 -0
  393. package/dist/src/utils/data-source-summary.d.ts +55 -0
  394. package/dist/src/utils/normalize-error.d.ts +90 -0
  395. package/dist/src/vite/index.d.ts +48 -0
  396. package/dist/src/vite/mono-client-only.d.ts +35 -0
  397. package/dist/src/vite/mono-ssr-stub.d.ts +20 -0
  398. package/dist/src/vite/shadow-manifest.d.ts +8 -0
  399. package/dist/styles-BIJ31TM4.js +20146 -0
  400. package/dist/tooltip-DQqNpqk2.js +795 -0
  401. package/dist/tooltip.d.ts +1 -0
  402. package/dist/tooltip.js +2 -0
  403. package/dist/ui/accordion.d.ts +1 -0
  404. package/dist/ui/accordion.js +466 -0
  405. package/dist/ui/alert.d.ts +1 -0
  406. package/dist/ui/alert.js +221 -0
  407. package/dist/ui/breadcrumb.d.ts +1 -0
  408. package/dist/ui/breadcrumb.js +902 -0
  409. package/dist/ui/button-dropdown.d.ts +1 -0
  410. package/dist/ui/button-dropdown.js +679 -0
  411. package/dist/ui/button.d.ts +1 -0
  412. package/dist/ui/button.js +63 -0
  413. package/dist/ui/card.d.ts +1 -0
  414. package/dist/ui/card.js +524 -0
  415. package/dist/ui/chart.d.ts +1 -0
  416. package/dist/ui/chart.js +885 -0
  417. package/dist/ui/checkbox.d.ts +1 -0
  418. package/dist/ui/checkbox.js +413 -0
  419. package/dist/ui/chip.d.ts +1 -0
  420. package/dist/ui/chip.js +558 -0
  421. package/dist/ui/date.d.ts +1 -0
  422. package/dist/ui/date.js +686 -0
  423. package/dist/ui/drawer.d.ts +1 -0
  424. package/dist/ui/drawer.js +901 -0
  425. package/dist/ui/dropdown-table.d.ts +1 -0
  426. package/dist/ui/dropdown-table.js +1291 -0
  427. package/dist/ui/dropdown.d.ts +1 -0
  428. package/dist/ui/dropdown.js +586 -0
  429. package/dist/ui/file-upload.d.ts +1 -0
  430. package/dist/ui/file-upload.js +688 -0
  431. package/dist/ui/filter.d.ts +1 -0
  432. package/dist/ui/filter.js +400 -0
  433. package/dist/ui/font/files/geist-47c091c9.woff2 +0 -0
  434. package/dist/ui/font/files/geist-8dd77544.woff2 +0 -0
  435. package/dist/ui/font/files/geist-b9248b1e.woff2 +0 -0
  436. package/dist/ui/font/files/geist-d40d74b4.woff2 +0 -0
  437. package/dist/ui/font/files/geist-f493429a.woff2 +0 -0
  438. package/dist/ui/font/files/geistmono-03737868.woff2 +0 -0
  439. package/dist/ui/font/files/geistmono-421a7e38.woff2 +0 -0
  440. package/dist/ui/font/files/geistmono-48ef518d.woff2 +0 -0
  441. package/dist/ui/font/files/geistmono-5df35d39.woff2 +0 -0
  442. package/dist/ui/font/files/geistmono-7de289a4.woff2 +0 -0
  443. package/dist/ui/font/files/geistmono-e976128f.woff2 +0 -0
  444. package/dist/ui/font/files/inter-05cf802c.woff2 +0 -0
  445. package/dist/ui/font/files/inter-2b2f25a4.woff2 +0 -0
  446. package/dist/ui/font/files/inter-467acc7a.woff2 +0 -0
  447. package/dist/ui/font/files/inter-6e85163c.woff2 +0 -0
  448. package/dist/ui/font/files/inter-7048add3.woff2 +0 -0
  449. package/dist/ui/font/files/inter-9be0371e.woff2 +0 -0
  450. package/dist/ui/font/files/inter-a28b7e31.woff2 +0 -0
  451. package/dist/ui/font/files/poppins-054df55a.woff2 +0 -0
  452. package/dist/ui/font/files/poppins-0ee5dc9a.woff2 +0 -0
  453. package/dist/ui/font/files/poppins-0f44cb18.woff2 +0 -0
  454. package/dist/ui/font/files/poppins-0ff0d30c.woff2 +0 -0
  455. package/dist/ui/font/files/poppins-13045147.woff2 +0 -0
  456. package/dist/ui/font/files/poppins-1db57cd9.woff2 +0 -0
  457. package/dist/ui/font/files/poppins-2cf2a902.woff2 +0 -0
  458. package/dist/ui/font/files/poppins-39e7f079.woff2 +0 -0
  459. package/dist/ui/font/files/poppins-9607042d.woff2 +0 -0
  460. package/dist/ui/font/files/poppins-9a88fc1f.woff2 +0 -0
  461. package/dist/ui/font/files/poppins-b8f4f752.woff2 +0 -0
  462. package/dist/ui/font/files/poppins-f5e57db4.woff2 +0 -0
  463. package/dist/ui/font/geist-mono.css +104 -0
  464. package/dist/ui/font/geist.css +168 -0
  465. package/dist/ui/font/inter.css +232 -0
  466. package/dist/ui/font/poppins.css +104 -0
  467. package/dist/ui/form.d.ts +1 -0
  468. package/dist/ui/form.js +3 -0
  469. package/dist/ui/index.css +21989 -0
  470. package/dist/ui/input.d.ts +1 -0
  471. package/dist/ui/input.js +1176 -0
  472. package/dist/ui/menu.d.ts +1 -0
  473. package/dist/ui/menu.js +1289 -0
  474. package/dist/ui/modal.d.ts +1 -0
  475. package/dist/ui/modal.js +996 -0
  476. package/dist/ui/nav.d.ts +1 -0
  477. package/dist/ui/nav.js +295 -0
  478. package/dist/ui/radio.d.ts +1 -0
  479. package/dist/ui/radio.js +379 -0
  480. package/dist/ui/rich-text-editor.d.ts +1 -0
  481. package/dist/ui/rich-text-editor.js +1338 -0
  482. package/dist/ui/select.d.ts +1 -0
  483. package/dist/ui/select.js +2200 -0
  484. package/dist/ui/shadow/accordion.js +442 -0
  485. package/dist/ui/shadow/alert.js +218 -0
  486. package/dist/ui/shadow/breadcrumb.js +919 -0
  487. package/dist/ui/shadow/button-dropdown.js +696 -0
  488. package/dist/ui/shadow/button.js +63 -0
  489. package/dist/ui/shadow/card.js +538 -0
  490. package/dist/ui/shadow/chart.js +1685 -0
  491. package/dist/ui/shadow/checkbox.js +457 -0
  492. package/dist/ui/shadow/chip.js +559 -0
  493. package/dist/ui/shadow/date.js +712 -0
  494. package/dist/ui/shadow/drawer.js +869 -0
  495. package/dist/ui/shadow/dropdown-table.js +1620 -0
  496. package/dist/ui/shadow/dropdown.js +547 -0
  497. package/dist/ui/shadow/file-upload.js +731 -0
  498. package/dist/ui/shadow/filter.js +402 -0
  499. package/dist/ui/shadow/input.js +1150 -0
  500. package/dist/ui/shadow/menu.js +899 -0
  501. package/dist/ui/shadow/modal.js +1194 -0
  502. package/dist/ui/shadow/nav.js +240 -0
  503. package/dist/ui/shadow/radio.js +408 -0
  504. package/dist/ui/shadow/rich-text-editor.js +1344 -0
  505. package/dist/ui/shadow/select.js +2167 -0
  506. package/dist/ui/shadow/sidebar.js +606 -0
  507. package/dist/ui/shadow/switch.js +428 -0
  508. package/dist/ui/shadow/table.js +4755 -0
  509. package/dist/ui/shadow/tabs.js +372 -0
  510. package/dist/ui/shadow/tag-input.js +2974 -0
  511. package/dist/ui/shadow/textarea.js +816 -0
  512. package/dist/ui/sidebar.d.ts +1 -0
  513. package/dist/ui/sidebar.js +659 -0
  514. package/dist/ui/switch.d.ts +1 -0
  515. package/dist/ui/switch.js +398 -0
  516. package/dist/ui/table.d.ts +1 -0
  517. package/dist/ui/table.js +4654 -0
  518. package/dist/ui/tabs.d.ts +1 -0
  519. package/dist/ui/tabs.js +379 -0
  520. package/dist/ui/tag-input.d.ts +1 -0
  521. package/dist/ui/tag-input.js +2947 -0
  522. package/dist/ui/textarea.d.ts +1 -0
  523. package/dist/ui/textarea.js +819 -0
  524. package/dist/ui/theme/legacy.css +293 -0
  525. package/dist/ui/theme/luma.css +743 -0
  526. package/dist/ui/theme/lyra.css +754 -0
  527. package/dist/ui/theme/maia.css +673 -0
  528. package/dist/ui/theme/mira.css +802 -0
  529. package/dist/ui/theme/nova.css +662 -0
  530. package/dist/ui/theme/one.css +699 -0
  531. package/dist/ui/theme/rhea.css +742 -0
  532. package/dist/ui/theme/sera.css +845 -0
  533. package/dist/ui/theme/tokens.css +261 -0
  534. package/dist/ui/theme/vega.css +467 -0
  535. package/dist/vite-C5iUK7so.js +329 -0
  536. package/dist/vite.d.ts +1 -0
  537. package/dist/vite.js +2 -0
  538. package/dist/vue.d.ts +282 -0
  539. package/package.json +411 -3
@@ -0,0 +1,402 @@
1
+ import { a as __decorate, c as defineHybridPropAlias, f as customElement, l as defineHybridPropAliases, n as adoptIconStyles, r as toShadowCss, t as flushSsrHydration } from "../../hydration-flush-RB5Tz5nl.js";
2
+ import { t as dispatchMonoEvent } from "../../mono-event-Bi1qP9uN.js";
3
+ import { t as buildSizeStyle } from "../../css-size-DhHSVZJK.js";
4
+ import { n as detachEventHandlers, t as applyProps } from "../../element-props-CLB6yvbm.js";
5
+ import { c as splitMulti, d as OPERATOR_ARITY, l as treeToArray, m as operatorsFor, n as arrayToTree, s as odataStringToArray, t as arrayToODataString, u as DEFAULT_TEXTS } from "../../filter-odata-C1vSGZaY.js";
6
+ import { t as monoFilterBuilder } from "../../filter-builder-CE4zE0V5.js";
7
+ import { LitElement, html, isServer, nothing, unsafeCSS } from "lit";
8
+ import { property, state } from "lit/decorators.js";
9
+ import { styleMap } from "lit/directives/style-map.js";
10
+ //#region src/components/filter/filter-builder-core.ts
11
+ var GROUP_OPS = [
12
+ "and",
13
+ "or",
14
+ "notAnd",
15
+ "notOr"
16
+ ];
17
+ /**
18
+ * `MonoFilterBuilderCore` — render-mode-agnostic logic for `mono-filter-builder`.
19
+ *
20
+ * Renders the controller's node tree as nested inline rows:
21
+ *
22
+ * ```
23
+ * Match [any ▾] of the following rules:
24
+ * | field ▾ | operator ▾ | value | ⑃ | 🗑 |
25
+ * ```
26
+ *
27
+ * Per repo convention it renders **native** `<select>` / `<input>` carrying
28
+ * its OWN control classes — no component here embeds another `mono-*`
29
+ * element (`mono-table-search` set that precedent), so the controls match the rest
30
+ * of the library without a cross-element dependency.
31
+ */
32
+ var MonoFilterBuilderCore = (superClass) => {
33
+ class MonoFilterBuilderCoreClass extends superClass {
34
+ constructor(...args) {
35
+ super(...args);
36
+ this.size = "sm";
37
+ this._tick = 0;
38
+ this._applyQueued = false;
39
+ defineHybridPropAliases(this, [
40
+ "dataFilter",
41
+ "minWidth",
42
+ "maxWidth",
43
+ "minHeight",
44
+ "maxHeight"
45
+ ]);
46
+ defineHybridPropAlias(this, "controlFilterBuilder", "dataFilter");
47
+ }
48
+ connectedCallback() {
49
+ super.connectedCallback();
50
+ this._subscribe();
51
+ }
52
+ disconnectedCallback() {
53
+ this._off?.();
54
+ this._off = void 0;
55
+ super.disconnectedCallback();
56
+ }
57
+ willUpdate(changed) {
58
+ if (changed.has("dataFilter")) this._subscribe();
59
+ super.willUpdate?.(changed);
60
+ }
61
+ /**
62
+ * Drive the apply from `update()` as well as `_subscribe()` — every render
63
+ * reaches here, so a controller that arrives late (or a `setProps` that
64
+ * lands between subscriptions) can't be missed. This is the lesson
65
+ * `table-controller-core` records: hanging the apply off `_subscribe` alone
66
+ * silently skips anything that overrides it.
67
+ */
68
+ update(changed) {
69
+ this._scheduleApplyProps();
70
+ super.update(changed);
71
+ }
72
+ _subscribe() {
73
+ if (isServer) return;
74
+ this._off?.();
75
+ detachEventHandlers(this);
76
+ this._off = this.dataFilter?.subscribe(() => {
77
+ this._tick += 1;
78
+ this._scheduleApplyProps();
79
+ this._emitChange();
80
+ });
81
+ this._scheduleApplyProps();
82
+ }
83
+ /**
84
+ * Deferred + de-duplicated: the apply writes reactive props, and doing that
85
+ * inside the update cycle would trip Lit's change-in-update warning.
86
+ */
87
+ _scheduleApplyProps() {
88
+ if (isServer) return;
89
+ if (this._applyQueued) return;
90
+ if (typeof queueMicrotask !== "function") {
91
+ this._applyControllerProps();
92
+ return;
93
+ }
94
+ this._applyQueued = true;
95
+ queueMicrotask(() => {
96
+ this._applyQueued = false;
97
+ this._applyControllerProps();
98
+ });
99
+ }
100
+ /**
101
+ * Pull `controlMonoFilterBuilder({ props })` onto this element, so the
102
+ * template needs nothing but the controller binding.
103
+ *
104
+ * The CONTROLLER WINS for keys it declares (matching `monoDataGrid` and
105
+ * `monoForm`); keys it doesn't mention are left to whatever the template set.
106
+ * `applyProps` supplies the skip-undefined, read-only and equality guards, so
107
+ * a sync can neither throw nor schedule another update cycle.
108
+ *
109
+ * `?.props` is optional-called on purpose: a controller built before this
110
+ * option existed simply contributes nothing.
111
+ */
112
+ _applyControllerProps() {
113
+ applyProps(this, this.dataFilter?.props?.());
114
+ }
115
+ _emitChange() {
116
+ const ctrl = this.dataFilter;
117
+ if (!ctrl) return;
118
+ dispatchMonoEvent(this, "change", {
119
+ filter: ctrl.changed(),
120
+ array: ctrl.changed({ type: "array" }),
121
+ string: ctrl.changed({ type: "string" })
122
+ });
123
+ }
124
+ /** Internal icon — light: UnoCSS classes; shadow: inline SVG. */
125
+ renderIcon(_name) {
126
+ return html``;
127
+ }
128
+ get _texts() {
129
+ return this.dataFilter?.texts;
130
+ }
131
+ _dataType(field) {
132
+ return this.dataFilter?.fields.find((f) => f.field === field)?.dataType ?? "string";
133
+ }
134
+ /**
135
+ * One `<option>` whose selection is bound as a **property**.
136
+ *
137
+ * Binding `.value` on the `<select>` instead is unreliable here: an operator
138
+ * list changes in the SAME render as the value it should show (picking a number
139
+ * field swaps the whole option set), and the assignment lands before the new
140
+ * options exist — leaving the browser on a stale `selectedIndex`. Setting
141
+ * `.selected` per option moves `selectedIndex` after the options are in place.
142
+ */
143
+ _option(value, label, current) {
144
+ return html`<option value=${value} .selected=${value === current}>${label}</option>`;
145
+ }
146
+ /**
147
+ * The value editor for a rule. Arity decides the shape: `0` disables the cell
148
+ * (the blank checks need no operand), `2` renders a from/to pair, `many` takes
149
+ * comma-separated entry, and a field with `values` renders a select.
150
+ */
151
+ _renderValue(rule) {
152
+ const t = this._texts;
153
+ const arity = OPERATOR_ARITY[rule.operator];
154
+ const dt = this._dataType(rule.field);
155
+ const def = this.dataFilter?.fields.find((f) => f.field === rule.field);
156
+ const nativeType = dt === "number" ? "number" : dt === "date" ? "date" : dt === "datetime" ? "datetime-local" : "text";
157
+ const cls = "mono-filter-control mono-filter-value";
158
+ if (arity === 0) return html`<input class=${cls} mono-filter-control mono-filter-value disabled placeholder="—" aria-label="No value needed" />`;
159
+ if (def?.values?.length) return html`
160
+ <select
161
+ class=${cls} mono-filter-control mono-filter-value
162
+ @change=${(e) => this.dataFilter?.updateRule(rule.id, { value: e.target.value })}
163
+ >
164
+ ${this._option("", t?.valuePlaceholder ?? "", String(rule.value ?? ""))}
165
+ ${def.values.map((v) => this._option(String(v.value), v.label ?? String(v.value), String(rule.value ?? "")))}
166
+ </select>
167
+ `;
168
+ if (dt === "boolean") return html`
169
+ <select
170
+ class=${cls} mono-filter-control mono-filter-value
171
+ @change=${(e) => this.dataFilter?.updateRule(rule.id, { value: e.target.value })}
172
+ >
173
+ ${this._option("", t?.valuePlaceholder ?? "", String(rule.value ?? ""))}
174
+ ${this._option("true", "true", String(rule.value ?? ""))}
175
+ ${this._option("false", "false", String(rule.value ?? ""))}
176
+ </select>
177
+ `;
178
+ if (arity === 2) {
179
+ const pair = Array.isArray(rule.value) ? rule.value : ["", ""];
180
+ const setAt = (idx, v) => {
181
+ const next = [pair[0] ?? "", pair[1] ?? ""];
182
+ next[idx] = v;
183
+ this.dataFilter?.updateRule(rule.id, { value: next });
184
+ };
185
+ return html`
186
+ <span class="mono-filter-range" mono-filter-range>
187
+ <input
188
+ class=${cls} mono-filter-control mono-filter-value
189
+ type=${nativeType}
190
+ .value=${String(pair[0] ?? "")}
191
+ @input=${(e) => setAt(0, e.target.value)}
192
+ />
193
+ <input
194
+ class=${cls} mono-filter-control mono-filter-value
195
+ type=${nativeType}
196
+ .value=${String(pair[1] ?? "")}
197
+ @input=${(e) => setAt(1, e.target.value)}
198
+ />
199
+ </span>
200
+ `;
201
+ }
202
+ const shown = Array.isArray(rule.value) ? rule.value.join(", ") : String(rule.value ?? "");
203
+ return html`
204
+ <input
205
+ class=${cls} mono-filter-control mono-filter-value
206
+ type=${arity === "many" ? "text" : nativeType}
207
+ .value=${shown}
208
+ placeholder=${arity === "many" ? t?.multiValuePlaceholder ?? "" : t?.valuePlaceholder ?? ""}
209
+ @input=${(e) => {
210
+ const raw = e.target.value;
211
+ this.dataFilter?.updateRule(rule.id, { value: arity === "many" ? splitMulti(raw) : raw });
212
+ }}
213
+ />
214
+ `;
215
+ }
216
+ _renderRule(rule) {
217
+ const ctrl = this.dataFilter;
218
+ const t = this._texts;
219
+ const ops = operatorsFor(this._dataType(rule.field));
220
+ return html`
221
+ <div class="mono-filter-row" mono-filter-row data-rule=${rule.id}>
222
+ <select
223
+ class="mono-filter-control mono-filter-field" mono-filter-control mono-filter-field
224
+ @change=${(e) => ctrl?.updateRule(rule.id, { field: e.target.value })}
225
+ >
226
+ ${ctrl?.fields.map((f) => this._option(f.field, f.caption ?? f.field, rule.field))}
227
+ </select>
228
+
229
+ <select
230
+ class="mono-filter-control mono-filter-op" mono-filter-control mono-filter-op
231
+ @change=${(e) => ctrl?.updateRule(rule.id, { operator: e.target.value })}
232
+ >
233
+ ${ops.map((op) => this._option(op, t?.[op] ?? op, rule.operator))}
234
+ </select>
235
+
236
+ <span class="mono-filter-value-cell" mono-filter-value-cell>${this._renderValue(rule)}</span>
237
+
238
+ <button
239
+ type="button"
240
+ class="mono-filter-icon-btn" mono-filter-icon-btn
241
+ title=${t?.addNested ?? ""}
242
+ aria-label=${t?.addNested ?? ""}
243
+ @click=${() => ctrl?.nest(rule.id)}
244
+ >
245
+ ${this.renderIcon("nested")}
246
+ </button>
247
+ <button
248
+ type="button"
249
+ class="mono-filter-icon-btn danger" mono-filter-icon-btn mono-danger
250
+ title=${t?.remove ?? ""}
251
+ aria-label=${t?.remove ?? ""}
252
+ @click=${() => ctrl?.remove(rule.id)}
253
+ >
254
+ ${this.renderIcon("trash")}
255
+ </button>
256
+ </div>
257
+ `;
258
+ }
259
+ _renderGroup(group, level) {
260
+ const ctrl = this.dataFilter;
261
+ const t = this._texts;
262
+ const isRoot = level === 0;
263
+ return html`
264
+ <div class="mono-filter-group" mono-filter-group data-group=${group.id} style=${`--_mono-filter-level:${level}`}>
265
+ <div class="mono-filter-group-head" mono-filter-group-head>
266
+ <span class="mono-filter-match" mono-filter-match>${t?.matchPrefix}</span>
267
+ <select
268
+ class="mono-filter-control mono-filter-group-op" mono-filter-control mono-filter-group-op
269
+ @change=${(e) => ctrl?.setGroupOperator(group.id, e.target.value)}
270
+ >
271
+ ${GROUP_OPS.map((op) => this._option(op, t?.[op] ?? op, group.operator))}
272
+ </select>
273
+ <span class="mono-filter-match" mono-filter-match>${t?.matchSuffix}</span>
274
+ ${isRoot ? nothing : html`
275
+ <span class="mono-filter-group-actions" mono-filter-group-actions>
276
+ <button
277
+ type="button"
278
+ class="mono-filter-icon-btn" mono-filter-icon-btn
279
+ title=${t?.addRule ?? ""}
280
+ @click=${() => ctrl?.addRule(group.id)}
281
+ >
282
+ ${this.renderIcon("plus")}
283
+ </button>
284
+ <button
285
+ type="button"
286
+ class="mono-filter-icon-btn danger" mono-filter-icon-btn mono-danger
287
+ title=${t?.remove ?? ""}
288
+ @click=${() => ctrl?.remove(group.id)}
289
+ >
290
+ ${this.renderIcon("trash")}
291
+ </button>
292
+ </span>
293
+ `}
294
+ </div>
295
+
296
+ <div class="mono-filter-children" mono-filter-children>
297
+ ${group.children.map((child) => this._renderNode(child, level + 1))}
298
+ ${isRoot && !group.children.length ? html`<div class="mono-filter-empty" mono-filter-empty>${t?.emptyHint}</div>` : nothing}
299
+ </div>
300
+ </div>
301
+ `;
302
+ }
303
+ _renderNode(node, level) {
304
+ return node.kind === "group" ? this._renderGroup(node, level) : this._renderRule(node);
305
+ }
306
+ render() {
307
+ const ctrl = this.dataFilter;
308
+ if (!ctrl) return html``;
309
+ const t = ctrl.texts;
310
+ this._tick;
311
+ return html`
312
+ <div
313
+ class="mono-filter ${this.size}"
314
+ mono-filter-builder
315
+ mono-size=${this.size === "sm" ? nothing : this.size}
316
+ style=${styleMap(buildSizeStyle(this))}
317
+ >
318
+ ${ctrl.actions ? html`
319
+ <div class="mono-filter-actions" mono-filter-actions>
320
+ <button
321
+ type="button"
322
+ class="mono-filter-btn primary" mono-filter-btn
323
+ @click=${() => dispatchMonoEvent(this, "apply", {
324
+ filter: ctrl.changed(),
325
+ array: ctrl.changed({ type: "array" }),
326
+ string: ctrl.changed({ type: "string" })
327
+ })}
328
+ >
329
+ ${t.apply}
330
+ </button>
331
+ <button
332
+ type="button"
333
+ class="mono-filter-btn ghost" mono-filter-btn mono-variant="ghost"
334
+ @click=${() => {
335
+ ctrl.clear();
336
+ dispatchMonoEvent(this, "clear", { filter: null });
337
+ }}
338
+ >
339
+ ${t.clear}
340
+ </button>
341
+ </div>
342
+ ` : nothing}
343
+ ${this._renderGroup(ctrl.tree, 0)}
344
+ <div class="mono-filter-add" mono-filter-add>
345
+ <button type="button" class="mono-filter-link" mono-filter-link @click=${() => ctrl.addRule()}>
346
+ ${t.addRule}
347
+ </button>
348
+ <button type="button" class="mono-filter-link" mono-filter-link @click=${() => ctrl.addGroup()}>
349
+ ${t.addGroup}
350
+ </button>
351
+ </div>
352
+ </div>
353
+ `;
354
+ }
355
+ }
356
+ __decorate([property({ attribute: false })], MonoFilterBuilderCoreClass.prototype, "dataFilter", void 0);
357
+ __decorate([property({ type: String })], MonoFilterBuilderCoreClass.prototype, "size", void 0);
358
+ __decorate([property({ type: String })], MonoFilterBuilderCoreClass.prototype, "width", void 0);
359
+ __decorate([property({ type: String })], MonoFilterBuilderCoreClass.prototype, "height", void 0);
360
+ __decorate([property({
361
+ attribute: "min-width",
362
+ type: String
363
+ })], MonoFilterBuilderCoreClass.prototype, "minWidth", void 0);
364
+ __decorate([property({
365
+ attribute: "max-width",
366
+ type: String
367
+ })], MonoFilterBuilderCoreClass.prototype, "maxWidth", void 0);
368
+ __decorate([property({
369
+ attribute: "min-height",
370
+ type: String
371
+ })], MonoFilterBuilderCoreClass.prototype, "minHeight", void 0);
372
+ __decorate([property({
373
+ attribute: "max-height",
374
+ type: String
375
+ })], MonoFilterBuilderCoreClass.prototype, "maxHeight", void 0);
376
+ __decorate([state()], MonoFilterBuilderCoreClass.prototype, "_tick", void 0);
377
+ return MonoFilterBuilderCoreClass;
378
+ };
379
+ //#endregion
380
+ //#region src/components/filter/filter.css?raw
381
+ var filter_default = "/* =========================================================================\r\n mono-filter-builder — inline OData filter builder, a Basecoat EXTENSION\r\n\r\n Upstream has no filter builder. Every surface here borrows the shape of the\r\n Basecoat control it most resembles — the rule's field / operator / value\r\n controls are `.field > select` and `.input`, Apply is `.btn`, Clear is\r\n `.btn[data-variant='outline']`, the trash and \"add nested\" toggles are\r\n `.btn[data-variant='ghost'][data-size='icon']`, and \"Add rule\" / \"Add group\"\r\n are `.btn[data-variant='link']` — cited where each does.\r\n\r\n The controls are styled HERE rather than by nesting three `<mono-input>`s per\r\n row: that would couple this sheet to another component's PRIVATE resolvers.\r\n They read the input's, select's and button's PUBLIC knobs instead —\r\n `--mono-input-outline-radius`, `--mono-button-<size>-radius`,\r\n `--mono-control-height-<size>` — which is exactly what a flavour writes, so\r\n an `xs` builder matches an `xs` field and maia's pill, sera's square and\r\n lyra's `text-xs` all arrive here by construction. There are no per-flavour\r\n deltas for this component on purpose; there is nothing for them to drift from.\r\n\r\n Styling is by ATTRIBUTE: the root is `[mono-filter-builder]` with `mono-size`\r\n (`sm` is the default and emits nothing), and every part is family-unique\r\n (`[mono-filter-row]`, `[mono-filter-control]`, …) so it needs no scoping and\r\n cannot collide with the table's `[mono-th-filter-*]` / `[mono-search-filter-*]`.\r\n The old classes are still emitted as inert hooks until 2.0.\r\n\r\n Specificity: a part's resting rule is one attribute — (0,1,0) — so a\r\n `cssClass` utility wins by source order; prop and state rules stay heavier.\r\n ========================================================================= */\r\n\r\nmono-filter-builder,\r\nmono-shadow-filter-builder {\r\n display: block;\r\n}\r\n\r\n[mono-filter-builder] {\r\n /* ── ink and surface ────────────────────────────────────────────────────\r\n Public `--mono-filter-*` → private resolvers (the library-wide pattern):\r\n set any of them on the element, inline, or a wrapper — they inherit and\r\n pierce the shadow boundary. */\r\n --_mono-filter-primary: var(--mono-filter-primary, var(--primary));\r\n --_mono-filter-on-primary: var(--mono-filter-on-primary, var(--primary-foreground));\r\n /* the ink of the links and the group operator — upstream's `.btn[data-variant='link']` is `text-primary` */\r\n --_mono-filter-accent: var(--mono-filter-accent, var(--primary));\r\n --_mono-filter-text: var(--mono-filter-text, var(--foreground));\r\n --_mono-filter-muted: var(--mono-filter-muted, var(--muted-foreground));\r\n /* basecoat@1.0.2 styles/vega.css .field > select, select.select — border-input */\r\n --_mono-filter-border: var(--mono-filter-border, var(--input));\r\n /* the guide down a nested group — the page border, not the control edge */\r\n --_mono-filter-guide: var(--mono-filter-guide, var(--border));\r\n /* a control is `bg-transparent` upstream (`dark:bg-input/30` on the dark side) */\r\n --_mono-filter-surface: var(--mono-filter-surface, var(--mono-mode-surface, transparent));\r\n --_mono-filter-ring: var(--mono-filter-ring, var(--ring));\r\n --_mono-filter-danger: var(--mono-filter-danger, var(--destructive));\r\n --_mono-filter-indent: var(--mono-filter-indent, 1.25rem);\r\n\r\n /* ── the size scale — sm on the unqualified root ON PURPOSE ─────────────\r\n basecoat@1.0.2 styles/vega.css .btn[data-size='sm'] — h-8 gap-1 px-2.5 rounded-[min(var(--radius-md),10px)]\r\n The metrics read the SAME public knobs mono-input / mono-select /\r\n mono-button consume, so a flavour that retunes a field retunes these. */\r\n --_mono-filter-height: var(--mono-filter-height-sm, var(--mono-input-height-sm, var(--mono-control-height-sm)));\r\n --_mono-filter-font: var(--mono-filter-font-sm, var(--mono-input-font-sm, var(--mono-input-font-md, var(--mono-text-sm))));\r\n /* outline → the field's own radius → the scale: lyra squares a field through\r\n `--mono-input-radius`, sera and maia through `--mono-input-outline-radius` */\r\n --_mono-filter-radius: var(--mono-filter-radius, var(--mono-input-outline-radius, var(--mono-input-radius, var(--mono-radius-md))));\r\n --_mono-filter-btn-radius: var(--mono-filter-btn-radius-sm, var(--mono-button-sm-radius, var(--mono-radius-md)));\r\n --_mono-filter-icon: var(--mono-filter-icon-sm, 0.875rem);\r\n --_mono-filter-gap: var(--mono-filter-gap, calc(var(--mono-spacing) * 2));\r\n\r\n display: flex;\r\n flex-direction: column;\r\n gap: calc(var(--_mono-filter-gap) * 1.5);\r\n width: 100%;\r\n /* Allow the rules region to shrink/scroll inside a bounded height. */\r\n min-height: 0;\r\n font-family: inherit;\r\n color: var(--_mono-filter-text);\r\n box-sizing: border-box;\r\n}\r\n\r\n[mono-filter-builder][mono-size=\"xs\"] {\r\n --_mono-filter-height: var(--mono-filter-height-xs, var(--mono-input-height-xs, var(--mono-control-height-xs)));\r\n --_mono-filter-font: var(--mono-filter-font-xs, var(--mono-input-font-xs, var(--mono-text-xs)));\r\n --_mono-filter-btn-radius: var(--mono-filter-btn-radius-xs, var(--mono-button-xs-radius, var(--mono-radius-md)));\r\n --_mono-filter-icon: var(--mono-filter-icon-xs, 0.7rem);\r\n}\r\n[mono-filter-builder][mono-size=\"md\"] {\r\n --_mono-filter-height: var(--mono-filter-height-md, var(--mono-input-height-md, var(--mono-control-height-md)));\r\n --_mono-filter-font: var(--mono-filter-font-md, var(--mono-input-font-md, var(--mono-text-sm)));\r\n --_mono-filter-btn-radius: var(--mono-filter-btn-radius-md, var(--mono-button-md-radius, var(--mono-radius-md)));\r\n --_mono-filter-icon: var(--mono-filter-icon-md, 1rem);\r\n}\r\n[mono-filter-builder][mono-size=\"lg\"] {\r\n --_mono-filter-height: var(--mono-filter-height-lg, var(--mono-input-height-lg, var(--mono-control-height-lg)));\r\n --_mono-filter-font: var(--mono-filter-font-lg, var(--mono-input-font-lg, var(--mono-input-font-md, var(--mono-text-sm))));\r\n --_mono-filter-btn-radius: var(--mono-filter-btn-radius-lg, var(--mono-button-lg-radius, var(--mono-radius-md)));\r\n --_mono-filter-icon: var(--mono-filter-icon-lg, 1.125rem);\r\n}\r\n[mono-filter-builder][mono-size=\"xl\"] {\r\n --_mono-filter-height: var(--mono-filter-height-xl, var(--mono-input-height-xl, var(--mono-control-height-xl)));\r\n --_mono-filter-font: var(--mono-filter-font-xl, var(--mono-input-font-xl, var(--mono-input-font-md, var(--mono-text-base))));\r\n --_mono-filter-btn-radius: var(--mono-filter-btn-radius-xl, var(--mono-button-xl-radius, var(--mono-radius-md)));\r\n --_mono-filter-icon: var(--mono-filter-icon-xl, 1.25rem);\r\n}\r\n[mono-filter-builder][mono-size=\"xxl\"] {\r\n --_mono-filter-height: var(--mono-filter-height-xxl, var(--mono-input-height-xxl, var(--mono-control-height-xxl)));\r\n --_mono-filter-font: var(--mono-filter-font-xxl, var(--mono-input-font-xxl, var(--mono-input-font-md, var(--mono-text-base))));\r\n --_mono-filter-btn-radius: var(--mono-filter-btn-radius-xxl, var(--mono-button-xxl-radius, var(--mono-radius-md)));\r\n --_mono-filter-icon: var(--mono-filter-icon-xxl, 1.375rem);\r\n}\r\n\r\n[mono-filter-builder] *,\r\n[mono-filter-builder] *::before,\r\n[mono-filter-builder] *::after {\r\n box-sizing: border-box;\r\n}\r\n\r\n/* ── Scroll layout ─────────────────────────────────────────────────────────\r\n Apply/Clear stay pinned at the top, Add rule/group at the bottom; the ROOT\r\n group is the only scroll region, so a bounded `height` / `max-height` scrolls\r\n JUST the rules. (Nested groups are deeper, so the child combinator skips them.) */\r\n[mono-filter-builder] > [mono-filter-actions],\r\n[mono-filter-builder] > [mono-filter-add] {\r\n flex: 0 0 auto;\r\n}\r\n[mono-filter-builder] > [mono-filter-group] {\r\n flex: 1 1 auto;\r\n min-height: 0;\r\n overflow: auto;\r\n /* Portaled + anchored: a chained scroll would drag this panel off-screen\r\n (see `[mono-th-filter-list]`). */\r\n overscroll-behavior: contain;\r\n padding-right: calc(var(--mono-spacing) * 1);\r\n}\r\n\r\n/* ── Apply / Clear — ABOVE the rules, not below ─────────────────────────── */\r\n[mono-filter-actions] {\r\n display: flex;\r\n align-items: center;\r\n gap: var(--_mono-filter-gap);\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .btn — inline-flex items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-all outline-none focus-visible:ring-3 disabled:opacity-50 */\r\n[mono-filter-btn] {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n padding: 0 calc(var(--mono-spacing) * 2.5);\r\n height: var(--_mono-filter-height);\r\n border-radius: var(--_mono-filter-btn-radius);\r\n border: var(--mono-border-width) solid transparent;\r\n font: inherit;\r\n font-size: var(--_mono-filter-font);\r\n font-weight: var(--mono-font-weight-medium);\r\n white-space: nowrap;\r\n cursor: pointer;\r\n transition:\r\n background-color var(--mono-duration-fast, 150ms) ease,\r\n color var(--mono-duration-fast, 150ms) ease,\r\n border-color var(--mono-duration-fast, 150ms) ease;\r\n}\r\n/* basecoat@1.0.2 styles/vega.css .btn:not([data-variant]), .btn[data-variant='primary'] — bg-primary text-primary-foreground hover:bg-primary/90 */\r\n[mono-filter-btn]:not([mono-variant]) {\r\n background: var(--_mono-filter-primary);\r\n color: var(--_mono-filter-on-primary);\r\n}\r\n[mono-filter-btn]:not([mono-variant]):hover {\r\n background: color-mix(in oklab, var(--_mono-filter-primary) 90%, transparent);\r\n}\r\n/* basecoat@1.0.2 styles/vega.css .btn[data-variant='outline'] — border bg-background hover:bg-accent hover:text-accent-foreground */\r\n[mono-filter-btn][mono-variant=\"ghost\"] {\r\n background: var(--background);\r\n border-color: var(--_mono-filter-border);\r\n color: var(--_mono-filter-text);\r\n}\r\n[mono-filter-btn][mono-variant=\"ghost\"]:hover {\r\n background: var(--accent);\r\n color: var(--accent-foreground);\r\n}\r\n[mono-filter-btn]:focus-visible {\r\n outline: none;\r\n box-shadow: 0 0 0 3px color-mix(in oklab, var(--_mono-filter-ring) 50%, transparent);\r\n}\r\n\r\n/* ── Group ──────────────────────────────────────────────────────────────── */\r\n[mono-filter-group] {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--_mono-filter-gap);\r\n}\r\n/* Nested groups indent; the root sits flush. */\r\n[mono-filter-children] [mono-filter-group] {\r\n padding-left: var(--_mono-filter-indent);\r\n border-left: var(--mono-border-width) dashed var(--_mono-filter-guide);\r\n}\r\n[mono-filter-group-head] {\r\n display: flex;\r\n align-items: center;\r\n flex-wrap: wrap;\r\n gap: calc(var(--_mono-filter-gap) * 0.75);\r\n font-size: var(--_mono-filter-font);\r\n color: var(--_mono-filter-muted);\r\n}\r\n[mono-filter-match] {\r\n white-space: nowrap;\r\n}\r\n[mono-filter-group-actions] {\r\n display: inline-flex;\r\n gap: calc(var(--mono-spacing) * 0.5);\r\n margin-left: auto;\r\n}\r\n\r\n[mono-filter-children] {\r\n display: flex;\r\n flex-direction: column;\r\n gap: var(--_mono-filter-gap);\r\n}\r\n\r\n/* ── Rule row ───────────────────────────────────────────────────────────── */\r\n[mono-filter-row] {\r\n display: grid;\r\n /* field | operator | value | nested | trash */\r\n grid-template-columns: minmax(8rem, 1.4fr) minmax(8rem, 1.2fr) minmax(8rem, 2fr) auto auto;\r\n align-items: center;\r\n gap: var(--_mono-filter-gap);\r\n}\r\n@media (max-width: 720px) {\r\n [mono-filter-row] {\r\n grid-template-columns: 1fr 1fr auto auto;\r\n }\r\n [mono-filter-value-cell] {\r\n grid-column: 1 / -1;\r\n }\r\n}\r\n\r\n[mono-filter-value-cell],\r\n[mono-filter-range] {\r\n display: flex;\r\n align-items: center;\r\n gap: calc(var(--_mono-filter-gap) * 0.75);\r\n min-width: 0;\r\n}\r\n\r\n/* ── Controls (selects + inputs) ─────────────────────────────────────────── */\r\n/* basecoat@1.0.2 styles/vega.css .field > select, select.select — border-input h-9 rounded-md border bg-transparent py-1 ps-2.5 pe-8 text-sm shadow-xs transition-[color,box-shadow] focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-3\r\n The text input is the same box; the flavour's outline knob decides the corner\r\n for both, exactly as it does for `<mono-input>` and `<mono-select>`. */\r\n[mono-filter-control] {\r\n width: 100%;\r\n min-width: 0;\r\n height: var(--_mono-filter-height);\r\n padding: 0 calc(var(--mono-spacing) * 2.5);\r\n border: var(--mono-border-width) solid var(--_mono-filter-border);\r\n border-radius: var(--_mono-filter-radius);\r\n background-color: var(--_mono-filter-surface);\r\n color: var(--_mono-filter-text);\r\n font: inherit;\r\n font-size: var(--_mono-filter-font);\r\n box-shadow: var(--mono-shadow-xs, none);\r\n /* stated in both directions: a host page's preflight (Tailwind, UnoCSS) sets\r\n `appearance: none` on a select and a shadow root escapes it — so without\r\n this the light build lost its caret and the shadow build kept the native\r\n one. Upstream draws its own; so does this. */\r\n appearance: none;\r\n outline: none;\r\n transition:\r\n border-color var(--mono-duration-fast, 150ms) ease,\r\n box-shadow var(--mono-duration-fast, 150ms) ease;\r\n}\r\n[mono-filter-control]:focus,\r\n[mono-filter-control]:focus-visible {\r\n border-color: var(--_mono-filter-ring);\r\n box-shadow: 0 0 0 3px color-mix(in oklab, var(--_mono-filter-ring) 50%, transparent);\r\n outline: none;\r\n}\r\n/* `disabled:opacity-50` */\r\n[mono-filter-control]:disabled {\r\n opacity: 0.5;\r\n cursor: not-allowed;\r\n}\r\n/* `placeholder:text-muted-foreground` — stated, so a host page's own placeholder\r\n colour cannot reach a portaled builder */\r\n[mono-filter-control]::placeholder {\r\n color: var(--_mono-filter-muted);\r\n opacity: 1;\r\n}\r\n[mono-filter-range] > [mono-filter-control] {\r\n min-width: 0;\r\n}\r\n\r\n/* basecoat@1.0.2 styles/vega.css .field > select, select.select — pe-8 bg-[image:var(--chevron-down-icon-50)] bg-no-repeat bg-position-[center_right_0.625rem] bg-size-[1rem]\r\n The caret, drawn the way upstream draws it — the same token the ported\r\n `<mono-select>` paints with, so it sits at the same place in every flavour. */\r\nselect[mono-filter-control] {\r\n padding-right: calc(var(--mono-spacing) * 8);\r\n background-image: var(--chevron-down-icon-50);\r\n background-repeat: no-repeat;\r\n background-position: right calc(var(--mono-spacing) * 2.5) center;\r\n background-size: 1rem;\r\n}\r\n\r\n/* The group operator sits inline in a sentence, so it must NOT grow — otherwise it\r\n pushes the trailing \"of the following rules:\" to the far edge. Otherwise it\r\n is a control like every other: bordered, and at the control HEIGHT rather\r\n than `auto` — a bare select's intrinsic height differs between a page under\r\n a preflight and a shadow root, which put the shadow build's rows 5px higher. */\r\n[mono-filter-group-op] {\r\n flex: 0 0 auto;\r\n width: auto;\r\n min-width: 6rem;\r\n color: var(--_mono-filter-accent);\r\n font-weight: var(--mono-font-weight-semibold);\r\n}\r\n\r\n/* ── Icon buttons ───────────────────────────────────────────────────────── */\r\n/* basecoat@1.0.2 styles/vega.css .btn[data-variant='ghost'] — hover:bg-accent hover:text-accent-foreground */\r\n/* basecoat@1.0.2 styles/vega.css .btn[data-size='icon'] — size-9 */\r\n[mono-filter-icon-btn] {\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: var(--_mono-filter-height);\r\n height: var(--_mono-filter-height);\r\n padding: 0;\r\n border: 0;\r\n border-radius: var(--_mono-filter-btn-radius);\r\n background: transparent;\r\n color: var(--_mono-filter-muted);\r\n line-height: 0;\r\n cursor: pointer;\r\n transition:\r\n color var(--mono-duration-fast, 150ms) ease,\r\n background-color var(--mono-duration-fast, 150ms) ease;\r\n}\r\n[mono-filter-icon-btn]:hover,\r\n[mono-filter-icon-btn]:focus-visible {\r\n background: var(--accent);\r\n color: var(--accent-foreground);\r\n outline: none;\r\n}\r\n[mono-filter-icon-btn]:focus-visible {\r\n box-shadow: 0 0 0 3px color-mix(in oklab, var(--_mono-filter-ring) 50%, transparent);\r\n}\r\n[mono-filter-icon-btn][mono-danger]:hover,\r\n[mono-filter-icon-btn][mono-danger]:focus-visible {\r\n color: var(--_mono-filter-danger);\r\n}\r\n[mono-filter-icon-btn] .mono-icon,\r\n[mono-filter-icon-btn] > svg {\r\n width: var(--_mono-filter-icon);\r\n height: var(--_mono-filter-icon);\r\n}\r\n\r\n/* ── Add rule / group links ─────────────────────────────────────────────── */\r\n[mono-filter-add] {\r\n display: flex;\r\n align-items: center;\r\n gap: calc(var(--_mono-filter-gap) * 2);\r\n}\r\n/* basecoat@1.0.2 styles/vega.css .btn[data-variant='link'] — text-primary underline-offset-4 hover:underline */\r\n[mono-filter-link] {\r\n padding: 0;\r\n border: 0;\r\n background: none;\r\n font: inherit;\r\n font-size: var(--_mono-filter-font);\r\n color: var(--_mono-filter-accent);\r\n text-underline-offset: 4px;\r\n cursor: pointer;\r\n}\r\n[mono-filter-link]:hover {\r\n text-decoration: underline;\r\n}\r\n[mono-filter-link]:focus-visible {\r\n outline: none;\r\n border-radius: var(--mono-radius-sm);\r\n box-shadow: 0 0 0 3px color-mix(in oklab, var(--_mono-filter-ring) 50%, transparent);\r\n}\r\n\r\n[mono-filter-empty] {\r\n padding: calc(var(--mono-spacing) * 1) 0;\r\n font-size: var(--_mono-filter-font);\r\n color: var(--_mono-filter-muted);\r\n}\r\n";
382
+ //#endregion
383
+ //#region src/components/filter/mono-filter-builder.shadow.ts
384
+ var MonoFilterBuilderShadow = class MonoFilterBuilderShadow extends MonoFilterBuilderCore(LitElement) {
385
+ static {
386
+ this.styles = [unsafeCSS(toShadowCss(filter_default, { hostDisplay: "block" }))];
387
+ }
388
+ renderIcon(name) {
389
+ if (name === "trash") return html`<span class="mono-icon i-mdi-trash-can-outline" aria-hidden="true"></span>`;
390
+ if (name === "plus") return html`<span class="mono-icon i-mdi-plus" aria-hidden="true"></span>`;
391
+ return html`<span class="mono-icon i-mdi-file-tree-outline" aria-hidden="true"></span>`;
392
+ }
393
+ connectedCallback() {
394
+ super.connectedCallback();
395
+ if (isServer) return;
396
+ adoptIconStyles(this.renderRoot);
397
+ flushSsrHydration(this);
398
+ }
399
+ };
400
+ MonoFilterBuilderShadow = __decorate([customElement("mono-shadow-filter-builder")], MonoFilterBuilderShadow);
401
+ //#endregion
402
+ export { DEFAULT_TEXTS, MonoFilterBuilderCore, MonoFilterBuilderShadow, OPERATOR_ARITY, arrayToODataString, arrayToTree, monoFilterBuilder, odataStringToArray, operatorsFor, treeToArray };