@noodleseed/one 0.32.1 → 0.33.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 (700) hide show
  1. package/dist/deploy.js +1 -1
  2. package/dist/deploy.js.map +1 -1
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/project-scaffold-templates.d.ts +9 -6
  7. package/dist/project-scaffold-templates.d.ts.map +1 -1
  8. package/dist/project-scaffold-templates.js +3 -198
  9. package/dist/project-scaffold-templates.js.map +1 -1
  10. package/dist/project.d.ts.map +1 -1
  11. package/dist/project.js +2 -1
  12. package/dist/project.js.map +1 -1
  13. package/dist/react-widget-build.js +10 -0
  14. package/dist/react-widget-build.js.map +1 -1
  15. package/dist/react.d.ts +2 -2
  16. package/dist/react.d.ts.map +1 -1
  17. package/dist/react.js +2 -1
  18. package/dist/react.js.map +1 -1
  19. package/dist/widget-scaffold-template.d.ts +4 -0
  20. package/dist/widget-scaffold-template.d.ts.map +1 -0
  21. package/dist/widget-scaffold-template.js +140 -0
  22. package/dist/widget-scaffold-template.js.map +1 -0
  23. package/dist/widget-showcase-template.d.ts +5 -0
  24. package/dist/widget-showcase-template.d.ts.map +1 -0
  25. package/dist/widget-showcase-template.js +478 -0
  26. package/dist/widget-showcase-template.js.map +1 -0
  27. package/node_modules/@floating-ui/core/LICENSE +20 -0
  28. package/node_modules/@floating-ui/core/README.md +4 -0
  29. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.min.mjs +1 -0
  30. package/node_modules/@floating-ui/core/dist/floating-ui.core.browser.mjs +1184 -0
  31. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.mts +531 -0
  32. package/node_modules/@floating-ui/core/dist/floating-ui.core.d.ts +531 -0
  33. package/node_modules/@floating-ui/core/dist/floating-ui.core.esm.js +1058 -0
  34. package/node_modules/@floating-ui/core/dist/floating-ui.core.mjs +1058 -0
  35. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.js +1203 -0
  36. package/node_modules/@floating-ui/core/dist/floating-ui.core.umd.min.js +1 -0
  37. package/node_modules/@floating-ui/core/package.json +63 -0
  38. package/node_modules/@floating-ui/dom/LICENSE +20 -0
  39. package/node_modules/@floating-ui/dom/README.md +4 -0
  40. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.min.mjs +1 -0
  41. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.browser.mjs +956 -0
  42. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts +358 -0
  43. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.d.ts +358 -0
  44. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.esm.js +781 -0
  45. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.mjs +781 -0
  46. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.js +975 -0
  47. package/node_modules/@floating-ui/dom/dist/floating-ui.dom.umd.min.js +1 -0
  48. package/node_modules/@floating-ui/dom/package.json +70 -0
  49. package/node_modules/@floating-ui/react-dom/LICENSE +20 -0
  50. package/node_modules/@floating-ui/react-dom/README.md +3 -0
  51. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.mts +307 -0
  52. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.d.ts +307 -0
  53. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.esm.js +406 -0
  54. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.mjs +406 -0
  55. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.js +457 -0
  56. package/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.umd.min.js +1 -0
  57. package/node_modules/@floating-ui/react-dom/package.json +75 -0
  58. package/node_modules/@floating-ui/utils/LICENSE +20 -0
  59. package/node_modules/@floating-ui/utils/README.md +4 -0
  60. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.mts +103 -0
  61. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.d.ts +103 -0
  62. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.mts +47 -0
  63. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.d.ts +47 -0
  64. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.esm.js +165 -0
  65. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.mjs +165 -0
  66. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.js +192 -0
  67. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.umd.min.js +1 -0
  68. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.esm.js +136 -0
  69. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.mjs +136 -0
  70. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.js +167 -0
  71. package/node_modules/@floating-ui/utils/dist/floating-ui.utils.umd.min.js +1 -0
  72. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.d.ts +47 -0
  73. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.esm.js +165 -0
  74. package/node_modules/@floating-ui/utils/dom/floating-ui.utils.dom.umd.js +192 -0
  75. package/node_modules/@floating-ui/utils/dom/package.json +6 -0
  76. package/node_modules/@floating-ui/utils/package.json +70 -0
  77. package/node_modules/@noodle-borg/agent-kit/dist/index.d.ts.map +1 -1
  78. package/node_modules/@noodle-borg/agent-kit/dist/index.js +4 -0
  79. package/node_modules/@noodle-borg/agent-kit/dist/index.js.map +1 -1
  80. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.d.ts.map +1 -1
  81. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js +4 -0
  82. package/node_modules/@noodle-borg/agent-kit/dist/skill-authoring-refs.js.map +1 -1
  83. package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
  84. package/node_modules/@noodle-borg/authoring/dist/index.d.ts +0 -2
  85. package/node_modules/@noodle-borg/authoring/dist/index.d.ts.map +1 -1
  86. package/node_modules/@noodle-borg/authoring/dist/index.js +0 -1
  87. package/node_modules/@noodle-borg/authoring/dist/index.js.map +1 -1
  88. package/node_modules/@noodle-borg/authoring/dist/react/bridge.d.ts +22 -2
  89. package/node_modules/@noodle-borg/authoring/dist/react/bridge.d.ts.map +1 -1
  90. package/node_modules/@noodle-borg/authoring/dist/react/bridge.js +15 -6
  91. package/node_modules/@noodle-borg/authoring/dist/react/bridge.js.map +1 -1
  92. package/node_modules/@noodle-borg/authoring/dist/react/components.d.ts +399 -665
  93. package/node_modules/@noodle-borg/authoring/dist/react/components.d.ts.map +1 -1
  94. package/node_modules/@noodle-borg/authoring/dist/react/components.js +113 -22
  95. package/node_modules/@noodle-borg/authoring/dist/react/components.js.map +1 -1
  96. package/node_modules/@noodle-borg/authoring/dist/react/display-components.d.ts +39 -0
  97. package/node_modules/@noodle-borg/authoring/dist/react/display-components.d.ts.map +1 -0
  98. package/node_modules/@noodle-borg/authoring/dist/react/display-components.js +55 -0
  99. package/node_modules/@noodle-borg/authoring/dist/react/display-components.js.map +1 -0
  100. package/node_modules/@noodle-borg/authoring/dist/react/field-context.d.ts +28 -0
  101. package/node_modules/@noodle-borg/authoring/dist/react/field-context.d.ts.map +1 -0
  102. package/node_modules/@noodle-borg/authoring/dist/react/field-context.js +20 -0
  103. package/node_modules/@noodle-borg/authoring/dist/react/field-context.js.map +1 -0
  104. package/node_modules/@noodle-borg/authoring/dist/react/form-components.d.ts +114 -0
  105. package/node_modules/@noodle-borg/authoring/dist/react/form-components.d.ts.map +1 -0
  106. package/node_modules/@noodle-borg/authoring/dist/react/form-components.js +147 -0
  107. package/node_modules/@noodle-borg/authoring/dist/react/form-components.js.map +1 -0
  108. package/node_modules/@noodle-borg/authoring/dist/react/hooks.d.ts +2 -2
  109. package/node_modules/@noodle-borg/authoring/dist/react/hooks.d.ts.map +1 -1
  110. package/node_modules/@noodle-borg/authoring/dist/react/hooks.js.map +1 -1
  111. package/node_modules/@noodle-borg/authoring/dist/react/index.d.ts +4 -1
  112. package/node_modules/@noodle-borg/authoring/dist/react/index.d.ts.map +1 -1
  113. package/node_modules/@noodle-borg/authoring/dist/react/index.js +3 -0
  114. package/node_modules/@noodle-borg/authoring/dist/react/index.js.map +1 -1
  115. package/node_modules/@noodle-borg/authoring/dist/react/native-components.d.ts +76 -76
  116. package/node_modules/@noodle-borg/authoring/dist/react/overlay-components.d.ts +67 -0
  117. package/node_modules/@noodle-borg/authoring/dist/react/overlay-components.d.ts.map +1 -0
  118. package/node_modules/@noodle-borg/authoring/dist/react/overlay-components.js +86 -0
  119. package/node_modules/@noodle-borg/authoring/dist/react/overlay-components.js.map +1 -0
  120. package/node_modules/@noodle-borg/authoring/dist/react/semantic-components.d.ts +971 -386
  121. package/node_modules/@noodle-borg/authoring/dist/react/semantic-components.d.ts.map +1 -1
  122. package/node_modules/@noodle-borg/authoring/dist/react/semantic-components.js +57 -10
  123. package/node_modules/@noodle-borg/authoring/dist/react/semantic-components.js.map +1 -1
  124. package/node_modules/@noodle-borg/authoring/dist/react.d.ts +2 -2
  125. package/node_modules/@noodle-borg/authoring/dist/react.d.ts.map +1 -1
  126. package/node_modules/@noodle-borg/authoring/dist/react.js +2 -1
  127. package/node_modules/@noodle-borg/authoring/dist/react.js.map +1 -1
  128. package/node_modules/@noodle-borg/authoring/dist/server.d.ts.map +1 -1
  129. package/node_modules/@noodle-borg/authoring/dist/server.js +20 -4
  130. package/node_modules/@noodle-borg/authoring/dist/server.js.map +1 -1
  131. package/node_modules/@noodle-borg/authoring/package.json +7 -1
  132. package/node_modules/@noodle-borg/connector-defs/dist/index.d.ts +1 -1
  133. package/node_modules/@noodle-borg/connector-defs/dist/index.d.ts.map +1 -1
  134. package/node_modules/@noodle-borg/connector-defs/dist/index.js.map +1 -1
  135. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.d.ts +1 -1
  136. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.d.ts.map +1 -1
  137. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.js +26 -2
  138. package/node_modules/@noodle-borg/protocol/dist/widget/react-bridge-bootstrap.js.map +1 -1
  139. package/node_modules/@noodle-borg/service/dist/connector-normalize.d.ts +6 -0
  140. package/node_modules/@noodle-borg/service/dist/connector-normalize.d.ts.map +1 -0
  141. package/node_modules/@noodle-borg/service/dist/connector-normalize.js +80 -0
  142. package/node_modules/@noodle-borg/service/dist/connector-normalize.js.map +1 -0
  143. package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
  144. package/node_modules/@noodle-borg/service/dist/registry.js +10 -4
  145. package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
  146. package/node_modules/@radix-ui/primitive/LICENSE +21 -0
  147. package/node_modules/@radix-ui/primitive/README.md +3 -0
  148. package/node_modules/@radix-ui/primitive/dist/index.d.mts +20 -0
  149. package/node_modules/@radix-ui/primitive/dist/index.d.ts +20 -0
  150. package/node_modules/@radix-ui/primitive/dist/index.js +76 -0
  151. package/node_modules/@radix-ui/primitive/dist/index.js.map +7 -0
  152. package/node_modules/@radix-ui/primitive/dist/index.mjs +53 -0
  153. package/node_modules/@radix-ui/primitive/dist/index.mjs.map +7 -0
  154. package/node_modules/@radix-ui/primitive/package.json +47 -0
  155. package/node_modules/@radix-ui/react-arrow/LICENSE +21 -0
  156. package/node_modules/@radix-ui/react-arrow/README.md +3 -0
  157. package/node_modules/@radix-ui/react-arrow/dist/index.d.mts +10 -0
  158. package/node_modules/@radix-ui/react-arrow/dist/index.d.ts +10 -0
  159. package/node_modules/@radix-ui/react-arrow/dist/index.js +60 -0
  160. package/node_modules/@radix-ui/react-arrow/dist/index.js.map +7 -0
  161. package/node_modules/@radix-ui/react-arrow/dist/index.mjs +27 -0
  162. package/node_modules/@radix-ui/react-arrow/dist/index.mjs.map +7 -0
  163. package/node_modules/@radix-ui/react-arrow/package.json +68 -0
  164. package/node_modules/@radix-ui/react-collection/LICENSE +21 -0
  165. package/node_modules/@radix-ui/react-collection/README.md +3 -0
  166. package/node_modules/@radix-ui/react-collection/dist/index.d.mts +98 -0
  167. package/node_modules/@radix-ui/react-collection/dist/index.d.ts +98 -0
  168. package/node_modules/@radix-ui/react-collection/dist/index.js +577 -0
  169. package/node_modules/@radix-ui/react-collection/dist/index.js.map +7 -0
  170. package/node_modules/@radix-ui/react-collection/dist/index.mjs +545 -0
  171. package/node_modules/@radix-ui/react-collection/dist/index.mjs.map +7 -0
  172. package/node_modules/@radix-ui/react-collection/package.json +71 -0
  173. package/node_modules/@radix-ui/react-compose-refs/LICENSE +21 -0
  174. package/node_modules/@radix-ui/react-compose-refs/README.md +3 -0
  175. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.mts +15 -0
  176. package/node_modules/@radix-ui/react-compose-refs/dist/index.d.ts +15 -0
  177. package/node_modules/@radix-ui/react-compose-refs/dist/index.js +74 -0
  178. package/node_modules/@radix-ui/react-compose-refs/dist/index.js.map +7 -0
  179. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs +41 -0
  180. package/node_modules/@radix-ui/react-compose-refs/dist/index.mjs.map +7 -0
  181. package/node_modules/@radix-ui/react-compose-refs/package.json +60 -0
  182. package/node_modules/@radix-ui/react-context/LICENSE +21 -0
  183. package/node_modules/@radix-ui/react-context/README.md +3 -0
  184. package/node_modules/@radix-ui/react-context/dist/index.d.mts +21 -0
  185. package/node_modules/@radix-ui/react-context/dist/index.d.ts +21 -0
  186. package/node_modules/@radix-ui/react-context/dist/index.js +116 -0
  187. package/node_modules/@radix-ui/react-context/dist/index.js.map +7 -0
  188. package/node_modules/@radix-ui/react-context/dist/index.mjs +83 -0
  189. package/node_modules/@radix-ui/react-context/dist/index.mjs.map +7 -0
  190. package/node_modules/@radix-ui/react-context/package.json +60 -0
  191. package/node_modules/@radix-ui/react-dialog/LICENSE +21 -0
  192. package/node_modules/@radix-ui/react-dialog/README.md +3 -0
  193. package/node_modules/@radix-ui/react-dialog/dist/index.d.mts +99 -0
  194. package/node_modules/@radix-ui/react-dialog/dist/index.d.ts +99 -0
  195. package/node_modules/@radix-ui/react-dialog/dist/index.js +330 -0
  196. package/node_modules/@radix-ui/react-dialog/dist/index.js.map +7 -0
  197. package/node_modules/@radix-ui/react-dialog/dist/index.mjs +298 -0
  198. package/node_modules/@radix-ui/react-dialog/dist/index.mjs.map +7 -0
  199. package/node_modules/@radix-ui/react-dialog/package.json +81 -0
  200. package/node_modules/@radix-ui/react-direction/LICENSE +21 -0
  201. package/node_modules/@radix-ui/react-direction/README.md +3 -0
  202. package/node_modules/@radix-ui/react-direction/dist/index.d.mts +12 -0
  203. package/node_modules/@radix-ui/react-direction/dist/index.d.ts +12 -0
  204. package/node_modules/@radix-ui/react-direction/dist/index.js +53 -0
  205. package/node_modules/@radix-ui/react-direction/dist/index.js.map +7 -0
  206. package/node_modules/@radix-ui/react-direction/dist/index.mjs +21 -0
  207. package/node_modules/@radix-ui/react-direction/dist/index.mjs.map +7 -0
  208. package/node_modules/@radix-ui/react-direction/package.json +60 -0
  209. package/node_modules/@radix-ui/react-dismissable-layer/LICENSE +21 -0
  210. package/node_modules/@radix-ui/react-dismissable-layer/README.md +3 -0
  211. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.mts +62 -0
  212. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.d.ts +62 -0
  213. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +364 -0
  214. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.js.map +7 -0
  215. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs +332 -0
  216. package/node_modules/@radix-ui/react-dismissable-layer/dist/index.mjs.map +7 -0
  217. package/node_modules/@radix-ui/react-dismissable-layer/package.json +73 -0
  218. package/node_modules/@radix-ui/react-dropdown-menu/LICENSE +21 -0
  219. package/node_modules/@radix-ui/react-dropdown-menu/README.md +3 -0
  220. package/node_modules/@radix-ui/react-dropdown-menu/dist/index.d.mts +97 -0
  221. package/node_modules/@radix-ui/react-dropdown-menu/dist/index.d.ts +97 -0
  222. package/node_modules/@radix-ui/react-dropdown-menu/dist/index.js +338 -0
  223. package/node_modules/@radix-ui/react-dropdown-menu/dist/index.js.map +7 -0
  224. package/node_modules/@radix-ui/react-dropdown-menu/dist/index.mjs +306 -0
  225. package/node_modules/@radix-ui/react-dropdown-menu/dist/index.mjs.map +7 -0
  226. package/node_modules/@radix-ui/react-dropdown-menu/package.json +76 -0
  227. package/node_modules/@radix-ui/react-focus-guards/LICENSE +21 -0
  228. package/node_modules/@radix-ui/react-focus-guards/README.md +3 -0
  229. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.mts +13 -0
  230. package/node_modules/@radix-ui/react-focus-guards/dist/index.d.ts +13 -0
  231. package/node_modules/@radix-ui/react-focus-guards/dist/index.js +81 -0
  232. package/node_modules/@radix-ui/react-focus-guards/dist/index.js.map +7 -0
  233. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs +49 -0
  234. package/node_modules/@radix-ui/react-focus-guards/dist/index.mjs.map +7 -0
  235. package/node_modules/@radix-ui/react-focus-guards/package.json +60 -0
  236. package/node_modules/@radix-ui/react-focus-scope/LICENSE +21 -0
  237. package/node_modules/@radix-ui/react-focus-scope/README.md +3 -0
  238. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.mts +32 -0
  239. package/node_modules/@radix-ui/react-focus-scope/dist/index.d.ts +32 -0
  240. package/node_modules/@radix-ui/react-focus-scope/dist/index.js +246 -0
  241. package/node_modules/@radix-ui/react-focus-scope/dist/index.js.map +7 -0
  242. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs +214 -0
  243. package/node_modules/@radix-ui/react-focus-scope/dist/index.mjs.map +7 -0
  244. package/node_modules/@radix-ui/react-focus-scope/package.json +70 -0
  245. package/node_modules/@radix-ui/react-id/LICENSE +21 -0
  246. package/node_modules/@radix-ui/react-id/README.md +3 -0
  247. package/node_modules/@radix-ui/react-id/dist/index.d.mts +3 -0
  248. package/node_modules/@radix-ui/react-id/dist/index.d.ts +3 -0
  249. package/node_modules/@radix-ui/react-id/dist/index.js +49 -0
  250. package/node_modules/@radix-ui/react-id/dist/index.js.map +7 -0
  251. package/node_modules/@radix-ui/react-id/dist/index.mjs +16 -0
  252. package/node_modules/@radix-ui/react-id/dist/index.mjs.map +7 -0
  253. package/node_modules/@radix-ui/react-id/package.json +63 -0
  254. package/node_modules/@radix-ui/react-menu/LICENSE +21 -0
  255. package/node_modules/@radix-ui/react-menu/README.md +3 -0
  256. package/node_modules/@radix-ui/react-menu/dist/index.d.mts +175 -0
  257. package/node_modules/@radix-ui/react-menu/dist/index.d.ts +175 -0
  258. package/node_modules/@radix-ui/react-menu/dist/index.js +913 -0
  259. package/node_modules/@radix-ui/react-menu/dist/index.js.map +7 -0
  260. package/node_modules/@radix-ui/react-menu/dist/index.mjs +881 -0
  261. package/node_modules/@radix-ui/react-menu/dist/index.mjs.map +7 -0
  262. package/node_modules/@radix-ui/react-menu/package.json +86 -0
  263. package/node_modules/@radix-ui/react-popover/LICENSE +21 -0
  264. package/node_modules/@radix-ui/react-popover/README.md +3 -0
  265. package/node_modules/@radix-ui/react-popover/dist/index.d.mts +85 -0
  266. package/node_modules/@radix-ui/react-popover/dist/index.d.ts +85 -0
  267. package/node_modules/@radix-ui/react-popover/dist/index.js +353 -0
  268. package/node_modules/@radix-ui/react-popover/dist/index.js.map +7 -0
  269. package/node_modules/@radix-ui/react-popover/dist/index.mjs +321 -0
  270. package/node_modules/@radix-ui/react-popover/dist/index.mjs.map +7 -0
  271. package/node_modules/@radix-ui/react-popover/package.json +82 -0
  272. package/node_modules/@radix-ui/react-popper/LICENSE +21 -0
  273. package/node_modules/@radix-ui/react-popper/README.md +3 -0
  274. package/node_modules/@radix-ui/react-popper/dist/index.d.mts +46 -0
  275. package/node_modules/@radix-ui/react-popper/dist/index.d.ts +46 -0
  276. package/node_modules/@radix-ui/react-popper/dist/index.js +384 -0
  277. package/node_modules/@radix-ui/react-popper/dist/index.js.map +7 -0
  278. package/node_modules/@radix-ui/react-popper/dist/index.mjs +362 -0
  279. package/node_modules/@radix-ui/react-popper/dist/index.mjs.map +7 -0
  280. package/node_modules/@radix-ui/react-popper/package.json +78 -0
  281. package/node_modules/@radix-ui/react-portal/LICENSE +21 -0
  282. package/node_modules/@radix-ui/react-portal/README.md +3 -0
  283. package/node_modules/@radix-ui/react-portal/dist/index.d.mts +14 -0
  284. package/node_modules/@radix-ui/react-portal/dist/index.d.ts +14 -0
  285. package/node_modules/@radix-ui/react-portal/dist/index.js +55 -0
  286. package/node_modules/@radix-ui/react-portal/dist/index.js.map +7 -0
  287. package/node_modules/@radix-ui/react-portal/dist/index.mjs +23 -0
  288. package/node_modules/@radix-ui/react-portal/dist/index.mjs.map +7 -0
  289. package/node_modules/@radix-ui/react-portal/package.json +69 -0
  290. package/node_modules/@radix-ui/react-presence/LICENSE +21 -0
  291. package/node_modules/@radix-ui/react-presence/README.md +3 -0
  292. package/node_modules/@radix-ui/react-presence/dist/index.d.mts +12 -0
  293. package/node_modules/@radix-ui/react-presence/dist/index.d.ts +12 -0
  294. package/node_modules/@radix-ui/react-presence/dist/index.js +204 -0
  295. package/node_modules/@radix-ui/react-presence/dist/index.js.map +7 -0
  296. package/node_modules/@radix-ui/react-presence/dist/index.mjs +172 -0
  297. package/node_modules/@radix-ui/react-presence/dist/index.mjs.map +7 -0
  298. package/node_modules/@radix-ui/react-presence/package.json +68 -0
  299. package/node_modules/@radix-ui/react-primitive/LICENSE +21 -0
  300. package/node_modules/@radix-ui/react-primitive/README.md +3 -0
  301. package/node_modules/@radix-ui/react-primitive/dist/index.d.mts +57 -0
  302. package/node_modules/@radix-ui/react-primitive/dist/index.d.ts +57 -0
  303. package/node_modules/@radix-ui/react-primitive/dist/index.js +80 -0
  304. package/node_modules/@radix-ui/react-primitive/dist/index.js.map +7 -0
  305. package/node_modules/@radix-ui/react-primitive/dist/index.mjs +47 -0
  306. package/node_modules/@radix-ui/react-primitive/dist/index.mjs.map +7 -0
  307. package/node_modules/@radix-ui/react-primitive/package.json +68 -0
  308. package/node_modules/@radix-ui/react-roving-focus/LICENSE +21 -0
  309. package/node_modules/@radix-ui/react-roving-focus/README.md +3 -0
  310. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.mts +49 -0
  311. package/node_modules/@radix-ui/react-roving-focus/dist/index.d.ts +49 -0
  312. package/node_modules/@radix-ui/react-roving-focus/dist/index.js +263 -0
  313. package/node_modules/@radix-ui/react-roving-focus/dist/index.js.map +7 -0
  314. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs +231 -0
  315. package/node_modules/@radix-ui/react-roving-focus/dist/index.mjs.map +7 -0
  316. package/node_modules/@radix-ui/react-roving-focus/package.json +76 -0
  317. package/node_modules/@radix-ui/react-slot/LICENSE +21 -0
  318. package/node_modules/@radix-ui/react-slot/README.md +3 -0
  319. package/node_modules/@radix-ui/react-slot/dist/index.d.mts +29 -0
  320. package/node_modules/@radix-ui/react-slot/dist/index.d.ts +29 -0
  321. package/node_modules/@radix-ui/react-slot/dist/index.js +170 -0
  322. package/node_modules/@radix-ui/react-slot/dist/index.js.map +7 -0
  323. package/node_modules/@radix-ui/react-slot/dist/index.mjs +137 -0
  324. package/node_modules/@radix-ui/react-slot/dist/index.mjs.map +7 -0
  325. package/node_modules/@radix-ui/react-slot/package.json +63 -0
  326. package/node_modules/@radix-ui/react-tooltip/LICENSE +21 -0
  327. package/node_modules/@radix-ui/react-tooltip/README.md +3 -0
  328. package/node_modules/@radix-ui/react-tooltip/dist/index.d.mts +101 -0
  329. package/node_modules/@radix-ui/react-tooltip/dist/index.d.ts +101 -0
  330. package/node_modules/@radix-ui/react-tooltip/dist/index.js +543 -0
  331. package/node_modules/@radix-ui/react-tooltip/dist/index.js.map +7 -0
  332. package/node_modules/@radix-ui/react-tooltip/dist/index.mjs +511 -0
  333. package/node_modules/@radix-ui/react-tooltip/dist/index.mjs.map +7 -0
  334. package/node_modules/@radix-ui/react-tooltip/package.json +79 -0
  335. package/node_modules/@radix-ui/react-use-callback-ref/LICENSE +21 -0
  336. package/node_modules/@radix-ui/react-use-callback-ref/README.md +3 -0
  337. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.mts +7 -0
  338. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.d.ts +7 -0
  339. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +46 -0
  340. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.js.map +7 -0
  341. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs +13 -0
  342. package/node_modules/@radix-ui/react-use-callback-ref/dist/index.mjs.map +7 -0
  343. package/node_modules/@radix-ui/react-use-callback-ref/package.json +60 -0
  344. package/node_modules/@radix-ui/react-use-controllable-state/LICENSE +21 -0
  345. package/node_modules/@radix-ui/react-use-controllable-state/README.md +3 -0
  346. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.mts +40 -0
  347. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.d.ts +40 -0
  348. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js +169 -0
  349. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.js.map +7 -0
  350. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs +136 -0
  351. package/node_modules/@radix-ui/react-use-controllable-state/dist/index.mjs.map +7 -0
  352. package/node_modules/@radix-ui/react-use-controllable-state/package.json +64 -0
  353. package/node_modules/@radix-ui/react-use-effect-event/LICENSE +21 -0
  354. package/node_modules/@radix-ui/react-use-effect-event/README.md +5 -0
  355. package/node_modules/@radix-ui/react-use-effect-event/dist/index.d.mts +8 -0
  356. package/node_modules/@radix-ui/react-use-effect-event/dist/index.d.ts +8 -0
  357. package/node_modules/@radix-ui/react-use-effect-event/dist/index.js +60 -0
  358. package/node_modules/@radix-ui/react-use-effect-event/dist/index.js.map +7 -0
  359. package/node_modules/@radix-ui/react-use-effect-event/dist/index.mjs +27 -0
  360. package/node_modules/@radix-ui/react-use-effect-event/dist/index.mjs.map +7 -0
  361. package/node_modules/@radix-ui/react-use-effect-event/package.json +65 -0
  362. package/node_modules/@radix-ui/react-use-effect-event/src/index.ts +1 -0
  363. package/node_modules/@radix-ui/react-use-effect-event/src/use-effect-event.tsx +36 -0
  364. package/node_modules/@radix-ui/react-use-escape-keydown/LICENSE +21 -0
  365. package/node_modules/@radix-ui/react-use-escape-keydown/README.md +3 -0
  366. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.mts +6 -0
  367. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.d.ts +6 -0
  368. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +52 -0
  369. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js.map +7 -0
  370. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs +19 -0
  371. package/node_modules/@radix-ui/react-use-escape-keydown/dist/index.mjs.map +7 -0
  372. package/node_modules/@radix-ui/react-use-escape-keydown/package.json +63 -0
  373. package/node_modules/@radix-ui/react-use-layout-effect/LICENSE +21 -0
  374. package/node_modules/@radix-ui/react-use-layout-effect/README.md +3 -0
  375. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.mts +12 -0
  376. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.d.ts +12 -0
  377. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +41 -0
  378. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.js.map +7 -0
  379. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs +8 -0
  380. package/node_modules/@radix-ui/react-use-layout-effect/dist/index.mjs.map +7 -0
  381. package/node_modules/@radix-ui/react-use-layout-effect/package.json +60 -0
  382. package/node_modules/@radix-ui/react-use-rect/LICENSE +21 -0
  383. package/node_modules/@radix-ui/react-use-rect/README.md +3 -0
  384. package/node_modules/@radix-ui/react-use-rect/dist/index.d.mts +9 -0
  385. package/node_modules/@radix-ui/react-use-rect/dist/index.d.ts +9 -0
  386. package/node_modules/@radix-ui/react-use-rect/dist/index.js +54 -0
  387. package/node_modules/@radix-ui/react-use-rect/dist/index.js.map +7 -0
  388. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs +21 -0
  389. package/node_modules/@radix-ui/react-use-rect/dist/index.mjs.map +7 -0
  390. package/node_modules/@radix-ui/react-use-rect/package.json +63 -0
  391. package/node_modules/@radix-ui/react-use-size/LICENSE +21 -0
  392. package/node_modules/@radix-ui/react-use-size/README.md +3 -0
  393. package/node_modules/@radix-ui/react-use-size/dist/index.d.mts +6 -0
  394. package/node_modules/@radix-ui/react-use-size/dist/index.d.ts +6 -0
  395. package/node_modules/@radix-ui/react-use-size/dist/index.js +74 -0
  396. package/node_modules/@radix-ui/react-use-size/dist/index.js.map +7 -0
  397. package/node_modules/@radix-ui/react-use-size/dist/index.mjs +41 -0
  398. package/node_modules/@radix-ui/react-use-size/dist/index.mjs.map +7 -0
  399. package/node_modules/@radix-ui/react-use-size/package.json +63 -0
  400. package/node_modules/@radix-ui/react-visually-hidden/LICENSE +21 -0
  401. package/node_modules/@radix-ui/react-visually-hidden/README.md +3 -0
  402. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.mts +22 -0
  403. package/node_modules/@radix-ui/react-visually-hidden/dist/index.d.ts +22 -0
  404. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js +71 -0
  405. package/node_modules/@radix-ui/react-visually-hidden/dist/index.js.map +7 -0
  406. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs +38 -0
  407. package/node_modules/@radix-ui/react-visually-hidden/dist/index.mjs.map +7 -0
  408. package/node_modules/@radix-ui/react-visually-hidden/package.json +68 -0
  409. package/node_modules/@radix-ui/rect/LICENSE +21 -0
  410. package/node_modules/@radix-ui/rect/README.md +3 -0
  411. package/node_modules/@radix-ui/rect/dist/index.d.mts +16 -0
  412. package/node_modules/@radix-ui/rect/dist/index.d.ts +16 -0
  413. package/node_modules/@radix-ui/rect/dist/index.js +73 -0
  414. package/node_modules/@radix-ui/rect/dist/index.js.map +7 -0
  415. package/node_modules/@radix-ui/rect/dist/index.mjs +50 -0
  416. package/node_modules/@radix-ui/rect/dist/index.mjs.map +7 -0
  417. package/node_modules/@radix-ui/rect/package.json +47 -0
  418. package/node_modules/aria-hidden/LICENSE +21 -0
  419. package/node_modules/aria-hidden/README.md +99 -0
  420. package/node_modules/aria-hidden/dist/es2015/index.d.ts +29 -0
  421. package/node_modules/aria-hidden/dist/es2015/index.js +167 -0
  422. package/node_modules/aria-hidden/dist/es2019/index.d.ts +29 -0
  423. package/node_modules/aria-hidden/dist/es2019/index.js +156 -0
  424. package/node_modules/aria-hidden/dist/es5/index.d.ts +29 -0
  425. package/node_modules/aria-hidden/dist/es5/index.js +174 -0
  426. package/node_modules/aria-hidden/package.json +71 -0
  427. package/node_modules/detect-node-es/LICENSE +21 -0
  428. package/node_modules/detect-node-es/Readme.md +39 -0
  429. package/node_modules/detect-node-es/es5/browser.js +2 -0
  430. package/node_modules/detect-node-es/es5/node.d.ts +4 -0
  431. package/node_modules/detect-node-es/es5/node.js +2 -0
  432. package/node_modules/detect-node-es/esm/browser.js +2 -0
  433. package/node_modules/detect-node-es/esm/node.js +2 -0
  434. package/node_modules/detect-node-es/package.json +29 -0
  435. package/node_modules/get-nonce/LICENSE +21 -0
  436. package/node_modules/get-nonce/README.md +54 -0
  437. package/node_modules/get-nonce/dist/es2015/index.d.ts +2 -0
  438. package/node_modules/get-nonce/dist/es2015/index.js +13 -0
  439. package/node_modules/get-nonce/dist/es5/index.d.ts +2 -0
  440. package/node_modules/get-nonce/dist/es5/index.js +15 -0
  441. package/node_modules/get-nonce/package.json +68 -0
  442. package/node_modules/react-remove-scroll/LICENSE +21 -0
  443. package/node_modules/react-remove-scroll/README.md +153 -0
  444. package/node_modules/react-remove-scroll/UI/UI.d.ts +1 -0
  445. package/node_modules/react-remove-scroll/UI/package.json +8 -0
  446. package/node_modules/react-remove-scroll/dist/es2015/Combination.d.ts +3 -0
  447. package/node_modules/react-remove-scroll/dist/es2015/Combination.js +7 -0
  448. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.d.ts +5 -0
  449. package/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +164 -0
  450. package/node_modules/react-remove-scroll/dist/es2015/UI.d.ts +7 -0
  451. package/node_modules/react-remove-scroll/dist/es2015/UI.js +36 -0
  452. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.d.ts +3 -0
  453. package/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +19 -0
  454. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.d.ts +3 -0
  455. package/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +108 -0
  456. package/node_modules/react-remove-scroll/dist/es2015/index.d.ts +2 -0
  457. package/node_modules/react-remove-scroll/dist/es2015/index.js +2 -0
  458. package/node_modules/react-remove-scroll/dist/es2015/medium.d.ts +2 -0
  459. package/node_modules/react-remove-scroll/dist/es2015/medium.js +2 -0
  460. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.d.ts +8 -0
  461. package/node_modules/react-remove-scroll/dist/es2015/pinchAndZoom.js +33 -0
  462. package/node_modules/react-remove-scroll/dist/es2015/sidecar.d.ts +2 -0
  463. package/node_modules/react-remove-scroll/dist/es2015/sidecar.js +4 -0
  464. package/node_modules/react-remove-scroll/dist/es2015/types.d.ts +104 -0
  465. package/node_modules/react-remove-scroll/dist/es2015/types.js +1 -0
  466. package/node_modules/react-remove-scroll/dist/es2019/Combination.d.ts +3 -0
  467. package/node_modules/react-remove-scroll/dist/es2019/Combination.js +6 -0
  468. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.d.ts +5 -0
  469. package/node_modules/react-remove-scroll/dist/es2019/SideEffect.js +162 -0
  470. package/node_modules/react-remove-scroll/dist/es2019/UI.d.ts +7 -0
  471. package/node_modules/react-remove-scroll/dist/es2019/UI.js +41 -0
  472. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.d.ts +3 -0
  473. package/node_modules/react-remove-scroll/dist/es2019/aggresiveCapture.js +19 -0
  474. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.d.ts +3 -0
  475. package/node_modules/react-remove-scroll/dist/es2019/handleScroll.js +96 -0
  476. package/node_modules/react-remove-scroll/dist/es2019/index.d.ts +2 -0
  477. package/node_modules/react-remove-scroll/dist/es2019/index.js +2 -0
  478. package/node_modules/react-remove-scroll/dist/es2019/medium.d.ts +2 -0
  479. package/node_modules/react-remove-scroll/dist/es2019/medium.js +2 -0
  480. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.d.ts +8 -0
  481. package/node_modules/react-remove-scroll/dist/es2019/pinchAndZoom.js +33 -0
  482. package/node_modules/react-remove-scroll/dist/es2019/sidecar.d.ts +2 -0
  483. package/node_modules/react-remove-scroll/dist/es2019/sidecar.js +4 -0
  484. package/node_modules/react-remove-scroll/dist/es2019/types.d.ts +104 -0
  485. package/node_modules/react-remove-scroll/dist/es2019/types.js +1 -0
  486. package/node_modules/react-remove-scroll/dist/es5/Combination.d.ts +3 -0
  487. package/node_modules/react-remove-scroll/dist/es5/Combination.js +9 -0
  488. package/node_modules/react-remove-scroll/dist/es5/SideEffect.d.ts +5 -0
  489. package/node_modules/react-remove-scroll/dist/es5/SideEffect.js +170 -0
  490. package/node_modules/react-remove-scroll/dist/es5/UI.d.ts +7 -0
  491. package/node_modules/react-remove-scroll/dist/es5/UI.js +39 -0
  492. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.d.ts +3 -0
  493. package/node_modules/react-remove-scroll/dist/es5/aggresiveCapture.js +22 -0
  494. package/node_modules/react-remove-scroll/dist/es5/handleScroll.d.ts +3 -0
  495. package/node_modules/react-remove-scroll/dist/es5/handleScroll.js +113 -0
  496. package/node_modules/react-remove-scroll/dist/es5/index.d.ts +2 -0
  497. package/node_modules/react-remove-scroll/dist/es5/index.js +6 -0
  498. package/node_modules/react-remove-scroll/dist/es5/medium.d.ts +2 -0
  499. package/node_modules/react-remove-scroll/dist/es5/medium.js +5 -0
  500. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.d.ts +8 -0
  501. package/node_modules/react-remove-scroll/dist/es5/pinchAndZoom.js +37 -0
  502. package/node_modules/react-remove-scroll/dist/es5/sidecar.d.ts +2 -0
  503. package/node_modules/react-remove-scroll/dist/es5/sidecar.js +6 -0
  504. package/node_modules/react-remove-scroll/dist/es5/types.d.ts +104 -0
  505. package/node_modules/react-remove-scroll/dist/es5/types.js +2 -0
  506. package/node_modules/react-remove-scroll/package.json +98 -0
  507. package/node_modules/react-remove-scroll/sidecar/package.json +7 -0
  508. package/node_modules/react-remove-scroll/sidecar/sidecar.d.ts +5 -0
  509. package/node_modules/react-remove-scroll-bar/README.md +52 -0
  510. package/node_modules/react-remove-scroll-bar/constants/package.json +8 -0
  511. package/node_modules/react-remove-scroll-bar/dist/es2015/component.d.ts +13 -0
  512. package/node_modules/react-remove-scroll-bar/dist/es2015/component.js +53 -0
  513. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.d.ts +8 -0
  514. package/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +8 -0
  515. package/node_modules/react-remove-scroll-bar/dist/es2015/index.d.ts +4 -0
  516. package/node_modules/react-remove-scroll-bar/dist/es2015/index.js +4 -0
  517. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.d.ts +14 -0
  518. package/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +29 -0
  519. package/node_modules/react-remove-scroll-bar/dist/es2019/component.d.ts +13 -0
  520. package/node_modules/react-remove-scroll-bar/dist/es2019/component.js +85 -0
  521. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.d.ts +8 -0
  522. package/node_modules/react-remove-scroll-bar/dist/es2019/constants.js +8 -0
  523. package/node_modules/react-remove-scroll-bar/dist/es2019/index.d.ts +4 -0
  524. package/node_modules/react-remove-scroll-bar/dist/es2019/index.js +4 -0
  525. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.d.ts +14 -0
  526. package/node_modules/react-remove-scroll-bar/dist/es2019/utils.js +28 -0
  527. package/node_modules/react-remove-scroll-bar/dist/es5/component.d.ts +13 -0
  528. package/node_modules/react-remove-scroll-bar/dist/es5/component.js +59 -0
  529. package/node_modules/react-remove-scroll-bar/dist/es5/constants.d.ts +8 -0
  530. package/node_modules/react-remove-scroll-bar/dist/es5/constants.js +11 -0
  531. package/node_modules/react-remove-scroll-bar/dist/es5/index.d.ts +4 -0
  532. package/node_modules/react-remove-scroll-bar/dist/es5/index.js +12 -0
  533. package/node_modules/react-remove-scroll-bar/dist/es5/utils.d.ts +14 -0
  534. package/node_modules/react-remove-scroll-bar/dist/es5/utils.js +33 -0
  535. package/node_modules/react-remove-scroll-bar/package.json +85 -0
  536. package/node_modules/react-style-singleton/LICENSE +21 -0
  537. package/node_modules/react-style-singleton/README.md +45 -0
  538. package/node_modules/react-style-singleton/dist/es2015/component.d.ts +21 -0
  539. package/node_modules/react-style-singleton/dist/es2015/component.js +16 -0
  540. package/node_modules/react-style-singleton/dist/es2015/hook.d.ts +23 -0
  541. package/node_modules/react-style-singleton/dist/es2015/hook.js +22 -0
  542. package/node_modules/react-style-singleton/dist/es2015/index.d.ts +3 -0
  543. package/node_modules/react-style-singleton/dist/es2015/index.js +3 -0
  544. package/node_modules/react-style-singleton/dist/es2015/singleton.d.ts +4 -0
  545. package/node_modules/react-style-singleton/dist/es2015/singleton.js +48 -0
  546. package/node_modules/react-style-singleton/dist/es2019/component.d.ts +21 -0
  547. package/node_modules/react-style-singleton/dist/es2019/component.js +15 -0
  548. package/node_modules/react-style-singleton/dist/es2019/hook.d.ts +23 -0
  549. package/node_modules/react-style-singleton/dist/es2019/hook.js +22 -0
  550. package/node_modules/react-style-singleton/dist/es2019/index.d.ts +3 -0
  551. package/node_modules/react-style-singleton/dist/es2019/index.js +3 -0
  552. package/node_modules/react-style-singleton/dist/es2019/singleton.d.ts +4 -0
  553. package/node_modules/react-style-singleton/dist/es2019/singleton.js +48 -0
  554. package/node_modules/react-style-singleton/dist/es5/component.d.ts +21 -0
  555. package/node_modules/react-style-singleton/dist/es5/component.js +20 -0
  556. package/node_modules/react-style-singleton/dist/es5/hook.d.ts +23 -0
  557. package/node_modules/react-style-singleton/dist/es5/hook.js +27 -0
  558. package/node_modules/react-style-singleton/dist/es5/index.d.ts +3 -0
  559. package/node_modules/react-style-singleton/dist/es5/index.js +9 -0
  560. package/node_modules/react-style-singleton/dist/es5/singleton.d.ts +4 -0
  561. package/node_modules/react-style-singleton/dist/es5/singleton.js +52 -0
  562. package/node_modules/react-style-singleton/dist/index.js +1 -0
  563. package/node_modules/react-style-singleton/package.json +90 -0
  564. package/node_modules/tslib/CopyrightNotice.txt +15 -0
  565. package/node_modules/tslib/LICENSE.txt +12 -0
  566. package/node_modules/tslib/README.md +164 -0
  567. package/node_modules/tslib/SECURITY.md +41 -0
  568. package/node_modules/tslib/modules/index.d.ts +38 -0
  569. package/node_modules/tslib/modules/index.js +70 -0
  570. package/node_modules/tslib/modules/package.json +3 -0
  571. package/node_modules/tslib/package.json +47 -0
  572. package/node_modules/tslib/tslib.d.ts +460 -0
  573. package/node_modules/tslib/tslib.es6.html +1 -0
  574. package/node_modules/tslib/tslib.es6.js +402 -0
  575. package/node_modules/tslib/tslib.es6.mjs +401 -0
  576. package/node_modules/tslib/tslib.html +1 -0
  577. package/node_modules/tslib/tslib.js +484 -0
  578. package/node_modules/use-callback-ref/LICENSE +21 -0
  579. package/node_modules/use-callback-ref/README.md +170 -0
  580. package/node_modules/use-callback-ref/dist/es2015/assignRef.d.ts +15 -0
  581. package/node_modules/use-callback-ref/dist/es2015/assignRef.js +22 -0
  582. package/node_modules/use-callback-ref/dist/es2015/createRef.d.ts +10 -0
  583. package/node_modules/use-callback-ref/dist/es2015/createRef.js +23 -0
  584. package/node_modules/use-callback-ref/dist/es2015/index.d.ts +8 -0
  585. package/node_modules/use-callback-ref/dist/es2015/index.js +12 -0
  586. package/node_modules/use-callback-ref/dist/es2015/mergeRef.d.ts +16 -0
  587. package/node_modules/use-callback-ref/dist/es2015/mergeRef.js +18 -0
  588. package/node_modules/use-callback-ref/dist/es2015/refToCallback.d.ts +24 -0
  589. package/node_modules/use-callback-ref/dist/es2015/refToCallback.js +48 -0
  590. package/node_modules/use-callback-ref/dist/es2015/transformRef.d.ts +11 -0
  591. package/node_modules/use-callback-ref/dist/es2015/transformRef.js +14 -0
  592. package/node_modules/use-callback-ref/dist/es2015/types.d.ts +5 -0
  593. package/node_modules/use-callback-ref/dist/es2015/types.js +1 -0
  594. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.d.ts +17 -0
  595. package/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +45 -0
  596. package/node_modules/use-callback-ref/dist/es2015/useRef.d.ts +16 -0
  597. package/node_modules/use-callback-ref/dist/es2015/useRef.js +39 -0
  598. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.d.ts +15 -0
  599. package/node_modules/use-callback-ref/dist/es2015/useTransformRef.js +18 -0
  600. package/node_modules/use-callback-ref/dist/es2019/assignRef.d.ts +15 -0
  601. package/node_modules/use-callback-ref/dist/es2019/assignRef.js +22 -0
  602. package/node_modules/use-callback-ref/dist/es2019/createRef.d.ts +10 -0
  603. package/node_modules/use-callback-ref/dist/es2019/createRef.js +23 -0
  604. package/node_modules/use-callback-ref/dist/es2019/index.d.ts +8 -0
  605. package/node_modules/use-callback-ref/dist/es2019/index.js +12 -0
  606. package/node_modules/use-callback-ref/dist/es2019/mergeRef.d.ts +16 -0
  607. package/node_modules/use-callback-ref/dist/es2019/mergeRef.js +18 -0
  608. package/node_modules/use-callback-ref/dist/es2019/refToCallback.d.ts +24 -0
  609. package/node_modules/use-callback-ref/dist/es2019/refToCallback.js +48 -0
  610. package/node_modules/use-callback-ref/dist/es2019/transformRef.d.ts +11 -0
  611. package/node_modules/use-callback-ref/dist/es2019/transformRef.js +14 -0
  612. package/node_modules/use-callback-ref/dist/es2019/types.d.ts +5 -0
  613. package/node_modules/use-callback-ref/dist/es2019/types.js +1 -0
  614. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.d.ts +17 -0
  615. package/node_modules/use-callback-ref/dist/es2019/useMergeRef.js +43 -0
  616. package/node_modules/use-callback-ref/dist/es2019/useRef.d.ts +16 -0
  617. package/node_modules/use-callback-ref/dist/es2019/useRef.js +39 -0
  618. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.d.ts +15 -0
  619. package/node_modules/use-callback-ref/dist/es2019/useTransformRef.js +18 -0
  620. package/node_modules/use-callback-ref/dist/es5/assignRef.d.ts +15 -0
  621. package/node_modules/use-callback-ref/dist/es5/assignRef.js +26 -0
  622. package/node_modules/use-callback-ref/dist/es5/createRef.d.ts +10 -0
  623. package/node_modules/use-callback-ref/dist/es5/createRef.js +27 -0
  624. package/node_modules/use-callback-ref/dist/es5/index.d.ts +8 -0
  625. package/node_modules/use-callback-ref/dist/es5/index.js +24 -0
  626. package/node_modules/use-callback-ref/dist/es5/mergeRef.d.ts +16 -0
  627. package/node_modules/use-callback-ref/dist/es5/mergeRef.js +22 -0
  628. package/node_modules/use-callback-ref/dist/es5/refToCallback.d.ts +24 -0
  629. package/node_modules/use-callback-ref/dist/es5/refToCallback.js +53 -0
  630. package/node_modules/use-callback-ref/dist/es5/transformRef.d.ts +11 -0
  631. package/node_modules/use-callback-ref/dist/es5/transformRef.js +18 -0
  632. package/node_modules/use-callback-ref/dist/es5/types.d.ts +5 -0
  633. package/node_modules/use-callback-ref/dist/es5/types.js +2 -0
  634. package/node_modules/use-callback-ref/dist/es5/useMergeRef.d.ts +17 -0
  635. package/node_modules/use-callback-ref/dist/es5/useMergeRef.js +50 -0
  636. package/node_modules/use-callback-ref/dist/es5/useRef.d.ts +16 -0
  637. package/node_modules/use-callback-ref/dist/es5/useRef.js +43 -0
  638. package/node_modules/use-callback-ref/dist/es5/useTransformRef.d.ts +15 -0
  639. package/node_modules/use-callback-ref/dist/es5/useTransformRef.js +22 -0
  640. package/node_modules/use-callback-ref/package.json +85 -0
  641. package/node_modules/use-sidecar/LICENSE +21 -0
  642. package/node_modules/use-sidecar/README.md +349 -0
  643. package/node_modules/use-sidecar/dist/es2015/config.d.ts +5 -0
  644. package/node_modules/use-sidecar/dist/es2015/config.js +6 -0
  645. package/node_modules/use-sidecar/dist/es2015/env.d.ts +4 -0
  646. package/node_modules/use-sidecar/dist/es2015/env.js +5 -0
  647. package/node_modules/use-sidecar/dist/es2015/exports.d.ts +3 -0
  648. package/node_modules/use-sidecar/dist/es2015/exports.js +18 -0
  649. package/node_modules/use-sidecar/dist/es2015/hoc.d.ts +3 -0
  650. package/node_modules/use-sidecar/dist/es2015/hoc.js +15 -0
  651. package/node_modules/use-sidecar/dist/es2015/hook.d.ts +2 -0
  652. package/node_modules/use-sidecar/dist/es2015/hook.js +41 -0
  653. package/node_modules/use-sidecar/dist/es2015/index.d.ts +7 -0
  654. package/node_modules/use-sidecar/dist/es2015/index.js +6 -0
  655. package/node_modules/use-sidecar/dist/es2015/medium.d.ts +3 -0
  656. package/node_modules/use-sidecar/dist/es2015/medium.js +78 -0
  657. package/node_modules/use-sidecar/dist/es2015/renderProp.d.ts +9 -0
  658. package/node_modules/use-sidecar/dist/es2015/renderProp.js +35 -0
  659. package/node_modules/use-sidecar/dist/es2015/types.d.ts +47 -0
  660. package/node_modules/use-sidecar/dist/es2015/types.js +1 -0
  661. package/node_modules/use-sidecar/dist/es2019/config.d.ts +5 -0
  662. package/node_modules/use-sidecar/dist/es2019/config.js +6 -0
  663. package/node_modules/use-sidecar/dist/es2019/env.d.ts +4 -0
  664. package/node_modules/use-sidecar/dist/es2019/env.js +5 -0
  665. package/node_modules/use-sidecar/dist/es2019/exports.d.ts +3 -0
  666. package/node_modules/use-sidecar/dist/es2019/exports.js +16 -0
  667. package/node_modules/use-sidecar/dist/es2019/hoc.d.ts +3 -0
  668. package/node_modules/use-sidecar/dist/es2019/hoc.js +14 -0
  669. package/node_modules/use-sidecar/dist/es2019/hook.d.ts +2 -0
  670. package/node_modules/use-sidecar/dist/es2019/hook.js +41 -0
  671. package/node_modules/use-sidecar/dist/es2019/index.d.ts +7 -0
  672. package/node_modules/use-sidecar/dist/es2019/index.js +6 -0
  673. package/node_modules/use-sidecar/dist/es2019/medium.d.ts +3 -0
  674. package/node_modules/use-sidecar/dist/es2019/medium.js +78 -0
  675. package/node_modules/use-sidecar/dist/es2019/renderProp.d.ts +9 -0
  676. package/node_modules/use-sidecar/dist/es2019/renderProp.js +28 -0
  677. package/node_modules/use-sidecar/dist/es2019/types.d.ts +47 -0
  678. package/node_modules/use-sidecar/dist/es2019/types.js +1 -0
  679. package/node_modules/use-sidecar/dist/es5/config.d.ts +5 -0
  680. package/node_modules/use-sidecar/dist/es5/config.js +10 -0
  681. package/node_modules/use-sidecar/dist/es5/env.d.ts +4 -0
  682. package/node_modules/use-sidecar/dist/es5/env.js +8 -0
  683. package/node_modules/use-sidecar/dist/es5/exports.d.ts +3 -0
  684. package/node_modules/use-sidecar/dist/es5/exports.js +22 -0
  685. package/node_modules/use-sidecar/dist/es5/hoc.d.ts +3 -0
  686. package/node_modules/use-sidecar/dist/es5/hoc.js +19 -0
  687. package/node_modules/use-sidecar/dist/es5/hook.d.ts +2 -0
  688. package/node_modules/use-sidecar/dist/es5/hook.js +45 -0
  689. package/node_modules/use-sidecar/dist/es5/index.d.ts +7 -0
  690. package/node_modules/use-sidecar/dist/es5/index.js +16 -0
  691. package/node_modules/use-sidecar/dist/es5/medium.d.ts +3 -0
  692. package/node_modules/use-sidecar/dist/es5/medium.js +83 -0
  693. package/node_modules/use-sidecar/dist/es5/renderProp.d.ts +9 -0
  694. package/node_modules/use-sidecar/dist/es5/renderProp.js +39 -0
  695. package/node_modules/use-sidecar/dist/es5/types.d.ts +47 -0
  696. package/node_modules/use-sidecar/dist/es5/types.js +2 -0
  697. package/node_modules/use-sidecar/package.json +93 -0
  698. package/package.json +45 -2
  699. package/react/styles.css +568 -18
  700. package/react/styles.source.css +568 -18
@@ -0,0 +1,881 @@
1
+ "use client";
2
+
3
+ // src/menu.tsx
4
+ import * as React from "react";
5
+ import { composeEventHandlers } from "@radix-ui/primitive";
6
+ import { createCollection } from "@radix-ui/react-collection";
7
+ import { useComposedRefs } from "@radix-ui/react-compose-refs";
8
+ import { createContextScope } from "@radix-ui/react-context";
9
+ import { useDirection } from "@radix-ui/react-direction";
10
+ import { DismissableLayer } from "@radix-ui/react-dismissable-layer";
11
+ import { useFocusGuards } from "@radix-ui/react-focus-guards";
12
+ import { FocusScope } from "@radix-ui/react-focus-scope";
13
+ import { useId } from "@radix-ui/react-id";
14
+ import * as PopperPrimitive from "@radix-ui/react-popper";
15
+ import { createPopperScope } from "@radix-ui/react-popper";
16
+ import { Portal as PortalPrimitive } from "@radix-ui/react-portal";
17
+ import { Presence } from "@radix-ui/react-presence";
18
+ import { Primitive, dispatchDiscreteCustomEvent } from "@radix-ui/react-primitive";
19
+ import * as RovingFocusGroup from "@radix-ui/react-roving-focus";
20
+ import { createRovingFocusGroupScope } from "@radix-ui/react-roving-focus";
21
+ import { createSlot } from "@radix-ui/react-slot";
22
+ import { useCallbackRef } from "@radix-ui/react-use-callback-ref";
23
+ import { hideOthers } from "aria-hidden";
24
+ import { RemoveScroll } from "react-remove-scroll";
25
+ import { jsx } from "react/jsx-runtime";
26
+ var SELECTION_KEYS = ["Enter", " "];
27
+ var FIRST_KEYS = ["ArrowDown", "PageUp", "Home"];
28
+ var LAST_KEYS = ["ArrowUp", "PageDown", "End"];
29
+ var FIRST_LAST_KEYS = [...FIRST_KEYS, ...LAST_KEYS];
30
+ var SUB_OPEN_KEYS = {
31
+ ltr: [...SELECTION_KEYS, "ArrowRight"],
32
+ rtl: [...SELECTION_KEYS, "ArrowLeft"]
33
+ };
34
+ var SUB_CLOSE_KEYS = {
35
+ ltr: ["ArrowLeft"],
36
+ rtl: ["ArrowRight"]
37
+ };
38
+ var MENU_NAME = "Menu";
39
+ var [Collection, useCollection, createCollectionScope] = createCollection(MENU_NAME);
40
+ var [createMenuContext, createMenuScope] = createContextScope(MENU_NAME, [
41
+ createCollectionScope,
42
+ createPopperScope,
43
+ createRovingFocusGroupScope
44
+ ]);
45
+ var usePopperScope = createPopperScope();
46
+ var useRovingFocusGroupScope = createRovingFocusGroupScope();
47
+ var [MenuProvider, useMenuContext] = createMenuContext(MENU_NAME);
48
+ var [MenuRootProvider, useMenuRootContext] = createMenuContext(MENU_NAME);
49
+ var Menu = (props) => {
50
+ const { __scopeMenu, open = false, children, dir, onOpenChange, modal = true } = props;
51
+ const popperScope = usePopperScope(__scopeMenu);
52
+ const [content, setContent] = React.useState(null);
53
+ const isUsingKeyboardRef = React.useRef(false);
54
+ const handleOpenChange = useCallbackRef(onOpenChange);
55
+ const direction = useDirection(dir);
56
+ React.useEffect(() => {
57
+ const handleKeyDown = () => {
58
+ isUsingKeyboardRef.current = true;
59
+ document.addEventListener("pointerdown", handlePointer, { capture: true, once: true });
60
+ document.addEventListener("pointermove", handlePointer, { capture: true, once: true });
61
+ };
62
+ const handlePointer = () => isUsingKeyboardRef.current = false;
63
+ document.addEventListener("keydown", handleKeyDown, { capture: true });
64
+ return () => {
65
+ document.removeEventListener("keydown", handleKeyDown, { capture: true });
66
+ document.removeEventListener("pointerdown", handlePointer, { capture: true });
67
+ document.removeEventListener("pointermove", handlePointer, { capture: true });
68
+ };
69
+ }, []);
70
+ React.useEffect(() => {
71
+ if (!open) {
72
+ return;
73
+ }
74
+ const handleBlur = () => handleOpenChange(false);
75
+ window.addEventListener("blur", handleBlur);
76
+ return () => window.removeEventListener("blur", handleBlur);
77
+ }, [open, handleOpenChange]);
78
+ return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(
79
+ MenuProvider,
80
+ {
81
+ scope: __scopeMenu,
82
+ open,
83
+ onOpenChange: handleOpenChange,
84
+ content,
85
+ onContentChange: setContent,
86
+ children: /* @__PURE__ */ jsx(
87
+ MenuRootProvider,
88
+ {
89
+ scope: __scopeMenu,
90
+ onClose: React.useCallback(() => handleOpenChange(false), [handleOpenChange]),
91
+ isUsingKeyboardRef,
92
+ dir: direction,
93
+ modal,
94
+ children
95
+ }
96
+ )
97
+ }
98
+ ) });
99
+ };
100
+ Menu.displayName = MENU_NAME;
101
+ var ANCHOR_NAME = "MenuAnchor";
102
+ var MenuAnchor = React.forwardRef(
103
+ (props, forwardedRef) => {
104
+ const { __scopeMenu, ...anchorProps } = props;
105
+ const popperScope = usePopperScope(__scopeMenu);
106
+ return /* @__PURE__ */ jsx(PopperPrimitive.Anchor, { ...popperScope, ...anchorProps, ref: forwardedRef });
107
+ }
108
+ );
109
+ MenuAnchor.displayName = ANCHOR_NAME;
110
+ var PORTAL_NAME = "MenuPortal";
111
+ var [PortalProvider, usePortalContext] = createMenuContext(PORTAL_NAME, {
112
+ forceMount: void 0
113
+ });
114
+ var MenuPortal = (props) => {
115
+ const { __scopeMenu, forceMount, children, container } = props;
116
+ const context = useMenuContext(PORTAL_NAME, __scopeMenu);
117
+ return /* @__PURE__ */ jsx(PortalProvider, { scope: __scopeMenu, forceMount, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(PortalPrimitive, { asChild: true, container, children }) }) });
118
+ };
119
+ MenuPortal.displayName = PORTAL_NAME;
120
+ var CONTENT_NAME = "MenuContent";
121
+ var [MenuContentProvider, useMenuContentContext] = createMenuContext(CONTENT_NAME);
122
+ var MenuContent = React.forwardRef(
123
+ (props, forwardedRef) => {
124
+ const portalContext = usePortalContext(CONTENT_NAME, props.__scopeMenu);
125
+ const { forceMount = portalContext.forceMount, ...contentProps } = props;
126
+ const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);
127
+ const rootContext = useMenuRootContext(CONTENT_NAME, props.__scopeMenu);
128
+ return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeMenu, children: rootContext.modal ? /* @__PURE__ */ jsx(MenuRootContentModal, { ...contentProps, ref: forwardedRef }) : /* @__PURE__ */ jsx(MenuRootContentNonModal, { ...contentProps, ref: forwardedRef }) }) }) });
129
+ }
130
+ );
131
+ var MenuRootContentModal = React.forwardRef(
132
+ (props, forwardedRef) => {
133
+ const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);
134
+ const ref = React.useRef(null);
135
+ const composedRefs = useComposedRefs(forwardedRef, ref);
136
+ React.useEffect(() => {
137
+ const content = ref.current;
138
+ if (content) return hideOthers(content);
139
+ }, []);
140
+ return /* @__PURE__ */ jsx(
141
+ MenuContentImpl,
142
+ {
143
+ ...props,
144
+ ref: composedRefs,
145
+ trapFocus: context.open,
146
+ disableOutsidePointerEvents: context.open,
147
+ disableOutsideScroll: true,
148
+ onFocusOutside: composeEventHandlers(
149
+ props.onFocusOutside,
150
+ (event) => event.preventDefault(),
151
+ { checkForDefaultPrevented: false }
152
+ ),
153
+ onDismiss: () => context.onOpenChange(false)
154
+ }
155
+ );
156
+ }
157
+ );
158
+ var MenuRootContentNonModal = React.forwardRef((props, forwardedRef) => {
159
+ const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);
160
+ return /* @__PURE__ */ jsx(
161
+ MenuContentImpl,
162
+ {
163
+ ...props,
164
+ ref: forwardedRef,
165
+ trapFocus: false,
166
+ disableOutsidePointerEvents: false,
167
+ disableOutsideScroll: false,
168
+ onDismiss: () => context.onOpenChange(false)
169
+ }
170
+ );
171
+ });
172
+ var Slot = createSlot("MenuContent.ScrollLock");
173
+ var MenuContentImpl = React.forwardRef(
174
+ (props, forwardedRef) => {
175
+ const {
176
+ __scopeMenu,
177
+ loop = false,
178
+ trapFocus,
179
+ onOpenAutoFocus,
180
+ onCloseAutoFocus,
181
+ disableOutsidePointerEvents,
182
+ onEntryFocus,
183
+ onEscapeKeyDown,
184
+ onPointerDownOutside,
185
+ onFocusOutside,
186
+ onInteractOutside,
187
+ onDismiss,
188
+ disableOutsideScroll,
189
+ ...contentProps
190
+ } = props;
191
+ const context = useMenuContext(CONTENT_NAME, __scopeMenu);
192
+ const rootContext = useMenuRootContext(CONTENT_NAME, __scopeMenu);
193
+ const popperScope = usePopperScope(__scopeMenu);
194
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);
195
+ const getItems = useCollection(__scopeMenu);
196
+ const [currentItemId, setCurrentItemId] = React.useState(null);
197
+ const contentRef = React.useRef(null);
198
+ const composedRefs = useComposedRefs(forwardedRef, contentRef, context.onContentChange);
199
+ const timerRef = React.useRef(0);
200
+ const searchRef = React.useRef("");
201
+ const pointerGraceTimerRef = React.useRef(0);
202
+ const pointerGraceIntentRef = React.useRef(null);
203
+ const pointerDirRef = React.useRef("right");
204
+ const lastPointerXRef = React.useRef(0);
205
+ const ScrollLockWrapper = disableOutsideScroll ? RemoveScroll : React.Fragment;
206
+ const scrollLockWrapperProps = disableOutsideScroll ? { as: Slot, allowPinchZoom: true } : void 0;
207
+ const handleTypeaheadSearch = (key) => {
208
+ const search = searchRef.current + key;
209
+ const items = getItems().filter((item) => !item.disabled);
210
+ const currentItem = document.activeElement;
211
+ const currentMatch = items.find((item) => item.ref.current === currentItem)?.textValue;
212
+ const values = items.map((item) => item.textValue);
213
+ const nextMatch = getNextMatch(values, search, currentMatch);
214
+ const newItem = items.find((item) => item.textValue === nextMatch)?.ref.current;
215
+ (function updateSearch(value) {
216
+ searchRef.current = value;
217
+ window.clearTimeout(timerRef.current);
218
+ if (value !== "") timerRef.current = window.setTimeout(() => updateSearch(""), 1e3);
219
+ })(search);
220
+ if (newItem) {
221
+ setTimeout(() => newItem.focus());
222
+ }
223
+ };
224
+ React.useEffect(() => {
225
+ return () => window.clearTimeout(timerRef.current);
226
+ }, []);
227
+ useFocusGuards();
228
+ const isPointerMovingToSubmenu = React.useCallback((event) => {
229
+ const isMovingTowards = pointerDirRef.current === pointerGraceIntentRef.current?.side;
230
+ return isMovingTowards && isPointerInGraceArea(event, pointerGraceIntentRef.current?.area);
231
+ }, []);
232
+ return /* @__PURE__ */ jsx(
233
+ MenuContentProvider,
234
+ {
235
+ scope: __scopeMenu,
236
+ searchRef,
237
+ onItemEnter: React.useCallback(
238
+ (event) => {
239
+ if (isPointerMovingToSubmenu(event)) event.preventDefault();
240
+ },
241
+ [isPointerMovingToSubmenu]
242
+ ),
243
+ onItemLeave: React.useCallback(
244
+ (event) => {
245
+ if (isPointerMovingToSubmenu(event)) return;
246
+ contentRef.current?.focus();
247
+ setCurrentItemId(null);
248
+ },
249
+ [isPointerMovingToSubmenu]
250
+ ),
251
+ onTriggerLeave: React.useCallback(
252
+ (event) => {
253
+ if (isPointerMovingToSubmenu(event)) event.preventDefault();
254
+ },
255
+ [isPointerMovingToSubmenu]
256
+ ),
257
+ pointerGraceTimerRef,
258
+ onPointerGraceIntentChange: React.useCallback((intent) => {
259
+ pointerGraceIntentRef.current = intent;
260
+ }, []),
261
+ children: /* @__PURE__ */ jsx(ScrollLockWrapper, { ...scrollLockWrapperProps, children: /* @__PURE__ */ jsx(
262
+ FocusScope,
263
+ {
264
+ asChild: true,
265
+ trapped: trapFocus,
266
+ onMountAutoFocus: composeEventHandlers(onOpenAutoFocus, (event) => {
267
+ event.preventDefault();
268
+ contentRef.current?.focus({ preventScroll: true });
269
+ }),
270
+ onUnmountAutoFocus: onCloseAutoFocus,
271
+ children: /* @__PURE__ */ jsx(
272
+ DismissableLayer,
273
+ {
274
+ asChild: true,
275
+ disableOutsidePointerEvents,
276
+ onEscapeKeyDown,
277
+ onPointerDownOutside,
278
+ onFocusOutside,
279
+ onInteractOutside,
280
+ onDismiss,
281
+ children: /* @__PURE__ */ jsx(
282
+ RovingFocusGroup.Root,
283
+ {
284
+ asChild: true,
285
+ ...rovingFocusGroupScope,
286
+ dir: rootContext.dir,
287
+ orientation: "vertical",
288
+ loop,
289
+ currentTabStopId: currentItemId,
290
+ onCurrentTabStopIdChange: setCurrentItemId,
291
+ onEntryFocus: composeEventHandlers(onEntryFocus, (event) => {
292
+ if (!rootContext.isUsingKeyboardRef.current) event.preventDefault();
293
+ }),
294
+ preventScrollOnEntryFocus: true,
295
+ children: /* @__PURE__ */ jsx(
296
+ PopperPrimitive.Content,
297
+ {
298
+ role: "menu",
299
+ "aria-orientation": "vertical",
300
+ "data-state": getOpenState(context.open),
301
+ "data-radix-menu-content": "",
302
+ dir: rootContext.dir,
303
+ ...popperScope,
304
+ ...contentProps,
305
+ ref: composedRefs,
306
+ style: { outline: "none", ...contentProps.style },
307
+ onKeyDown: composeEventHandlers(contentProps.onKeyDown, (event) => {
308
+ const target = event.target;
309
+ const isKeyDownInside = target.closest("[data-radix-menu-content]") === event.currentTarget;
310
+ const isModifierKey = event.ctrlKey || event.altKey || event.metaKey;
311
+ const isCharacterKey = event.key.length === 1;
312
+ if (isKeyDownInside) {
313
+ if (event.key === "Tab") event.preventDefault();
314
+ if (!isModifierKey && isCharacterKey) handleTypeaheadSearch(event.key);
315
+ }
316
+ const content = contentRef.current;
317
+ if (event.target !== content) return;
318
+ if (!FIRST_LAST_KEYS.includes(event.key)) return;
319
+ event.preventDefault();
320
+ const items = getItems().filter((item) => !item.disabled);
321
+ const candidateNodes = items.map((item) => item.ref.current);
322
+ if (LAST_KEYS.includes(event.key)) candidateNodes.reverse();
323
+ focusFirst(candidateNodes);
324
+ }),
325
+ onBlur: composeEventHandlers(props.onBlur, (event) => {
326
+ if (!event.currentTarget.contains(event.target)) {
327
+ window.clearTimeout(timerRef.current);
328
+ searchRef.current = "";
329
+ }
330
+ }),
331
+ onPointerMove: composeEventHandlers(
332
+ props.onPointerMove,
333
+ whenMouse((event) => {
334
+ const target = event.target;
335
+ const pointerXHasChanged = lastPointerXRef.current !== event.clientX;
336
+ if (event.currentTarget.contains(target) && pointerXHasChanged) {
337
+ const newDir = event.clientX > lastPointerXRef.current ? "right" : "left";
338
+ pointerDirRef.current = newDir;
339
+ lastPointerXRef.current = event.clientX;
340
+ }
341
+ })
342
+ )
343
+ }
344
+ )
345
+ }
346
+ )
347
+ }
348
+ )
349
+ }
350
+ ) })
351
+ }
352
+ );
353
+ }
354
+ );
355
+ MenuContent.displayName = CONTENT_NAME;
356
+ var GROUP_NAME = "MenuGroup";
357
+ var MenuGroup = React.forwardRef(
358
+ (props, forwardedRef) => {
359
+ const { __scopeMenu, ...groupProps } = props;
360
+ return /* @__PURE__ */ jsx(Primitive.div, { role: "group", ...groupProps, ref: forwardedRef });
361
+ }
362
+ );
363
+ MenuGroup.displayName = GROUP_NAME;
364
+ var LABEL_NAME = "MenuLabel";
365
+ var MenuLabel = React.forwardRef(
366
+ (props, forwardedRef) => {
367
+ const { __scopeMenu, ...labelProps } = props;
368
+ return /* @__PURE__ */ jsx(Primitive.div, { ...labelProps, ref: forwardedRef });
369
+ }
370
+ );
371
+ MenuLabel.displayName = LABEL_NAME;
372
+ var ITEM_NAME = "MenuItem";
373
+ var ITEM_SELECT = "menu.itemSelect";
374
+ var MenuItem = React.forwardRef(
375
+ (props, forwardedRef) => {
376
+ const { disabled = false, onSelect, ...itemProps } = props;
377
+ const ref = React.useRef(null);
378
+ const rootContext = useMenuRootContext(ITEM_NAME, props.__scopeMenu);
379
+ const contentContext = useMenuContentContext(ITEM_NAME, props.__scopeMenu);
380
+ const composedRefs = useComposedRefs(forwardedRef, ref);
381
+ const isPointerDownRef = React.useRef(false);
382
+ const handleSelect = () => {
383
+ const menuItem = ref.current;
384
+ if (!disabled && menuItem) {
385
+ const itemSelectEvent = new CustomEvent(ITEM_SELECT, { bubbles: true, cancelable: true });
386
+ menuItem.addEventListener(ITEM_SELECT, (event) => onSelect?.(event), { once: true });
387
+ dispatchDiscreteCustomEvent(menuItem, itemSelectEvent);
388
+ if (itemSelectEvent.defaultPrevented) {
389
+ isPointerDownRef.current = false;
390
+ } else {
391
+ rootContext.onClose();
392
+ }
393
+ }
394
+ };
395
+ return /* @__PURE__ */ jsx(
396
+ MenuItemImpl,
397
+ {
398
+ ...itemProps,
399
+ ref: composedRefs,
400
+ disabled,
401
+ onClick: composeEventHandlers(props.onClick, handleSelect),
402
+ onPointerDown: (event) => {
403
+ props.onPointerDown?.(event);
404
+ isPointerDownRef.current = true;
405
+ },
406
+ onPointerUp: composeEventHandlers(props.onPointerUp, (event) => {
407
+ if (!isPointerDownRef.current) event.currentTarget?.click();
408
+ }),
409
+ onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
410
+ const isTypingAhead = contentContext.searchRef.current !== "";
411
+ if (disabled || isTypingAhead && event.key === " ") return;
412
+ if (SELECTION_KEYS.includes(event.key)) {
413
+ event.currentTarget.click();
414
+ event.preventDefault();
415
+ }
416
+ })
417
+ }
418
+ );
419
+ }
420
+ );
421
+ MenuItem.displayName = ITEM_NAME;
422
+ var MenuItemImpl = React.forwardRef(
423
+ (props, forwardedRef) => {
424
+ const { __scopeMenu, disabled = false, textValue, ...itemProps } = props;
425
+ const contentContext = useMenuContentContext(ITEM_NAME, __scopeMenu);
426
+ const rovingFocusGroupScope = useRovingFocusGroupScope(__scopeMenu);
427
+ const ref = React.useRef(null);
428
+ const composedRefs = useComposedRefs(forwardedRef, ref);
429
+ const [isFocused, setIsFocused] = React.useState(false);
430
+ const [textContent, setTextContent] = React.useState("");
431
+ React.useEffect(() => {
432
+ const menuItem = ref.current;
433
+ if (menuItem) {
434
+ setTextContent((menuItem.textContent ?? "").trim());
435
+ }
436
+ }, [itemProps.children]);
437
+ return /* @__PURE__ */ jsx(
438
+ Collection.ItemSlot,
439
+ {
440
+ scope: __scopeMenu,
441
+ disabled,
442
+ textValue: textValue ?? textContent,
443
+ children: /* @__PURE__ */ jsx(RovingFocusGroup.Item, { asChild: true, ...rovingFocusGroupScope, focusable: !disabled, children: /* @__PURE__ */ jsx(
444
+ Primitive.div,
445
+ {
446
+ role: "menuitem",
447
+ "data-highlighted": isFocused ? "" : void 0,
448
+ "aria-disabled": disabled || void 0,
449
+ "data-disabled": disabled ? "" : void 0,
450
+ ...itemProps,
451
+ ref: composedRefs,
452
+ onPointerMove: composeEventHandlers(
453
+ props.onPointerMove,
454
+ whenMouse((event) => {
455
+ if (disabled) {
456
+ contentContext.onItemLeave(event);
457
+ } else {
458
+ contentContext.onItemEnter(event);
459
+ if (!event.defaultPrevented) {
460
+ const item = event.currentTarget;
461
+ item.focus({ preventScroll: true });
462
+ }
463
+ }
464
+ })
465
+ ),
466
+ onPointerLeave: composeEventHandlers(
467
+ props.onPointerLeave,
468
+ whenMouse((event) => contentContext.onItemLeave(event))
469
+ ),
470
+ onFocus: composeEventHandlers(props.onFocus, () => setIsFocused(true)),
471
+ onBlur: composeEventHandlers(props.onBlur, () => setIsFocused(false))
472
+ }
473
+ ) })
474
+ }
475
+ );
476
+ }
477
+ );
478
+ var CHECKBOX_ITEM_NAME = "MenuCheckboxItem";
479
+ var MenuCheckboxItem = React.forwardRef(
480
+ (props, forwardedRef) => {
481
+ const { checked = false, onCheckedChange, ...checkboxItemProps } = props;
482
+ return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(
483
+ MenuItem,
484
+ {
485
+ role: "menuitemcheckbox",
486
+ "aria-checked": isIndeterminate(checked) ? "mixed" : checked,
487
+ ...checkboxItemProps,
488
+ ref: forwardedRef,
489
+ "data-state": getCheckedState(checked),
490
+ onSelect: composeEventHandlers(
491
+ checkboxItemProps.onSelect,
492
+ () => onCheckedChange?.(isIndeterminate(checked) ? true : !checked),
493
+ { checkForDefaultPrevented: false }
494
+ )
495
+ }
496
+ ) });
497
+ }
498
+ );
499
+ MenuCheckboxItem.displayName = CHECKBOX_ITEM_NAME;
500
+ var RADIO_GROUP_NAME = "MenuRadioGroup";
501
+ var [RadioGroupProvider, useRadioGroupContext] = createMenuContext(
502
+ RADIO_GROUP_NAME,
503
+ { value: void 0, onValueChange: () => {
504
+ } }
505
+ );
506
+ var MenuRadioGroup = React.forwardRef(
507
+ (props, forwardedRef) => {
508
+ const { value, onValueChange, ...groupProps } = props;
509
+ const handleValueChange = useCallbackRef(onValueChange);
510
+ return /* @__PURE__ */ jsx(RadioGroupProvider, { scope: props.__scopeMenu, value, onValueChange: handleValueChange, children: /* @__PURE__ */ jsx(MenuGroup, { ...groupProps, ref: forwardedRef }) });
511
+ }
512
+ );
513
+ MenuRadioGroup.displayName = RADIO_GROUP_NAME;
514
+ var RADIO_ITEM_NAME = "MenuRadioItem";
515
+ var MenuRadioItem = React.forwardRef(
516
+ (props, forwardedRef) => {
517
+ const { value, ...radioItemProps } = props;
518
+ const context = useRadioGroupContext(RADIO_ITEM_NAME, props.__scopeMenu);
519
+ const checked = value === context.value;
520
+ return /* @__PURE__ */ jsx(ItemIndicatorProvider, { scope: props.__scopeMenu, checked, children: /* @__PURE__ */ jsx(
521
+ MenuItem,
522
+ {
523
+ role: "menuitemradio",
524
+ "aria-checked": checked,
525
+ ...radioItemProps,
526
+ ref: forwardedRef,
527
+ "data-state": getCheckedState(checked),
528
+ onSelect: composeEventHandlers(
529
+ radioItemProps.onSelect,
530
+ () => context.onValueChange?.(value),
531
+ { checkForDefaultPrevented: false }
532
+ )
533
+ }
534
+ ) });
535
+ }
536
+ );
537
+ MenuRadioItem.displayName = RADIO_ITEM_NAME;
538
+ var ITEM_INDICATOR_NAME = "MenuItemIndicator";
539
+ var [ItemIndicatorProvider, useItemIndicatorContext] = createMenuContext(
540
+ ITEM_INDICATOR_NAME,
541
+ { checked: false }
542
+ );
543
+ var MenuItemIndicator = React.forwardRef(
544
+ (props, forwardedRef) => {
545
+ const { __scopeMenu, forceMount, ...itemIndicatorProps } = props;
546
+ const indicatorContext = useItemIndicatorContext(ITEM_INDICATOR_NAME, __scopeMenu);
547
+ return /* @__PURE__ */ jsx(
548
+ Presence,
549
+ {
550
+ present: forceMount || isIndeterminate(indicatorContext.checked) || indicatorContext.checked === true,
551
+ children: /* @__PURE__ */ jsx(
552
+ Primitive.span,
553
+ {
554
+ ...itemIndicatorProps,
555
+ ref: forwardedRef,
556
+ "data-state": getCheckedState(indicatorContext.checked)
557
+ }
558
+ )
559
+ }
560
+ );
561
+ }
562
+ );
563
+ MenuItemIndicator.displayName = ITEM_INDICATOR_NAME;
564
+ var SEPARATOR_NAME = "MenuSeparator";
565
+ var MenuSeparator = React.forwardRef(
566
+ (props, forwardedRef) => {
567
+ const { __scopeMenu, ...separatorProps } = props;
568
+ return /* @__PURE__ */ jsx(
569
+ Primitive.div,
570
+ {
571
+ role: "separator",
572
+ "aria-orientation": "horizontal",
573
+ ...separatorProps,
574
+ ref: forwardedRef
575
+ }
576
+ );
577
+ }
578
+ );
579
+ MenuSeparator.displayName = SEPARATOR_NAME;
580
+ var ARROW_NAME = "MenuArrow";
581
+ var MenuArrow = React.forwardRef(
582
+ (props, forwardedRef) => {
583
+ const { __scopeMenu, ...arrowProps } = props;
584
+ const popperScope = usePopperScope(__scopeMenu);
585
+ return /* @__PURE__ */ jsx(PopperPrimitive.Arrow, { ...popperScope, ...arrowProps, ref: forwardedRef });
586
+ }
587
+ );
588
+ MenuArrow.displayName = ARROW_NAME;
589
+ var SUB_NAME = "MenuSub";
590
+ var [MenuSubProvider, useMenuSubContext] = createMenuContext(SUB_NAME);
591
+ var MenuSub = (props) => {
592
+ const { __scopeMenu, children, open = false, onOpenChange } = props;
593
+ const parentMenuContext = useMenuContext(SUB_NAME, __scopeMenu);
594
+ const popperScope = usePopperScope(__scopeMenu);
595
+ const [trigger, setTrigger] = React.useState(null);
596
+ const [content, setContent] = React.useState(null);
597
+ const handleOpenChange = useCallbackRef(onOpenChange);
598
+ React.useEffect(() => {
599
+ if (parentMenuContext.open === false) handleOpenChange(false);
600
+ return () => handleOpenChange(false);
601
+ }, [parentMenuContext.open, handleOpenChange]);
602
+ return /* @__PURE__ */ jsx(PopperPrimitive.Root, { ...popperScope, children: /* @__PURE__ */ jsx(
603
+ MenuProvider,
604
+ {
605
+ scope: __scopeMenu,
606
+ open,
607
+ onOpenChange: handleOpenChange,
608
+ content,
609
+ onContentChange: setContent,
610
+ children: /* @__PURE__ */ jsx(
611
+ MenuSubProvider,
612
+ {
613
+ scope: __scopeMenu,
614
+ contentId: useId(),
615
+ triggerId: useId(),
616
+ trigger,
617
+ onTriggerChange: setTrigger,
618
+ children
619
+ }
620
+ )
621
+ }
622
+ ) });
623
+ };
624
+ MenuSub.displayName = SUB_NAME;
625
+ var SUB_TRIGGER_NAME = "MenuSubTrigger";
626
+ var MenuSubTrigger = React.forwardRef(
627
+ (props, forwardedRef) => {
628
+ const context = useMenuContext(SUB_TRIGGER_NAME, props.__scopeMenu);
629
+ const rootContext = useMenuRootContext(SUB_TRIGGER_NAME, props.__scopeMenu);
630
+ const subContext = useMenuSubContext(SUB_TRIGGER_NAME, props.__scopeMenu);
631
+ const contentContext = useMenuContentContext(SUB_TRIGGER_NAME, props.__scopeMenu);
632
+ const openTimerRef = React.useRef(null);
633
+ const { pointerGraceTimerRef, onPointerGraceIntentChange } = contentContext;
634
+ const scope = { __scopeMenu: props.__scopeMenu };
635
+ const clearOpenTimer = React.useCallback(() => {
636
+ if (openTimerRef.current) window.clearTimeout(openTimerRef.current);
637
+ openTimerRef.current = null;
638
+ }, []);
639
+ React.useEffect(() => clearOpenTimer, [clearOpenTimer]);
640
+ React.useEffect(() => {
641
+ const pointerGraceTimer = pointerGraceTimerRef.current;
642
+ return () => {
643
+ window.clearTimeout(pointerGraceTimer);
644
+ onPointerGraceIntentChange(null);
645
+ };
646
+ }, [pointerGraceTimerRef, onPointerGraceIntentChange]);
647
+ const composedRefs = useComposedRefs(forwardedRef, subContext.onTriggerChange);
648
+ return /* @__PURE__ */ jsx(MenuAnchor, { asChild: true, ...scope, children: /* @__PURE__ */ jsx(
649
+ MenuItemImpl,
650
+ {
651
+ id: subContext.triggerId,
652
+ "aria-haspopup": "menu",
653
+ "aria-expanded": context.open,
654
+ "aria-controls": context.open ? subContext.contentId : void 0,
655
+ "data-state": getOpenState(context.open),
656
+ ...props,
657
+ ref: composedRefs,
658
+ onClick: (event) => {
659
+ props.onClick?.(event);
660
+ if (props.disabled || event.defaultPrevented) return;
661
+ event.currentTarget.focus();
662
+ if (!context.open) context.onOpenChange(true);
663
+ },
664
+ onPointerMove: composeEventHandlers(
665
+ props.onPointerMove,
666
+ whenMouse((event) => {
667
+ contentContext.onItemEnter(event);
668
+ if (event.defaultPrevented) return;
669
+ if (!props.disabled && !context.open && !openTimerRef.current) {
670
+ contentContext.onPointerGraceIntentChange(null);
671
+ openTimerRef.current = window.setTimeout(() => {
672
+ context.onOpenChange(true);
673
+ clearOpenTimer();
674
+ }, 100);
675
+ }
676
+ })
677
+ ),
678
+ onPointerLeave: composeEventHandlers(
679
+ props.onPointerLeave,
680
+ whenMouse((event) => {
681
+ clearOpenTimer();
682
+ const contentRect = context.content?.getBoundingClientRect();
683
+ if (contentRect) {
684
+ const side = context.content?.dataset.side;
685
+ const rightSide = side === "right";
686
+ const bleed = rightSide ? -5 : 5;
687
+ const contentNearEdge = contentRect[rightSide ? "left" : "right"];
688
+ const contentFarEdge = contentRect[rightSide ? "right" : "left"];
689
+ contentContext.onPointerGraceIntentChange({
690
+ area: [
691
+ // Apply a bleed on clientX to ensure that our exit point is
692
+ // consistently within polygon bounds
693
+ { x: event.clientX + bleed, y: event.clientY },
694
+ { x: contentNearEdge, y: contentRect.top },
695
+ { x: contentFarEdge, y: contentRect.top },
696
+ { x: contentFarEdge, y: contentRect.bottom },
697
+ { x: contentNearEdge, y: contentRect.bottom }
698
+ ],
699
+ side
700
+ });
701
+ window.clearTimeout(pointerGraceTimerRef.current);
702
+ pointerGraceTimerRef.current = window.setTimeout(
703
+ () => contentContext.onPointerGraceIntentChange(null),
704
+ 300
705
+ );
706
+ } else {
707
+ contentContext.onTriggerLeave(event);
708
+ if (event.defaultPrevented) return;
709
+ contentContext.onPointerGraceIntentChange(null);
710
+ }
711
+ })
712
+ ),
713
+ onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
714
+ const isTypingAhead = contentContext.searchRef.current !== "";
715
+ if (props.disabled || isTypingAhead && event.key === " ") return;
716
+ if (SUB_OPEN_KEYS[rootContext.dir].includes(event.key)) {
717
+ context.onOpenChange(true);
718
+ context.content?.focus();
719
+ event.preventDefault();
720
+ }
721
+ })
722
+ }
723
+ ) });
724
+ }
725
+ );
726
+ MenuSubTrigger.displayName = SUB_TRIGGER_NAME;
727
+ var SUB_CONTENT_NAME = "MenuSubContent";
728
+ var MenuSubContent = React.forwardRef(
729
+ (props, forwardedRef) => {
730
+ const portalContext = usePortalContext(CONTENT_NAME, props.__scopeMenu);
731
+ const { forceMount = portalContext.forceMount, align = "start", ...subContentProps } = props;
732
+ const context = useMenuContext(CONTENT_NAME, props.__scopeMenu);
733
+ const rootContext = useMenuRootContext(CONTENT_NAME, props.__scopeMenu);
734
+ const subContext = useMenuSubContext(SUB_CONTENT_NAME, props.__scopeMenu);
735
+ const ref = React.useRef(null);
736
+ const composedRefs = useComposedRefs(forwardedRef, ref);
737
+ return /* @__PURE__ */ jsx(Collection.Provider, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(Presence, { present: forceMount || context.open, children: /* @__PURE__ */ jsx(Collection.Slot, { scope: props.__scopeMenu, children: /* @__PURE__ */ jsx(
738
+ MenuContentImpl,
739
+ {
740
+ id: subContext.contentId,
741
+ "aria-labelledby": subContext.triggerId,
742
+ ...subContentProps,
743
+ ref: composedRefs,
744
+ align,
745
+ side: rootContext.dir === "rtl" ? "left" : "right",
746
+ disableOutsidePointerEvents: false,
747
+ disableOutsideScroll: false,
748
+ trapFocus: false,
749
+ onOpenAutoFocus: (event) => {
750
+ if (rootContext.isUsingKeyboardRef.current) ref.current?.focus();
751
+ event.preventDefault();
752
+ },
753
+ onCloseAutoFocus: (event) => event.preventDefault(),
754
+ onFocusOutside: composeEventHandlers(props.onFocusOutside, (event) => {
755
+ if (event.target !== subContext.trigger) context.onOpenChange(false);
756
+ }),
757
+ onEscapeKeyDown: composeEventHandlers(props.onEscapeKeyDown, (event) => {
758
+ rootContext.onClose();
759
+ event.preventDefault();
760
+ }),
761
+ onKeyDown: composeEventHandlers(props.onKeyDown, (event) => {
762
+ const isKeyDownInside = event.currentTarget.contains(event.target);
763
+ const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir].includes(event.key);
764
+ if (isKeyDownInside && isCloseKey) {
765
+ context.onOpenChange(false);
766
+ subContext.trigger?.focus();
767
+ event.preventDefault();
768
+ }
769
+ })
770
+ }
771
+ ) }) }) });
772
+ }
773
+ );
774
+ MenuSubContent.displayName = SUB_CONTENT_NAME;
775
+ function getOpenState(open) {
776
+ return open ? "open" : "closed";
777
+ }
778
+ function isIndeterminate(checked) {
779
+ return checked === "indeterminate";
780
+ }
781
+ function getCheckedState(checked) {
782
+ return isIndeterminate(checked) ? "indeterminate" : checked ? "checked" : "unchecked";
783
+ }
784
+ function focusFirst(candidates) {
785
+ const PREVIOUSLY_FOCUSED_ELEMENT = document.activeElement;
786
+ for (const candidate of candidates) {
787
+ if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;
788
+ candidate.focus();
789
+ if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;
790
+ }
791
+ }
792
+ function wrapArray(array, startIndex) {
793
+ return array.map((_, index) => array[(startIndex + index) % array.length]);
794
+ }
795
+ function getNextMatch(values, search, currentMatch) {
796
+ const isRepeated = search.length > 1 && Array.from(search).every((char) => char === search[0]);
797
+ const normalizedSearch = isRepeated ? search[0] : search;
798
+ const currentMatchIndex = currentMatch ? values.indexOf(currentMatch) : -1;
799
+ let wrappedValues = wrapArray(values, Math.max(currentMatchIndex, 0));
800
+ const excludeCurrentMatch = normalizedSearch.length === 1;
801
+ if (excludeCurrentMatch) wrappedValues = wrappedValues.filter((v) => v !== currentMatch);
802
+ const nextMatch = wrappedValues.find(
803
+ (value) => value.toLowerCase().startsWith(normalizedSearch.toLowerCase())
804
+ );
805
+ return nextMatch !== currentMatch ? nextMatch : void 0;
806
+ }
807
+ function isPointInPolygon(point, polygon) {
808
+ const { x, y } = point;
809
+ let inside = false;
810
+ for (let i = 0, j = polygon.length - 1; i < polygon.length; j = i++) {
811
+ const ii = polygon[i];
812
+ const jj = polygon[j];
813
+ const xi = ii.x;
814
+ const yi = ii.y;
815
+ const xj = jj.x;
816
+ const yj = jj.y;
817
+ const intersect = yi > y !== yj > y && x < (xj - xi) * (y - yi) / (yj - yi) + xi;
818
+ if (intersect) inside = !inside;
819
+ }
820
+ return inside;
821
+ }
822
+ function isPointerInGraceArea(event, area) {
823
+ if (!area) return false;
824
+ const cursorPos = { x: event.clientX, y: event.clientY };
825
+ return isPointInPolygon(cursorPos, area);
826
+ }
827
+ function whenMouse(handler) {
828
+ return (event) => event.pointerType === "mouse" ? handler(event) : void 0;
829
+ }
830
+ var Root3 = Menu;
831
+ var Anchor2 = MenuAnchor;
832
+ var Portal = MenuPortal;
833
+ var Content2 = MenuContent;
834
+ var Group = MenuGroup;
835
+ var Label = MenuLabel;
836
+ var Item2 = MenuItem;
837
+ var CheckboxItem = MenuCheckboxItem;
838
+ var RadioGroup = MenuRadioGroup;
839
+ var RadioItem = MenuRadioItem;
840
+ var ItemIndicator = MenuItemIndicator;
841
+ var Separator = MenuSeparator;
842
+ var Arrow2 = MenuArrow;
843
+ var Sub = MenuSub;
844
+ var SubTrigger = MenuSubTrigger;
845
+ var SubContent = MenuSubContent;
846
+ export {
847
+ Anchor2 as Anchor,
848
+ Arrow2 as Arrow,
849
+ CheckboxItem,
850
+ Content2 as Content,
851
+ Group,
852
+ Item2 as Item,
853
+ ItemIndicator,
854
+ Label,
855
+ Menu,
856
+ MenuAnchor,
857
+ MenuArrow,
858
+ MenuCheckboxItem,
859
+ MenuContent,
860
+ MenuGroup,
861
+ MenuItem,
862
+ MenuItemIndicator,
863
+ MenuLabel,
864
+ MenuPortal,
865
+ MenuRadioGroup,
866
+ MenuRadioItem,
867
+ MenuSeparator,
868
+ MenuSub,
869
+ MenuSubContent,
870
+ MenuSubTrigger,
871
+ Portal,
872
+ RadioGroup,
873
+ RadioItem,
874
+ Root3 as Root,
875
+ Separator,
876
+ Sub,
877
+ SubContent,
878
+ SubTrigger,
879
+ createMenuScope
880
+ };
881
+ //# sourceMappingURL=index.mjs.map