@mono-lit/helper 0.0.0-stage → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. package/LICENSE.md +55 -0
  2. package/README.md +34 -2
  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-search-Bwo5bg8K.js +573 -0
  13. package/dist/data-source-controller-C50Qyfzh.js +178 -0
  14. package/dist/data-source-options-BTpfrOZ_.js +535 -0
  15. package/dist/data-source-options-CQSTZHPE.js +537 -0
  16. package/dist/data-source-read-CUX-lgrQ.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-BvlBx_GZ.js +2302 -0
  24. package/dist/export.d.ts +1 -0
  25. package/dist/export.js +2302 -0
  26. package/dist/field-icons-BoOG6KrL.js +51 -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-DjvYOL-J.js +395 -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-CoVnBLav.js +873 -0
  51. package/dist/mono-button.shadow-FfP_hMH4.js +784 -0
  52. package/dist/mono-data-chart-ChU4Ii3p.js +738 -0
  53. package/dist/mono-data-dropdown-BAUl58kW.js +357 -0
  54. package/dist/mono-data-grid-CLBK8clE.js +4140 -0
  55. package/dist/mono-data-grid-Db80FzdZ.js +4142 -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/notifier-CE4yxMUQ.js +88 -0
  62. package/dist/nuxt.d.ts +1 -0
  63. package/dist/nuxt.js +130 -0
  64. package/dist/popup-portal-BziRX1yG.js +465 -0
  65. package/dist/popup-stack-CEEMib__.js +189 -0
  66. package/dist/rate-limit-BBa2PO79.js +521 -0
  67. package/dist/reactive-BHsqVjRh.js +789 -0
  68. package/dist/reactive-D3EERqgO.js +47 -0
  69. package/dist/search.d.ts +1 -0
  70. package/dist/search.js +97 -0
  71. package/dist/src/components/accordion/accordion-core.d.ts +62 -0
  72. package/dist/src/components/accordion/accordion-types.d.ts +62 -0
  73. package/dist/src/components/accordion/index.d.ts +3 -0
  74. package/dist/src/components/accordion/index.shadow.d.ts +5 -0
  75. package/dist/src/components/accordion/mono-accordion.d.ts +55 -0
  76. package/dist/src/components/accordion/mono-accordion.shadow.d.ts +56 -0
  77. package/dist/src/components/alert/alert-core.d.ts +46 -0
  78. package/dist/src/components/alert/alert-types.d.ts +44 -0
  79. package/dist/src/components/alert/index.d.ts +3 -0
  80. package/dist/src/components/alert/index.shadow.d.ts +5 -0
  81. package/dist/src/components/alert/mono-alert.d.ts +44 -0
  82. package/dist/src/components/alert/mono-alert.shadow.d.ts +34 -0
  83. package/dist/src/components/breadcrumb/breadcrumb-core.d.ts +61 -0
  84. package/dist/src/components/breadcrumb/breadcrumb-list-core.d.ts +49 -0
  85. package/dist/src/components/breadcrumb/breadcrumb-render.d.ts +31 -0
  86. package/dist/src/components/breadcrumb/breadcrumb-types.d.ts +117 -0
  87. package/dist/src/components/breadcrumb/breadcrumb-utils.d.ts +43 -0
  88. package/dist/src/components/breadcrumb/index.d.ts +6 -0
  89. package/dist/src/components/breadcrumb/index.shadow.d.ts +8 -0
  90. package/dist/src/components/breadcrumb/mono-breadcrumb-list.d.ts +29 -0
  91. package/dist/src/components/breadcrumb/mono-breadcrumb-list.shadow.d.ts +48 -0
  92. package/dist/src/components/breadcrumb/mono-breadcrumb.d.ts +38 -0
  93. package/dist/src/components/breadcrumb/mono-breadcrumb.shadow.d.ts +73 -0
  94. package/dist/src/components/button/button-core.d.ts +90 -0
  95. package/dist/src/components/button/button-dropdown-core.d.ts +57 -0
  96. package/dist/src/components/button/button-dropdown-types.d.ts +129 -0
  97. package/dist/src/components/button/button-types.d.ts +219 -0
  98. package/dist/src/components/button/button-utils.d.ts +18 -0
  99. package/dist/src/components/button/index.button-dropdown.d.ts +4 -0
  100. package/dist/src/components/button/index.button-dropdown.shadow.d.ts +4 -0
  101. package/dist/src/components/button/index.d.ts +8 -0
  102. package/dist/src/components/button/index.shadow.d.ts +5 -0
  103. package/dist/src/components/button/mono-button-dropdown.d.ts +35 -0
  104. package/dist/src/components/button/mono-button-dropdown.shadow.d.ts +45 -0
  105. package/dist/src/components/button/mono-button.d.ts +123 -0
  106. package/dist/src/components/button/mono-button.shadow.d.ts +56 -0
  107. package/dist/src/components/card/card-core.d.ts +74 -0
  108. package/dist/src/components/card/card-types.d.ts +137 -0
  109. package/dist/src/components/card/card-utils.d.ts +23 -0
  110. package/dist/src/components/card/index.d.ts +4 -0
  111. package/dist/src/components/card/index.shadow.d.ts +6 -0
  112. package/dist/src/components/card/mono-card.d.ts +56 -0
  113. package/dist/src/components/card/mono-card.shadow.d.ts +52 -0
  114. package/dist/src/components/chart/chart-core.d.ts +43 -0
  115. package/dist/src/components/chart/chart-odata.d.ts +52 -0
  116. package/dist/src/components/chart/chart-types.d.ts +337 -0
  117. package/dist/src/components/chart/index.d.ts +8 -0
  118. package/dist/src/components/chart/index.shadow.d.ts +7 -0
  119. package/dist/src/components/chart/mono-chart-presets.d.ts +43 -0
  120. package/dist/src/components/chart/mono-chart-presets.shadow.d.ts +43 -0
  121. package/dist/src/components/chart/mono-chart.d.ts +30 -0
  122. package/dist/src/components/chart/mono-chart.shadow.d.ts +22 -0
  123. package/dist/src/components/chart/mono-data-chart.d.ts +27 -0
  124. package/dist/src/components/checkbox/checkbox-core.d.ts +53 -0
  125. package/dist/src/components/checkbox/checkbox-types.d.ts +69 -0
  126. package/dist/src/components/checkbox/checkbox-utils.d.ts +35 -0
  127. package/dist/src/components/checkbox/index.d.ts +4 -0
  128. package/dist/src/components/checkbox/index.shadow.d.ts +5 -0
  129. package/dist/src/components/checkbox/mono-checkbox.d.ts +34 -0
  130. package/dist/src/components/checkbox/mono-checkbox.shadow.d.ts +45 -0
  131. package/dist/src/components/chip/chip-core.d.ts +58 -0
  132. package/dist/src/components/chip/chip-types.d.ts +142 -0
  133. package/dist/src/components/chip/chip-utils.d.ts +24 -0
  134. package/dist/src/components/chip/index.d.ts +8 -0
  135. package/dist/src/components/chip/index.shadow.d.ts +6 -0
  136. package/dist/src/components/chip/mono-chip.d.ts +48 -0
  137. package/dist/src/components/chip/mono-chip.shadow.d.ts +33 -0
  138. package/dist/src/components/chip/mono-status-dot.d.ts +34 -0
  139. package/dist/src/components/date/date-core.d.ts +80 -0
  140. package/dist/src/components/date/date-types.d.ts +163 -0
  141. package/dist/src/components/date/index.d.ts +3 -0
  142. package/dist/src/components/date/index.shadow.d.ts +4 -0
  143. package/dist/src/components/date/mono-date.d.ts +22 -0
  144. package/dist/src/components/date/mono-date.shadow.d.ts +31 -0
  145. package/dist/src/components/drawer/drawer-core.d.ts +99 -0
  146. package/dist/src/components/drawer/drawer-types.d.ts +153 -0
  147. package/dist/src/components/drawer/index.d.ts +3 -0
  148. package/dist/src/components/drawer/index.shadow.d.ts +4 -0
  149. package/dist/src/components/drawer/mono-drawer.d.ts +45 -0
  150. package/dist/src/components/drawer/mono-drawer.shadow.d.ts +46 -0
  151. package/dist/src/components/dropdown/dropdown-core.d.ts +33 -0
  152. package/dist/src/components/dropdown/dropdown-types.d.ts +88 -0
  153. package/dist/src/components/dropdown/index.d.ts +3 -0
  154. package/dist/src/components/dropdown/index.shadow.d.ts +4 -0
  155. package/dist/src/components/dropdown/mono-dropdown.d.ts +34 -0
  156. package/dist/src/components/dropdown/mono-dropdown.shadow.d.ts +28 -0
  157. package/dist/src/components/dropdown-table/dropdown-table-core.d.ts +65 -0
  158. package/dist/src/components/dropdown-table/dropdown-table-types.d.ts +278 -0
  159. package/dist/src/components/dropdown-table/index.d.ts +5 -0
  160. package/dist/src/components/dropdown-table/index.shadow.d.ts +6 -0
  161. package/dist/src/components/dropdown-table/mono-data-dropdown.d.ts +152 -0
  162. package/dist/src/components/dropdown-table/mono-dropdown-table.d.ts +46 -0
  163. package/dist/src/components/dropdown-table/mono-dropdown-table.shadow.d.ts +22 -0
  164. package/dist/src/components/file-upload/file-upload-core.d.ts +60 -0
  165. package/dist/src/components/file-upload/file-upload-types.d.ts +145 -0
  166. package/dist/src/components/file-upload/file-upload-utils.d.ts +16 -0
  167. package/dist/src/components/file-upload/index.d.ts +4 -0
  168. package/dist/src/components/file-upload/index.shadow.d.ts +5 -0
  169. package/dist/src/components/file-upload/mono-file-upload.d.ts +33 -0
  170. package/dist/src/components/file-upload/mono-file-upload.shadow.d.ts +50 -0
  171. package/dist/src/components/filter/filter-builder-core.d.ts +36 -0
  172. package/dist/src/components/filter/filter-builder.d.ts +23 -0
  173. package/dist/src/components/filter/filter-odata.d.ts +27 -0
  174. package/dist/src/components/filter/filter-operators.d.ts +13 -0
  175. package/dist/src/components/filter/filter-types.d.ts +253 -0
  176. package/dist/src/components/filter/index.d.ts +6 -0
  177. package/dist/src/components/filter/index.shadow.d.ts +7 -0
  178. package/dist/src/components/filter/mono-filter-builder.d.ts +21 -0
  179. package/dist/src/components/filter/mono-filter-builder.shadow.d.ts +17 -0
  180. package/dist/src/components/form/form-control-core.d.ts +37 -0
  181. package/dist/src/components/form/form-rules.d.ts +25 -0
  182. package/dist/src/components/form/form-types.d.ts +307 -0
  183. package/dist/src/components/form/index.d.ts +6 -0
  184. package/dist/src/components/form/mono-form-controller.d.ts +16 -0
  185. package/dist/src/components/input/index.d.ts +6 -0
  186. package/dist/src/components/input/index.shadow.d.ts +8 -0
  187. package/dist/src/components/input/input-core.d.ts +91 -0
  188. package/dist/src/components/input/input-format.d.ts +118 -0
  189. package/dist/src/components/input/input-types.d.ts +179 -0
  190. package/dist/src/components/input/input-utils.d.ts +10 -0
  191. package/dist/src/components/input/mono-input.d.ts +46 -0
  192. package/dist/src/components/input/mono-input.shadow.d.ts +34 -0
  193. package/dist/src/components/menu/index.d.ts +6 -0
  194. package/dist/src/components/menu/index.shadow.d.ts +7 -0
  195. package/dist/src/components/menu/menu-core.d.ts +65 -0
  196. package/dist/src/components/menu/menu-render.d.ts +55 -0
  197. package/dist/src/components/menu/menu-types.d.ts +195 -0
  198. package/dist/src/components/menu/menu-utils.d.ts +53 -0
  199. package/dist/src/components/menu/mono-menu-list.d.ts +118 -0
  200. package/dist/src/components/menu/mono-menu.d.ts +39 -0
  201. package/dist/src/components/menu/mono-menu.shadow.d.ts +40 -0
  202. package/dist/src/components/modal/index.d.ts +4 -0
  203. package/dist/src/components/modal/index.shadow.d.ts +5 -0
  204. package/dist/src/components/modal/modal-core.d.ts +110 -0
  205. package/dist/src/components/modal/modal-types.d.ts +304 -0
  206. package/dist/src/components/modal/mono-modal-controller.d.ts +4 -0
  207. package/dist/src/components/modal/mono-modal.d.ts +45 -0
  208. package/dist/src/components/modal/mono-modal.shadow.d.ts +50 -0
  209. package/dist/src/components/nav/index.d.ts +4 -0
  210. package/dist/src/components/nav/index.shadow.d.ts +6 -0
  211. package/dist/src/components/nav/mono-nav.d.ts +41 -0
  212. package/dist/src/components/nav/mono-nav.shadow.d.ts +21 -0
  213. package/dist/src/components/nav/nav-core.d.ts +34 -0
  214. package/dist/src/components/nav/nav-types.d.ts +48 -0
  215. package/dist/src/components/nav/nav-utils.d.ts +12 -0
  216. package/dist/src/components/radio/index.d.ts +4 -0
  217. package/dist/src/components/radio/index.shadow.d.ts +5 -0
  218. package/dist/src/components/radio/mono-radio.d.ts +31 -0
  219. package/dist/src/components/radio/mono-radio.shadow.d.ts +35 -0
  220. package/dist/src/components/radio/radio-core.d.ts +45 -0
  221. package/dist/src/components/radio/radio-types.d.ts +58 -0
  222. package/dist/src/components/radio/radio-utils.d.ts +12 -0
  223. package/dist/src/components/rich-text-editor/index.d.ts +5 -0
  224. package/dist/src/components/rich-text-editor/index.shadow.d.ts +6 -0
  225. package/dist/src/components/rich-text-editor/mono-rich-text-editor.d.ts +31 -0
  226. package/dist/src/components/rich-text-editor/mono-rich-text-editor.shadow.d.ts +34 -0
  227. package/dist/src/components/rich-text-editor/rich-text-editor-core.d.ts +100 -0
  228. package/dist/src/components/rich-text-editor/rich-text-editor-loader.d.ts +17 -0
  229. package/dist/src/components/rich-text-editor/rich-text-editor-toolbar.d.ts +65 -0
  230. package/dist/src/components/rich-text-editor/rich-text-editor-types.d.ts +231 -0
  231. package/dist/src/components/select/index.d.ts +4 -0
  232. package/dist/src/components/select/index.shadow.d.ts +5 -0
  233. package/dist/src/components/select/mono-select.d.ts +69 -0
  234. package/dist/src/components/select/mono-select.shadow.d.ts +48 -0
  235. package/dist/src/components/select/select-core.d.ts +98 -0
  236. package/dist/src/components/select/select-types.d.ts +258 -0
  237. package/dist/src/components/select/select-utils.d.ts +7 -0
  238. package/dist/src/components/sidebar/index.d.ts +4 -0
  239. package/dist/src/components/sidebar/index.shadow.d.ts +6 -0
  240. package/dist/src/components/sidebar/mono-sidebar.d.ts +34 -0
  241. package/dist/src/components/sidebar/mono-sidebar.shadow.d.ts +27 -0
  242. package/dist/src/components/sidebar/sidebar-core.d.ts +51 -0
  243. package/dist/src/components/sidebar/sidebar-types.d.ts +119 -0
  244. package/dist/src/components/sidebar/sidebar-utils.d.ts +55 -0
  245. package/dist/src/components/switch/index.d.ts +4 -0
  246. package/dist/src/components/switch/index.shadow.d.ts +5 -0
  247. package/dist/src/components/switch/mono-switch.d.ts +31 -0
  248. package/dist/src/components/switch/mono-switch.shadow.d.ts +36 -0
  249. package/dist/src/components/switch/switch-core.d.ts +49 -0
  250. package/dist/src/components/switch/switch-types.d.ts +64 -0
  251. package/dist/src/components/switch/switch-utils.d.ts +12 -0
  252. package/dist/src/components/table/array-source.d.ts +44 -0
  253. package/dist/src/components/table/date-filter-tree.d.ts +93 -0
  254. package/dist/src/components/table/grouping.d.ts +55 -0
  255. package/dist/src/components/table/index.d.ts +33 -0
  256. package/dist/src/components/table/index.shadow.d.ts +47 -0
  257. package/dist/src/components/table/mono-data-grid.d.ts +1756 -0
  258. package/dist/src/components/table/mono-table-checkbox-core.d.ts +76 -0
  259. package/dist/src/components/table/mono-table-checkbox.d.ts +34 -0
  260. package/dist/src/components/table/mono-table-checkbox.shadow.d.ts +26 -0
  261. package/dist/src/components/table/mono-table-detail-core.d.ts +87 -0
  262. package/dist/src/components/table/mono-table-detail.d.ts +32 -0
  263. package/dist/src/components/table/mono-table-detail.shadow.d.ts +31 -0
  264. package/dist/src/components/table/mono-table-empty-core.d.ts +60 -0
  265. package/dist/src/components/table/mono-table-empty.d.ts +35 -0
  266. package/dist/src/components/table/mono-table-empty.shadow.d.ts +40 -0
  267. package/dist/src/components/table/mono-table-error-core.d.ts +84 -0
  268. package/dist/src/components/table/mono-table-error.d.ts +28 -0
  269. package/dist/src/components/table/mono-table-error.shadow.d.ts +21 -0
  270. package/dist/src/components/table/mono-table-info-core.d.ts +13 -0
  271. package/dist/src/components/table/mono-table-info.d.ts +19 -0
  272. package/dist/src/components/table/mono-table-info.shadow.d.ts +14 -0
  273. package/dist/src/components/table/mono-table-loading-core.d.ts +41 -0
  274. package/dist/src/components/table/mono-table-loading.d.ts +50 -0
  275. package/dist/src/components/table/mono-table-loading.shadow.d.ts +14 -0
  276. package/dist/src/components/table/mono-table-page-size-core.d.ts +14 -0
  277. package/dist/src/components/table/mono-table-page-size.d.ts +16 -0
  278. package/dist/src/components/table/mono-table-page-size.shadow.d.ts +11 -0
  279. package/dist/src/components/table/mono-table-paging-core.d.ts +22 -0
  280. package/dist/src/components/table/mono-table-paging-group-core.d.ts +18 -0
  281. package/dist/src/components/table/mono-table-paging-group.d.ts +20 -0
  282. package/dist/src/components/table/mono-table-paging-group.shadow.d.ts +13 -0
  283. package/dist/src/components/table/mono-table-paging.d.ts +16 -0
  284. package/dist/src/components/table/mono-table-paging.shadow.d.ts +11 -0
  285. package/dist/src/components/table/mono-table-search-core.d.ts +74 -0
  286. package/dist/src/components/table/mono-table-search.d.ts +34 -0
  287. package/dist/src/components/table/mono-table-search.shadow.d.ts +21 -0
  288. package/dist/src/components/table/mono-table-sort-core.d.ts +35 -0
  289. package/dist/src/components/table/mono-table-sort.d.ts +38 -0
  290. package/dist/src/components/table/mono-table-sort.shadow.d.ts +20 -0
  291. package/dist/src/components/table/mono-table-summary-core.d.ts +26 -0
  292. package/dist/src/components/table/mono-table-summary.d.ts +24 -0
  293. package/dist/src/components/table/mono-table-summary.shadow.d.ts +14 -0
  294. package/dist/src/components/table/mono-table-th-core.d.ts +56 -0
  295. package/dist/src/components/table/mono-table-th.d.ts +41 -0
  296. package/dist/src/components/table/mono-table-th.shadow.d.ts +19 -0
  297. package/dist/src/components/table/store-group-source.d.ts +24 -0
  298. package/dist/src/components/table/table-controller-core.d.ts +40 -0
  299. package/dist/src/components/table/table-filter-icons.d.ts +3 -0
  300. package/dist/src/components/table/table-menu-core.d.ts +65 -0
  301. package/dist/src/components/table/table-overlay.d.ts +165 -0
  302. package/dist/src/components/table/table-sort-icons.d.ts +4 -0
  303. package/dist/src/components/table/table-sort-utils.d.ts +20 -0
  304. package/dist/src/components/table/table-types.d.ts +475 -0
  305. package/dist/src/components/tabs/index.d.ts +3 -0
  306. package/dist/src/components/tabs/index.shadow.d.ts +4 -0
  307. package/dist/src/components/tabs/mono-tabs.d.ts +33 -0
  308. package/dist/src/components/tabs/mono-tabs.shadow.d.ts +37 -0
  309. package/dist/src/components/tabs/tabs-core.d.ts +57 -0
  310. package/dist/src/components/tabs/tabs-types.d.ts +65 -0
  311. package/dist/src/components/tag-input/index.d.ts +4 -0
  312. package/dist/src/components/tag-input/index.shadow.d.ts +5 -0
  313. package/dist/src/components/tag-input/mono-tag-input.d.ts +66 -0
  314. package/dist/src/components/tag-input/mono-tag-input.shadow.d.ts +40 -0
  315. package/dist/src/components/tag-input/tag-input-core.d.ts +108 -0
  316. package/dist/src/components/tag-input/tag-input-types.d.ts +394 -0
  317. package/dist/src/components/tag-input/tag-input-utils.d.ts +8 -0
  318. package/dist/src/components/textarea/index.d.ts +4 -0
  319. package/dist/src/components/textarea/index.shadow.d.ts +5 -0
  320. package/dist/src/components/textarea/mono-textarea.d.ts +29 -0
  321. package/dist/src/components/textarea/mono-textarea.shadow.d.ts +31 -0
  322. package/dist/src/components/textarea/textarea-core.d.ts +60 -0
  323. package/dist/src/components/textarea/textarea-types.d.ts +131 -0
  324. package/dist/src/components/textarea/textarea-utils.d.ts +7 -0
  325. package/dist/src/components/tooltip/control-tooltip.d.ts +36 -0
  326. package/dist/src/components/tooltip/index.d.ts +6 -0
  327. package/dist/src/components/tooltip/tooltip-config.d.ts +27 -0
  328. package/dist/src/components/tooltip/tooltip-declarative.d.ts +41 -0
  329. package/dist/src/components/tooltip/tooltip-loader.d.ts +1 -0
  330. package/dist/src/components/tooltip/tooltip-types.d.ts +110 -0
  331. package/dist/src/composables/breakpoints.d.ts +59 -0
  332. package/dist/src/composables/chip-limits.d.ts +48 -0
  333. package/dist/src/composables/chip-strip.d.ts +93 -0
  334. package/dist/src/composables/color.d.ts +103 -0
  335. package/dist/src/composables/css-class.d.ts +27 -0
  336. package/dist/src/composables/css-size.d.ts +40 -0
  337. package/dist/src/composables/data-source-controller.d.ts +84 -0
  338. package/dist/src/composables/element-props.d.ts +46 -0
  339. package/dist/src/composables/field-icons.d.ts +7 -0
  340. package/dist/src/composables/hybird-prop.d.ts +79 -0
  341. package/dist/src/composables/hydration-flush.d.ts +34 -0
  342. package/dist/src/composables/icon.d.ts +17 -0
  343. package/dist/src/composables/layout-var.d.ts +34 -0
  344. package/dist/src/composables/light-slots.d.ts +133 -0
  345. package/dist/src/composables/mdi-glyphs.d.ts +4 -0
  346. package/dist/src/composables/mono-element.d.ts +9 -0
  347. package/dist/src/composables/mono-event.d.ts +55 -0
  348. package/dist/src/composables/mono-pending.d.ts +8 -0
  349. package/dist/src/composables/mono-skeleton.d.ts +193 -0
  350. package/dist/src/composables/mono-ui.d.ts +58 -0
  351. package/dist/src/composables/notifier.d.ts +46 -0
  352. package/dist/src/composables/popup-portal.d.ts +226 -0
  353. package/dist/src/composables/popup-stack.d.ts +70 -0
  354. package/dist/src/composables/rate-limit.d.ts +108 -0
  355. package/dist/src/composables/reactive.d.ts +53 -0
  356. package/dist/src/composables/shadow-css.d.ts +42 -0
  357. package/dist/src/composables/visibility.d.ts +36 -0
  358. package/dist/src/data/theme/index.d.ts +30 -0
  359. package/dist/src/data/theme/presets.d.ts +94 -0
  360. package/dist/src/entries/index.d.ts +2 -0
  361. package/dist/src/entries/index.node.d.ts +42 -0
  362. package/dist/src/entries/search.d.ts +3 -0
  363. package/dist/src/export/detail.d.ts +29 -0
  364. package/dist/src/export/download.d.ts +9 -0
  365. package/dist/src/export/excel/index.d.ts +27 -0
  366. package/dist/src/export/excel/nodes.d.ts +123 -0
  367. package/dist/src/export/expression.d.ts +36 -0
  368. package/dist/src/export/helpers.d.ts +6 -0
  369. package/dist/src/export/index.d.ts +13 -0
  370. package/dist/src/export/markdown.d.ts +52 -0
  371. package/dist/src/export/resolve-data.d.ts +31 -0
  372. package/dist/src/export/sentinel.d.ts +97 -0
  373. package/dist/src/export/sheet-name.d.ts +45 -0
  374. package/dist/src/export/styles.d.ts +33 -0
  375. package/dist/src/export/template.d.ts +10 -0
  376. package/dist/src/export/types.d.ts +259 -0
  377. package/dist/src/import/coerce.d.ts +38 -0
  378. package/dist/src/import/index.d.ts +16 -0
  379. package/dist/src/import/match.d.ts +54 -0
  380. package/dist/src/import/parse.d.ts +15 -0
  381. package/dist/src/import/types.d.ts +153 -0
  382. package/dist/src/nuxt/index.d.ts +94 -0
  383. package/dist/src/search/data-search.d.ts +207 -0
  384. package/dist/src/search/field-path.d.ts +107 -0
  385. package/dist/src/search/filter-eval.d.ts +30 -0
  386. package/dist/src/search/index.d.ts +22 -0
  387. package/dist/src/search/odata-search.d.ts +18 -0
  388. package/dist/src/search/search-expr.d.ts +160 -0
  389. package/dist/src/utils/data-source-apply.d.ts +97 -0
  390. package/dist/src/utils/data-source-options.d.ts +116 -0
  391. package/dist/src/utils/data-source-read.d.ts +85 -0
  392. package/dist/src/utils/data-source-summary.d.ts +55 -0
  393. package/dist/src/utils/normalize-error.d.ts +60 -0
  394. package/dist/src/vite/index.d.ts +48 -0
  395. package/dist/src/vite/mono-client-only.d.ts +35 -0
  396. package/dist/src/vite/mono-ssr-stub.d.ts +20 -0
  397. package/dist/src/vite/shadow-manifest.d.ts +8 -0
  398. package/dist/styles-BIJ31TM4.js +20146 -0
  399. package/dist/tooltip-CysgRgBi.js +760 -0
  400. package/dist/tooltip.d.ts +1 -0
  401. package/dist/tooltip.js +2 -0
  402. package/dist/ui/accordion.d.ts +1 -0
  403. package/dist/ui/accordion.js +466 -0
  404. package/dist/ui/alert.d.ts +1 -0
  405. package/dist/ui/alert.js +221 -0
  406. package/dist/ui/breadcrumb.d.ts +1 -0
  407. package/dist/ui/breadcrumb.js +902 -0
  408. package/dist/ui/button-dropdown.d.ts +1 -0
  409. package/dist/ui/button-dropdown.js +679 -0
  410. package/dist/ui/button.d.ts +1 -0
  411. package/dist/ui/button.js +63 -0
  412. package/dist/ui/card.d.ts +1 -0
  413. package/dist/ui/card.js +511 -0
  414. package/dist/ui/chart.d.ts +1 -0
  415. package/dist/ui/chart.js +808 -0
  416. package/dist/ui/checkbox.d.ts +1 -0
  417. package/dist/ui/checkbox.js +413 -0
  418. package/dist/ui/chip.d.ts +1 -0
  419. package/dist/ui/chip.js +558 -0
  420. package/dist/ui/date.d.ts +1 -0
  421. package/dist/ui/date.js +686 -0
  422. package/dist/ui/drawer.d.ts +1 -0
  423. package/dist/ui/drawer.js +901 -0
  424. package/dist/ui/dropdown-table.d.ts +1 -0
  425. package/dist/ui/dropdown-table.js +1291 -0
  426. package/dist/ui/dropdown.d.ts +1 -0
  427. package/dist/ui/dropdown.js +586 -0
  428. package/dist/ui/file-upload.d.ts +1 -0
  429. package/dist/ui/file-upload.js +688 -0
  430. package/dist/ui/filter.d.ts +1 -0
  431. package/dist/ui/filter.js +400 -0
  432. package/dist/ui/font/files/geist-47c091c9.woff2 +0 -0
  433. package/dist/ui/font/files/geist-8dd77544.woff2 +0 -0
  434. package/dist/ui/font/files/geist-b9248b1e.woff2 +0 -0
  435. package/dist/ui/font/files/geist-d40d74b4.woff2 +0 -0
  436. package/dist/ui/font/files/geist-f493429a.woff2 +0 -0
  437. package/dist/ui/font/files/geistmono-03737868.woff2 +0 -0
  438. package/dist/ui/font/files/geistmono-421a7e38.woff2 +0 -0
  439. package/dist/ui/font/files/geistmono-48ef518d.woff2 +0 -0
  440. package/dist/ui/font/files/geistmono-5df35d39.woff2 +0 -0
  441. package/dist/ui/font/files/geistmono-7de289a4.woff2 +0 -0
  442. package/dist/ui/font/files/geistmono-e976128f.woff2 +0 -0
  443. package/dist/ui/font/files/inter-05cf802c.woff2 +0 -0
  444. package/dist/ui/font/files/inter-2b2f25a4.woff2 +0 -0
  445. package/dist/ui/font/files/inter-467acc7a.woff2 +0 -0
  446. package/dist/ui/font/files/inter-6e85163c.woff2 +0 -0
  447. package/dist/ui/font/files/inter-7048add3.woff2 +0 -0
  448. package/dist/ui/font/files/inter-9be0371e.woff2 +0 -0
  449. package/dist/ui/font/files/inter-a28b7e31.woff2 +0 -0
  450. package/dist/ui/font/files/poppins-054df55a.woff2 +0 -0
  451. package/dist/ui/font/files/poppins-0ee5dc9a.woff2 +0 -0
  452. package/dist/ui/font/files/poppins-0f44cb18.woff2 +0 -0
  453. package/dist/ui/font/files/poppins-0ff0d30c.woff2 +0 -0
  454. package/dist/ui/font/files/poppins-13045147.woff2 +0 -0
  455. package/dist/ui/font/files/poppins-1db57cd9.woff2 +0 -0
  456. package/dist/ui/font/files/poppins-2cf2a902.woff2 +0 -0
  457. package/dist/ui/font/files/poppins-39e7f079.woff2 +0 -0
  458. package/dist/ui/font/files/poppins-9607042d.woff2 +0 -0
  459. package/dist/ui/font/files/poppins-9a88fc1f.woff2 +0 -0
  460. package/dist/ui/font/files/poppins-b8f4f752.woff2 +0 -0
  461. package/dist/ui/font/files/poppins-f5e57db4.woff2 +0 -0
  462. package/dist/ui/font/geist-mono.css +104 -0
  463. package/dist/ui/font/geist.css +168 -0
  464. package/dist/ui/font/inter.css +232 -0
  465. package/dist/ui/font/poppins.css +104 -0
  466. package/dist/ui/form.d.ts +1 -0
  467. package/dist/ui/form.js +3 -0
  468. package/dist/ui/index.css +21826 -0
  469. package/dist/ui/input.d.ts +1 -0
  470. package/dist/ui/input.js +1176 -0
  471. package/dist/ui/menu.d.ts +1 -0
  472. package/dist/ui/menu.js +1289 -0
  473. package/dist/ui/modal.d.ts +1 -0
  474. package/dist/ui/modal.js +995 -0
  475. package/dist/ui/nav.d.ts +1 -0
  476. package/dist/ui/nav.js +295 -0
  477. package/dist/ui/radio.d.ts +1 -0
  478. package/dist/ui/radio.js +379 -0
  479. package/dist/ui/rich-text-editor.d.ts +1 -0
  480. package/dist/ui/rich-text-editor.js +1338 -0
  481. package/dist/ui/select.d.ts +1 -0
  482. package/dist/ui/select.js +2066 -0
  483. package/dist/ui/shadow/accordion.js +442 -0
  484. package/dist/ui/shadow/alert.js +218 -0
  485. package/dist/ui/shadow/breadcrumb.js +919 -0
  486. package/dist/ui/shadow/button-dropdown.js +696 -0
  487. package/dist/ui/shadow/button.js +63 -0
  488. package/dist/ui/shadow/card.js +524 -0
  489. package/dist/ui/shadow/chart.js +1569 -0
  490. package/dist/ui/shadow/checkbox.js +457 -0
  491. package/dist/ui/shadow/chip.js +559 -0
  492. package/dist/ui/shadow/date.js +712 -0
  493. package/dist/ui/shadow/drawer.js +869 -0
  494. package/dist/ui/shadow/dropdown-table.js +1620 -0
  495. package/dist/ui/shadow/dropdown.js +547 -0
  496. package/dist/ui/shadow/file-upload.js +731 -0
  497. package/dist/ui/shadow/filter.js +402 -0
  498. package/dist/ui/shadow/input.js +1150 -0
  499. package/dist/ui/shadow/menu.js +899 -0
  500. package/dist/ui/shadow/modal.js +1193 -0
  501. package/dist/ui/shadow/nav.js +240 -0
  502. package/dist/ui/shadow/radio.js +408 -0
  503. package/dist/ui/shadow/rich-text-editor.js +1344 -0
  504. package/dist/ui/shadow/select.js +2033 -0
  505. package/dist/ui/shadow/sidebar.js +606 -0
  506. package/dist/ui/shadow/switch.js +428 -0
  507. package/dist/ui/shadow/table.js +4755 -0
  508. package/dist/ui/shadow/tabs.js +372 -0
  509. package/dist/ui/shadow/tag-input.js +2846 -0
  510. package/dist/ui/shadow/textarea.js +816 -0
  511. package/dist/ui/sidebar.d.ts +1 -0
  512. package/dist/ui/sidebar.js +659 -0
  513. package/dist/ui/switch.d.ts +1 -0
  514. package/dist/ui/switch.js +398 -0
  515. package/dist/ui/table.d.ts +1 -0
  516. package/dist/ui/table.js +4654 -0
  517. package/dist/ui/tabs.d.ts +1 -0
  518. package/dist/ui/tabs.js +379 -0
  519. package/dist/ui/tag-input.d.ts +1 -0
  520. package/dist/ui/tag-input.js +2819 -0
  521. package/dist/ui/textarea.d.ts +1 -0
  522. package/dist/ui/textarea.js +819 -0
  523. package/dist/ui/theme/legacy.css +293 -0
  524. package/dist/ui/theme/luma.css +743 -0
  525. package/dist/ui/theme/lyra.css +754 -0
  526. package/dist/ui/theme/maia.css +673 -0
  527. package/dist/ui/theme/mira.css +802 -0
  528. package/dist/ui/theme/nova.css +662 -0
  529. package/dist/ui/theme/one.css +699 -0
  530. package/dist/ui/theme/rhea.css +742 -0
  531. package/dist/ui/theme/sera.css +845 -0
  532. package/dist/ui/theme/tokens.css +261 -0
  533. package/dist/ui/theme/vega.css +467 -0
  534. package/dist/vite-C5iUK7so.js +329 -0
  535. package/dist/vite.d.ts +1 -0
  536. package/dist/vite.js +2 -0
  537. package/dist/vue.d.ts +282 -0
  538. package/package.json +411 -3
@@ -0,0 +1,84 @@
1
+ import { ReactiveController, ReactiveControllerHost } from 'lit';
2
+ /**
3
+ * Minimal structural shape of a devextreme DataSource. Declared locally so
4
+ * @mono-lit/helper stays dependency-free; a real devextreme DataSource satisfies it.
5
+ */
6
+ export interface MonoDataSource<T = unknown> {
7
+ load: () => PromiseLike<T[]> | T[];
8
+ items: () => T[];
9
+ isLoading?: () => boolean;
10
+ on(event: string, handler: (...args: unknown[]) => void): void;
11
+ off(event: string, handler: (...args: unknown[]) => void): void;
12
+ paginate?(value?: boolean): boolean;
13
+ pageSize?(value?: number): number;
14
+ pageIndex?(value?: number): number;
15
+ isLastPage?: () => boolean;
16
+ totalCount?: () => number;
17
+ }
18
+ /**
19
+ * Incremental loading mode. Works with BOTH a paged DataSource and a plain
20
+ * `items` array (the array is revealed one `pageSize` chunk at a time):
21
+ * - 'button' → render a "Load more" button at the end of the list.
22
+ * - 'scroll' → load/reveal the next chunk when scrolled near the bottom.
23
+ */
24
+ export type LoadMoreMode = 'button' | 'scroll';
25
+ export interface DataSourceControllerOptions<T> {
26
+ /** Current bound DataSource (or null) — read live from the host property. */
27
+ getDataSource: () => MonoDataSource<T> | null;
28
+ /** The raw plain `items` array, used when no DataSource is bound. */
29
+ getItems: () => T[];
30
+ /** Auto-load the source on attach when it has no items yet. */
31
+ getImmediate: () => boolean;
32
+ /** Effective load-more mode, or undefined when disabled. */
33
+ getLoadMoreMode: () => LoadMoreMode | undefined;
34
+ /** Sanitized chunk size (>= 1) for array-mode paging. */
35
+ getPageSize: () => number;
36
+ }
37
+ /**
38
+ * Encapsulates the generic DataSource + incremental-loading logic shared by
39
+ * `mono-select`, `mono-tag-input`, etc. The host owns the rendering and any
40
+ * scroll/height ergonomics; this controller owns binding, event wiring, page
41
+ * accumulation, and array-mode chunking.
42
+ *
43
+ * Every state mutation calls `host.requestUpdate()` so the host re-renders.
44
+ */
45
+ export declare class DataSourceController<T = unknown> implements ReactiveController {
46
+ private readonly host;
47
+ private readonly opts;
48
+ private _dsItems;
49
+ private _dsLoading;
50
+ private _loadingMore;
51
+ private _isLastPage;
52
+ private _visibleCount;
53
+ private _internalLoad;
54
+ private _bound;
55
+ constructor(host: ReactiveControllerHost, opts: DataSourceControllerOptions<T>);
56
+ hostConnected(): void;
57
+ hostDisconnected(): void;
58
+ /** Attach/detach listeners for a (possibly new) DataSource and seed state. */
59
+ bind(ds: MonoDataSource<T> | null): void;
60
+ maybeImmediateLoad(): void;
61
+ /** Call when the load-more mode changes; refreshes paging assumptions. */
62
+ onLoadMoreModeChange(): void;
63
+ /** Reset array-mode paging to the first chunk. */
64
+ resetVisible(): void;
65
+ /** Load/reveal the next page and append it to the accumulated list. */
66
+ loadMore(): Promise<void>;
67
+ /** Raw source array: accumulated DataSource items, or the plain `items`. */
68
+ get sourceItems(): T[];
69
+ /** Rows to actually render (array-mode reveals a slice; else everything). */
70
+ get visibleItems(): T[];
71
+ get loading(): boolean;
72
+ get loadingMore(): boolean;
73
+ /** load-more is driving a plain `items` array (no DataSource bound). */
74
+ get isArrayLoadMore(): boolean;
75
+ /** Whether there's nothing left to load/reveal. */
76
+ get atLastPage(): boolean;
77
+ private readonly _onChanged;
78
+ private readonly _onLoadingChanged;
79
+ private _sync;
80
+ /** Load the first page, replacing the accumulated list. */
81
+ private _loadFirstPage;
82
+ private _detach;
83
+ private _changed;
84
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Whether `key` can actually be assigned on `obj` — a plain expando, or an
3
+ * accessor/data property that isn't read-only.
4
+ *
5
+ * This matters because a controller's `props` object legitimately carries keys
6
+ * that are NOT element props: `monoDataGrid`'s `th[].summary` includes `prefix`
7
+ * and `precision`, which the controller consumes for formatting. `prefix`
8
+ * collides with the read-only native `Element.prefix`, and assigning it throws —
9
+ * which took down the whole docs page render until this check existed.
10
+ */
11
+ export declare function isSettable(obj: object, key: string): boolean;
12
+ /** `{ onChange, onToggle, onLoadingChange, … }` typed from a component's `*Events` interface. */
13
+ export type MonoEventProps<E> = {
14
+ [K in Extract<keyof E, string> as K extends `${string}-${string}` ? never : `on${Capitalize<K>}`]?: (event: E[K]) => void;
15
+ };
16
+ /** Whether a props key names an event handler (`onClick`, `onLoadingChange`). */
17
+ export declare function isEventHandlerKey(key: string): boolean;
18
+ /**
19
+ * `onClick` → `click`, `onLoadingChange` → `loading-change`, `onMnoChange` →
20
+ * `mno-change` — the same rule Vue applies to an `on*` listener prop, so a key
21
+ * that works in a template works here.
22
+ */
23
+ export declare function eventNameFromHandlerKey(key: string): string;
24
+ /**
25
+ * Remove every handler `applyProps` attached to `el`. Call it where an element
26
+ * leaves its controller (an unbind, a re-bind to a different one) so the old
27
+ * controller's handlers do not keep firing beside the new one's.
28
+ */
29
+ export declare function detachEventHandlers(el: object): void;
30
+ /**
31
+ * Write a controller's props onto an element.
32
+ *
33
+ * Two guards, both load-bearing:
34
+ * - `undefined` values are skipped, so "not declared" never clobbers a value the
35
+ * template set;
36
+ * - each write is equality-checked, so a sync can't schedule another update and
37
+ * loop.
38
+ *
39
+ * Handler keys (`onClick`, `onToggle`, …) become event listeners — see the
40
+ * block above — never properties.
41
+ *
42
+ * Shared by `table-controller-core` (`monoDataGrid`/`monoDataDropdown` elements)
43
+ * and `form-control-core` (`monoForm` controls) — the write loop is identical
44
+ * and its failure modes are subtle enough to be worth having in one place.
45
+ */
46
+ export declare function applyProps(el: object, patch: Record<string, unknown> | undefined): boolean;
@@ -0,0 +1,7 @@
1
+ import { TemplateResult } from 'lit';
2
+ /** Downward caret — the "this opens a panel" affordance. */
3
+ export declare function caretIcon(): TemplateResult;
4
+ /** The ✕ a clear button and a chip's remove button draw, at the caret's weight. */
5
+ export declare function closeIcon(): TemplateResult;
6
+ /** Left (`-1`) or right (`1`) chevron, matching {@link caretIcon}'s weight. */
7
+ export declare function chevronIcon(dir: -1 | 1): TemplateResult;
@@ -0,0 +1,79 @@
1
+ /** Generic constructor type for Lit mixins: `<T extends Constructor<LitElement>>`. */
2
+ export type Constructor<T = object> = new (...args: any[]) => T;
3
+ export declare function toKebabCase(value: string): string;
4
+ export declare function toLowerCaseProp(value: string): string;
5
+ export declare function defineHybridPropAliases<T extends object>(target: T, props: string[]): void;
6
+ /**
7
+ * Register a cross-name alias for a controller-binding prop — e.g.
8
+ * `defineHybridPropAlias(el, 'controlTable', 'dataGrid')` makes `controlTable`,
9
+ * `control-table` and `controltable` all read/write the canonical reactive
10
+ * `dataGrid` property (so `.controlTable = …` still triggers Lit's update
11
+ * cycle). Used to rename the controller props without a breaking change: the
12
+ * new `control-*` spellings land here while the old `data-*` ones keep working.
13
+ */
14
+ export declare function defineHybridPropAlias<T extends object>(target: T, aliasCamel: string, realProp: string): void;
15
+ /**
16
+ * Lit `hasChanged` for an array prop.
17
+ *
18
+ * **Load-bearing**, for exactly the reason `rateLimitHasChanged` is (see
19
+ * `composables/rate-limit.ts`): `:items="[...]"` in a template allocates a NEW array
20
+ * on every parent re-render. Under Lit's default `!==` the element sees a change
21
+ * each time, so anything gated on `changed.has('items')` — resetting an
22
+ * infinite-scroll page, invalidating a search memo, rebuilding a cache — runs on
23
+ * renders where nothing about the data actually moved.
24
+ *
25
+ * Element-wise identity rather than a deep compare: rows are normally stable objects
26
+ * owned by a store, so this catches the re-created-wrapper case cheaply. If the
27
+ * consumer also rebuilds each row object the arrays are reported as different, which
28
+ * is the safe direction.
29
+ *
30
+ * **Why this needs no "repair" step, unlike `mono-button-dropdown`.** That element
31
+ * compares entries by CONTENT and deliberately ignores function fields, so it reports
32
+ * "same" for entries that really were rebuilt — leaving cached listener state pointing
33
+ * at the previous array (hence `_retargetItemParts()`). `arrayHasChanged` says "same"
34
+ * only when the array holds literally the same objects in the same order, so nothing
35
+ * item-related can have moved and there is nothing to retarget. Reach for the deeper
36
+ * compare only where the callbacks are resolved late, and prove it.
37
+ *
38
+ * **Do NOT add this (or any `hasChanged`) to these — they hang real work off the
39
+ * update cycle, so suppressing an update silently drops it:**
40
+ * - `chart-core.ts` — `updated()` IS the chart pipeline; its last step `_applyData()`
41
+ * is the only place chart.js is redrawn. A skipped update freezes the canvas.
42
+ * - `date-core.ts` — `updated()` drives `_rebuild()` / `_applyModelValue()`, so
43
+ * flatpickr would be stranded on stale config.
44
+ * - every `mono-table-*` element — `table-controller-core.ts` overrides `update()` to
45
+ * pull each element's slice of `monoDataGrid({ props })`.
46
+ * - every `monoForm`-bound control and `filter-builder-core.ts` — same `update()` hook
47
+ * (`form-control-core.ts`), used for form binding and visibility.
48
+ *
49
+ * Surveyed 2026-08-17 across all 26 component directories; the guarded props are
50
+ * `select`/`tag-input` `items`, `tag-input` `modelValue`/`value`, `menu` +
51
+ * `mono-menu-list` `items`, `tabs` `items`, both `breadcrumb` `items`, and
52
+ * `file-upload` `modelValue`.
53
+ */
54
+ export declare function arrayHasChanged(value: unknown, old: unknown): boolean;
55
+ export declare const booleanStringConverter: {
56
+ fromAttribute(value: unknown): boolean;
57
+ toAttribute(value: boolean): string | null;
58
+ };
59
+ export declare const numberStringConverter: {
60
+ fromAttribute(value: string | null): number;
61
+ toAttribute(value: number): string | null;
62
+ };
63
+ /**
64
+ * Like {@link numberStringConverter}, but an absent/blank attribute stays
65
+ * `undefined` instead of collapsing to `0`.
66
+ *
67
+ * Needed wherever 0 is a meaningful value AND "not set" has to mean "fall back to
68
+ * whatever the component computes" — e.g. `mono-modal` / `mono-drawer`'s `z-index`,
69
+ * where 0 is a legal stacking level and unset means "let the popup stack decide".
70
+ * Using the plain number converter there would pin every dialog to `z-index: 0`.
71
+ */
72
+ export declare const optionalNumberConverter: {
73
+ fromAttribute(value: string | null): number | undefined;
74
+ toAttribute(value: number | undefined): string | null;
75
+ };
76
+ export declare const stringConverter: {
77
+ fromAttribute(value: string | null): string;
78
+ toAttribute(value: string): string | null;
79
+ };
@@ -0,0 +1,34 @@
1
+ import { ReactiveElement } from 'lit';
2
+ export interface FlushSsrHydrationOptions {
3
+ /**
4
+ * Withhold hydration until this returns `true`; polling continues meanwhile.
5
+ *
6
+ * Needed for elements that render a LIST from a property the server also
7
+ * rendered (`:items.prop`): Vue assigns the property asynchronously AFTER
8
+ * connect, so hydrating early makes the client render fewer children than the
9
+ * server's `<!--lit-part-->` markers → "Unhandled shorter than expected
10
+ * iterable" plus a duplicate render. Gate on the client count having caught
11
+ * up with the server count.
12
+ */
13
+ gate?: () => boolean;
14
+ /** How many ticks to attempt before giving up (default 30). */
15
+ maxTries?: number;
16
+ }
17
+ /**
18
+ * Force an SSR'd element's first client update to flush.
19
+ *
20
+ * Under `nuxt-ssr-lit` the server-rendered element can stay `hasUpdated: false`
21
+ * with updates disabled even after `<LitWrapper>` removes `defer-hydration` —
22
+ * so `render()` never re-runs and its event handlers never bind. The element is
23
+ * then frozen at whatever the SERVER assumed, while its JS properties keep
24
+ * taking client values: a silent divergence between the rendered DOM and the
25
+ * live props.
26
+ *
27
+ * Poll `requestUpdate()` for a few ticks until the element reports `hasUpdated`.
28
+ * A no-op once the element has hydrated normally.
29
+ *
30
+ * Scheduling races `requestAnimationFrame` against a `setTimeout` backstop:
31
+ * rAF does NOT fire in a hidden, minimized, or fully occluded tab, and relying
32
+ * on it alone leaves the element frozen until the tab is next painted.
33
+ */
34
+ export declare function flushSsrHydration(el: ReactiveElement, options?: FlushSsrHydrationOptions): void;
@@ -0,0 +1,17 @@
1
+ import { TemplateResult } from 'lit';
2
+ /**
3
+ * Detect whether an icon string is an iconify utility class — e.g.
4
+ * `i-mdi-close`, `i-tabler-upload`. UnoCSS's preset-icons resolves these to a
5
+ * background/mask, so components render them as an empty `<span class="i-...">`.
6
+ *
7
+ * Single source of truth — components re-export this from their own
8
+ * `*-utils.ts` so their public API stays stable.
9
+ */
10
+ export declare function isIconifyClass(icon: string | undefined | null): boolean;
11
+ /**
12
+ * Draw an `i-mdi-*` glyph as inline SVG — the SHADOW builds' counterpart to the
13
+ * light builds' UnoCSS mask. Both come from `@iconify-json/mdi`, so one `icon`
14
+ * value paints the same artwork in either build. Returns `undefined` when the
15
+ * glyph is not bundled (see `scripts/mdi-glyphs.mjs`), so a caller can fall back.
16
+ */
17
+ export declare function mdiGlyph(icon: string | undefined | null): TemplateResult | undefined;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Refcounted document-level layout variables.
3
+ *
4
+ * Several components publish their own size as a custom property on
5
+ * `document.documentElement` so page content can offset itself —
6
+ * `--mono-nav-height`, `--mono-sidebar-left-width`, `--mono-sidebar-right-width`.
7
+ * The property is global but the writers are not: two navs, or two sidebars on the
8
+ * same side, all write the SAME property.
9
+ *
10
+ * Removing it outright on the first unmount blanked the offset for every writer that
11
+ * was still mounted — the page content jumped back underneath a nav or sidebar that
12
+ * is still on screen. That bug was found independently in BOTH `mono-sidebar` and
13
+ * `mono-nav`, which is why the fix lives here rather than being written twice.
14
+ *
15
+ * Ownership is therefore refcounted: the property is removed only when the LAST
16
+ * owner releases it, and until then it is handed back to a remaining owner's last
17
+ * known value. Note that a refcount has two failure modes — releasing too early
18
+ * (survivor loses the var) and never reaching zero (the var is stranded on the
19
+ * document forever). Both are covered by assertions in `docs/e2e/stress.mjs` (repo root).
20
+ */
21
+ /**
22
+ * Publish `value` for `name` on behalf of `owner`.
23
+ *
24
+ * Re-claiming with the same owner just updates that owner's value, so this is safe
25
+ * to call on every render.
26
+ */
27
+ export declare function claimLayoutVar(name: string, owner: object, value: string): void;
28
+ /**
29
+ * Drop `owner`'s claim on `name`.
30
+ *
31
+ * The property is only removed once nobody holds it; while another owner remains,
32
+ * that owner's last published value is restored instead.
33
+ */
34
+ export declare function releaseLayoutVar(name: string, owner: object): void;
@@ -0,0 +1,133 @@
1
+ /** Captured nodes, keyed by slot name, in document order. */
2
+ export type LightSlotBuckets = Map<string, Node[]>;
3
+ export interface CaptureLightSlotsOptions {
4
+ /** Named `slot="…"` values this component lays out. */
5
+ names: readonly string[];
6
+ /** Bucket for unnamed content and framework anchors. Default `'default'`. */
7
+ fallback?: string;
8
+ /**
9
+ * Install the `textContent` guard on the host (default `true`). Opt out only for
10
+ * a component that never renders a `[data-mono-slot]` region for `fallback`.
11
+ */
12
+ guardTextContent?: boolean;
13
+ }
14
+ /**
15
+ * Take ownership of the host's current children. Run **once**, from
16
+ * `connectedCallback`, before the first render.
17
+ *
18
+ * Only nodes that were bucketed are detached from the host — anything left
19
+ * unclaimed stays exactly where the consumer put it.
20
+ */
21
+ export declare function captureLightSlots(host: HTMLElement, options: CaptureLightSlotsOptions): LightSlotBuckets;
22
+ export interface HostTextGuardOptions {
23
+ /** Bucket a bare text write lands in. Default `'default'`. */
24
+ fallback?: string;
25
+ /**
26
+ * Ran after a write that changed the captured content — normally
27
+ * `requestUpdate()`, because slot emptiness is read during render and is not
28
+ * itself reactive.
29
+ */
30
+ onWrite?: () => void;
31
+ }
32
+ /**
33
+ * Redirect `host.textContent = …` into the captured default region.
34
+ *
35
+ * A light-DOM component renders into its own host, so the host's children are the
36
+ * component. Vue compiles a lone interpolation to a `TEXT`-flagged vnode and
37
+ * patches it with `el.textContent = next` (`runtime-dom`'s `setElementText`) —
38
+ * on the HOST. That single assignment removes every rendered node, Lit's
39
+ * `<!--lit-part-->` markers included, and replaces them with one bare text node:
40
+ * the component visually disappears and no later render repairs it, because
41
+ * Lit's parts now point at detached nodes. `patchChildren` does the same when
42
+ * children go array→text or are cleared, and so does `v-text`.
43
+ *
44
+ * Static text never hit this (Vue skips the write when the string is unchanged),
45
+ * which is why it only showed up on dynamic captions. Shadow builds are immune —
46
+ * there the host's children really are slotted content.
47
+ *
48
+ * So the write is intercepted and applied to the text node the consumer already
49
+ * owns inside `[data-mono-slot="<fallback>"]`, which is what the framework meant
50
+ * by it anyway. Framework anchors (zero-length text nodes, comments) and element
51
+ * children are left alone — repurposing an anchor would break the consumer's next
52
+ * patch just as badly as dropping one.
53
+ *
54
+ * `innerHTML` is deliberately not guarded: only `v-html` on the host reaches it,
55
+ * and that is a consumer asking to own the element outright.
56
+ */
57
+ export declare function guardHostTextContent(host: HTMLElement, buckets: LightSlotBuckets, options?: HostTextGuardOptions): void;
58
+ /**
59
+ * Move one captured node into its region — unless the consumer has taken it back.
60
+ *
61
+ * The obvious form of this, `if (node.parentNode !== target) target.appendChild(node)`,
62
+ * cannot tell "not placed yet" from "the framework DELETED this". A child behind a
63
+ * `v-if` that flips false ends up with `parentNode === null`, looks unplaced, and the
64
+ * very next render puts it straight back: the element **resurrects** and no amount of
65
+ * consumer state removes it. That was reproduced in `mono-accordion` and `mono-input`
66
+ * and the same loop was copied into every light-DOM component.
67
+ *
68
+ * So: place freely until a node has been placed once. After that, only re-home it
69
+ * while it is still inside one of OUR regions — which is what happens when a
70
+ * re-render swaps the region element, the case the original guard existed for. A
71
+ * null parent means deleted and any other parent means the consumer moved it; both
72
+ * are left alone.
73
+ */
74
+ export declare function placeSlotNode(target: Element, node: Node): void;
75
+ /**
76
+ * Move captured nodes into their `[data-mono-slot]` regions. Run from `updated()`,
77
+ * after Lit has rendered them.
78
+ *
79
+ * Nodes already sitting in the right region are left untouched — that guard is
80
+ * what stops a re-render from re-ordering content the consumer's framework
81
+ * inserted after capture. See {@link placeSlotNode} for why "not in the target"
82
+ * is not enough on its own.
83
+ */
84
+ export declare function placeLightSlots(host: HTMLElement, buckets: LightSlotBuckets): void;
85
+ /**
86
+ * Park captured nodes that couldn't be placed — because their `[data-mono-slot]`
87
+ * target isn't rendered (a slot naming an item that doesn't exist *yet*, e.g. one
88
+ * bound to async-loaded data) — in a detached holder so they always keep a live
89
+ * parent. A captured node left with `parentNode === null` crashes the consumer
90
+ * framework's next patch (`Cannot read properties of null`); any parent avoids that
91
+ * while keeping the node invisible until its real target appears and placement moves
92
+ * it out. Returns the holder (created lazily on first orphan) so the caller can cache
93
+ * it. Pass the previously-returned holder back in on later calls.
94
+ */
95
+ export declare function parkDetachedNodes(holder: HTMLElement | undefined, nodes: Iterable<Node>): HTMLElement | undefined;
96
+ /**
97
+ * Whether a bucket holds anything the user can actually see — used to decide
98
+ * whether a region is worth rendering.
99
+ *
100
+ * Comments are explicitly excluded: an anchor like `<!--v-if-->` has a non-blank
101
+ * `textContent`, so a naive check would report an empty region as occupied.
102
+ */
103
+ export declare function bucketHasContent(nodes: Node[] | undefined): boolean;
104
+ /**
105
+ * Watches a host for a named slot child that arrives AFTER `connectedCallback`.
106
+ *
107
+ * The one-shot capture the light builds do at connect is right for the common case — a framework
108
+ * mounts an element's children before inserting it — but it is not the only case. A `<ClientOnly>`
109
+ * boundary, a hydration pass, or a `v-if` flipping later all append the child to an element that
110
+ * is already connected, and a capture that has already run will never see it. In the light build
111
+ * that leaves the node sitting in the host's own flow, visible OUTSIDE the region it was meant
112
+ * for; in the shadow build the flag that renders the `<slot>` never turns on, so nothing projects.
113
+ *
114
+ * Deliberately not a Lit controller: it has to work from inside a mixin whose host may be either
115
+ * build, and all it needs is connect/disconnect.
116
+ */
117
+ export declare class LateSlotWatcher {
118
+ private readonly host;
119
+ private readonly name;
120
+ private readonly onFound;
121
+ private _observer?;
122
+ constructor(host: Element, name: string, onFound: () => void);
123
+ /**
124
+ * The host's own child carrying `slot="<name>"`, or `null`.
125
+ *
126
+ * Walks `children` rather than running a `:scope >` selector — only a DIRECT child is
127
+ * assignable to a slot, and this way the check is one cheap loop over a handful of nodes with
128
+ * no selector engine involved.
129
+ */
130
+ find(): Element | null;
131
+ start(): void;
132
+ stop(): void;
133
+ }
@@ -0,0 +1,4 @@
1
+ /** `i-mdi-<name>` → the inner SVG markup of that glyph, on a 24x24 viewBox. */
2
+ export declare const MDI_GLYPHS: Readonly<Record<string, string>>;
3
+ /** The artwork for an `i-mdi-*` class, or `undefined` when it is not bundled. */
4
+ export declare function mdiGlyphBody(icon: string | undefined | null): string | undefined;
@@ -0,0 +1,9 @@
1
+ type ElementClass = CustomElementConstructor;
2
+ /** Register `cls` as `tag` with the app-wide defaults applied. Returns the registered class. */
3
+ export declare function defineMonoElement<T extends ElementClass>(tag: string, cls: T): T;
4
+ /**
5
+ * Drop-in for Lit's `@customElement(tag)`: registers the class (wrapped so
6
+ * `createMonoUI` defaults apply and `pending` exists) and replaces the class binding with it.
7
+ */
8
+ export declare function customElement(tag: string): <T extends ElementClass>(cls: T) => T;
9
+ export {};
@@ -0,0 +1,55 @@
1
+ /** Options for {@link dispatchMonoEvent}. */
2
+ export interface MonoEventOptions {
3
+ /**
4
+ * The native DOM event this mono event was derived from, if any. Defaults to
5
+ * `detail.sourceEvent` when that is an `Event` — which is what every model
6
+ * detail already carries.
7
+ */
8
+ sourceEvent?: Event | null;
9
+ /**
10
+ * The plain (unprefixed) name to emit. Defaults to `name`. Give a different
11
+ * one when the mono name is not what the plain event means — `mno-click` on
12
+ * a modal is an open-state change, so its plain name is `toggle`. `false`
13
+ * emits no plain event at all.
14
+ */
15
+ alias?: string | false;
16
+ }
17
+ /**
18
+ * Device-originated event names — decorated when native, never synthesized.
19
+ * See the header for why.
20
+ */
21
+ export declare const MONO_DEVICE_EVENTS: ReadonlySet<string>;
22
+ /**
23
+ * Plain names dispatched WITHOUT bubbling when synthesized: their native
24
+ * namesakes do not bubble either, and something above the element (a form, the
25
+ * window's error reporting, a focus trap) would act on a stray one.
26
+ */
27
+ export declare const MONO_NON_BUBBLING_ALIASES: ReadonlySet<string>;
28
+ /** `loading-change` → `loadingChange`; a single word is unchanged. */
29
+ export declare function toCamelEventName(name: string): string;
30
+ /**
31
+ * Whether `event`, dispatched where it was, will arrive at `host` on its own.
32
+ *
33
+ * At the host itself: yes. From inside the host's shadow tree: only if it is
34
+ * composed (`input`, `click`, `focus` are; `change` is not). From a light-DOM
35
+ * descendant: only if it bubbles (`focus` / `blur` do not). From anywhere else
36
+ * (a document-level listener's event, say): no.
37
+ */
38
+ export declare function reachesHost(event: Event, host: EventTarget): boolean;
39
+ /**
40
+ * Attach the mono payload to a native event as its `detail`, keeping the
41
+ * browser's own value (a click count, an input's `detail` of 0) as `nativeDetail`.
42
+ */
43
+ export declare function decorateEvent<T>(event: Event, detail: T): void;
44
+ /**
45
+ * Dispatch a mono component event: the plain name (`change`), plus the
46
+ * `mno-change` / `mnoChange` aliases. Bubbling + composed, so every form crosses
47
+ * the shadow boundary. See the header for the plain name's decorate /
48
+ * synthesize rule.
49
+ *
50
+ * dispatchMonoEvent(this, 'change', detail) // change + mno-change + mnoChange
51
+ * dispatchMonoEvent(this, 'click', detail, { sourceEvent: event }) // decorates the native click; mno-click + mnoClick
52
+ * dispatchMonoEvent(this, 'click', detail, { alias: 'toggle' }) // toggle + mno-click + mnoClick
53
+ * dispatchMonoEvent(this, 'loading-change', detail) // loading-change + loadingChange + mno-loading-change + mnoLoadingChange
54
+ */
55
+ export declare function dispatchMonoEvent<T>(target: EventTarget, name: string, detail: T, options?: MonoEventOptions): void;
@@ -0,0 +1,8 @@
1
+ import { LitElement } from 'lit';
2
+ import { Constructor } from './hybird-prop';
3
+ /**
4
+ * Applied to every registered element class by the mono `customElement` decorator.
5
+ * The property itself is registered separately (`registerPendingProperty`) so it lands in
6
+ * Lit's attribute map before `customElements.define`.
7
+ */
8
+ export declare function withMonoPending<T extends Constructor<LitElement>>(superClass: T, tag: string): T;