@wisdomgarden/torque 0.1.0

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 (568) hide show
  1. package/README.md +75 -0
  2. package/dist/common/components.types.d.ts +60 -0
  3. package/dist/common/components.types.js +1 -0
  4. package/dist/common/dayjs.d.ts +7 -0
  5. package/dist/common/dayjs.js +10 -0
  6. package/dist/common/use-css-variable-value.d.ts +6 -0
  7. package/dist/common/use-css-variable-value.js +23 -0
  8. package/dist/common/use-css-variable-values.d.ts +10 -0
  9. package/dist/common/use-css-variable-values.js +25 -0
  10. package/dist/common/use-form-wrapper-props.d.ts +48 -0
  11. package/dist/common/use-form-wrapper-props.js +59 -0
  12. package/dist/common/use-ime-safe-input.d.ts +10 -0
  13. package/dist/common/use-ime-safe-input.js +23 -0
  14. package/dist/common/use-notification-a11y.d.ts +4 -0
  15. package/dist/common/use-notification-a11y.js +18 -0
  16. package/dist/common/use-sticky-box.d.ts +9 -0
  17. package/dist/common/use-sticky-box.js +217 -0
  18. package/dist/common/util.d.ts +5 -0
  19. package/dist/common/util.js +14 -0
  20. package/dist/components/_inner/base-select/common/searchable.d.ts +5 -0
  21. package/dist/components/_inner/base-select/common/searchable.js +6 -0
  22. package/dist/components/_inner/base-select/common/select.types.d.ts +169 -0
  23. package/dist/components/_inner/base-select/common/select.types.js +1 -0
  24. package/dist/components/_inner/base-select/search-select/index.d.ts +6 -0
  25. package/dist/components/_inner/base-select/search-select/index.js +106 -0
  26. package/dist/components/_inner/base-select/search-select/search-select.module.css.js +10 -0
  27. package/dist/components/_inner/base-select/single-select/index.d.ts +1 -0
  28. package/dist/components/_inner/base-select/single-select/index.js +5 -0
  29. package/dist/components/_inner/base-select/single-select/single-select.d.ts +5 -0
  30. package/dist/components/_inner/base-select/single-select/single-select.js +58 -0
  31. package/dist/components/_inner/base-select/target/single-select-target.d.ts +15 -0
  32. package/dist/components/_inner/base-select/target/single-select-target.js +56 -0
  33. package/dist/components/_inner/bottom-action/bottom-action-item.d.ts +11 -0
  34. package/dist/components/_inner/bottom-action/bottom-action-item.js +140 -0
  35. package/dist/components/_inner/bottom-action/bottom-action.d.ts +6 -0
  36. package/dist/components/_inner/bottom-action/bottom-action.js +161 -0
  37. package/dist/components/_inner/bottom-action/bottom-action.module.css.js +46 -0
  38. package/dist/components/_inner/bottom-action/bottom-action.types.d.ts +117 -0
  39. package/dist/components/_inner/bottom-action/index.d.ts +2 -0
  40. package/dist/components/_inner/bottom-action/index.js +5 -0
  41. package/dist/components/_inner/drawer/base-bottom-drawer.d.ts +32 -0
  42. package/dist/components/_inner/drawer/base-bottom-drawer.js +91 -0
  43. package/dist/components/_inner/drawer/base-bottom-drawer.module.css.js +18 -0
  44. package/dist/components/_inner/dropdown/empty-state.d.ts +6 -0
  45. package/dist/components/_inner/dropdown/empty-state.js +16 -0
  46. package/dist/components/_inner/dropdown/empty-state.module.css.js +12 -0
  47. package/dist/components/_inner/dropdown/options-drop-down.d.ts +22 -0
  48. package/dist/components/_inner/dropdown/options-drop-down.js +95 -0
  49. package/dist/components/_inner/dropdown/options-drop-down.module.css.js +18 -0
  50. package/dist/components/_inner/menu/_mobile/menu.mobile.d.ts +11 -0
  51. package/dist/components/_inner/menu/_mobile/menu.mobile.js +15 -0
  52. package/dist/components/_inner/menu/_web/menu-web.module.css.js +18 -0
  53. package/dist/components/_inner/menu/_web/menu.web.d.ts +6 -0
  54. package/dist/components/_inner/menu/_web/menu.web.js +198 -0
  55. package/dist/components/_inner/number/number-input-left.d.ts +5 -0
  56. package/dist/components/_inner/number/number-input-left.js +29 -0
  57. package/dist/components/_inner/number/number-input-right.d.ts +6 -0
  58. package/dist/components/_inner/number/number-input-right.js +62 -0
  59. package/dist/components/_inner/number/number.module.css.js +12 -0
  60. package/dist/components/_inner/table/head/table-head-filter-multi-select.d.ts +25 -0
  61. package/dist/components/_inner/table/head/table-head-filter-multi-select.js +139 -0
  62. package/dist/components/_inner/table/head/table-head-filter-search.d.ts +18 -0
  63. package/dist/components/_inner/table/head/table-head-filter-search.js +102 -0
  64. package/dist/components/_inner/table/head/table-head-filter-single-select.d.ts +21 -0
  65. package/dist/components/_inner/table/head/table-head-filter-single-select.js +76 -0
  66. package/dist/components/_inner/table/head/table-head-sort.d.ts +16 -0
  67. package/dist/components/_inner/table/head/table-head-sort.js +51 -0
  68. package/dist/components/_inner/table/head/table-head.module.css.js +40 -0
  69. package/dist/components/_inner/table/index.d.ts +5 -0
  70. package/dist/components/_inner/table/index.js +13 -0
  71. package/dist/components/_inner/table/table-header-title.d.ts +7 -0
  72. package/dist/components/_inner/table/table-header-title.js +24 -0
  73. package/dist/components/_inner/table/table-header-title.module.css.js +12 -0
  74. package/dist/components/_inner/tags-input/hooks/use-height-transition.d.ts +15 -0
  75. package/dist/components/_inner/tags-input/hooks/use-height-transition.js +31 -0
  76. package/dist/components/_inner/tags-input/hooks/use-is-wrapped.d.ts +12 -0
  77. package/dist/components/_inner/tags-input/hooks/use-is-wrapped.js +24 -0
  78. package/dist/components/_inner/tags-input/index.d.ts +2 -0
  79. package/dist/components/_inner/tags-input/index.js +5 -0
  80. package/dist/components/_inner/tags-input/styles/tags-input.module.css.js +48 -0
  81. package/dist/components/_inner/tags-input/tags-input-tag.d.ts +13 -0
  82. package/dist/components/_inner/tags-input/tags-input-tag.js +53 -0
  83. package/dist/components/_inner/tags-input/tags-input.d.ts +9 -0
  84. package/dist/components/_inner/tags-input/tags-input.js +143 -0
  85. package/dist/components/_inner/tags-input/tags-input.types.d.ts +57 -0
  86. package/dist/components/alert/alert.d.ts +6 -0
  87. package/dist/components/alert/alert.js +102 -0
  88. package/dist/components/alert/alert.module.css.js +20 -0
  89. package/dist/components/alert/alert.types.d.ts +18 -0
  90. package/dist/components/alert/index.d.ts +2 -0
  91. package/dist/components/alert/index.js +6 -0
  92. package/dist/components/base-input/base-input.d.ts +5 -0
  93. package/dist/components/base-input/base-input.js +143 -0
  94. package/dist/components/base-input/base-input.types.d.ts +89 -0
  95. package/dist/components/base-input/index.d.ts +5 -0
  96. package/dist/components/base-input/index.js +11 -0
  97. package/dist/components/base-input/styles/base-input-variables.module.css.js +8 -0
  98. package/dist/components/base-input/styles/base-input.module.css.js +24 -0
  99. package/dist/components/base-input/subs/base-input-left-section.d.ts +10 -0
  100. package/dist/components/base-input/subs/base-input-left-section.js +29 -0
  101. package/dist/components/base-input/subs/base-input-right-section.d.ts +23 -0
  102. package/dist/components/base-input/subs/base-input-right-section.js +87 -0
  103. package/dist/components/base-input/subs/base-input-target.d.ts +11 -0
  104. package/dist/components/base-input/subs/base-input-target.js +35 -0
  105. package/dist/components/base-input/subs/base-input-wrapper.d.ts +18 -0
  106. package/dist/components/base-input/subs/base-input-wrapper.js +51 -0
  107. package/dist/components/base-input/util.d.ts +8 -0
  108. package/dist/components/base-input/util.js +16 -0
  109. package/dist/components/bottom-drawer/bottom-drawer.d.ts +6 -0
  110. package/dist/components/bottom-drawer/bottom-drawer.js +16 -0
  111. package/dist/components/bottom-drawer/index.d.ts +2 -0
  112. package/dist/components/bottom-drawer/index.js +5 -0
  113. package/dist/components/box/box.d.ts +2 -0
  114. package/dist/components/box/box.js +27 -0
  115. package/dist/components/box/box.module.css.js +8 -0
  116. package/dist/components/box/box.types.d.ts +36 -0
  117. package/dist/components/box/index.d.ts +2 -0
  118. package/dist/components/box/index.js +5 -0
  119. package/dist/components/button/button.d.ts +17 -0
  120. package/dist/components/button/button.js +91 -0
  121. package/dist/components/button/button.types.d.ts +88 -0
  122. package/dist/components/button/index.d.ts +2 -0
  123. package/dist/components/button/index.js +5 -0
  124. package/dist/components/button/styles/button-variables.module.css.js +8 -0
  125. package/dist/components/button/styles/button.module.css.js +18 -0
  126. package/dist/components/checkbox/checkbox-group.d.ts +7 -0
  127. package/dist/components/checkbox/checkbox-group.js +51 -0
  128. package/dist/components/checkbox/checkbox-variables.module.css.js +8 -0
  129. package/dist/components/checkbox/checkbox.d.ts +9 -0
  130. package/dist/components/checkbox/checkbox.js +93 -0
  131. package/dist/components/checkbox/checkbox.module.css.js +12 -0
  132. package/dist/components/checkbox/checkbox.types.d.ts +41 -0
  133. package/dist/components/checkbox/index.d.ts +3 -0
  134. package/dist/components/checkbox/index.js +8 -0
  135. package/dist/components/combobox/combobox-context.d.ts +9 -0
  136. package/dist/components/combobox/combobox-context.js +15 -0
  137. package/dist/components/combobox/combobox-dropdown.d.ts +13 -0
  138. package/dist/components/combobox/combobox-dropdown.js +35 -0
  139. package/dist/components/combobox/combobox-infinite-dropdown.d.ts +51 -0
  140. package/dist/components/combobox/combobox-infinite-dropdown.js +56 -0
  141. package/dist/components/combobox/combobox-option.d.ts +3 -0
  142. package/dist/components/combobox/combobox-option.js +50 -0
  143. package/dist/components/combobox/combobox-options.d.ts +8 -0
  144. package/dist/components/combobox/combobox-options.js +38 -0
  145. package/dist/components/combobox/combobox-search.d.ts +27 -0
  146. package/dist/components/combobox/combobox-search.js +29 -0
  147. package/dist/components/combobox/combobox-target.d.ts +15 -0
  148. package/dist/components/combobox/combobox-target.js +49 -0
  149. package/dist/components/combobox/combobox.d.ts +61 -0
  150. package/dist/components/combobox/combobox.js +53 -0
  151. package/dist/components/combobox/combobox.types.d.ts +58 -0
  152. package/dist/components/combobox/hooks/use-combobox-search-input.d.ts +11 -0
  153. package/dist/components/combobox/hooks/use-combobox-search-input.js +22 -0
  154. package/dist/components/combobox/hooks/use-combobox-target-key-down.d.ts +12 -0
  155. package/dist/components/combobox/hooks/use-combobox-target-key-down.js +35 -0
  156. package/dist/components/combobox/hooks/use-combobox.d.ts +58 -0
  157. package/dist/components/combobox/hooks/use-combobox.js +90 -0
  158. package/dist/components/combobox/index.d.ts +5 -0
  159. package/dist/components/combobox/index.js +9 -0
  160. package/dist/components/combobox/styles/combobox.module.css.js +14 -0
  161. package/dist/components/combobox/subs/combobox-bottom-drawer-dropdown.d.ts +10 -0
  162. package/dist/components/combobox/subs/combobox-bottom-drawer-dropdown.js +14 -0
  163. package/dist/components/combobox/subs/combobox-bottom-drawer-target.d.ts +3 -0
  164. package/dist/components/combobox/subs/combobox-bottom-drawer-target.js +20 -0
  165. package/dist/components/data-filter/data-filter-content.d.ts +13 -0
  166. package/dist/components/data-filter/data-filter-content.js +46 -0
  167. package/dist/components/data-filter/data-filter-drawer.d.ts +19 -0
  168. package/dist/components/data-filter/data-filter-drawer.js +73 -0
  169. package/dist/components/data-filter/data-filter-inline.d.ts +6 -0
  170. package/dist/components/data-filter/data-filter-inline.js +12 -0
  171. package/dist/components/data-filter/data-filter-panel.d.ts +13 -0
  172. package/dist/components/data-filter/data-filter-panel.js +40 -0
  173. package/dist/components/data-filter/data-filter.d.ts +2 -0
  174. package/dist/components/data-filter/data-filter.js +94 -0
  175. package/dist/components/data-filter/data-filter.module.css.js +56 -0
  176. package/dist/components/data-filter/data-filter.types.d.ts +29 -0
  177. package/dist/components/data-filter/filter-condition-tags/filter-condition-tags.d.ts +16 -0
  178. package/dist/components/data-filter/filter-condition-tags/filter-condition-tags.js +114 -0
  179. package/dist/components/data-filter/filter-condition-tags/index.d.ts +1 -0
  180. package/dist/components/data-filter/filter-condition-tags/index.js +5 -0
  181. package/dist/components/data-filter/hooks/use-data-filter-open-state.d.ts +10 -0
  182. package/dist/components/data-filter/hooks/use-data-filter-open-state.js +21 -0
  183. package/dist/components/data-filter/hooks/use-data-filter-state.d.ts +11 -0
  184. package/dist/components/data-filter/hooks/use-data-filter-state.js +48 -0
  185. package/dist/components/data-filter/index.d.ts +3 -0
  186. package/dist/components/data-filter/index.js +7 -0
  187. package/dist/components/date-picker/components/common/calendar-header.d.ts +10 -0
  188. package/dist/components/date-picker/components/common/calendar-header.js +70 -0
  189. package/dist/components/date-picker/components/common/calendar-panel.d.ts +6 -0
  190. package/dist/components/date-picker/components/common/calendar-panel.js +133 -0
  191. package/dist/components/date-picker/components/common/date-cell.d.ts +8 -0
  192. package/dist/components/date-picker/components/common/date-cell.js +46 -0
  193. package/dist/components/date-picker/components/common/decade-view.d.ts +8 -0
  194. package/dist/components/date-picker/components/common/decade-view.js +36 -0
  195. package/dist/components/date-picker/components/common/month-view.d.ts +5 -0
  196. package/dist/components/date-picker/components/common/month-view.js +65 -0
  197. package/dist/components/date-picker/components/common/picker-footer.d.ts +28 -0
  198. package/dist/components/date-picker/components/common/picker-footer.js +29 -0
  199. package/dist/components/date-picker/components/common/picker-sections.d.ts +14 -0
  200. package/dist/components/date-picker/components/common/picker-sections.js +31 -0
  201. package/dist/components/date-picker/components/common/picker-target-input.d.ts +7 -0
  202. package/dist/components/date-picker/components/common/picker-target-input.js +11 -0
  203. package/dist/components/date-picker/components/common/time-column.d.ts +6 -0
  204. package/dist/components/date-picker/components/common/time-column.js +121 -0
  205. package/dist/components/date-picker/components/common/time-input-row.d.ts +20 -0
  206. package/dist/components/date-picker/components/common/time-input-row.js +65 -0
  207. package/dist/components/date-picker/components/common/time-panel.d.ts +6 -0
  208. package/dist/components/date-picker/components/common/time-panel.js +86 -0
  209. package/dist/components/date-picker/components/common/year-view.d.ts +8 -0
  210. package/dist/components/date-picker/components/common/year-view.js +36 -0
  211. package/dist/components/date-picker/components/picker-focus-context.d.ts +21 -0
  212. package/dist/components/date-picker/components/picker-focus-context.js +16 -0
  213. package/dist/components/date-picker/components/range/range-panel.d.ts +33 -0
  214. package/dist/components/date-picker/components/range/range-panel.js +101 -0
  215. package/dist/components/date-picker/components/range/range-shell.d.ts +6 -0
  216. package/dist/components/date-picker/components/range/range-shell.js +110 -0
  217. package/dist/components/date-picker/components/single/picker-shell.d.ts +6 -0
  218. package/dist/components/date-picker/components/single/picker-shell.js +109 -0
  219. package/dist/components/date-picker/date-picker.d.ts +6 -0
  220. package/dist/components/date-picker/date-picker.js +76 -0
  221. package/dist/components/date-picker/date-picker.types.d.ts +543 -0
  222. package/dist/components/date-picker/date-picker.types.js +5 -0
  223. package/dist/components/date-picker/date-range-picker.d.ts +5 -0
  224. package/dist/components/date-picker/date-range-picker.js +103 -0
  225. package/dist/components/date-picker/date-time-picker.d.ts +6 -0
  226. package/dist/components/date-picker/date-time-picker.js +181 -0
  227. package/dist/components/date-picker/date-time-range-picker.d.ts +6 -0
  228. package/dist/components/date-picker/date-time-range-picker.js +157 -0
  229. package/dist/components/date-picker/hooks/date-disabled.d.ts +27 -0
  230. package/dist/components/date-picker/hooks/date-disabled.js +60 -0
  231. package/dist/components/date-picker/hooks/time-utils.d.ts +17 -0
  232. package/dist/components/date-picker/hooks/time-utils.js +14 -0
  233. package/dist/components/date-picker/hooks/use-calendar.d.ts +12 -0
  234. package/dist/components/date-picker/hooks/use-calendar.js +28 -0
  235. package/dist/components/date-picker/hooks/use-date-parser.d.ts +17 -0
  236. package/dist/components/date-picker/hooks/use-date-parser.js +16 -0
  237. package/dist/components/date-picker/hooks/use-grid-keyboard.d.ts +22 -0
  238. package/dist/components/date-picker/hooks/use-grid-keyboard.js +74 -0
  239. package/dist/components/date-picker/hooks/use-range-draft.d.ts +61 -0
  240. package/dist/components/date-picker/hooks/use-range-draft.js +84 -0
  241. package/dist/components/date-picker/hooks/use-range-session.d.ts +14 -0
  242. package/dist/components/date-picker/hooks/use-range-session.js +11 -0
  243. package/dist/components/date-picker/hooks/use-resolved-format.d.ts +15 -0
  244. package/dist/components/date-picker/hooks/use-resolved-format.js +25 -0
  245. package/dist/components/date-picker/index.d.ts +21 -0
  246. package/dist/components/date-picker/index.js +15 -0
  247. package/dist/components/date-picker/styles/calendar-header.module.css.js +14 -0
  248. package/dist/components/date-picker/styles/calendar-panel.module.css.js +12 -0
  249. package/dist/components/date-picker/styles/date-cell.module.css.js +8 -0
  250. package/dist/components/date-picker/styles/month-view.module.css.js +12 -0
  251. package/dist/components/date-picker/styles/panel-layout.module.css.js +12 -0
  252. package/dist/components/date-picker/styles/picker-footer.module.css.js +10 -0
  253. package/dist/components/date-picker/styles/picker-shell.module.css.js +12 -0
  254. package/dist/components/date-picker/styles/range-panel.module.css.js +12 -0
  255. package/dist/components/date-picker/styles/time-column.module.css.js +10 -0
  256. package/dist/components/date-picker/styles/time-input-row.module.css.js +16 -0
  257. package/dist/components/date-picker/styles/time-panel.module.css.js +8 -0
  258. package/dist/components/date-picker/styles/year-view.module.css.js +10 -0
  259. package/dist/components/date-picker/time-picker.d.ts +6 -0
  260. package/dist/components/date-picker/time-picker.js +81 -0
  261. package/dist/components/date-picker/time-range-picker.d.ts +6 -0
  262. package/dist/components/date-picker/time-range-picker.js +135 -0
  263. package/dist/components/drawer/drawer-events.d.ts +28 -0
  264. package/dist/components/drawer/drawer-events.js +14 -0
  265. package/dist/components/drawer/drawer.d.ts +33 -0
  266. package/dist/components/drawer/drawer.js +86 -0
  267. package/dist/components/drawer/drawer.module.css.js +34 -0
  268. package/dist/components/drawer/drawes.d.ts +4 -0
  269. package/dist/components/drawer/drawes.js +82 -0
  270. package/dist/components/drawer/index.d.ts +4 -0
  271. package/dist/components/drawer/index.js +9 -0
  272. package/dist/components/filter/filter-popover.d.ts +11 -0
  273. package/dist/components/filter/filter-popover.js +53 -0
  274. package/dist/components/filter/filter.d.ts +5 -0
  275. package/dist/components/filter/filter.js +29 -0
  276. package/dist/components/filter/filter.module.css.js +12 -0
  277. package/dist/components/filter/filter.types.d.ts +27 -0
  278. package/dist/components/filter/filter.types.js +1 -0
  279. package/dist/components/filter/icon-filter.d.ts +6 -0
  280. package/dist/components/filter/icon-filter.js +25 -0
  281. package/dist/components/filter/index.d.ts +4 -0
  282. package/dist/components/filter/index.js +9 -0
  283. package/dist/components/filter/multi-filter.d.ts +5 -0
  284. package/dist/components/filter/multi-filter.js +52 -0
  285. package/dist/components/flex/flex.d.ts +9 -0
  286. package/dist/components/flex/flex.js +28 -0
  287. package/dist/components/flex/flex.module.css.js +8 -0
  288. package/dist/components/flex/index.d.ts +2 -0
  289. package/dist/components/flex/index.js +5 -0
  290. package/dist/components/flex/layout.types.d.ts +69 -0
  291. package/dist/components/form-wrapper/form-item-wrapper-defaults-context.d.ts +10 -0
  292. package/dist/components/form-wrapper/form-item-wrapper-defaults-context.js +19 -0
  293. package/dist/components/form-wrapper/form-item-wrapper.d.ts +5 -0
  294. package/dist/components/form-wrapper/form-item-wrapper.js +111 -0
  295. package/dist/components/form-wrapper/form-item-wrapper.module.css.js +28 -0
  296. package/dist/components/form-wrapper/form-wrapper.types.d.ts +15 -0
  297. package/dist/components/form-wrapper/index.d.ts +3 -0
  298. package/dist/components/form-wrapper/index.js +8 -0
  299. package/dist/components/group/group.d.ts +8 -0
  300. package/dist/components/group/group.js +36 -0
  301. package/dist/components/group/group.module.css.js +8 -0
  302. package/dist/components/group/index.d.ts +1 -0
  303. package/dist/components/group/index.js +5 -0
  304. package/dist/components/icon-button/icon-button.d.ts +20 -0
  305. package/dist/components/icon-button/icon-button.js +20 -0
  306. package/dist/components/icon-button/icon-button.module.css.js +8 -0
  307. package/dist/components/icon-button/icon-button.types.d.ts +7 -0
  308. package/dist/components/icon-button/index.d.ts +2 -0
  309. package/dist/components/icon-button/index.js +5 -0
  310. package/dist/components/link-button/index.d.ts +1 -0
  311. package/dist/components/link-button/index.js +5 -0
  312. package/dist/components/link-button/link-button.d.ts +31 -0
  313. package/dist/components/link-button/link-button.js +31 -0
  314. package/dist/components/link-icon-button/index.d.ts +1 -0
  315. package/dist/components/link-icon-button/index.js +5 -0
  316. package/dist/components/link-icon-button/link-icon-button.d.ts +37 -0
  317. package/dist/components/link-icon-button/link-icon-button.js +30 -0
  318. package/dist/components/menu/index.d.ts +2 -0
  319. package/dist/components/menu/index.js +5 -0
  320. package/dist/components/menu/menu.d.ts +33 -0
  321. package/dist/components/menu/menu.js +17 -0
  322. package/dist/components/menu/menu.types.d.ts +46 -0
  323. package/dist/components/message/index.d.ts +2 -0
  324. package/dist/components/message/index.js +5 -0
  325. package/dist/components/message/message.d.ts +2 -0
  326. package/dist/components/message/message.js +42 -0
  327. package/dist/components/message/message.module.css.js +14 -0
  328. package/dist/components/message/message.types.d.ts +7 -0
  329. package/dist/components/message/messages.d.ts +10 -0
  330. package/dist/components/message/messages.js +37 -0
  331. package/dist/components/modal/index.d.ts +2 -0
  332. package/dist/components/modal/index.js +5 -0
  333. package/dist/components/modal/modal.d.ts +6 -0
  334. package/dist/components/modal/modal.js +51 -0
  335. package/dist/components/modal/modal.module.css.js +10 -0
  336. package/dist/components/multi-select/base-multi-select.d.ts +3 -0
  337. package/dist/components/multi-select/base-multi-select.js +100 -0
  338. package/dist/components/multi-select/index.d.ts +1 -0
  339. package/dist/components/multi-select/index.js +5 -0
  340. package/dist/components/multi-select/multi-select-input.d.ts +29 -0
  341. package/dist/components/multi-select/multi-select-input.js +74 -0
  342. package/dist/components/multi-select/multi-select.d.ts +28 -0
  343. package/dist/components/multi-select/multi-select.js +34 -0
  344. package/dist/components/multi-select/multi-select.mobile.d.ts +4 -0
  345. package/dist/components/multi-select/multi-select.mobile.js +59 -0
  346. package/dist/components/multi-select/multi-select.types.d.ts +56 -0
  347. package/dist/components/multi-select/multi-select.types.js +1 -0
  348. package/dist/components/multi-select/styles/base-multi-select.module.css.js +16 -0
  349. package/dist/components/notifications/index.d.ts +3 -0
  350. package/dist/components/notifications/index.js +7 -0
  351. package/dist/components/notifications/notification.d.ts +11 -0
  352. package/dist/components/notifications/notification.js +79 -0
  353. package/dist/components/notifications/notification.module.css.js +14 -0
  354. package/dist/components/notifications/notification.types.d.ts +25 -0
  355. package/dist/components/notifications/notifications.d.ts +42 -0
  356. package/dist/components/notifications/notifications.js +42 -0
  357. package/dist/components/number-input/index.d.ts +2 -0
  358. package/dist/components/number-input/index.js +5 -0
  359. package/dist/components/number-input/number-input.d.ts +8 -0
  360. package/dist/components/number-input/number-input.js +161 -0
  361. package/dist/components/number-input/number-input.module.css.js +8 -0
  362. package/dist/components/number-input/number-input.types.d.ts +65 -0
  363. package/dist/components/paper/index.d.ts +1 -0
  364. package/dist/components/paper/index.js +5 -0
  365. package/dist/components/paper/paper.d.ts +7 -0
  366. package/dist/components/paper/paper.js +15 -0
  367. package/dist/components/paper/paper.module.css.js +8 -0
  368. package/dist/components/password-input/index.d.ts +2 -0
  369. package/dist/components/password-input/index.js +5 -0
  370. package/dist/components/password-input/password-input.d.ts +15 -0
  371. package/dist/components/password-input/password-input.js +32 -0
  372. package/dist/components/popover/hooks.d.ts +17 -0
  373. package/dist/components/popover/hooks.js +131 -0
  374. package/dist/components/popover/index.d.ts +8 -0
  375. package/dist/components/popover/index.js +13 -0
  376. package/dist/components/popover/popover-context.d.ts +4 -0
  377. package/dist/components/popover/popover-context.js +16 -0
  378. package/dist/components/popover/popover-dropdown.d.ts +3 -0
  379. package/dist/components/popover/popover-dropdown.js +149 -0
  380. package/dist/components/popover/popover-stack.d.ts +10 -0
  381. package/dist/components/popover/popover-stack.js +24 -0
  382. package/dist/components/popover/popover-target.d.ts +3 -0
  383. package/dist/components/popover/popover-target.js +55 -0
  384. package/dist/components/popover/popover.d.ts +3 -0
  385. package/dist/components/popover/popover.js +175 -0
  386. package/dist/components/popover/popover.types.d.ts +211 -0
  387. package/dist/components/popover/styles/popover.module.css.js +12 -0
  388. package/dist/components/radio/index.d.ts +8 -0
  389. package/dist/components/radio/index.js +12 -0
  390. package/dist/components/radio/radio-group.d.ts +18 -0
  391. package/dist/components/radio/radio-group.js +54 -0
  392. package/dist/components/radio/radio-variables.module.css.js +8 -0
  393. package/dist/components/radio/radio.d.ts +17 -0
  394. package/dist/components/radio/radio.js +56 -0
  395. package/dist/components/radio/radio.module.css.js +14 -0
  396. package/dist/components/radio/radio.types.d.ts +59 -0
  397. package/dist/components/select/index.d.ts +3 -0
  398. package/dist/components/select/index.js +5 -0
  399. package/dist/components/select/select.d.ts +15 -0
  400. package/dist/components/select/select.js +48 -0
  401. package/dist/components/select/select.mobile.d.ts +12 -0
  402. package/dist/components/select/select.mobile.js +53 -0
  403. package/dist/components/stack/index.d.ts +1 -0
  404. package/dist/components/stack/index.js +5 -0
  405. package/dist/components/stack/stack.d.ts +6 -0
  406. package/dist/components/stack/stack.js +10 -0
  407. package/dist/components/sticky-box.d.ts +2 -0
  408. package/dist/components/sticky-box.js +10 -0
  409. package/dist/components/switch/index.d.ts +4 -0
  410. package/dist/components/switch/index.js +7 -0
  411. package/dist/components/switch/switch-group.d.ts +26 -0
  412. package/dist/components/switch/switch-group.js +12 -0
  413. package/dist/components/switch/switch.d.ts +27 -0
  414. package/dist/components/switch/switch.js +23 -0
  415. package/dist/components/switch/switch.module.css.js +7 -0
  416. package/dist/components/tab/index.d.ts +7 -0
  417. package/dist/components/tab/index.js +13 -0
  418. package/dist/components/tab/styles/tabs-variables.module.css.js +8 -0
  419. package/dist/components/tab/styles/tabs.module.css.js +22 -0
  420. package/dist/components/tab/subs/tabs-link-tab.d.ts +10 -0
  421. package/dist/components/tab/subs/tabs-link-tab.js +28 -0
  422. package/dist/components/tab/subs/tabs-list.d.ts +6 -0
  423. package/dist/components/tab/subs/tabs-list.js +59 -0
  424. package/dist/components/tab/subs/tabs-panel.d.ts +6 -0
  425. package/dist/components/tab/subs/tabs-panel.js +40 -0
  426. package/dist/components/tab/subs/tabs-tab.d.ts +6 -0
  427. package/dist/components/tab/subs/tabs-tab.js +52 -0
  428. package/dist/components/tab/tabs-context.d.ts +3 -0
  429. package/dist/components/tab/tabs-context.js +13 -0
  430. package/dist/components/tab/tabs.d.ts +20 -0
  431. package/dist/components/tab/tabs.js +83 -0
  432. package/dist/components/tab/tabs.types.d.ts +107 -0
  433. package/dist/components/tab/use-tabs-data-props.d.ts +9 -0
  434. package/dist/components/tab/use-tabs-data-props.js +12 -0
  435. package/dist/components/tab/use-tabs-keyboard-navigation.d.ts +13 -0
  436. package/dist/components/tab/use-tabs-keyboard-navigation.js +44 -0
  437. package/dist/components/table/index.d.ts +3 -0
  438. package/dist/components/table/index.js +16 -0
  439. package/dist/components/table/table.d.ts +23 -0
  440. package/dist/components/table/table.js +159 -0
  441. package/dist/components/table/table.module.css.js +56 -0
  442. package/dist/components/table/table.types.d.ts +55 -0
  443. package/dist/components/table-pagination/index.d.ts +3 -0
  444. package/dist/components/table-pagination/index.js +8 -0
  445. package/dist/components/table-pagination/pagination.d.ts +10 -0
  446. package/dist/components/table-pagination/pagination.js +115 -0
  447. package/dist/components/table-pagination/pagination.module.css.js +14 -0
  448. package/dist/components/table-pagination/table-pagination.d.ts +15 -0
  449. package/dist/components/table-pagination/table-pagination.js +123 -0
  450. package/dist/components/table-pagination/table-pagination.module.css.js +18 -0
  451. package/dist/components/tag/closable-tag.d.ts +2 -0
  452. package/dist/components/tag/closable-tag.js +35 -0
  453. package/dist/components/tag/icon-tag.d.ts +2 -0
  454. package/dist/components/tag/icon-tag.js +36 -0
  455. package/dist/components/tag/index.d.ts +5 -0
  456. package/dist/components/tag/index.js +11 -0
  457. package/dist/components/tag/link-tag.d.ts +11 -0
  458. package/dist/components/tag/link-tag.js +31 -0
  459. package/dist/components/tag/styles/tag-variables.module.css.js +8 -0
  460. package/dist/components/tag/styles/tag.module.css.js +18 -0
  461. package/dist/components/tag/tag.d.ts +28 -0
  462. package/dist/components/tag/tag.js +40 -0
  463. package/dist/components/tag/tag.types.d.ts +72 -0
  464. package/dist/components/text/index.d.ts +2 -0
  465. package/dist/components/text/index.js +5 -0
  466. package/dist/components/text/text.d.ts +3 -0
  467. package/dist/components/text/text.js +36 -0
  468. package/dist/components/text/text.module.css.js +8 -0
  469. package/dist/components/text/text.types.d.ts +11 -0
  470. package/dist/components/text-area/index.d.ts +2 -0
  471. package/dist/components/text-area/index.js +5 -0
  472. package/dist/components/text-area/text-area.d.ts +9 -0
  473. package/dist/components/text-area/text-area.js +125 -0
  474. package/dist/components/text-area/text-area.module.css.js +22 -0
  475. package/dist/components/text-area/text-area.types.d.ts +46 -0
  476. package/dist/components/text-input/index.d.ts +2 -0
  477. package/dist/components/text-input/index.js +5 -0
  478. package/dist/components/text-input/text-input.d.ts +14 -0
  479. package/dist/components/text-input/text-input.js +24 -0
  480. package/dist/components/tooltip/floating-arrow.d.ts +13 -0
  481. package/dist/components/tooltip/floating-arrow.js +40 -0
  482. package/dist/components/tooltip/get-arrow-position-styles.d.ts +11 -0
  483. package/dist/components/tooltip/get-arrow-position-styles.js +63 -0
  484. package/dist/components/tooltip/index.d.ts +54 -0
  485. package/dist/components/tooltip/index.js +150 -0
  486. package/dist/components/tooltip/styles.module.css.js +10 -0
  487. package/dist/components/tooltip/types.d.ts +13 -0
  488. package/dist/components/tooltip/use-merged-events.d.ts +18 -0
  489. package/dist/components/tooltip/use-merged-events.js +22 -0
  490. package/dist/components/tooltip/use-tooltip-trigger.d.ts +13 -0
  491. package/dist/components/tooltip/use-tooltip-trigger.js +59 -0
  492. package/dist/components/tooltip/utils.d.ts +4 -0
  493. package/dist/components/tooltip/utils.js +35 -0
  494. package/dist/components/tree/hooks/use-custom-click-behavior-feature.d.ts +16 -0
  495. package/dist/components/tree/hooks/use-custom-click-behavior-feature.js +125 -0
  496. package/dist/components/tree/hooks/use-tree-animation.d.ts +12 -0
  497. package/dist/components/tree/hooks/use-tree-animation.js +111 -0
  498. package/dist/components/tree/hooks/use-tree-config.d.ts +22 -0
  499. package/dist/components/tree/hooks/use-tree-config.js +96 -0
  500. package/dist/components/tree/hooks/use-tree-search.d.ts +19 -0
  501. package/dist/components/tree/hooks/use-tree-search.js +57 -0
  502. package/dist/components/tree/hooks/use-tree-value.d.ts +16 -0
  503. package/dist/components/tree/hooks/use-tree-value.js +37 -0
  504. package/dist/components/tree/hooks/use-tree.d.ts +13 -0
  505. package/dist/components/tree/hooks/use-tree.js +111 -0
  506. package/dist/components/tree/index.d.ts +7 -0
  507. package/dist/components/tree/index.js +16 -0
  508. package/dist/components/tree/styles/tree.module.css.js +44 -0
  509. package/dist/components/tree/tree-content.d.ts +15 -0
  510. package/dist/components/tree/tree-content.js +77 -0
  511. package/dist/components/tree/tree-context.d.ts +19 -0
  512. package/dist/components/tree/tree-context.js +13 -0
  513. package/dist/components/tree/tree-node-list.d.ts +9 -0
  514. package/dist/components/tree/tree-node-list.js +21 -0
  515. package/dist/components/tree/tree-node.d.ts +11 -0
  516. package/dist/components/tree/tree-node.js +137 -0
  517. package/dist/components/tree/tree.d.ts +20 -0
  518. package/dist/components/tree/tree.js +22 -0
  519. package/dist/components/tree/tree.types.d.ts +126 -0
  520. package/dist/components/tree-select/index.d.ts +2 -0
  521. package/dist/components/tree-select/index.js +5 -0
  522. package/dist/components/tree-select/styles/tree-select.module.css.js +20 -0
  523. package/dist/components/tree-select/tree-select-dropdown.d.ts +9 -0
  524. package/dist/components/tree-select/tree-select-dropdown.js +36 -0
  525. package/dist/components/tree-select/tree-select-target.d.ts +18 -0
  526. package/dist/components/tree-select/tree-select-target.js +116 -0
  527. package/dist/components/tree-select/tree-select.d.ts +21 -0
  528. package/dist/components/tree-select/tree-select.js +201 -0
  529. package/dist/components/tree-select/tree-select.types.d.ts +39 -0
  530. package/dist/components/unstyled-button/index.d.ts +1 -0
  531. package/dist/components/unstyled-button/index.js +5 -0
  532. package/dist/components/unstyled-button/unstyled-button.d.ts +3 -0
  533. package/dist/components/unstyled-button/unstyled-button.js +19 -0
  534. package/dist/components/unstyled-button/unstyled-button.module.css.js +8 -0
  535. package/dist/components/virtualized-tree-select/index.d.ts +2 -0
  536. package/dist/components/virtualized-tree-select/index.js +5 -0
  537. package/dist/components/virtualized-tree-select/virtualized-tree-select.d.ts +25 -0
  538. package/dist/components/virtualized-tree-select/virtualized-tree-select.js +253 -0
  539. package/dist/components/virtualized-tree-select/virtualized-tree-select.module.css.js +20 -0
  540. package/dist/index.css +1 -0
  541. package/dist/index.d.ts +53 -0
  542. package/dist/index.js +214 -0
  543. package/dist/locale/ar.d.ts +2 -0
  544. package/dist/locale/ar.js +58 -0
  545. package/dist/locale/en.d.ts +2 -0
  546. package/dist/locale/en.js +58 -0
  547. package/dist/locale/index.d.ts +6 -0
  548. package/dist/locale/index.js +15 -0
  549. package/dist/locale/ko.d.ts +2 -0
  550. package/dist/locale/ko.js +58 -0
  551. package/dist/locale/types.d.ts +55 -0
  552. package/dist/locale/types.js +8 -0
  553. package/dist/locale/zh-Hans.d.ts +2 -0
  554. package/dist/locale/zh-Hans.js +58 -0
  555. package/dist/locale/zh-Hant.d.ts +2 -0
  556. package/dist/locale/zh-Hant.js +58 -0
  557. package/dist/node_modules/.pnpm/react-number-format@5.4.5_react-dom@19.2.8_react@19.2.8__react@19.2.8/node_modules/react-number-format/dist/react-number-format.es.js +572 -0
  558. package/dist/provider/hooks.d.ts +24 -0
  559. package/dist/provider/hooks.js +26 -0
  560. package/dist/provider/index.d.ts +7 -0
  561. package/dist/provider/index.js +16 -0
  562. package/dist/provider/ui-context.d.ts +16 -0
  563. package/dist/provider/ui-context.js +14 -0
  564. package/dist/provider/ui-link.d.ts +22 -0
  565. package/dist/provider/ui-link.js +10 -0
  566. package/dist/provider/ui-provider.d.ts +19 -0
  567. package/dist/provider/ui-provider.js +21 -0
  568. package/package.json +198 -0
@@ -0,0 +1,131 @@
1
+ "use client";
2
+ import { useEffect as l, useState as m, useRef as b, useCallback as p, useMemo as E } from "react";
3
+ import { registerOpenPopover as y, isTopmostOpenPopover as A } from "./popover-stack.js";
4
+ function L(u, t = !1) {
5
+ const [n, e] = m(t || u), [r, o] = m(
6
+ u ? "open" : "closing"
7
+ ), s = b(0);
8
+ l(() => (u ? (e(!0), s.current = requestAnimationFrame(() => {
9
+ s.current = requestAnimationFrame(() => {
10
+ o("open");
11
+ });
12
+ })) : (o("closing"), t && e(!0)), () => {
13
+ s.current && cancelAnimationFrame(s.current);
14
+ }), [t, u]);
15
+ const i = p(() => {
16
+ r === "closing" && !t && e(!1);
17
+ }, [r, t]);
18
+ return { mounted: n, animState: r, handleTransitionEnd: i };
19
+ }
20
+ function P(u, t, n, e, r, o, s, i) {
21
+ const c = b(null);
22
+ l(() => {
23
+ u === "click" && (t ? c.current = document.activeElement : o().some(
24
+ (f) => f.contains(document.activeElement)
25
+ ) && c.current?.focus());
26
+ }, [t, u, o]), l(() => {
27
+ if (u !== "click" || n !== "open" || !e || i) return;
28
+ if (s?.current) {
29
+ s.current.focus();
30
+ return;
31
+ }
32
+ (h([r.current])[0] ?? r.current)?.focus();
33
+ }, [
34
+ n,
35
+ e,
36
+ u,
37
+ r,
38
+ s,
39
+ i
40
+ ]);
41
+ }
42
+ const x = [
43
+ "a[href]",
44
+ "button:not([disabled])",
45
+ "input:not([disabled])",
46
+ "select:not([disabled])",
47
+ "textarea:not([disabled])",
48
+ '[tabindex]:not([tabindex="-1"])'
49
+ ].join(",");
50
+ function h(u) {
51
+ const t = u.flatMap((n) => !n || n.inert || n.getAttribute("aria-hidden") === "true" ? [] : Array.from(
52
+ n.querySelectorAll(x)
53
+ ));
54
+ return Array.from(new Set(t)).filter(
55
+ (n) => !n.hasAttribute("data-focus-sentinel")
56
+ );
57
+ }
58
+ function C(u, t, n, e, r, o, s) {
59
+ l(() => {
60
+ if (t)
61
+ return y(r, o);
62
+ }, [o, r, t]), l(() => {
63
+ if (!u || !t) return;
64
+ const i = (c) => {
65
+ c.key !== "Escape" || !A(r) || (c.preventDefault(), c.stopImmediatePropagation(), n(), s ? s() : e.current?.focus());
66
+ };
67
+ return document.addEventListener("keydown", i), () => document.removeEventListener("keydown", i);
68
+ }, [u, t, n, e, r, s]);
69
+ }
70
+ function T(u, t, n, e) {
71
+ return E(() => {
72
+ if (!u || !t) return {};
73
+ const r = e / 2, o = {
74
+ "--t-arrow-size": `${e}px`,
75
+ width: e,
76
+ height: e
77
+ };
78
+ return n === "bottom" ? { ...o, top: -r - 1, left: t.x ?? "", bottom: "" } : n === "top" ? { ...o, bottom: -r - 1, left: t.x ?? "", top: "" } : n === "right" ? { ...o, left: -r - 1, top: t.y ?? "" } : n === "left" ? { ...o, right: -r - 1, top: t.y ?? "" } : o;
79
+ }, [u, t, n, e]);
80
+ }
81
+ function k(u, t, n, e, r, o, s, i, c, f) {
82
+ return E(() => u ? { ref: n } : t === "none" ? {
83
+ ref: n,
84
+ "aria-expanded": o,
85
+ onKeyDown: f
86
+ } : t === "hover" ? {
87
+ ref: n,
88
+ onMouseEnter: () => {
89
+ clearTimeout(i.current), s(!0);
90
+ },
91
+ onMouseLeave: () => {
92
+ i.current = window.setTimeout(() => s(!1), 100);
93
+ },
94
+ onFocus: () => s(!0),
95
+ onBlur: () => {
96
+ i.current = window.setTimeout(() => s(!1), 100);
97
+ },
98
+ "aria-describedby": e,
99
+ onKeyDown: f
100
+ } : {
101
+ ref: n,
102
+ onClick: (a) => {
103
+ r(), c?.(a);
104
+ },
105
+ onKeyDown: (a) => {
106
+ a.key === "Enter" && (a.preventDefault(), r()), f?.(a);
107
+ },
108
+ "aria-expanded": o,
109
+ "aria-haspopup": "dialog",
110
+ "aria-controls": e
111
+ }, [
112
+ u,
113
+ t,
114
+ n,
115
+ e,
116
+ r,
117
+ o,
118
+ s,
119
+ i,
120
+ c,
121
+ f
122
+ ]);
123
+ }
124
+ export {
125
+ h as getFocusableElements,
126
+ L as useAnimatedMount,
127
+ T as useArrowStyle,
128
+ C as useEscapeClose,
129
+ P as usePopoverFocus,
130
+ k as useTriggerProps
131
+ };
@@ -0,0 +1,8 @@
1
+ import { PopoverDropdown } from './popover-dropdown';
2
+ import { PopoverTarget } from './popover-target';
3
+ export declare const Popover: (({ children, position, offset: offsetProp, opened: openedProp, defaultOpened, onOpenChange, disabled, withArrow, arrowSize, trigger, closeOnClickOutside, closeOnEscape, restoreFocus, strategy, initialFocusRef, trapFocus, preventAutoFocus, "aria-labelledby": ariaLabelledby, }: import("./popover.types").PopoverProps) => import("react").JSX.Element) & {
4
+ Target: ({ children, ref, onClick, onKeyDown, ...restProps }: import("./popover.types").PopoverTargetProps) => import("react").JSX.Element;
5
+ Dropdown: ({ children, arrowClassName, zIndex, width, maxHeight, matchTargetWidth, radius, withinPortal, keepMounted, ref, ...restProps }: import("./popover.types").PopoverDropdownProps) => import("react").JSX.Element | null;
6
+ };
7
+ export { PopoverDropdown, PopoverTarget };
8
+ export * from './popover.types';
@@ -0,0 +1,13 @@
1
+ "use client";
2
+ import { Popover as o } from "./popover.js";
3
+ import { PopoverDropdown as r } from "./popover-dropdown.js";
4
+ import { PopoverTarget as e } from "./popover-target.js";
5
+ const i = Object.assign(o, {
6
+ Target: e,
7
+ Dropdown: r
8
+ });
9
+ export {
10
+ i as Popover,
11
+ r as PopoverDropdown,
12
+ e as PopoverTarget
13
+ };
@@ -0,0 +1,4 @@
1
+ import { PopoverContextValue } from './popover.types';
2
+ export declare const PopoverContext: import("react").Context<PopoverContextValue | null>;
3
+ export declare const PopoverLayerContext: import("react").Context<number | null>;
4
+ export declare function usePopoverContext(): PopoverContextValue;
@@ -0,0 +1,16 @@
1
+ "use client";
2
+ import { createContext as e, useContext as t } from "react";
3
+ const n = e(null), p = e(null);
4
+ function s() {
5
+ const o = t(n);
6
+ if (!o)
7
+ throw new Error(
8
+ "Popover components must be used within a Popover provider"
9
+ );
10
+ return o;
11
+ }
12
+ export {
13
+ n as PopoverContext,
14
+ p as PopoverLayerContext,
15
+ s as usePopoverContext
16
+ };
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { PopoverDropdownProps } from './popover.types';
3
+ export declare const PopoverDropdown: ({ children, arrowClassName, zIndex, width, maxHeight, matchTargetWidth, radius, withinPortal, keepMounted, ref, ...restProps }: PopoverDropdownProps) => React.JSX.Element | null;
@@ -0,0 +1,149 @@
1
+ "use client";
2
+ import { jsxs as S, jsx as c } from "react/jsx-runtime";
3
+ import { getDefaultZIndex as te, Portal as re } from "@mantine/core";
4
+ import { useMergedRef as ne } from "@mantine/hooks";
5
+ import { clsx as I } from "clsx";
6
+ import { useContext as ie, useRef as ae, useCallback as se } from "react";
7
+ import { useAnimatedMount as de, usePopoverFocus as le, useArrowStyle as ce, getFocusableElements as ue } from "./hooks.js";
8
+ import { PopoverLayerContext as M, usePopoverContext as fe } from "./popover-context.js";
9
+ import T from "./styles/popover.module.css.js";
10
+ const Fe = ({
11
+ children: A,
12
+ arrowClassName: C,
13
+ zIndex: D,
14
+ width: t,
15
+ maxHeight: a,
16
+ matchTargetWidth: N = !1,
17
+ radius: z = "sm",
18
+ withinPortal: L = !0,
19
+ keepMounted: Z = !1,
20
+ ref: j,
21
+ ...e
22
+ }) => {
23
+ const u = ie(M), {
24
+ opened: r,
25
+ trigger: n,
26
+ strategy: k,
27
+ x: W,
28
+ y: $,
29
+ resolvedSide: f,
30
+ middlewareData: s,
31
+ floatingRef: d,
32
+ setFloating: H,
33
+ registerNestedFloatingElement: p,
34
+ getFloatingScopeElements: v,
35
+ withArrow: m,
36
+ arrowSize: O,
37
+ arrowRef: P,
38
+ hoverTimerRef: g,
39
+ setOpen: V,
40
+ id: q,
41
+ initialFocusRef: B,
42
+ trapFocus: h,
43
+ preventAutoFocus: G,
44
+ ariaLabelledby: J
45
+ } = fe(), { mounted: x, animState: w, handleTransitionEnd: K } = de(
46
+ r,
47
+ Z
48
+ ), y = ae(null), Q = se(
49
+ (o) => {
50
+ y.current?.(), y.current = o ? p(o) : null;
51
+ },
52
+ [p]
53
+ ), U = ne(
54
+ d,
55
+ H,
56
+ Q,
57
+ j
58
+ ), l = D ?? (u === null ? te("popover") : u + 1);
59
+ le(
60
+ n,
61
+ r,
62
+ w,
63
+ x,
64
+ d,
65
+ v,
66
+ B,
67
+ G
68
+ );
69
+ const b = (o) => /* @__PURE__ */ c(
70
+ "span",
71
+ {
72
+ tabIndex: 0,
73
+ "data-focus-sentinel": o,
74
+ "aria-hidden": "true",
75
+ style: { position: "fixed", width: 0, height: 0, opacity: 0 },
76
+ onFocus: () => {
77
+ const i = ue(v());
78
+ if (i.length === 0) {
79
+ d.current?.focus();
80
+ return;
81
+ }
82
+ (o === "start" ? i[i.length - 1] : i[0]).focus();
83
+ }
84
+ }
85
+ ), X = ce(
86
+ m,
87
+ s.arrow,
88
+ f,
89
+ O
90
+ ), Y = typeof t == "number" ? `${t}px` : t, _ = t ? Y : void 0, ee = typeof a == "number" ? `${a}px` : a, oe = N ? "var(--t-popover-reference-width)" : _;
91
+ if (!x) return null;
92
+ const F = "role" in e ? e.role : n === "click" ? "dialog" : void 0, R = F === "dialog", E = /* @__PURE__ */ S(
93
+ "div",
94
+ {
95
+ id: q,
96
+ role: F,
97
+ "aria-modal": R ? !1 : void 0,
98
+ "aria-labelledby": R ? J : void 0,
99
+ ref: U,
100
+ tabIndex: -1,
101
+ "data-state": w,
102
+ "data-radius": z,
103
+ "data-side": f,
104
+ style: {
105
+ position: k,
106
+ left: W ?? 0,
107
+ top: $ ?? 0,
108
+ zIndex: l,
109
+ "--t-popover-z": l,
110
+ "--t-popover-width": oe,
111
+ "--t-popover-max-height": ee,
112
+ visibility: s.hide?.referenceHidden ? "hidden" : void 0,
113
+ pointerEvents: s.hide?.referenceHidden ? "none" : void 0
114
+ },
115
+ onTransitionEnd: K,
116
+ onMouseEnter: n === "hover" ? () => clearTimeout(g.current) : void 0,
117
+ onMouseLeave: n === "hover" ? () => {
118
+ g.current = window.setTimeout(
119
+ () => V(!1),
120
+ 100
121
+ );
122
+ } : void 0,
123
+ ...e,
124
+ "aria-hidden": r ? e["aria-hidden"] : !0,
125
+ inert: r ? e.inert : !0,
126
+ className: I(T.popover, e.className),
127
+ children: [
128
+ /* @__PURE__ */ S(M.Provider, { value: l, children: [
129
+ h && b("start"),
130
+ A,
131
+ h && b("end")
132
+ ] }),
133
+ m && /* @__PURE__ */ c(
134
+ "div",
135
+ {
136
+ ref: P,
137
+ "aria-hidden": "true",
138
+ className: I(T.arrow, C),
139
+ style: { ...X }
140
+ }
141
+ )
142
+ ]
143
+ }
144
+ );
145
+ return L ? /* @__PURE__ */ c(re, { children: E }) : E;
146
+ };
147
+ export {
148
+ Fe as PopoverDropdown
149
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * 登记已打开的 Popover,并返回只清理本次登记的注销函数。
3
+ * depth 表示逻辑嵌套层级,order 用于区分同层浮层的打开先后。
4
+ */
5
+ export declare function registerOpenPopover(id: string, depth: number): () => void;
6
+ /**
7
+ * 判断 Popover 是否位于当前逻辑栈顶:嵌套更深者优先,同一深度下后打开者优先。
8
+ * Escape 关闭前使用该结果,避免一次按键同时关闭多层浮层。
9
+ */
10
+ export declare function isTopmostOpenPopover(id: string): boolean;
@@ -0,0 +1,24 @@
1
+ "use client";
2
+ const r = /* @__PURE__ */ new Map();
3
+ let p = 0;
4
+ function s(e, t) {
5
+ const o = {
6
+ depth: t,
7
+ order: p++
8
+ };
9
+ return r.set(e, o), () => {
10
+ r.get(e) === o && r.delete(e);
11
+ };
12
+ }
13
+ function f(e) {
14
+ const t = r.get(e);
15
+ if (!t) return !1;
16
+ for (const [o, n] of r)
17
+ if (o !== e && (n.depth > t.depth || n.depth === t.depth && n.order > t.order))
18
+ return !1;
19
+ return !0;
20
+ }
21
+ export {
22
+ f as isTopmostOpenPopover,
23
+ s as registerOpenPopover
24
+ };
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { PopoverTargetProps } from './popover.types';
3
+ export declare const PopoverTarget: ({ children, ref, onClick, onKeyDown, ...restProps }: PopoverTargetProps) => React.JSX.Element;
@@ -0,0 +1,55 @@
1
+ "use client";
2
+ import { jsx as b } from "react/jsx-runtime";
3
+ import { useMergedRef as v } from "@mantine/hooks";
4
+ import { clsx as T } from "clsx";
5
+ import r from "react";
6
+ import { useTriggerProps as E } from "./hooks.js";
7
+ import { usePopoverContext as N } from "./popover-context.js";
8
+ import P from "./styles/popover.module.css.js";
9
+ const q = ({
10
+ children: e,
11
+ ref: s,
12
+ onClick: m,
13
+ onKeyDown: f,
14
+ ...o
15
+ }) => {
16
+ const {
17
+ disabled: i,
18
+ trigger: n,
19
+ id: a,
20
+ toggle: p,
21
+ opened: l,
22
+ setOpen: c,
23
+ hoverTimerRef: g,
24
+ referenceRef: d,
25
+ setReference: u
26
+ } = N(), R = r.isValidElement(e) ? e.props.ref : void 0, x = v(d, u, s, R), t = E(
27
+ i,
28
+ n,
29
+ x,
30
+ a,
31
+ p,
32
+ l,
33
+ c,
34
+ g,
35
+ m,
36
+ f
37
+ );
38
+ return r.isValidElement(e) ? r.cloneElement(
39
+ e,
40
+ { ...t, ...o }
41
+ ) : /* @__PURE__ */ b(
42
+ "span",
43
+ {
44
+ role: "button",
45
+ tabIndex: 0,
46
+ ...t,
47
+ ...o,
48
+ className: T(P.fallbackTarget, o.className),
49
+ children: e
50
+ }
51
+ );
52
+ };
53
+ export {
54
+ q as PopoverTarget
55
+ };
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { PopoverProps } from './popover.types';
3
+ export declare const Popover: ({ children, position, offset: offsetProp, opened: openedProp, defaultOpened, onOpenChange, disabled, withArrow, arrowSize, trigger, closeOnClickOutside, closeOnEscape, restoreFocus, strategy, initialFocusRef, trapFocus, preventAutoFocus, "aria-labelledby": ariaLabelledby, }: PopoverProps) => React.JSX.Element;
@@ -0,0 +1,175 @@
1
+ "use client";
2
+ import { jsx as ne } from "react/jsx-runtime";
3
+ import { offset as oe, flip as se, size as re, shift as le, limitShift as ce, arrow as ae, hide as ie, useFloating as de, autoUpdate as ue } from "@floating-ui/react-dom";
4
+ import { useDirection as fe, getFloatingPosition as pe } from "@mantine/core";
5
+ import _, { useRef as l, useId as me, useCallback as c, useEffect as ge, useMemo as q } from "react";
6
+ import { useEscapeClose as ve } from "./hooks.js";
7
+ import { PopoverContext as A } from "./popover-context.js";
8
+ const g = 8, ye = ({
9
+ children: B,
10
+ position: H = "bottom",
11
+ offset: y = 8,
12
+ opened: C,
13
+ defaultOpened: J = !1,
14
+ onOpenChange: N,
15
+ disabled: b = !1,
16
+ withArrow: r = !1,
17
+ arrowSize: a = 8,
18
+ trigger: D = "click",
19
+ closeOnClickOutside: I = !0,
20
+ closeOnEscape: K = !0,
21
+ restoreFocus: Q,
22
+ strategy: v = "absolute",
23
+ initialFocusRef: L,
24
+ trapFocus: M = !1,
25
+ preventAutoFocus: S = !1,
26
+ "aria-labelledby": $
27
+ }) => {
28
+ const h = _.useContext(A), G = h?.registerNestedFloatingElement, x = h ? h.depth + 1 : 0, E = C !== void 0, [W, X] = _.useState(J), t = E ? C : W, i = l(null), d = l(null), u = l(null), R = l(/* @__PURE__ */ new Set()), T = l(0), F = me(), { dir: Y } = fe(), o = c(
29
+ (e) => {
30
+ E || X(e), N?.(e);
31
+ },
32
+ [E, N]
33
+ ), P = c(() => o(!1), [o]), j = c(() => o(!t), [t, o]), k = c(
34
+ (e) => {
35
+ R.current.add(e);
36
+ const n = G?.(e);
37
+ return () => {
38
+ R.current.delete(e), n?.();
39
+ };
40
+ },
41
+ [G]
42
+ ), f = c(() => {
43
+ const e = u.current ? [u.current] : [];
44
+ return R.current.forEach((n) => {
45
+ n.isConnected && e.push(n);
46
+ }), Array.from(new Set(e));
47
+ }, []);
48
+ ge(() => {
49
+ if (!I || !t) return;
50
+ const e = (n) => {
51
+ const m = n.composedPath(), s = d.current;
52
+ s && m.includes(s) || f().some((te) => m.includes(te)) || P();
53
+ };
54
+ return document.addEventListener("mousedown", e, !0), document.addEventListener("touchstart", e, !0), () => {
55
+ document.removeEventListener("mousedown", e, !0), document.removeEventListener("touchstart", e, !0);
56
+ };
57
+ }, [I, t, P, f]), ve(
58
+ K,
59
+ t,
60
+ P,
61
+ d,
62
+ F,
63
+ x,
64
+ Q
65
+ );
66
+ const Z = q(
67
+ () => [
68
+ oe(y + (r ? a / 2 : 0)),
69
+ se({ padding: g }),
70
+ // 必须在 shift 之前:否则 availableHeight 是 shift 推动后的位置算出的(≈整屏),高度约束失效
71
+ re({
72
+ padding: g,
73
+ apply({ availableWidth: e, availableHeight: n, rects: m, elements: s }) {
74
+ s.floating.style.setProperty(
75
+ "--t-popover-available-width",
76
+ `${Math.max(0, e)}px`
77
+ ), s.floating.style.setProperty(
78
+ "--t-popover-available-height",
79
+ `${Math.max(0, n)}px`
80
+ ), s.floating.style.setProperty(
81
+ "--t-popover-reference-width",
82
+ `${m.reference.width}px`
83
+ );
84
+ }
85
+ }),
86
+ le({
87
+ padding: g,
88
+ crossAxis: !0,
89
+ mainAxis: !0,
90
+ limiter: ce()
91
+ }),
92
+ ...r ? (
93
+ // floating-ui 的 arrow 中间件按设计就是收一个 ref 对象(它在定位阶段自己读
94
+ // .current),不是我们在渲染期读 ref 的值。没有保留该 API 的改写方式。
95
+ // eslint-disable-next-line react-hooks/refs
96
+ [ae({ element: i, padding: g })]
97
+ ) : [],
98
+ ie()
99
+ ],
100
+ [y, r, a, i]
101
+ ), {
102
+ x: w,
103
+ y: O,
104
+ refs: p,
105
+ placement: z,
106
+ middlewareData: U
107
+ } = de({
108
+ open: t,
109
+ strategy: v,
110
+ placement: pe(Y, H),
111
+ middleware: Z,
112
+ whileElementsMounted: ue
113
+ }), V = z.split("-")[0], ee = q(
114
+ () => ({
115
+ opened: t,
116
+ setOpen: o,
117
+ toggle: j,
118
+ trigger: D,
119
+ disabled: b,
120
+ id: F,
121
+ withArrow: r,
122
+ arrowSize: a,
123
+ x: w,
124
+ y: O,
125
+ strategy: v,
126
+ resolvedSide: V,
127
+ middlewareData: U,
128
+ hoverTimerRef: T,
129
+ referenceRef: d,
130
+ floatingRef: u,
131
+ arrowRef: i,
132
+ setReference: p.setReference,
133
+ setFloating: p.setFloating,
134
+ depth: x,
135
+ registerNestedFloatingElement: k,
136
+ getFloatingScopeElements: f,
137
+ initialFocusRef: L,
138
+ trapFocus: M,
139
+ preventAutoFocus: S,
140
+ ariaLabelledby: $
141
+ }),
142
+ [
143
+ t,
144
+ o,
145
+ j,
146
+ D,
147
+ b,
148
+ F,
149
+ r,
150
+ a,
151
+ w,
152
+ O,
153
+ v,
154
+ V,
155
+ U,
156
+ T,
157
+ d,
158
+ u,
159
+ i,
160
+ p.setReference,
161
+ p.setFloating,
162
+ x,
163
+ k,
164
+ f,
165
+ L,
166
+ M,
167
+ S,
168
+ $
169
+ ]
170
+ );
171
+ return /* @__PURE__ */ ne(A.Provider, { value: ee, children: B });
172
+ };
173
+ export {
174
+ ye as Popover
175
+ };