@kommo-crm/crm-react-ui-kit 1.1.1-beta.3 → 1.1.1-beta.4

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 (466) hide show
  1. package/dist/Accordion.module-0NEfElzm.mjs +6 -0
  2. package/dist/ItemRoot.module-DaaOqYPx.mjs +7 -0
  3. package/dist/ItemRoot.module-fiKLca_h.mjs +7 -0
  4. package/dist/List-AX0nB9Ji.mjs +141 -0
  5. package/dist/Tab.module-Bh4dewE1.mjs +7 -0
  6. package/dist/assets/Accordion.css +1 -0
  7. package/dist/assets/Arrow.css +1 -0
  8. package/dist/assets/Arrow2.css +1 -0
  9. package/dist/assets/BaseClasses.css +1 -0
  10. package/dist/assets/BaseInput.css +1 -0
  11. package/dist/assets/Button.css +1 -0
  12. package/dist/assets/Callout.css +1 -0
  13. package/dist/assets/Checkbox.css +1 -0
  14. package/dist/assets/CheckboxGroup.css +1 -0
  15. package/dist/assets/CheckboxItem.css +1 -0
  16. package/dist/assets/ContentBlock.css +1 -0
  17. package/dist/assets/FilterTabs.css +1 -0
  18. package/dist/assets/Icon.css +1 -0
  19. package/dist/assets/InlineInput.css +1 -0
  20. package/dist/assets/Input.css +1 -0
  21. package/dist/assets/Item.css +1 -0
  22. package/dist/assets/Item2.css +1 -0
  23. package/dist/assets/Item3.css +1 -0
  24. package/dist/assets/ItemIcon.css +1 -0
  25. package/dist/assets/ItemIndicator.css +1 -0
  26. package/dist/assets/ItemRightSlot.css +1 -0
  27. package/dist/assets/ItemRoot.css +1 -0
  28. package/dist/assets/ItemRoot2.css +1 -0
  29. package/dist/assets/ItemRoot3.css +1 -0
  30. package/dist/assets/Label.css +1 -0
  31. package/dist/assets/Label2.css +1 -0
  32. package/dist/assets/Link.css +1 -0
  33. package/dist/assets/List.css +1 -0
  34. package/dist/assets/Option.css +1 -0
  35. package/dist/assets/Radio.css +1 -0
  36. package/dist/assets/RadioGroup.css +1 -0
  37. package/dist/assets/RadioItem.css +1 -0
  38. package/dist/assets/Select.css +1 -0
  39. package/dist/assets/SelectButton.css +1 -0
  40. package/dist/assets/Separator.css +1 -0
  41. package/dist/assets/Spinner.css +1 -0
  42. package/dist/assets/SubContent.css +1 -0
  43. package/dist/assets/SubTrigger.css +1 -0
  44. package/dist/assets/Switcher.css +1 -0
  45. package/dist/assets/Tab.css +1 -0
  46. package/dist/assets/Text.css +1 -0
  47. package/dist/assets/TextArea.css +1 -0
  48. package/dist/assets/VisuallyHiddenInput.css +1 -0
  49. package/dist/assets/icons.css +1 -0
  50. package/dist/assets/theme.css +1 -0
  51. package/dist/assets/useContentPositioning.css +1 -0
  52. package/dist/components/Accordion/Accordion.context.d.ts +1 -1
  53. package/dist/components/Accordion/Accordion.context.js +7 -4
  54. package/dist/components/Accordion/Accordion.js +14 -12
  55. package/dist/components/Accordion/Accordion.props.js +1 -1
  56. package/dist/components/Accordion/Accordion.themes.js +5 -2
  57. package/dist/components/Accordion/components/AccordionMultiple/AccordionMultiple.d.ts +1 -1
  58. package/dist/components/Accordion/components/AccordionMultiple/AccordionMultiple.js +44 -30
  59. package/dist/components/Accordion/components/AccordionMultiple/AccordionMultiple.props.js +1 -1
  60. package/dist/components/Accordion/components/AccordionSingle/AccordionSingle.d.ts +1 -1
  61. package/dist/components/Accordion/components/AccordionSingle/AccordionSingle.js +45 -30
  62. package/dist/components/Accordion/components/AccordionSingle/AccordionSingle.props.js +1 -1
  63. package/dist/components/Accordion/components/Item/Item.d.ts +2 -2
  64. package/dist/components/Accordion/components/Item/Item.js +58 -30
  65. package/dist/components/Accordion/components/Item/Item.props.js +1 -1
  66. package/dist/components/Accordion/components/Item/Item.themes.js +11 -8
  67. package/dist/components/Accordion/index.js +8 -3
  68. package/dist/components/BaseInput/BaseInput.d.ts +2 -2
  69. package/dist/components/BaseInput/BaseInput.js +34 -9
  70. package/dist/components/BaseInput/BaseInput.props.js +1 -1
  71. package/dist/components/BaseInput/index.js +4 -1
  72. package/dist/components/Button/Button.d.ts +2 -2
  73. package/dist/components/Button/Button.js +91 -55
  74. package/dist/components/Button/Button.props.d.ts +2 -2
  75. package/dist/components/Button/Button.props.js +1 -1
  76. package/dist/components/Button/Button.themes.js +66 -64
  77. package/dist/components/Button/hooks/index.js +6 -2
  78. package/dist/components/Button/hooks/useShowInvalidAnimation/useShowInvalidAnimation.js +15 -17
  79. package/dist/components/Button/hooks/useShowSuccessfulState/useShowSuccessfulState.js +15 -17
  80. package/dist/components/Button/index.js +8 -2
  81. package/dist/components/Callout/Callout.d.ts +2 -2
  82. package/dist/components/Callout/Callout.js +32 -14
  83. package/dist/components/Callout/Callout.props.js +1 -1
  84. package/dist/components/Callout/index.js +12 -5
  85. package/dist/components/Callout/themes/CalloutBase.theme.js +7 -4
  86. package/dist/components/Callout/themes/CalloutError.theme.js +9 -6
  87. package/dist/components/Callout/themes/CalloutInfo.theme.js +9 -6
  88. package/dist/components/Callout/themes/CalloutSuccess.theme.js +9 -6
  89. package/dist/components/Callout/themes/CalloutWarning.theme.js +9 -6
  90. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  91. package/dist/components/Checkbox/Checkbox.js +55 -20
  92. package/dist/components/Checkbox/Checkbox.props.d.ts +3 -3
  93. package/dist/components/Checkbox/Checkbox.props.js +1 -1
  94. package/dist/components/Checkbox/Checkbox.themes.d.ts +1 -1
  95. package/dist/components/Checkbox/Checkbox.themes.js +44 -40
  96. package/dist/components/Checkbox/index.js +10 -2
  97. package/dist/components/CheckboxGroup/CheckboxGroup.context.d.ts +2 -2
  98. package/dist/components/CheckboxGroup/CheckboxGroup.context.js +7 -4
  99. package/dist/components/CheckboxGroup/CheckboxGroup.d.ts +1 -1
  100. package/dist/components/CheckboxGroup/CheckboxGroup.js +52 -24
  101. package/dist/components/CheckboxGroup/CheckboxGroup.props.d.ts +6 -6
  102. package/dist/components/CheckboxGroup/CheckboxGroup.props.js +1 -1
  103. package/dist/components/CheckboxGroup/CheckboxGroup.themes.js +5 -2
  104. package/dist/components/CheckboxGroup/components/Checkbox/Checkbox.d.ts +2 -2
  105. package/dist/components/CheckboxGroup/components/Checkbox/Checkbox.js +33 -16
  106. package/dist/components/CheckboxGroup/components/Checkbox/Checkbox.props.d.ts +1 -1
  107. package/dist/components/CheckboxGroup/components/Checkbox/Checkbox.props.js +1 -1
  108. package/dist/components/CheckboxGroup/components/Checkbox/index.js +4 -1
  109. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/CheckboxSelectAll.d.ts +2 -2
  110. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/CheckboxSelectAll.js +34 -23
  111. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/ItemRootSelectAll.context.d.ts +2 -2
  112. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/ItemRootSelectAll.context.js +7 -4
  113. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/ItemRootSelectAll.d.ts +2 -2
  114. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/ItemRootSelectAll.js +40 -21
  115. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/ItemRootSelectAll.props.d.ts +2 -2
  116. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/ItemRootSelectAll.props.js +1 -1
  117. package/dist/components/CheckboxGroup/components/CheckboxSelectAll/index.js +6 -2
  118. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.context.d.ts +2 -2
  119. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.context.js +7 -4
  120. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.d.ts +2 -2
  121. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.js +35 -21
  122. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.props.d.ts +2 -2
  123. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.props.js +1 -1
  124. package/dist/components/CheckboxGroup/components/ItemRoot/ItemRoot.themes.js +5 -2
  125. package/dist/components/CheckboxGroup/components/ItemRoot/index.js +6 -2
  126. package/dist/components/CheckboxGroup/hooks/index.js +4 -1
  127. package/dist/components/CheckboxGroup/hooks/useCheckboxGroupState.d.ts +1 -1
  128. package/dist/components/CheckboxGroup/hooks/useCheckboxGroupState.js +47 -57
  129. package/dist/components/CheckboxGroup/index.js +12 -4
  130. package/dist/components/ConfigProvider/ConfigProvider.d.ts +2 -2
  131. package/dist/components/ConfigProvider/ConfigProvider.js +13 -7
  132. package/dist/components/ConfigProvider/ConfigProvider.props.d.ts +1 -1
  133. package/dist/components/ConfigProvider/ConfigProvider.props.js +1 -1
  134. package/dist/components/ConfigProvider/index.js +4 -1
  135. package/dist/components/ContentBlock/ContentBlock.d.ts +2 -2
  136. package/dist/components/ContentBlock/ContentBlock.js +13 -9
  137. package/dist/components/ContentBlock/ContentBlock.props.js +1 -1
  138. package/dist/components/ContentBlock/ContentBlock.themes.js +9 -6
  139. package/dist/components/ContentBlock/index.js +6 -2
  140. package/dist/components/ContextMenu/ContextMenu.context.d.ts +1 -1
  141. package/dist/components/ContextMenu/ContextMenu.context.js +7 -4
  142. package/dist/components/ContextMenu/ContextMenu.enums.js +4 -11
  143. package/dist/components/ContextMenu/ContextMenu.js +106 -63
  144. package/dist/components/ContextMenu/ContextMenu.props.d.ts +1 -1
  145. package/dist/components/ContextMenu/ContextMenu.props.js +1 -1
  146. package/dist/components/ContextMenu/ContextMenu.types.d.ts +1 -1
  147. package/dist/components/ContextMenu/ContextMenu.types.js +1 -1
  148. package/dist/components/ContextMenu/components/Arrow/Arrow.d.ts +2 -2
  149. package/dist/components/ContextMenu/components/Arrow/Arrow.js +37 -15
  150. package/dist/components/ContextMenu/components/Arrow/Arrow.props.js +1 -1
  151. package/dist/components/ContextMenu/components/Arrow/index.js +4 -1
  152. package/dist/components/ContextMenu/components/CheckboxItem/CheckboxItem.d.ts +1 -1
  153. package/dist/components/ContextMenu/components/CheckboxItem/CheckboxItem.d.ts.map +1 -1
  154. package/dist/components/ContextMenu/components/CheckboxItem/CheckboxItem.js +78 -44
  155. package/dist/components/ContextMenu/components/CheckboxItem/CheckboxItem.props.d.ts +2 -2
  156. package/dist/components/ContextMenu/components/CheckboxItem/CheckboxItem.props.js +1 -1
  157. package/dist/components/ContextMenu/components/CheckboxItem/index.js +4 -1
  158. package/dist/components/ContextMenu/components/Content/Content.d.ts +2 -2
  159. package/dist/components/ContextMenu/components/Content/Content.enums.js +4 -43
  160. package/dist/components/ContextMenu/components/Content/Content.js +15 -54
  161. package/dist/components/ContextMenu/components/Content/Content.props.js +1 -1
  162. package/dist/components/ContextMenu/components/Content/Content.types.js +1 -1
  163. package/dist/components/ContextMenu/components/Content/Content.utils.js +13 -10
  164. package/dist/components/ContextMenu/components/Content/index.js +8 -3
  165. package/dist/components/ContextMenu/components/Group/Group.d.ts +1 -1
  166. package/dist/components/ContextMenu/components/Group/Group.js +6 -4
  167. package/dist/components/ContextMenu/components/Group/index.js +4 -1
  168. package/dist/components/ContextMenu/components/Item/Item.context.d.ts +1 -1
  169. package/dist/components/ContextMenu/components/Item/Item.context.js +7 -4
  170. package/dist/components/ContextMenu/components/Item/Item.d.ts +3 -3
  171. package/dist/components/ContextMenu/components/Item/Item.js +112 -73
  172. package/dist/components/ContextMenu/components/Item/Item.props.d.ts +1 -1
  173. package/dist/components/ContextMenu/components/Item/Item.props.js +1 -1
  174. package/dist/components/ContextMenu/components/Item/index.js +4 -1
  175. package/dist/components/ContextMenu/components/ItemIcon/ItemIcon.d.ts +1 -1
  176. package/dist/components/ContextMenu/components/ItemIcon/ItemIcon.js +25 -21
  177. package/dist/components/ContextMenu/components/ItemIcon/ItemIcon.props.js +1 -1
  178. package/dist/components/ContextMenu/components/ItemIcon/index.js +4 -1
  179. package/dist/components/ContextMenu/components/ItemIndicator/ItemIndicator.d.ts +2 -2
  180. package/dist/components/ContextMenu/components/ItemIndicator/ItemIndicator.js +29 -19
  181. package/dist/components/ContextMenu/components/ItemIndicator/ItemIndicator.props.js +1 -1
  182. package/dist/components/ContextMenu/components/ItemIndicator/index.js +4 -1
  183. package/dist/components/ContextMenu/components/ItemRightSlot/ItemRightSlot.d.ts +2 -2
  184. package/dist/components/ContextMenu/components/ItemRightSlot/ItemRightSlot.js +57 -32
  185. package/dist/components/ContextMenu/components/ItemRightSlot/ItemRightSlot.props.js +1 -1
  186. package/dist/components/ContextMenu/components/ItemRightSlot/index.js +4 -1
  187. package/dist/components/ContextMenu/components/Label/Label.d.ts +2 -2
  188. package/dist/components/ContextMenu/components/Label/Label.js +28 -12
  189. package/dist/components/ContextMenu/components/Label/Label.props.d.ts +2 -2
  190. package/dist/components/ContextMenu/components/Label/Label.props.js +1 -1
  191. package/dist/components/ContextMenu/components/Label/index.js +4 -1
  192. package/dist/components/ContextMenu/components/Portal/Portal.d.ts +1 -1
  193. package/dist/components/ContextMenu/components/Portal/Portal.js +6 -4
  194. package/dist/components/ContextMenu/components/Portal/index.js +4 -1
  195. package/dist/components/ContextMenu/components/RadioGroup/RadioGroup.js +13 -14
  196. package/dist/components/ContextMenu/components/RadioGroup/RadioGroup.props.d.ts +2 -2
  197. package/dist/components/ContextMenu/components/RadioGroup/RadioGroup.props.js +1 -1
  198. package/dist/components/ContextMenu/components/RadioGroup/index.js +4 -1
  199. package/dist/components/ContextMenu/components/RadioItem/RadioItem.d.ts +1 -1
  200. package/dist/components/ContextMenu/components/RadioItem/RadioItem.d.ts.map +1 -1
  201. package/dist/components/ContextMenu/components/RadioItem/RadioItem.js +70 -37
  202. package/dist/components/ContextMenu/components/RadioItem/RadioItem.props.d.ts +2 -2
  203. package/dist/components/ContextMenu/components/RadioItem/RadioItem.props.js +1 -1
  204. package/dist/components/ContextMenu/components/RadioItem/index.js +4 -1
  205. package/dist/components/ContextMenu/components/Separator/Separator.d.ts +2 -2
  206. package/dist/components/ContextMenu/components/Separator/Separator.js +21 -9
  207. package/dist/components/ContextMenu/components/Separator/Separator.props.js +1 -1
  208. package/dist/components/ContextMenu/components/Separator/index.js +4 -1
  209. package/dist/components/ContextMenu/components/Sub/Sub.context.d.ts +1 -1
  210. package/dist/components/ContextMenu/components/Sub/Sub.context.js +7 -4
  211. package/dist/components/ContextMenu/components/Sub/Sub.d.ts +1 -1
  212. package/dist/components/ContextMenu/components/Sub/Sub.js +58 -14
  213. package/dist/components/ContextMenu/components/Sub/Sub.props.js +1 -1
  214. package/dist/components/ContextMenu/components/Sub/index.js +4 -1
  215. package/dist/components/ContextMenu/components/SubContent/SubContent.d.ts +2 -2
  216. package/dist/components/ContextMenu/components/SubContent/SubContent.js +83 -58
  217. package/dist/components/ContextMenu/components/SubContent/SubContent.props.js +1 -1
  218. package/dist/components/ContextMenu/components/SubContent/index.js +4 -1
  219. package/dist/components/ContextMenu/components/SubRoot/SubRoot.js +93 -36
  220. package/dist/components/ContextMenu/components/SubRoot/SubRoot.props.d.ts +1 -1
  221. package/dist/components/ContextMenu/components/SubRoot/SubRoot.props.js +1 -1
  222. package/dist/components/ContextMenu/components/SubRoot/SubRoot.types.d.ts +1 -1
  223. package/dist/components/ContextMenu/components/SubRoot/SubRoot.types.js +1 -1
  224. package/dist/components/ContextMenu/components/SubRoot/components/Content/Content.d.ts +2 -2
  225. package/dist/components/ContextMenu/components/SubRoot/components/Content/Content.js +104 -63
  226. package/dist/components/ContextMenu/components/SubRoot/components/Content/index.js +4 -1
  227. package/dist/components/ContextMenu/components/SubRoot/components/Trigger/Trigger.d.ts +2 -2
  228. package/dist/components/ContextMenu/components/SubRoot/components/Trigger/Trigger.js +71 -38
  229. package/dist/components/ContextMenu/components/SubRoot/components/Trigger/Trigger.props.js +1 -1
  230. package/dist/components/ContextMenu/components/SubRoot/components/Trigger/index.js +4 -1
  231. package/dist/components/ContextMenu/components/SubRoot/index.js +4 -1
  232. package/dist/components/ContextMenu/components/SubTrigger/SubTrigger.d.ts +1 -1
  233. package/dist/components/ContextMenu/components/SubTrigger/SubTrigger.js +98 -76
  234. package/dist/components/ContextMenu/components/SubTrigger/SubTrigger.props.d.ts +2 -2
  235. package/dist/components/ContextMenu/components/SubTrigger/SubTrigger.props.js +1 -1
  236. package/dist/components/ContextMenu/components/SubTrigger/index.js +4 -1
  237. package/dist/components/ContextMenu/components/Trigger/Trigger.d.ts +2 -2
  238. package/dist/components/ContextMenu/components/Trigger/Trigger.js +51 -35
  239. package/dist/components/ContextMenu/components/Trigger/Trigger.props.js +1 -1
  240. package/dist/components/ContextMenu/components/Trigger/index.js +4 -1
  241. package/dist/components/ContextMenu/hooks/index.js +16 -7
  242. package/dist/components/ContextMenu/hooks/useContentPositioning/useContentPositioning.js +7 -198
  243. package/dist/components/ContextMenu/hooks/useContentPositioning/useContentPositioning.types.js +1 -1
  244. package/dist/components/ContextMenu/hooks/useContextMenu/useContextMenu.d.ts +2 -2
  245. package/dist/components/ContextMenu/hooks/useContextMenu/useContextMenu.js +72 -209
  246. package/dist/components/ContextMenu/hooks/useContextMenu/useContextMenu.types.js +1 -1
  247. package/dist/components/ContextMenu/hooks/useContextMenuItemFocus/useContextMenuItemFocus.js +38 -42
  248. package/dist/components/ContextMenu/hooks/useContextMenuItemFocus/useContextMenuItemFocus.types.js +1 -1
  249. package/dist/components/ContextMenu/hooks/useContextMenuSub/useContextMenuSub.d.ts +1 -1
  250. package/dist/components/ContextMenu/hooks/useContextMenuSub/useContextMenuSub.js +65 -186
  251. package/dist/components/ContextMenu/hooks/useContextMenuSub/useContextMenuSub.types.js +1 -1
  252. package/dist/components/ContextMenu/hooks/useContextMenuSubMenu/useContextMenuSubMenu.d.ts +2 -2
  253. package/dist/components/ContextMenu/hooks/useContextMenuSubMenu/useContextMenuSubMenu.js +71 -215
  254. package/dist/components/ContextMenu/hooks/useContextMenuSubMenu/useContextMenuSubMenu.types.js +1 -1
  255. package/dist/components/ContextMenu/hooks/useInheritedArrowColor/useInheritedArrowColor.js +57 -110
  256. package/dist/components/ContextMenu/hooks/useIsTouchDevice/useIsTouchDevice.js +15 -26
  257. package/dist/components/ContextMenu/hooks/useStopContextMenuEvents/useStopContextMenuEvents.d.ts +9 -9
  258. package/dist/components/ContextMenu/hooks/useStopContextMenuEvents/useStopContextMenuEvents.js +21 -20
  259. package/dist/components/ContextMenu/hooks/useStopContextMenuEvents/useStopContextMenuEvents.types.js +1 -1
  260. package/dist/components/ContextMenu/index.js +10 -3
  261. package/dist/components/ContextMenu/providers/LevelProvider/LevelProvider.d.ts +1 -1
  262. package/dist/components/ContextMenu/providers/LevelProvider/LevelProvider.js +6 -9
  263. package/dist/components/ContextMenu/providers/LevelProvider/LevelProvider.props.js +1 -1
  264. package/dist/components/ContextMenu/providers/LevelProvider/index.js +5 -1
  265. package/dist/components/ContextMenu/providers/index.js +5 -1
  266. package/dist/components/ContextMenu/utils/contextMenuBus/contextMenuBus.js +19 -12
  267. package/dist/components/ContextMenu/utils/contextMenuBus/contextMenuBus.types.js +1 -1
  268. package/dist/components/ContextMenu/utils/focusParentItem/focusParentItem.js +11 -8
  269. package/dist/components/ContextMenu/utils/hasItemIcon/hasItemIcon.d.ts +1 -1
  270. package/dist/components/ContextMenu/utils/hasItemIcon/hasItemIcon.js +8 -8
  271. package/dist/components/ContextMenu/utils/index.js +10 -4
  272. package/dist/components/ContextMenu/utils/isFirstElement/isFirstElement.d.ts +1 -1
  273. package/dist/components/ContextMenu/utils/isFirstElement/isFirstElement.js +9 -13
  274. package/dist/components/FilterTabs/FilterTabs.context.d.ts +2 -2
  275. package/dist/components/FilterTabs/FilterTabs.context.js +7 -4
  276. package/dist/components/FilterTabs/FilterTabs.d.ts +1 -1
  277. package/dist/components/FilterTabs/FilterTabs.js +61 -52
  278. package/dist/components/FilterTabs/FilterTabs.props.d.ts +5 -5
  279. package/dist/components/FilterTabs/FilterTabs.props.js +1 -1
  280. package/dist/components/FilterTabs/FilterTabs.themes.js +5 -2
  281. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.context.d.ts +2 -2
  282. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.context.js +7 -4
  283. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.d.ts +2 -2
  284. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.js +37 -26
  285. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.props.d.ts +2 -2
  286. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.props.js +1 -1
  287. package/dist/components/FilterTabs/components/ItemRoot/ItemRoot.themes.js +5 -2
  288. package/dist/components/FilterTabs/components/ItemRoot/index.js +6 -2
  289. package/dist/components/FilterTabs/components/ItemRootReset/ItemRootReset.context.d.ts +1 -1
  290. package/dist/components/FilterTabs/components/ItemRootReset/ItemRootReset.context.js +7 -4
  291. package/dist/components/FilterTabs/components/ItemRootReset/ItemRootReset.d.ts +2 -2
  292. package/dist/components/FilterTabs/components/ItemRootReset/ItemRootReset.js +33 -21
  293. package/dist/components/FilterTabs/components/ItemRootReset/ItemRootReset.props.d.ts +2 -2
  294. package/dist/components/FilterTabs/components/ItemRootReset/ItemRootReset.props.js +1 -1
  295. package/dist/components/FilterTabs/components/ItemRootReset/TabReset.d.ts +2 -2
  296. package/dist/components/FilterTabs/components/ItemRootReset/TabReset.js +27 -17
  297. package/dist/components/FilterTabs/components/ItemRootReset/index.js +6 -2
  298. package/dist/components/FilterTabs/components/Tab/Tab.d.ts +2 -2
  299. package/dist/components/FilterTabs/components/Tab/Tab.js +34 -20
  300. package/dist/components/FilterTabs/components/Tab/Tab.props.d.ts +1 -1
  301. package/dist/components/FilterTabs/components/Tab/Tab.props.js +1 -1
  302. package/dist/components/FilterTabs/components/Tab/Tab.themes.js +16 -13
  303. package/dist/components/FilterTabs/components/Tab/index.js +6 -2
  304. package/dist/components/FilterTabs/index.js +14 -4
  305. package/dist/components/InlineInput/InlineInput.d.ts +2 -2
  306. package/dist/components/InlineInput/InlineInput.js +63 -23
  307. package/dist/components/InlineInput/InlineInput.props.d.ts +2 -2
  308. package/dist/components/InlineInput/InlineInput.props.js +1 -1
  309. package/dist/components/InlineInput/InlineInput.themes.d.ts +1 -1
  310. package/dist/components/InlineInput/InlineInput.themes.js +42 -39
  311. package/dist/components/InlineInput/index.js +7 -2
  312. package/dist/components/Input/Input.d.ts +2 -2
  313. package/dist/components/Input/Input.js +76 -25
  314. package/dist/components/Input/Input.props.d.ts +2 -2
  315. package/dist/components/Input/Input.props.js +1 -1
  316. package/dist/components/Input/Input.themes.d.ts +1 -1
  317. package/dist/components/Input/Input.themes.js +59 -56
  318. package/dist/components/Input/index.js +7 -2
  319. package/dist/components/Label/Label.d.ts +1 -1
  320. package/dist/components/Label/Label.js +60 -30
  321. package/dist/components/Label/Label.props.d.ts +1 -1
  322. package/dist/components/Label/Label.props.js +1 -1
  323. package/dist/components/Label/Label.theme.js +9 -6
  324. package/dist/components/Label/index.js +7 -2
  325. package/dist/components/Link/Link.d.ts +1 -1
  326. package/dist/components/Link/Link.js +13 -9
  327. package/dist/components/Link/Link.props.js +1 -1
  328. package/dist/components/Link/Link.themes.js +12 -9
  329. package/dist/components/Link/index.js +6 -2
  330. package/dist/components/List/List.d.ts +1 -1
  331. package/dist/components/List/List.js +10 -24
  332. package/dist/components/List/List.props.js +1 -1
  333. package/dist/components/List/List.theme.js +18 -15
  334. package/dist/components/List/index.js +6 -2
  335. package/dist/components/Portal/Portal.d.ts +2 -2
  336. package/dist/components/Portal/Portal.js +10 -8
  337. package/dist/components/Portal/Portal.props.js +1 -1
  338. package/dist/components/Portal/index.js +4 -1
  339. package/dist/components/RadioGroup/RadioGroup.context.d.ts +2 -2
  340. package/dist/components/RadioGroup/RadioGroup.context.js +7 -4
  341. package/dist/components/RadioGroup/RadioGroup.d.ts +1 -1
  342. package/dist/components/RadioGroup/RadioGroup.js +55 -22
  343. package/dist/components/RadioGroup/RadioGroup.props.d.ts +5 -5
  344. package/dist/components/RadioGroup/RadioGroup.props.js +1 -1
  345. package/dist/components/RadioGroup/RadioGroup.themes.js +5 -2
  346. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.context.d.ts +2 -2
  347. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.context.js +7 -4
  348. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.d.ts +2 -2
  349. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.js +33 -20
  350. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.props.d.ts +2 -2
  351. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.props.js +1 -1
  352. package/dist/components/RadioGroup/components/ItemRoot/ItemRoot.themes.js +5 -2
  353. package/dist/components/RadioGroup/components/ItemRoot/index.js +6 -2
  354. package/dist/components/RadioGroup/components/Radio/Radio.d.ts +2 -2
  355. package/dist/components/RadioGroup/components/Radio/Radio.js +48 -29
  356. package/dist/components/RadioGroup/components/Radio/Radio.props.d.ts +1 -1
  357. package/dist/components/RadioGroup/components/Radio/Radio.props.js +1 -1
  358. package/dist/components/RadioGroup/components/Radio/Radio.themes.js +18 -15
  359. package/dist/components/RadioGroup/components/Radio/index.js +6 -2
  360. package/dist/components/RadioGroup/index.js +14 -4
  361. package/dist/components/Select/Select.context.d.ts +1 -1
  362. package/dist/components/Select/Select.context.js +7 -4
  363. package/dist/components/Select/Select.js +77 -52
  364. package/dist/components/Select/Select.props.d.ts +1 -1
  365. package/dist/components/Select/Select.props.js +1 -1
  366. package/dist/components/Select/Select.theme.js +6 -3
  367. package/dist/components/Select/Select.types.js +1 -1
  368. package/dist/components/Select/components/Arrow/Arrow.d.ts +1 -1
  369. package/dist/components/Select/components/Arrow/Arrow.js +18 -13
  370. package/dist/components/Select/components/Arrow/Arrow.props.js +1 -1
  371. package/dist/components/Select/components/Arrow/Arrow.theme.js +7 -4
  372. package/dist/components/Select/components/Arrow/index.js +4 -1
  373. package/dist/components/Select/components/Button/Button.d.ts +2 -2
  374. package/dist/components/Select/components/Button/Button.js +27 -25
  375. package/dist/components/Select/components/Button/index.js +4 -1
  376. package/dist/components/Select/components/Icon/Icon.d.ts +1 -1
  377. package/dist/components/Select/components/Icon/Icon.js +13 -10
  378. package/dist/components/Select/components/Icon/Icon.props.js +1 -1
  379. package/dist/components/Select/components/Icon/Icon.theme.js +7 -4
  380. package/dist/components/Select/components/Icon/index.js +4 -1
  381. package/dist/components/Select/components/Item/Item.d.ts +1 -1
  382. package/dist/components/Select/components/Item/Item.js +45 -25
  383. package/dist/components/Select/components/Item/Item.props.js +1 -1
  384. package/dist/components/Select/components/Item/Item.theme.js +12 -9
  385. package/dist/components/Select/components/Item/index.js +6 -2
  386. package/dist/components/Select/components/List/List.d.ts +2 -2
  387. package/dist/components/Select/components/List/List.js +64 -56
  388. package/dist/components/Select/components/List/List.props.d.ts +1 -1
  389. package/dist/components/Select/components/List/List.props.js +1 -1
  390. package/dist/components/Select/components/List/index.js +4 -1
  391. package/dist/components/Select/components/Option/Option.d.ts +1 -1
  392. package/dist/components/Select/components/Option/Option.js +15 -12
  393. package/dist/components/Select/components/Option/Option.props.js +1 -1
  394. package/dist/components/Select/components/Option/Option.theme.d.ts +1 -1
  395. package/dist/components/Select/components/Option/Option.theme.js +8 -4
  396. package/dist/components/Select/components/Value/Value.d.ts +1 -1
  397. package/dist/components/Select/components/Value/Value.js +15 -21
  398. package/dist/components/Select/components/Value/Value.props.js +1 -1
  399. package/dist/components/Select/index.js +20 -7
  400. package/dist/components/SelectButton/SelectButton.d.ts +1 -1
  401. package/dist/components/SelectButton/SelectButton.js +48 -24
  402. package/dist/components/SelectButton/SelectButton.props.js +1 -1
  403. package/dist/components/SelectButton/SelectButton.theme.js +28 -26
  404. package/dist/components/SelectButton/index.js +7 -2
  405. package/dist/components/Spinner/Spinner.d.ts +1 -1
  406. package/dist/components/Spinner/Spinner.js +28 -11
  407. package/dist/components/Spinner/Spinner.props.js +1 -1
  408. package/dist/components/Spinner/Spinner.themes.js +8 -5
  409. package/dist/components/Spinner/index.js +6 -2
  410. package/dist/components/Switcher/Switcher.js +35 -14
  411. package/dist/components/Switcher/Switcher.props.d.ts +3 -3
  412. package/dist/components/Switcher/Switcher.props.js +1 -1
  413. package/dist/components/Switcher/Switcher.themes.js +16 -13
  414. package/dist/components/Switcher/index.js +6 -2
  415. package/dist/components/Text/Text.d.ts +2 -2
  416. package/dist/components/Text/Text.js +58 -32
  417. package/dist/components/Text/Text.props.d.ts +1 -1
  418. package/dist/components/Text/Text.props.js +1 -1
  419. package/dist/components/Text/Text.themes.js +33 -30
  420. package/dist/components/Text/index.js +9 -2
  421. package/dist/components/TextArea/TextArea.d.ts +2 -2
  422. package/dist/components/TextArea/TextArea.js +74 -27
  423. package/dist/components/TextArea/TextArea.props.js +1 -1
  424. package/dist/components/TextArea/TextArea.themes.js +34 -32
  425. package/dist/components/TextArea/hooks/index.js +4 -1
  426. package/dist/components/TextArea/hooks/useResizeTextArea.d.ts +1 -1
  427. package/dist/components/TextArea/hooks/useResizeTextArea.js +15 -23
  428. package/dist/components/TextArea/index.js +7 -2
  429. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.d.ts +2 -2
  430. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js +27 -22
  431. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.props.d.ts +1 -1
  432. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.props.js +1 -1
  433. package/dist/components/VisuallyHiddenInput/index.js +4 -1
  434. package/dist/fonts/PTS55F_W.woff +0 -0
  435. package/dist/fonts/PTS56F_W.woff +0 -0
  436. package/dist/fonts/PTS75F_W.woff +0 -0
  437. package/dist/fonts/PTS76F_W.woff +0 -0
  438. package/dist/fonts/ptsans.css +34 -0
  439. package/dist/hooks/useThemeClassName/index.js +4 -1
  440. package/dist/hooks/useThemeClassName/useThemeClassName.d.ts +1 -1
  441. package/dist/hooks/useThemeClassName/useThemeClassName.js +21 -27
  442. package/dist/img/logoDark.svg +17 -0
  443. package/dist/img/logoLight.svg +17 -0
  444. package/dist/index-BA3njR2k.mjs +3636 -0
  445. package/dist/index-L8X2o7IH.mjs +44 -0
  446. package/dist/index.js +4 -4
  447. package/dist/lib/appearance/index.js +7 -13
  448. package/dist/lib/platform/index.js +4 -15
  449. package/dist/lib/react/createComponentContext/createComponentContext.d.ts +1 -1
  450. package/dist/lib/react/createComponentContext/createComponentContext.js +18 -16
  451. package/dist/lib/react/createComponentContext/createComponentContext.props.js +1 -1
  452. package/dist/lib/react/createComponentContext/index.js +4 -1
  453. package/dist/lib/react/index.js +4 -1
  454. package/dist/lib/theme/index.js +1 -1
  455. package/dist/lib/theme/type.js +1 -1
  456. package/dist/lib/utils.d.ts +1 -1
  457. package/dist/lib/utils.js +12 -22
  458. package/dist/react-spring_web.modern-Dnq1lqN5.mjs +2144 -0
  459. package/dist/stylesheets/utils/BaseClasses/BaseClasses.js +6 -2
  460. package/dist/stylesheets/utils/BaseClasses/index.js +4 -1
  461. package/dist/useContentPositioning-BLCC-Xty.mjs +213 -0
  462. package/dist/utils/index.js +6 -2
  463. package/dist/utils/noop/noop.js +5 -2
  464. package/dist/utils/omit/omit.js +8 -6
  465. package/package.json +1 -1
  466. package/dist/components/CheckboxGroup/hooks/useCheckboxGroupState.test.js +0 -123
@@ -1,210 +1,73 @@
1
- import { useEffect, useId, useRef, useState } from 'react';
2
- import { useInheritedArrowColor, useIsTouchDevice } from '..';
3
- import { ContextMenuMode } from '../../ContextMenu.enums';
4
- import { contextMenuBus } from '../../utils';
5
- export const useContextMenu = ({ mode: rootMode, defaultOpen, animationDuration, hoverCloseDelay, onOpen, }) => {
6
- const id = useId();
7
- const [open, setOpen] = useState(defaultOpen || false);
8
- const [animatedOpen, setAnimatedOpen] = useState(false);
9
- const [isInsideContent, setIsInsideContent] = useState(false);
10
- const [openedByKeyboard, setOpenedByKeyboard] = useState(false);
11
- const [temporaryHoverClose, setTemporaryHoverClose] = useState(false);
12
- const triggerRef = useRef(null);
13
- const contentRef = useRef(null);
14
- const hoverTimeoutRef = useRef(null);
15
- const closeTimerRef = useRef(null);
16
- const isTouchDevice = useIsTouchDevice();
17
- /**
18
- * The mode of the ContextMenu.Root.
19
- */
20
- const mode = isTouchDevice ? ContextMenuMode.CLICK : rootMode;
21
- /**
22
- * Clears the timers.
23
- */
24
- const clearTimers = () => {
25
- if (hoverTimeoutRef.current) {
26
- clearTimeout(hoverTimeoutRef.current);
27
- hoverTimeoutRef.current = null;
28
- }
29
- if (closeTimerRef.current) {
30
- clearTimeout(closeTimerRef.current);
31
- closeTimerRef.current = null;
32
- }
33
- };
34
- /**
35
- * Closes the menu.
36
- */
37
- const handleClose = () => {
38
- setOpen(false);
39
- onOpen?.(false);
40
- setIsInsideContent(false);
41
- setTemporaryHoverClose(false);
42
- };
43
- /**
44
- * Requests the close of the menu.
45
- */
46
- const requestClose = () => {
47
- clearTimers();
48
- if (mode === ContextMenuMode.HOVER || temporaryHoverClose) {
49
- setAnimatedOpen(false);
50
- closeTimerRef.current = setTimeout(() => {
51
- handleClose();
52
- }, animationDuration);
53
- }
54
- else {
55
- handleClose();
56
- }
57
- };
58
- /**
59
- * Closes the menu immediately.
60
- */
61
- const closeMenuImmediately = () => {
62
- clearTimers();
63
- setAnimatedOpen(false);
64
- setOpen(false);
65
- onOpen?.(false);
66
- setIsInsideContent(false);
67
- setTemporaryHoverClose(false);
68
- };
69
- /**
70
- * Handles the open state change.
71
- */
72
- const handleOpenChange = (value) => {
73
- if (mode === ContextMenuMode.CLICK && defaultOpen !== undefined) {
74
- return;
75
- }
76
- if (value) {
77
- if (closeTimerRef.current) {
78
- clearTimeout(closeTimerRef.current);
79
- closeTimerRef.current = null;
80
- }
81
- if (mode === ContextMenuMode.HOVER || temporaryHoverClose) {
82
- setAnimatedOpen(true);
83
- }
84
- setOpen(true);
85
- onOpen?.(true);
86
- setTimeout(() => contextMenuBus.emit(id), 0);
87
- }
88
- else {
89
- requestClose();
90
- }
91
- };
92
- /**
93
- * The callback function to be called when the menu is opened by keyboard.
94
- */
95
- const onOpenByKeyboard = (value) => {
96
- setOpenedByKeyboard(value);
97
- handleOpenChange(value);
98
- };
99
- /**
100
- * Handles the mouse enter event.
101
- */
102
- const handleMouseEnter = () => {
103
- if (mode !== ContextMenuMode.HOVER && !temporaryHoverClose) {
104
- return;
105
- }
106
- setOpenedByKeyboard(false);
107
- if (closeTimerRef.current) {
108
- clearTimeout(closeTimerRef.current);
109
- closeTimerRef.current = null;
110
- setAnimatedOpen(true);
111
- }
112
- if (open) {
113
- setIsInsideContent(true);
114
- }
115
- else {
116
- if (hoverTimeoutRef.current) {
117
- clearTimeout(hoverTimeoutRef.current);
118
- hoverTimeoutRef.current = null;
119
- }
120
- setAnimatedOpen(true);
121
- setOpen(true);
122
- onOpen?.(true);
123
- setIsInsideContent(true);
124
- setTimeout(() => contextMenuBus.emit(id), 0);
125
- }
126
- };
127
- /**
128
- * Handles the mouse leave event.
129
- */
130
- const handleMouseLeave = () => {
131
- if (mode !== ContextMenuMode.HOVER && !temporaryHoverClose) {
132
- return;
133
- }
134
- setOpenedByKeyboard(false);
135
- if (hoverTimeoutRef.current) {
136
- clearTimeout(hoverTimeoutRef.current);
137
- hoverTimeoutRef.current = null;
138
- }
139
- setIsInsideContent(false);
140
- };
141
- /**
142
- * Enables the temporary hover close.
143
- */
144
- const enableTemporaryHoverClose = () => {
145
- setAnimatedOpen(true);
146
- setIsInsideContent(true);
147
- setTemporaryHoverClose(true);
148
- };
149
- /**
150
- * Closes the menu when the context menu bus emits an event.
151
- */
152
- useEffect(() => {
153
- const unsubscribe = contextMenuBus.subscribe((openedId) => {
154
- if (openedId !== id) {
155
- closeMenuImmediately();
156
- }
157
- });
158
- return unsubscribe;
159
- }, [id]);
160
- /**
161
- * Handles the hover close delay.
162
- */
163
- useEffect(() => {
164
- if (!open || (mode !== ContextMenuMode.HOVER && !temporaryHoverClose)) {
165
- return;
166
- }
167
- if (openedByKeyboard) {
168
- return;
169
- }
170
- if (isInsideContent) {
171
- if (hoverTimeoutRef.current) {
172
- clearTimeout(hoverTimeoutRef.current);
173
- hoverTimeoutRef.current = null;
174
- }
175
- }
176
- else if (!hoverTimeoutRef.current) {
177
- hoverTimeoutRef.current = setTimeout(() => {
178
- requestClose();
179
- }, hoverCloseDelay);
180
- }
181
- }, [
182
- mode,
183
- open,
184
- isInsideContent,
185
- temporaryHoverClose,
186
- hoverCloseDelay,
187
- openedByKeyboard,
188
- ]);
189
- /**
190
- * Updates the inherited arrow color when the menu is open.
191
- */
192
- const inheritedArrowColor = useInheritedArrowColor(open, contentRef);
193
- return {
194
- open,
195
- mode,
196
- onOpenChange: handleOpenChange,
197
- onOpenByKeyboard,
198
- inheritedArrowColor,
199
- triggerRef,
200
- contentRef,
201
- animatedOpen,
202
- animationDuration,
203
- hoverCloseDelay,
204
- temporaryHoverClose,
205
- closeMenuImmediately,
206
- onMouseEnter: handleMouseEnter,
207
- onMouseLeave: handleMouseLeave,
208
- enableTemporaryHoverClose,
209
- };
1
+ import { useId as z, useState as f, useRef as d, useEffect as x } from "react";
2
+ import { ContextMenuMode as o } from "../../ContextMenu.enums.js";
3
+ import "../../providers/LevelProvider/LevelProvider.js";
4
+ import { useInheritedArrowColor as D } from "../useInheritedArrowColor/useInheritedArrowColor.js";
5
+ import "../../../../useContentPositioning-BLCC-Xty.mjs";
6
+ import "../../components/Content/Content.utils.js";
7
+ import "../../ContextMenu.context.js";
8
+ import { useIsTouchDevice as F } from "../useIsTouchDevice/useIsTouchDevice.js";
9
+ import { contextMenuBus as h } from "../../utils/contextMenuBus/contextMenuBus.js";
10
+ const _ = ({
11
+ mode: B,
12
+ defaultOpen: R,
13
+ animationDuration: I,
14
+ hoverCloseDelay: T,
15
+ onOpen: r
16
+ }) => {
17
+ const a = z(), [i, m] = f(R || !1), [L, c] = f(!1), [M, n] = f(!1), [y, C] = f(!1), [s, b] = f(!1), A = d(null), E = d(null), e = d(null), t = d(null), u = F() ? o.CLICK : B, H = () => {
18
+ e.current && (clearTimeout(e.current), e.current = null), t.current && (clearTimeout(t.current), t.current = null);
19
+ }, v = () => {
20
+ m(!1), r == null || r(!1), n(!1), b(!1);
21
+ }, K = () => {
22
+ H(), u === o.HOVER || s ? (c(!1), t.current = setTimeout(() => {
23
+ v();
24
+ }, I)) : v();
25
+ }, V = () => {
26
+ H(), c(!1), m(!1), r == null || r(!1), n(!1), b(!1);
27
+ }, g = (l) => {
28
+ u === o.CLICK && R !== void 0 || (l ? (t.current && (clearTimeout(t.current), t.current = null), (u === o.HOVER || s) && c(!0), m(!0), r == null || r(!0), setTimeout(() => h.emit(a), 0)) : K());
29
+ }, p = (l) => {
30
+ C(l), g(l);
31
+ }, w = () => {
32
+ u !== o.HOVER && !s || (C(!1), t.current && (clearTimeout(t.current), t.current = null, c(!0)), i ? n(!0) : (e.current && (clearTimeout(e.current), e.current = null), c(!0), m(!0), r == null || r(!0), n(!0), setTimeout(() => h.emit(a), 0)));
33
+ }, q = () => {
34
+ u !== o.HOVER && !s || (C(!1), e.current && (clearTimeout(e.current), e.current = null), n(!1));
35
+ }, S = () => {
36
+ c(!0), n(!0), b(!0);
37
+ };
38
+ x(() => h.subscribe((k) => {
39
+ k !== a && V();
40
+ }), [a]), x(() => {
41
+ !i || u !== o.HOVER && !s || y || (M ? e.current && (clearTimeout(e.current), e.current = null) : e.current || (e.current = setTimeout(() => {
42
+ K();
43
+ }, T)));
44
+ }, [
45
+ u,
46
+ i,
47
+ M,
48
+ s,
49
+ T,
50
+ y
51
+ ]);
52
+ const j = D(i, E);
53
+ return {
54
+ open: i,
55
+ mode: u,
56
+ onOpenChange: g,
57
+ onOpenByKeyboard: p,
58
+ inheritedArrowColor: j,
59
+ triggerRef: A,
60
+ contentRef: E,
61
+ animatedOpen: L,
62
+ animationDuration: I,
63
+ hoverCloseDelay: T,
64
+ temporaryHoverClose: s,
65
+ closeMenuImmediately: V,
66
+ onMouseEnter: w,
67
+ onMouseLeave: q,
68
+ enableTemporaryHoverClose: S
69
+ };
70
+ };
71
+ export {
72
+ _ as useContextMenu
210
73
  };
@@ -1,44 +1,40 @@
1
- import { useState } from 'react';
2
- import { useLevelContext } from '../../providers/LevelProvider';
3
- export const useContextMenuItemFocus = ({ displayName, id, isDisabled, hasSubmenu, onMouseEnter, onMouseLeave, }) => {
4
- const [isFocused, setIsFocused] = useState(false);
5
- const { setActiveItemId } = useLevelContext(displayName);
6
- if (isDisabled) {
7
- return {
8
- dataHighlighted: undefined,
9
- onFocus: undefined,
10
- onMouseEnter: undefined,
11
- onBlur: undefined,
12
- onMouseLeave: undefined,
13
- onKeyDown: undefined,
14
- };
1
+ import { useState as l } from "react";
2
+ import { useLevelContext as v } from "../../providers/LevelProvider/LevelProvider.js";
3
+ const g = ({
4
+ displayName: s,
5
+ id: r,
6
+ isDisabled: e,
7
+ hasSubmenu: i,
8
+ onMouseEnter: d,
9
+ onMouseLeave: f
10
+ }) => {
11
+ const [n, o] = l(!1), { setActiveItemId: c } = v(s);
12
+ return e ? {
13
+ dataHighlighted: void 0,
14
+ onFocus: void 0,
15
+ onMouseEnter: void 0,
16
+ onBlur: void 0,
17
+ onMouseLeave: void 0,
18
+ onKeyDown: void 0
19
+ } : {
20
+ dataHighlighted: n ? "" : void 0,
21
+ onFocus: () => {
22
+ i || c(r), o(!e);
23
+ },
24
+ onMouseEnter: (t) => {
25
+ i || c(r), o(!e), d == null || d(t);
26
+ },
27
+ onBlur: () => {
28
+ o(!1);
29
+ },
30
+ onMouseLeave: (t) => {
31
+ o(!1), f == null || f(t);
32
+ },
33
+ onKeyDown: (t) => {
34
+ i && t.key === "ArrowLeft" && o(!1);
15
35
  }
16
- return {
17
- dataHighlighted: isFocused ? '' : undefined,
18
- onFocus: () => {
19
- if (!hasSubmenu) {
20
- setActiveItemId(id);
21
- }
22
- setIsFocused(!isDisabled);
23
- },
24
- onMouseEnter: (e) => {
25
- if (!hasSubmenu) {
26
- setActiveItemId(id);
27
- }
28
- setIsFocused(!isDisabled);
29
- onMouseEnter?.(e);
30
- },
31
- onBlur: () => {
32
- setIsFocused(false);
33
- },
34
- onMouseLeave: (e) => {
35
- setIsFocused(false);
36
- onMouseLeave?.(e);
37
- },
38
- onKeyDown: (e) => {
39
- if (hasSubmenu && e.key === 'ArrowLeft') {
40
- setIsFocused(false);
41
- }
42
- },
43
- };
36
+ };
37
+ };
38
+ export {
39
+ g as useContextMenuItemFocus
44
40
  };
@@ -1,7 +1,7 @@
1
1
  import { UseContextMenuSubOptions } from './useContextMenuSub.types';
2
2
  export declare function useContextMenuSub({ displayName, mode: initialMode, defaultOpen, }: UseContextMenuSubOptions): {
3
3
  open: boolean;
4
- setOpen: import("react").Dispatch<import("react").SetStateAction<boolean>>;
4
+ setOpen: import('react').Dispatch<import('react').SetStateAction<boolean>>;
5
5
  animatedOpen: boolean;
6
6
  startAnimation: () => void;
7
7
  handleMouseEnter: () => void;
@@ -1,187 +1,66 @@
1
- import { useEffect, useId, useRef, useState } from 'react';
2
- import { useIsTouchDevice } from '..';
3
- import { ContextMenuMode } from '../../ContextMenu.enums';
4
- import { useContextMenuContext } from '../../ContextMenu.context';
5
- import { useLevelContext } from '../../providers/LevelProvider';
6
- export function useContextMenuSub({ displayName, mode: initialMode, defaultOpen, }) {
7
- const triggerId = useId();
8
- const [open, setOpen] = useState(defaultOpen || false);
9
- const [animatedOpen, setAnimatedOpen] = useState(false);
10
- const [isInsideContent, setIsInsideContent] = useState(false);
11
- const [openedByKeyboard, setOpenedByKeyboard] = useState(false);
12
- const hoverTimeoutRef = useRef(null);
13
- const closeTimerRef = useRef(null);
14
- const isTouchDevice = useIsTouchDevice();
15
- const { hoverCloseDelay, animationDuration } = useContextMenuContext(displayName);
16
- const { activeItemId } = useLevelContext(displayName);
17
- /**
18
- * The mode of the submenu.
19
- */
20
- const mode = isTouchDevice ? ContextMenuMode.CLICK : initialMode;
21
- /**
22
- * Clears the timers.
23
- */
24
- const clearTimers = () => {
25
- if (hoverTimeoutRef.current) {
26
- clearTimeout(hoverTimeoutRef.current);
27
- hoverTimeoutRef.current = null;
28
- }
29
- if (closeTimerRef.current) {
30
- clearTimeout(closeTimerRef.current);
31
- closeTimerRef.current = null;
32
- }
33
- };
34
- /**
35
- * Closes the submenu immediately.
36
- */
37
- const handleCloseImmediate = () => {
38
- clearTimers();
39
- setAnimatedOpen(false);
40
- setOpen(false);
41
- setIsInsideContent(false);
42
- setOpenedByKeyboard(false);
43
- };
44
- /**
45
- * Requests the close of the submenu.
46
- */
47
- const requestClose = () => {
48
- clearTimers();
49
- if (mode === ContextMenuMode.HOVER) {
50
- setAnimatedOpen(false);
51
- closeTimerRef.current = setTimeout(() => {
52
- setOpen(false);
53
- setIsInsideContent(false);
54
- setOpenedByKeyboard(false);
55
- }, animationDuration);
56
- }
57
- else {
58
- setOpen(false);
59
- setIsInsideContent(false);
60
- setOpenedByKeyboard(false);
61
- }
62
- };
63
- /**
64
- * Handles the open state change.
65
- */
66
- const handleOpenChange = (value) => {
67
- if (defaultOpen !== undefined) {
68
- setOpen(defaultOpen);
69
- setAnimatedOpen(defaultOpen);
70
- setOpenedByKeyboard(false);
71
- return;
72
- }
73
- if (mode === ContextMenuMode.CLICK) {
74
- setOpen(value);
75
- setAnimatedOpen(value);
76
- return;
77
- }
78
- if (value) {
79
- if (closeTimerRef.current) {
80
- clearTimeout(closeTimerRef.current);
81
- closeTimerRef.current = null;
82
- }
83
- if (mode === ContextMenuMode.HOVER) {
84
- setAnimatedOpen(true);
85
- }
86
- setOpen(true);
87
- }
88
- else {
89
- requestClose();
90
- }
91
- };
92
- /**
93
- * The callback function to be called when the submenu is opened by keyboard.
94
- */
95
- const onOpenByKeyboard = (value) => {
96
- setOpenedByKeyboard(value);
97
- handleOpenChange(value);
98
- };
99
- /**
100
- * Handles the mouse enter event.
101
- */
102
- const handleMouseEnter = () => {
103
- if (mode !== ContextMenuMode.HOVER) {
104
- return;
105
- }
106
- setOpenedByKeyboard(false);
107
- if (closeTimerRef.current) {
108
- clearTimeout(closeTimerRef.current);
109
- closeTimerRef.current = null;
110
- setAnimatedOpen(true);
111
- }
112
- if (open) {
113
- setIsInsideContent(true);
114
- }
115
- else {
116
- if (hoverTimeoutRef.current) {
117
- clearTimeout(hoverTimeoutRef.current);
118
- hoverTimeoutRef.current = null;
119
- }
120
- setAnimatedOpen(true);
121
- setOpen(true);
122
- setIsInsideContent(true);
123
- }
124
- };
125
- /**
126
- * Handles the mouse leave event.
127
- */
128
- const handleMouseLeave = () => {
129
- if (mode !== ContextMenuMode.HOVER) {
130
- return;
131
- }
132
- setOpenedByKeyboard(false);
133
- if (hoverTimeoutRef.current) {
134
- clearTimeout(hoverTimeoutRef.current);
135
- hoverTimeoutRef.current = null;
136
- }
137
- setIsInsideContent(false);
138
- };
139
- /**
140
- * Closes the submenu when the active item id changes.
141
- */
142
- useEffect(() => {
143
- if (activeItemId !== triggerId && open && defaultOpen === undefined) {
144
- handleCloseImmediate();
145
- }
146
- }, [activeItemId, open, defaultOpen]);
147
- /**
148
- * Handles the hover close delay.
149
- */
150
- useEffect(() => {
151
- if (!open || mode !== ContextMenuMode.HOVER) {
152
- return;
153
- }
154
- if (openedByKeyboard) {
155
- return;
156
- }
157
- if (isInsideContent) {
158
- if (hoverTimeoutRef.current) {
159
- clearTimeout(hoverTimeoutRef.current);
160
- hoverTimeoutRef.current = null;
161
- }
162
- return;
163
- }
164
- if (!hoverTimeoutRef.current) {
165
- hoverTimeoutRef.current = setTimeout(() => {
166
- requestClose();
167
- }, hoverCloseDelay);
168
- }
169
- return () => {
170
- if (hoverTimeoutRef.current) {
171
- clearTimeout(hoverTimeoutRef.current);
172
- hoverTimeoutRef.current = null;
173
- }
174
- };
175
- }, [mode, open, isInsideContent, hoverCloseDelay, openedByKeyboard]);
176
- return {
177
- open,
178
- setOpen,
179
- animatedOpen,
180
- startAnimation: () => setAnimatedOpen(true),
181
- handleMouseEnter,
182
- handleMouseLeave,
183
- handleOpenChange,
184
- onOpenByKeyboard,
185
- triggerId,
186
- };
1
+ import { useId as L, useState as a, useRef as v, useEffect as x } from "react";
2
+ import { ContextMenuMode as s } from "../../ContextMenu.enums.js";
3
+ import { useLevelContext as g } from "../../providers/LevelProvider/LevelProvider.js";
4
+ import "../../../../useContentPositioning-BLCC-Xty.mjs";
5
+ import "../../components/Content/Content.utils.js";
6
+ import { useIsTouchDevice as B } from "../useIsTouchDevice/useIsTouchDevice.js";
7
+ import { useContextMenuContext as A } from "../../ContextMenu.context.js";
8
+ function G({
9
+ displayName: m,
10
+ mode: y,
11
+ defaultOpen: c
12
+ }) {
13
+ const d = L(), [i, t] = a(c || !1), [M, n] = a(!1), [C, l] = a(!1), [T, u] = a(!1), e = v(null), r = v(null), O = B(), { hoverCloseDelay: I, animationDuration: H } = A(m), { activeItemId: p } = g(m), o = O ? s.CLICK : y, h = () => {
14
+ e.current && (clearTimeout(e.current), e.current = null), r.current && (clearTimeout(r.current), r.current = null);
15
+ }, K = () => {
16
+ h(), n(!1), t(!1), l(!1), u(!1);
17
+ }, R = () => {
18
+ h(), o === s.HOVER ? (n(!1), r.current = setTimeout(() => {
19
+ t(!1), l(!1), u(!1);
20
+ }, H)) : (t(!1), l(!1), u(!1));
21
+ }, E = (f) => {
22
+ if (c !== void 0) {
23
+ t(c), n(c), u(!1);
24
+ return;
25
+ }
26
+ if (o === s.CLICK) {
27
+ t(f), n(f);
28
+ return;
29
+ }
30
+ f ? (r.current && (clearTimeout(r.current), r.current = null), o === s.HOVER && n(!0), t(!0)) : R();
31
+ }, V = (f) => {
32
+ u(f), E(f);
33
+ }, b = () => {
34
+ o === s.HOVER && (u(!1), r.current && (clearTimeout(r.current), r.current = null, n(!0)), i || (e.current && (clearTimeout(e.current), e.current = null), n(!0), t(!0)), l(!0));
35
+ }, D = () => {
36
+ o === s.HOVER && (u(!1), e.current && (clearTimeout(e.current), e.current = null), l(!1));
37
+ };
38
+ return x(() => {
39
+ p !== d && i && c === void 0 && K();
40
+ }, [p, i, c]), x(() => {
41
+ if (!(!i || o !== s.HOVER) && !T) {
42
+ if (C) {
43
+ e.current && (clearTimeout(e.current), e.current = null);
44
+ return;
45
+ }
46
+ return e.current || (e.current = setTimeout(() => {
47
+ R();
48
+ }, I)), () => {
49
+ e.current && (clearTimeout(e.current), e.current = null);
50
+ };
51
+ }
52
+ }, [o, i, C, I, T]), {
53
+ open: i,
54
+ setOpen: t,
55
+ animatedOpen: M,
56
+ startAnimation: () => n(!0),
57
+ handleMouseEnter: b,
58
+ handleMouseLeave: D,
59
+ handleOpenChange: E,
60
+ onOpenByKeyboard: V,
61
+ triggerId: d
62
+ };
187
63
  }
64
+ export {
65
+ G as useContextMenuSub
66
+ };
@@ -6,8 +6,8 @@ export declare const useContextMenuSubMenu: ({ displayName, mode: rootMode, defa
6
6
  onOpenChange: (value: boolean) => void;
7
7
  onOpenByKeyboard: (value: boolean) => void;
8
8
  inheritedArrowColor: string | null;
9
- triggerRef: import("react").RefObject<HTMLButtonElement>;
10
- contentRef: import("react").RefObject<HTMLDivElement>;
9
+ triggerRef: import('react').RefObject<HTMLButtonElement>;
10
+ contentRef: import('react').RefObject<HTMLDivElement>;
11
11
  animatedOpen: boolean;
12
12
  animationDuration: number;
13
13
  hoverCloseDelay: number;