@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,760 @@
1
+ import { n as unwrapReactive, t as resolveMaybeReactive } from "./reactive-D3EERqgO.js";
2
+ import { a as unregisterPopupLayer, r as registerPopupLayer } from "./popup-stack-CEEMib__.js";
3
+ //#region src/components/tooltip/tooltip-config.ts
4
+ var DEFAULT_TOOLTIP_OPTIONS = {
5
+ allowHTML: false,
6
+ placement: "top",
7
+ offset: 6,
8
+ padding: 8,
9
+ flip: true,
10
+ shift: true,
11
+ arrow: true,
12
+ trigger: ["hover", "focus"],
13
+ delay: [100, 0],
14
+ interactive: false,
15
+ variant: "inverted",
16
+ size: "md",
17
+ disabled: false,
18
+ hideOnClick: true
19
+ };
20
+ var globalOptions = null;
21
+ /** @internal — written by `createMonoTooltip` / `resetMonoTooltip`. */
22
+ function setMonoTooltipGlobal(options) {
23
+ globalOptions = options ? { ...options } : null;
24
+ }
25
+ /** The current global options, or `null` when none were set. */
26
+ function getMonoTooltipGlobal() {
27
+ return globalOptions;
28
+ }
29
+ /** Keys of the global object that configure the addon, not a tooltip. */
30
+ var NOT_TOOLTIP_OPTIONS = new Set(["attributes"]);
31
+ /**
32
+ * `DEFAULTS ← local ← global ← anchor`, key by key; `undefined` never
33
+ * overwrites. `anchor` is the options read off the element's own attributes.
34
+ */
35
+ function resolveTooltipOptions(local, anchor) {
36
+ const out = { ...DEFAULT_TOOLTIP_OPTIONS };
37
+ for (const layer of [
38
+ local,
39
+ globalOptions,
40
+ anchor
41
+ ]) {
42
+ if (!layer) continue;
43
+ for (const [key, value] of Object.entries(layer)) if (value !== void 0 && !NOT_TOOLTIP_OPTIONS.has(key)) out[key] = value;
44
+ }
45
+ return out;
46
+ }
47
+ //#endregion
48
+ //#region src/components/tooltip/tooltip-loader.ts
49
+ /**
50
+ * Cached loader for the OPTIONAL `@floating-ui/dom` peer (which itself depends on
51
+ * `@floating-ui/core` — both are the consumer's to install).
52
+ *
53
+ * Loaded on the FIRST show, never at import: registering a tooltip in
54
+ * `<script setup>` costs nothing until somebody actually hovers. Externalized in
55
+ * both vite configs, so the consumer's bundler resolves and splits it.
56
+ */
57
+ var _floatingPromise = null;
58
+ function loadFloatingUi() {
59
+ _floatingPromise ??= import("@floating-ui/dom").catch((err) => {
60
+ _floatingPromise = null;
61
+ throw new Error("[mono-tooltip] needs the optional peer dependencies \"@floating-ui/dom\" and \"@floating-ui/core\". Install them in your app: pnpm add @floating-ui/dom @floating-ui/core" + (err?.message ? ` (original error: ${err.message})` : ""));
62
+ });
63
+ return _floatingPromise;
64
+ }
65
+ //#endregion
66
+ //#region src/components/tooltip/control-tooltip.ts
67
+ /** Grace period so an INTERACTIVE tooltip can be reached across the offset gap. */
68
+ var INTERACTIVE_HIDE_GRACE = 120;
69
+ /** Longest the exit transition may take before the element is removed anyway. */
70
+ var EXIT_FALLBACK_MS = 200;
71
+ var nextId = 0;
72
+ var live = /* @__PURE__ */ new Set();
73
+ var bound = false;
74
+ function each(fn) {
75
+ for (const inst of Array.from(live)) fn(inst);
76
+ }
77
+ var onPointerOver = (e) => {
78
+ const path = e.composedPath();
79
+ each((i) => i._pointerOver(path, e));
80
+ };
81
+ var onPointerOut = (e) => {
82
+ if (!e.relatedTarget) each((i) => i._pointerOver([], e));
83
+ };
84
+ var onFocusIn = (e) => {
85
+ const path = e.composedPath();
86
+ each((i) => i._focusIn(path));
87
+ };
88
+ var onFocusOut = (e) => {
89
+ if (!e.relatedTarget) each((i) => i._focusIn([]));
90
+ };
91
+ var onClick = (e) => {
92
+ const path = e.composedPath();
93
+ each((i) => i._click(path));
94
+ };
95
+ /**
96
+ * A REAL document. `typeof document` is not enough on the server: Lit's SSR DOM shim (loaded by
97
+ * VitePress / Nuxt SSR through @mono-lit/helper's server entries) defines a global `document` stub with no
98
+ * `addEventListener`, so a `typeof` guard passed and `createMonoTooltip()` in an app's setup threw
99
+ * "document.addEventListener is not a function" during server render.
100
+ */
101
+ function hasLiveDocument() {
102
+ return typeof document !== "undefined" && typeof document.addEventListener === "function";
103
+ }
104
+ function bindDocument() {
105
+ if (bound || !hasLiveDocument()) return;
106
+ document.addEventListener("pointerover", onPointerOver, true);
107
+ document.addEventListener("pointerout", onPointerOut, true);
108
+ document.addEventListener("focusin", onFocusIn, true);
109
+ document.addEventListener("focusout", onFocusOut, true);
110
+ document.addEventListener("click", onClick, true);
111
+ bound = true;
112
+ }
113
+ function unbindDocument() {
114
+ if (!bound || live.size > 0 || !hasLiveDocument()) return;
115
+ document.removeEventListener("pointerover", onPointerOver, true);
116
+ document.removeEventListener("pointerout", onPointerOut, true);
117
+ document.removeEventListener("focusin", onFocusIn, true);
118
+ document.removeEventListener("focusout", onFocusOut, true);
119
+ document.removeEventListener("click", onClick, true);
120
+ bound = false;
121
+ }
122
+ var warnedSelectors = /* @__PURE__ */ new Set();
123
+ function safeMatches(el, selector) {
124
+ try {
125
+ return el.matches(selector);
126
+ } catch {
127
+ if (!warnedSelectors.has(selector)) {
128
+ warnedSelectors.add(selector);
129
+ console.warn(`[mono-tooltip] invalid selector: ${JSON.stringify(selector)}`);
130
+ }
131
+ return false;
132
+ }
133
+ }
134
+ /** Every element a non-selector target names (refs / proxies unwrapped). */
135
+ function toElements(value) {
136
+ if (!value || typeof value === "string") return [];
137
+ if (value instanceof Element) return [value];
138
+ const out = [];
139
+ const list = typeof value[Symbol.iterator] === "function" ? Array.from(value) : Array.from(value);
140
+ for (const item of list) {
141
+ const raw = unwrapReactive(item);
142
+ const el = raw instanceof Element ? raw : raw?.$el;
143
+ if (el instanceof Element) out.push(el);
144
+ }
145
+ return out;
146
+ }
147
+ function unwrapTarget(target) {
148
+ const value = resolveMaybeReactive(target);
149
+ if (value && !(value instanceof Element) && typeof value === "object" && value.$el instanceof Element) return value.$el;
150
+ return value;
151
+ }
152
+ /** Composed-tree parent — crosses shadow boundaries (cf. `popup-portal.ts`). */
153
+ function flatTreeParent(node) {
154
+ const slot = node.assignedSlot;
155
+ if (slot) return slot;
156
+ const parent = node.parentNode;
157
+ if (parent instanceof ShadowRoot) return parent.host;
158
+ return parent;
159
+ }
160
+ /**
161
+ * The theme classes of the NEAREST scoped theme wrapper above the anchor.
162
+ *
163
+ * The tooltip lives on `<body>`, so it already inherits the page-level theme
164
+ * (`applyTheme` writes to body). A section themed on its own — `<div class="mono-theme
165
+ * dark theme-color-rose">` — is not in its inheritance chain any more; copying that
166
+ * wrapper's theme classes onto the tooltip re-resolves the same tokens there.
167
+ */
168
+ function scopedThemeClasses(anchor) {
169
+ const stop = new Set([
170
+ document.body,
171
+ document.documentElement,
172
+ null
173
+ ]);
174
+ for (let n = anchor; !stop.has(n); n = flatTreeParent(n)) {
175
+ if (!(n instanceof Element)) continue;
176
+ const found = Array.from(n.classList).filter((c) => c === "mono-theme" || c === "dark" || c === "light" || c.startsWith("theme-"));
177
+ if (found.length) return found;
178
+ }
179
+ return [];
180
+ }
181
+ function isFocusVisible(el) {
182
+ if (!(el instanceof Element)) return false;
183
+ try {
184
+ return el.matches(":focus-visible");
185
+ } catch {
186
+ return true;
187
+ }
188
+ }
189
+ /**
190
+ * How far the arrow must stay from the bubble's corners: past the rounding, on the
191
+ * straight part of the edge. A fixed 4px let a `-start` / `-end` arrow land on the
192
+ * curve of a well-rounded flavor (a pill, in the extreme), where the edge has
193
+ * already pulled away and the diamond hung off the corner.
194
+ *
195
+ * Read from the PAINTED radius, so every flavor and radius preset is covered.
196
+ * CSS scales radii that overflow the box down to fit it (a `9999px` pill paints
197
+ * half its height), hence the clamp to half the smaller side. The diamond is the
198
+ * arrow box rotated 45°: where it meets the edge it is `size·√2` wide, so it
199
+ * overhangs its own box by `size·(√2−1)/2` on each side. Floating UI caps the
200
+ * padding itself when the bubble is too short for it — the arrow then centres on
201
+ * the edge and the bubble shifts so it still points at the trigger.
202
+ */
203
+ function arrowPadding(bubble, arrowEl) {
204
+ const cs = getComputedStyle(bubble);
205
+ const half = Math.min(bubble.offsetWidth, bubble.offsetHeight) / 2;
206
+ const radius = Math.max(...[
207
+ cs.borderTopLeftRadius,
208
+ cs.borderTopRightRadius,
209
+ cs.borderBottomRightRadius,
210
+ cs.borderBottomLeftRadius
211
+ ].map((v) => {
212
+ const n = parseFloat(v) || 0;
213
+ return v.trim().endsWith("%") ? n / 100 * half * 2 : n;
214
+ }));
215
+ const overhang = arrowEl.offsetWidth * (Math.SQRT2 - 1) / 2;
216
+ return Math.max(4, Math.ceil(Math.min(radius, half) + overhang) + 1);
217
+ }
218
+ function toDelays(delay) {
219
+ if (Array.isArray(delay)) return [Number(delay[0]) || 0, Number(delay[1]) || 0];
220
+ const d = Number(delay) || 0;
221
+ return [d, d];
222
+ }
223
+ function toTriggers(trigger) {
224
+ return new Set(Array.isArray(trigger) ? trigger : [trigger]);
225
+ }
226
+ /**
227
+ * The anchor's own text, when no `content` option is given: the declarative
228
+ * `mono-tooltip-content` / `mono-tooltip-message`, then a native `title` (moved to
229
+ * `data-mono-title` while open), then `aria-label`.
230
+ */
231
+ function anchorText(anchor) {
232
+ const attr = (name) => anchor.getAttribute(name)?.trim() || null;
233
+ return attr("mono-tooltip-content") ?? attr("mono-tooltip-message") ?? attr("data-mono-title") ?? attr("title") ?? attr("aria-label");
234
+ }
235
+ function resolveContent(content, anchor) {
236
+ const value = typeof content === "function" ? content(anchor) : content;
237
+ if (value instanceof Node) return value;
238
+ if (value !== void 0 && value !== null && String(value).trim() !== "") return String(value);
239
+ if (content !== void 0) return null;
240
+ return anchorText(anchor);
241
+ }
242
+ var TooltipInstance = class {
243
+ constructor(_target, options, _anchorOptions) {
244
+ this._target = _target;
245
+ this._anchorOptions = _anchorOptions;
246
+ this._open = null;
247
+ this._reasons = /* @__PURE__ */ new Set();
248
+ this._token = 0;
249
+ this._pending = null;
250
+ this._suppressed = null;
251
+ this._lastPath = [];
252
+ this._destroyed = false;
253
+ this._id = `mono-tooltip-${++nextId}`;
254
+ this._options = { ...options };
255
+ if (!hasLiveDocument()) {
256
+ this._destroyed = true;
257
+ return;
258
+ }
259
+ live.add(this);
260
+ bindDocument();
261
+ }
262
+ get isOpen() {
263
+ return !!this._open;
264
+ }
265
+ get anchor() {
266
+ return this._open?.anchor ?? null;
267
+ }
268
+ get tooltip() {
269
+ return this._open?.el ?? null;
270
+ }
271
+ async show(anchor) {
272
+ const el = anchor ?? this._firstTarget();
273
+ if (!el) return;
274
+ this._lastPath = [];
275
+ await this._openOn(el, "manual", 0);
276
+ }
277
+ hide() {
278
+ this._close(false);
279
+ }
280
+ async toggle(anchor) {
281
+ if (this._open && (!anchor || anchor === this._open.anchor)) this.hide();
282
+ else await this.show(anchor);
283
+ }
284
+ update(options) {
285
+ this._options = {
286
+ ...this._options,
287
+ ...options
288
+ };
289
+ this._refresh();
290
+ }
291
+ /** Re-apply the resolved options to an open tooltip (or close it when now disabled). */
292
+ _refresh() {
293
+ const o = this._resolved(this._open?.anchor);
294
+ if (o.disabled) return this._close(true);
295
+ if (this._open) {
296
+ this._applyAppearance(this._open.el, o);
297
+ this._renderBody(this._open, o);
298
+ }
299
+ }
300
+ setContent(content) {
301
+ this.update({ content });
302
+ }
303
+ enable() {
304
+ this.update({ disabled: false });
305
+ }
306
+ disable() {
307
+ this.update({ disabled: true });
308
+ }
309
+ destroy() {
310
+ if (this._destroyed) return;
311
+ this._close(true);
312
+ this._destroyed = true;
313
+ live.delete(this);
314
+ unbindDocument();
315
+ }
316
+ /** @internal — pointer entered something (or `[]`: left the window). */
317
+ _pointerOver(path, e) {
318
+ if (e.pointerType === "touch") return;
319
+ const candidate = this._findAnchor(path);
320
+ const o = this._resolved(candidate ?? this._open?.anchor);
321
+ const anchor = candidate && toTriggers(o.trigger).has("hover") ? candidate : null;
322
+ if (this._suppressed && anchor !== this._suppressed) this._suppressed = null;
323
+ if (anchor) {
324
+ if (anchor === this._suppressed || o.disabled) return;
325
+ this._lastPath = path;
326
+ if (this._open?.anchor === anchor) {
327
+ this._cancelHide();
328
+ this._reasons.add("hover");
329
+ return;
330
+ }
331
+ if (this._pending === anchor) return;
332
+ this._openOn(anchor, "hover", toDelays(o.delay)[0]);
333
+ return;
334
+ }
335
+ if (o.interactive && this._open && path.includes(this._open.el)) {
336
+ this._cancelHide();
337
+ return;
338
+ }
339
+ this._dropReason("hover");
340
+ }
341
+ /** @internal — focus landed somewhere (or `[]`: focus left the document). */
342
+ _focusIn(path) {
343
+ const candidate = this._findAnchor(path);
344
+ const o = this._resolved(candidate);
345
+ const anchor = candidate && toTriggers(o.trigger).has("focus") ? candidate : null;
346
+ if (anchor && !o.disabled && isFocusVisible(path[0])) {
347
+ this._lastPath = path;
348
+ if (this._open?.anchor === anchor) {
349
+ this._cancelHide();
350
+ this._reasons.add("focus");
351
+ } else this._openOn(anchor, "focus", toDelays(o.delay)[0]);
352
+ return;
353
+ }
354
+ if (this._open && path.includes(this._open.el)) return;
355
+ this._dropReason("focus");
356
+ }
357
+ /** @internal */
358
+ _click(path) {
359
+ const anchor = this._findAnchor(path);
360
+ const o = this._resolved(anchor ?? this._open?.anchor);
361
+ const triggers = toTriggers(o.trigger);
362
+ const inTooltip = !!this._open && path.includes(this._open.el);
363
+ if (triggers.has("click") && !o.disabled) {
364
+ if (anchor) {
365
+ if (this._open?.anchor === anchor && this._reasons.has("click")) this._close(false);
366
+ else {
367
+ this._lastPath = path;
368
+ this._openOn(anchor, "click", 0);
369
+ }
370
+ return;
371
+ }
372
+ if (!inTooltip && this._reasons.has("click")) this._close(false);
373
+ return;
374
+ }
375
+ if (anchor && o.hideOnClick) {
376
+ this._suppressed = anchor;
377
+ if (this._pending === anchor) this._cancelShow();
378
+ if (this._open?.anchor === anchor && !this._reasons.has("manual")) this._close(false);
379
+ }
380
+ }
381
+ _resolved(anchor) {
382
+ const own = anchor && this._anchorOptions ? this._anchorOptions(anchor) : null;
383
+ return resolveTooltipOptions(this._options, own);
384
+ }
385
+ /** The innermost element on the path this controller's target names. */
386
+ _findAnchor(path) {
387
+ if (!path.length) return null;
388
+ const value = unwrapTarget(this._target);
389
+ if (!value) return null;
390
+ if (typeof value === "string") {
391
+ for (const node of path) if (node instanceof Element && safeMatches(node, value)) return node;
392
+ return null;
393
+ }
394
+ const set = new Set(toElements(value));
395
+ if (!set.size) return null;
396
+ for (const node of path) if (set.has(node)) return node;
397
+ return null;
398
+ }
399
+ _firstTarget() {
400
+ const value = unwrapTarget(this._target);
401
+ if (typeof value === "string") try {
402
+ return document.querySelector(value);
403
+ } catch {
404
+ return null;
405
+ }
406
+ return toElements(value)[0] ?? null;
407
+ }
408
+ _cancelShow() {
409
+ clearTimeout(this._showTimer);
410
+ this._showTimer = void 0;
411
+ this._pending = null;
412
+ }
413
+ _cancelHide() {
414
+ clearTimeout(this._hideTimer);
415
+ this._hideTimer = void 0;
416
+ }
417
+ /** One reason to stay open went away — close once none is left. */
418
+ _dropReason(reason) {
419
+ if (this._pending && !this._open) {
420
+ this._cancelShow();
421
+ this._token++;
422
+ }
423
+ if (!this._open || !this._reasons.has(reason)) return;
424
+ this._reasons.delete(reason);
425
+ if (this._reasons.size) return;
426
+ const o = this._resolved(this._open.anchor);
427
+ let delay = toDelays(o.delay)[1];
428
+ if (o.interactive) delay = Math.max(delay, INTERACTIVE_HIDE_GRACE);
429
+ this._cancelHide();
430
+ if (delay > 0) this._hideTimer = setTimeout(() => this._close(false), delay);
431
+ else this._close(false);
432
+ }
433
+ async _openOn(anchor, reason, delay) {
434
+ if (this._destroyed) return;
435
+ this._cancelHide();
436
+ this._cancelShow();
437
+ if (this._open?.anchor === anchor) {
438
+ this._reasons.add(reason);
439
+ return;
440
+ }
441
+ const token = ++this._token;
442
+ if (delay > 0) {
443
+ this._pending = anchor;
444
+ await new Promise((resolve) => {
445
+ this._showTimer = setTimeout(resolve, delay);
446
+ });
447
+ if (token !== this._token) return;
448
+ }
449
+ this._pending = null;
450
+ await this._mount(anchor, reason, token);
451
+ }
452
+ async _mount(anchor, reason, token) {
453
+ const o = this._resolved(anchor);
454
+ if (o.disabled || !anchor.isConnected) return;
455
+ const content = resolveContent(o.content, anchor);
456
+ if (content === null) return;
457
+ let floating;
458
+ try {
459
+ floating = await loadFloatingUi();
460
+ } catch (err) {
461
+ console.error(err);
462
+ return;
463
+ }
464
+ if (token !== this._token || this._destroyed || !anchor.isConnected) return;
465
+ if (this._open) this._teardown(this._open);
466
+ const el = document.createElement("div");
467
+ el.id = this._id;
468
+ el.setAttribute("role", "tooltip");
469
+ el.setAttribute("mono-tooltip", "");
470
+ const body = document.createElement("div");
471
+ body.setAttribute("mono-tooltip-body", "");
472
+ const arrow = document.createElement("div");
473
+ arrow.setAttribute("mono-tooltip-arrow", "");
474
+ el.append(body, arrow);
475
+ this._applyAppearance(el, o, anchor);
476
+ if (o.onShow?.(anchor, el) === false) return;
477
+ const state = {
478
+ anchor,
479
+ el,
480
+ body,
481
+ arrow,
482
+ stopAutoUpdate: () => {},
483
+ layer: {
484
+ setStackZ: (z) => el.style.setProperty("--mono-popup-z", String(z)),
485
+ onStackEscape: () => this._close(false)
486
+ },
487
+ stashed: [],
488
+ describedBy: anchor.getAttribute("aria-describedby"),
489
+ observer: null
490
+ };
491
+ if (this._anchorOptions && typeof MutationObserver !== "undefined") {
492
+ state.observer = new MutationObserver((records) => {
493
+ if (this._open !== state) return;
494
+ if (records.some((r) => r.attributeName?.startsWith("mono-tooltip-"))) this._refresh();
495
+ });
496
+ state.observer.observe(anchor, { attributes: true });
497
+ }
498
+ this._open = state;
499
+ this._reasons = new Set([reason]);
500
+ this._renderContent(body, content, o.allowHTML);
501
+ ((typeof o.appendTo === "function" ? o.appendTo() : o.appendTo) ?? document.body).appendChild(el);
502
+ this._stashTitles(state);
503
+ const ids = (state.describedBy ?? "").split(/\s+/).filter(Boolean);
504
+ if (!ids.includes(this._id)) anchor.setAttribute("aria-describedby", [...ids, this._id].join(" "));
505
+ registerPopupLayer(state.layer);
506
+ const reposition = () => void this._position(floating, state);
507
+ state.stopAutoUpdate = floating.autoUpdate(anchor, el, reposition);
508
+ await this._position(floating, state);
509
+ if (this._open === state) requestAnimationFrame(() => {
510
+ if (this._open === state) el.setAttribute("data-open", "");
511
+ });
512
+ }
513
+ async _position(floating, state) {
514
+ if (this._open !== state) return;
515
+ if (!state.anchor.isConnected) {
516
+ this._close(true);
517
+ return;
518
+ }
519
+ const o = this._resolved(state.anchor);
520
+ const { computePosition, offset, flip, shift, arrow, hide } = floating;
521
+ const middleware = [offset(o.offset)];
522
+ if (o.flip) middleware.push(flip({ padding: o.padding }));
523
+ if (o.shift) middleware.push(shift({ padding: o.padding }));
524
+ if (o.arrow) middleware.push(arrow({
525
+ element: state.arrow,
526
+ padding: arrowPadding(state.el, state.arrow)
527
+ }));
528
+ middleware.push(hide());
529
+ const { x, y, placement, middlewareData } = await computePosition(state.anchor, state.el, {
530
+ placement: o.placement,
531
+ strategy: "fixed",
532
+ middleware
533
+ });
534
+ if (this._open !== state) return;
535
+ state.el.style.left = `${x}px`;
536
+ state.el.style.top = `${y}px`;
537
+ const [side, align] = placement.split("-");
538
+ state.el.setAttribute("data-side", side);
539
+ if (align) state.el.setAttribute("data-align", align);
540
+ else state.el.removeAttribute("data-align");
541
+ const a = middlewareData.arrow;
542
+ state.arrow.style.left = a?.x != null ? `${a.x}px` : "";
543
+ state.arrow.style.top = a?.y != null ? `${a.y}px` : "";
544
+ state.el.style.visibility = middlewareData.hide?.referenceHidden ? "hidden" : "";
545
+ }
546
+ /** Attributes + classes the CSS keys on. Re-run by `update()` on an open tooltip. */
547
+ _applyAppearance(el, o, anchor) {
548
+ el.className = [
549
+ "mono-tooltip",
550
+ ...scopedThemeClasses(anchor ?? this._open?.anchor ?? el),
551
+ ...o.class ? o.class.split(/\s+/) : []
552
+ ].filter(Boolean).join(" ");
553
+ const attr = (name, value) => value === null ? el.removeAttribute(name) : el.setAttribute(name, value);
554
+ attr("mono-variant", o.variant && o.variant !== "inverted" ? o.variant : null);
555
+ attr("mono-color", o.color ?? null);
556
+ attr("mono-size", o.size && o.size !== "md" ? o.size : null);
557
+ attr("mono-interactive", o.interactive ? "" : null);
558
+ attr("mono-arrow", o.arrow ? "" : null);
559
+ if (o.maxWidth) el.style.setProperty("--mono-tooltip-max-width", o.maxWidth);
560
+ else el.style.removeProperty("--mono-tooltip-max-width");
561
+ }
562
+ _renderBody(state, o) {
563
+ const content = resolveContent(o.content, state.anchor);
564
+ if (content === null) return this._close(true);
565
+ this._renderContent(state.body, content, o.allowHTML);
566
+ }
567
+ _renderContent(body, content, allowHTML) {
568
+ if (content instanceof Node) body.replaceChildren(content);
569
+ else if (allowHTML) body.innerHTML = content;
570
+ else body.textContent = content;
571
+ }
572
+ /**
573
+ * Move `title`s aside while open — the anchor's, and any between the pointer
574
+ * and the anchor (a component may render one on an inner element) — or the
575
+ * browser shows its own tooltip on top of ours.
576
+ */
577
+ _stashTitles(state) {
578
+ const chain = [];
579
+ for (const node of this._lastPath) {
580
+ if (node instanceof Element) chain.push(node);
581
+ if (node === state.anchor) break;
582
+ }
583
+ if (!chain.includes(state.anchor)) chain.push(state.anchor);
584
+ for (const el of chain) {
585
+ const title = el.getAttribute("title");
586
+ if (title === null) continue;
587
+ state.stashed.push([el, title]);
588
+ el.setAttribute("data-mono-title", title);
589
+ el.removeAttribute("title");
590
+ }
591
+ }
592
+ _close(force) {
593
+ this._cancelShow();
594
+ this._cancelHide();
595
+ this._token++;
596
+ const state = this._open;
597
+ if (!state) return;
598
+ if (!force && this._resolved(state.anchor).onHide?.(state.anchor, state.el) === false) return;
599
+ this._teardown(state);
600
+ }
601
+ _teardown(state) {
602
+ state.stopAutoUpdate();
603
+ state.observer?.disconnect();
604
+ unregisterPopupLayer(state.layer);
605
+ for (const [el, title] of state.stashed) {
606
+ if (el.getAttribute("title") === null) el.setAttribute("title", title);
607
+ el.removeAttribute("data-mono-title");
608
+ }
609
+ const ids = (state.anchor.getAttribute("aria-describedby") ?? "").split(/\s+/).filter((id) => id && id !== this._id);
610
+ if (ids.length) state.anchor.setAttribute("aria-describedby", ids.join(" "));
611
+ else if (state.describedBy === null) state.anchor.removeAttribute("aria-describedby");
612
+ else state.anchor.setAttribute("aria-describedby", state.describedBy);
613
+ if (this._open === state) {
614
+ this._open = null;
615
+ this._reasons.clear();
616
+ }
617
+ const el = state.el;
618
+ el.removeAttribute("data-open");
619
+ el.removeAttribute("id");
620
+ let done = false;
621
+ const remove = () => {
622
+ if (done) return;
623
+ done = true;
624
+ el.remove();
625
+ };
626
+ el.addEventListener("transitionend", remove, { once: true });
627
+ setTimeout(remove, EXIT_FALLBACK_MS);
628
+ }
629
+ };
630
+ /**
631
+ * Attach a tooltip to every element `target` names — now or later.
632
+ *
633
+ * ```ts
634
+ * // <script setup> — the elements need not exist yet
635
+ * const tip = controlMonoTooltip('.save-btn', { content: 'Save changes', placement: 'bottom' })
636
+ * onBeforeUnmount(() => tip.destroy())
637
+ * ```
638
+ *
639
+ * `target` is a CSS selector, an element, a list of elements, or a Vue ref /
640
+ * getter of any of those. Light `<mono-*>` elements, shadow `<mono-shadow-*>`
641
+ * hosts and elements inside open shadow roots all match.
642
+ *
643
+ * Needs the optional peers `@floating-ui/dom` + `@floating-ui/core`, loaded on
644
+ * the first show. Options set with `createMonoTooltip` override these.
645
+ */
646
+ function controlMonoTooltip(target, options = {}) {
647
+ return new TooltipInstance(target, options);
648
+ }
649
+ /**
650
+ * @internal — a controller with a per-anchor options layer. Used by the
651
+ * declarative `mono-tooltip-*` attributes (`tooltip-declarative.ts`).
652
+ */
653
+ function createTooltipController(target, options, anchorOptions) {
654
+ return new TooltipInstance(target, options, anchorOptions);
655
+ }
656
+ /** Alias, matching the `monoX` / `controlMonoX` pairs of the other controllers. */
657
+ var monoTooltip = controlMonoTooltip;
658
+ /** @internal — close and forget every live controller. Public as `destroyAllMonoTooltips`. */
659
+ function destroyAllTooltipControllers() {
660
+ each((i) => i.destroy());
661
+ }
662
+ //#endregion
663
+ //#region src/components/tooltip/tooltip-declarative.ts
664
+ /** The two text attributes — `message` is an alias of `content`. */
665
+ var TOOLTIP_ATTRIBUTE_SELECTOR = "[mono-tooltip-content], [mono-tooltip-message]";
666
+ var declarative = null;
667
+ /**
668
+ * Per-element options, from `mono-tooltip-<option>` attributes:
669
+ *
670
+ * | attribute | option |
671
+ * | --- | --- |
672
+ * | `mono-tooltip-content` / `-message` | `content` (text) |
673
+ * | `mono-tooltip-placement` / `-variant` / `-color` / `-size` | same name |
674
+ * | `mono-tooltip-trigger` | `"hover focus"`, `"click"`, … |
675
+ * | `mono-tooltip-delay` | `"300"` or `"300 100"` |
676
+ * | `mono-tooltip-offset` / `-padding` | numbers |
677
+ * | `mono-tooltip-max-width` / `-class` | strings |
678
+ * | `mono-tooltip-arrow` / `-flip` / `-shift` / `-interactive` / `-html` / `-disabled` / `-hide-on-click` | booleans — present = on, `"false"` = off |
679
+ */
680
+ function readTooltipAttributes(el) {
681
+ const get = (name) => el.getAttribute(`mono-tooltip-${name}`);
682
+ const str = (name) => get(name)?.trim() || void 0;
683
+ const bool = (name) => {
684
+ const v = get(name);
685
+ return v === null ? void 0 : v.trim() !== "false";
686
+ };
687
+ const num = (name) => {
688
+ const v = str(name);
689
+ const n = v === void 0 ? NaN : Number(v);
690
+ return Number.isFinite(n) ? n : void 0;
691
+ };
692
+ const list = (name) => str(name)?.split(/[\s,]+/).filter(Boolean);
693
+ const content = get("content") ?? get("message") ?? void 0;
694
+ const delay = list("delay")?.map(Number).filter(Number.isFinite);
695
+ return {
696
+ content,
697
+ placement: str("placement"),
698
+ variant: str("variant"),
699
+ color: str("color"),
700
+ size: str("size"),
701
+ trigger: list("trigger"),
702
+ delay: delay?.length ? delay.length > 1 ? [delay[0], delay[1]] : delay[0] : void 0,
703
+ offset: num("offset"),
704
+ padding: num("padding"),
705
+ maxWidth: str("max-width"),
706
+ class: str("class"),
707
+ arrow: bool("arrow"),
708
+ flip: bool("flip"),
709
+ shift: bool("shift"),
710
+ interactive: bool("interactive"),
711
+ allowHTML: bool("html"),
712
+ disabled: bool("disabled"),
713
+ hideOnClick: bool("hide-on-click")
714
+ };
715
+ }
716
+ /**
717
+ * Set the app-wide tooltip options AND switch on the `mono-tooltip-*` attributes.
718
+ * Call once — usually in `main.ts`:
719
+ *
720
+ * ```ts
721
+ * app.use(createMonoTooltip({ delay: [300, 0] }))
722
+ * // or simply
723
+ * createMonoTooltip()
724
+ * ```
725
+ *
726
+ * The options WIN over the ones passed to `controlMonoTooltip`; an element's own
727
+ * `mono-tooltip-*` attributes win over them. A later call replaces the previous
728
+ * global options wholesale. `attributes: false` keeps the options but turns the
729
+ * declarative attributes off.
730
+ */
731
+ function createMonoTooltip(options = {}) {
732
+ setMonoTooltipGlobal(options);
733
+ const wantAttributes = options.attributes !== false;
734
+ if (wantAttributes && !declarative && hasLiveDocument()) declarative = createTooltipController(TOOLTIP_ATTRIBUTE_SELECTOR, {}, readTooltipAttributes);
735
+ else if (!wantAttributes && declarative) {
736
+ declarative.destroy();
737
+ declarative = null;
738
+ }
739
+ return {
740
+ options: { ...options },
741
+ install() {}
742
+ };
743
+ }
744
+ /**
745
+ * Close and forget every live tooltip controller — the attribute one included
746
+ * (a later `createMonoTooltip()` turns the attributes back on). For tests and a
747
+ * full app teardown; the global options are kept.
748
+ */
749
+ function destroyAllMonoTooltips() {
750
+ destroyAllTooltipControllers();
751
+ declarative = null;
752
+ }
753
+ /** Drop the global options and turn the attributes off (tests, runtime reconfiguration). */
754
+ function resetMonoTooltip() {
755
+ setMonoTooltipGlobal(null);
756
+ declarative?.destroy();
757
+ declarative = null;
758
+ }
759
+ //#endregion
760
+ export { resetMonoTooltip as a, loadFloatingUi as c, resolveTooltipOptions as d, readTooltipAttributes as i, DEFAULT_TOOLTIP_OPTIONS as l, createMonoTooltip as n, controlMonoTooltip as o, destroyAllMonoTooltips as r, monoTooltip as s, TOOLTIP_ATTRIBUTE_SELECTOR as t, getMonoTooltipGlobal as u };