@astral/ui 4.81.0 → 4.83.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 (457) hide show
  1. package/components/ConfirmDialog/ConfirmDialog.js +3 -1
  2. package/components/ConfirmDialog/constants.d.ts +4 -0
  3. package/components/ConfirmDialog/constants.js +5 -0
  4. package/components/ConfirmDialog/index.d.ts +1 -0
  5. package/components/ConfirmDialog/index.js +1 -0
  6. package/components/ConfirmDialog/public.d.ts +1 -0
  7. package/components/ConfirmDialog/public.js +1 -0
  8. package/components/ConfirmDialog/types.d.ts +1 -1
  9. package/components/NewPopover/NewPopover.d.ts +1 -1
  10. package/components/NewPopover/NewPopover.js +14 -5
  11. package/components/NewPopover/constants.d.ts +7 -0
  12. package/components/NewPopover/constants.js +11 -0
  13. package/components/NewPopover/styles.d.ts +4 -0
  14. package/components/NewPopover/styles.js +100 -4
  15. package/components/NewPopover/types.d.ts +13 -0
  16. package/components/NewPopover/useLogic/useLogic.d.ts +7 -3
  17. package/components/NewPopover/useLogic/useLogic.js +15 -1
  18. package/components/Onboarding/Onboarding.d.ts +35 -0
  19. package/components/Onboarding/Onboarding.js +46 -0
  20. package/components/Onboarding/constants.d.ts +34 -0
  21. package/components/Onboarding/constants.js +34 -0
  22. package/components/Onboarding/core/ActiveStepStore/ActiveStepStore.d.ts +50 -0
  23. package/components/Onboarding/core/ActiveStepStore/ActiveStepStore.js +63 -0
  24. package/components/Onboarding/core/ActiveStepStore/index.d.ts +1 -0
  25. package/components/Onboarding/core/ActiveStepStore/index.js +1 -0
  26. package/components/Onboarding/core/ExitController/ExitController.d.ts +46 -0
  27. package/components/Onboarding/core/ExitController/ExitController.js +56 -0
  28. package/components/Onboarding/core/ExitController/index.d.ts +1 -0
  29. package/components/Onboarding/core/ExitController/index.js +1 -0
  30. package/components/Onboarding/core/OnboardingTour/OnboardingTour.d.ts +101 -0
  31. package/components/Onboarding/core/OnboardingTour/OnboardingTour.js +262 -0
  32. package/components/Onboarding/core/OnboardingTour/index.d.ts +1 -0
  33. package/components/Onboarding/core/OnboardingTour/index.js +1 -0
  34. package/components/Onboarding/core/ProgressStorage/ProgressStorage.d.ts +22 -0
  35. package/components/Onboarding/core/ProgressStorage/ProgressStorage.js +58 -0
  36. package/components/Onboarding/core/ProgressStorage/index.d.ts +1 -0
  37. package/components/Onboarding/core/ProgressStorage/index.js +1 -0
  38. package/components/Onboarding/core/StepNavigator/StepNavigator.d.ts +28 -0
  39. package/components/Onboarding/core/StepNavigator/StepNavigator.js +73 -0
  40. package/components/Onboarding/core/StepNavigator/index.d.ts +1 -0
  41. package/components/Onboarding/core/StepNavigator/index.js +1 -0
  42. package/components/Onboarding/core/StepResolver/StepResolver.d.ts +19 -0
  43. package/components/Onboarding/core/StepResolver/StepResolver.js +49 -0
  44. package/components/Onboarding/core/StepResolver/index.d.ts +1 -0
  45. package/components/Onboarding/core/StepResolver/index.js +1 -0
  46. package/components/Onboarding/core/StepsController/StepsController.d.ts +16 -0
  47. package/components/Onboarding/core/StepsController/StepsController.js +35 -0
  48. package/components/Onboarding/core/StepsController/index.d.ts +1 -0
  49. package/components/Onboarding/core/StepsController/index.js +1 -0
  50. package/components/Onboarding/faker.d.ts +27 -0
  51. package/components/Onboarding/faker.js +79 -0
  52. package/components/Onboarding/index.d.ts +5 -0
  53. package/components/Onboarding/index.js +3 -0
  54. package/components/Onboarding/public.d.ts +5 -0
  55. package/components/Onboarding/public.js +3 -0
  56. package/components/Onboarding/services/LocalStorageSaveStrategy/LocalStorageSaveStrategy.d.ts +20 -0
  57. package/components/Onboarding/services/LocalStorageSaveStrategy/LocalStorageSaveStrategy.js +24 -0
  58. package/components/Onboarding/services/LocalStorageSaveStrategy/index.d.ts +1 -0
  59. package/components/Onboarding/services/LocalStorageSaveStrategy/index.js +1 -0
  60. package/components/Onboarding/types/config.d.ts +18 -0
  61. package/components/Onboarding/types/config.js +1 -0
  62. package/components/Onboarding/types/index.d.ts +4 -0
  63. package/components/Onboarding/types/index.js +4 -0
  64. package/components/Onboarding/types/progress.d.ts +28 -0
  65. package/components/Onboarding/types/progress.js +1 -0
  66. package/components/Onboarding/types/step.d.ts +144 -0
  67. package/components/Onboarding/types/step.js +1 -0
  68. package/components/Onboarding/types/tour.d.ts +168 -0
  69. package/components/Onboarding/types/tour.js +1 -0
  70. package/components/Onboarding/ui/ConfirmExit/ConfirmExit.d.ts +10 -0
  71. package/components/Onboarding/ui/ConfirmExit/ConfirmExit.js +6 -0
  72. package/components/Onboarding/ui/ConfirmExit/index.d.ts +2 -0
  73. package/components/Onboarding/ui/ConfirmExit/index.js +1 -0
  74. package/components/Onboarding/ui/ConfirmExit/styles.d.ts +30 -0
  75. package/components/Onboarding/ui/ConfirmExit/styles.js +11 -0
  76. package/components/Onboarding/ui/OnboardingContainer/OnboardingContainer.d.ts +12 -0
  77. package/components/Onboarding/ui/OnboardingContainer/OnboardingContainer.js +15 -0
  78. package/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/OnboardingErrorBoundary.d.ts +22 -0
  79. package/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/OnboardingErrorBoundary.js +20 -0
  80. package/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/index.d.ts +2 -0
  81. package/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/index.js +1 -0
  82. package/components/Onboarding/ui/OnboardingContainer/index.d.ts +1 -0
  83. package/components/Onboarding/ui/OnboardingContainer/index.js +1 -0
  84. package/components/Onboarding/ui/OnboardingContainer/useLogic/index.d.ts +1 -0
  85. package/components/Onboarding/ui/OnboardingContainer/useLogic/index.js +1 -0
  86. package/components/Onboarding/ui/OnboardingContainer/useLogic/useLogic.d.ts +10 -0
  87. package/components/Onboarding/ui/OnboardingContainer/useLogic/useLogic.js +14 -0
  88. package/components/Onboarding/ui/Overlay/Overlay.d.ts +29 -0
  89. package/components/Onboarding/ui/Overlay/Overlay.js +24 -0
  90. package/components/Onboarding/ui/Overlay/constants.d.ts +7 -0
  91. package/components/Onboarding/ui/Overlay/constants.js +8 -0
  92. package/components/Onboarding/ui/Overlay/index.d.ts +2 -0
  93. package/components/Onboarding/ui/Overlay/index.js +1 -0
  94. package/components/Onboarding/ui/Overlay/styles.d.ts +22 -0
  95. package/components/Onboarding/ui/Overlay/styles.js +57 -0
  96. package/components/Onboarding/ui/Overlay/useLogic/index.d.ts +1 -0
  97. package/components/Onboarding/ui/Overlay/useLogic/index.js +1 -0
  98. package/components/Onboarding/ui/Overlay/useLogic/useLogic.d.ts +13 -0
  99. package/components/Onboarding/ui/Overlay/useLogic/useLogic.js +10 -0
  100. package/components/Onboarding/ui/StepStrategy/StepStrategy.d.ts +6 -0
  101. package/components/Onboarding/ui/StepStrategy/StepStrategy.js +17 -0
  102. package/components/Onboarding/ui/StepStrategy/index.d.ts +1 -0
  103. package/components/Onboarding/ui/StepStrategy/index.js +1 -0
  104. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/HighlightStep.d.ts +6 -0
  105. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/HighlightStep.js +19 -0
  106. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/index.d.ts +2 -0
  107. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/index.js +1 -0
  108. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/styles.d.ts +25 -0
  109. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/styles.js +56 -0
  110. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/index.d.ts +1 -0
  111. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/index.js +1 -0
  112. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/useLogic.d.ts +12 -0
  113. package/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/useLogic.js +37 -0
  114. package/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/StandaloneStep.d.ts +6 -0
  115. package/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/StandaloneStep.js +11 -0
  116. package/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/index.d.ts +2 -0
  117. package/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/index.js +1 -0
  118. package/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/styles.d.ts +13 -0
  119. package/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/styles.js +9 -0
  120. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/ProgressDots.d.ts +6 -0
  121. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/ProgressDots.js +15 -0
  122. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/constants.d.ts +4 -0
  123. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/constants.js +5 -0
  124. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/index.d.ts +2 -0
  125. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/index.js +1 -0
  126. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/styles.d.ts +9 -0
  127. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/styles.js +34 -0
  128. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/StepFooter.d.ts +9 -0
  129. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/StepFooter.js +18 -0
  130. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/constants.d.ts +4 -0
  131. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/constants.js +4 -0
  132. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/index.d.ts +2 -0
  133. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/index.js +1 -0
  134. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/styles.d.ts +21 -0
  135. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/styles.js +28 -0
  136. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/index.d.ts +1 -0
  137. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/index.js +1 -0
  138. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/useLogic.d.ts +16 -0
  139. package/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/useLogic.js +22 -0
  140. package/components/Onboarding/ui/StepStrategy/steps/types.d.ts +16 -0
  141. package/components/Onboarding/ui/StepStrategy/steps/types.js +1 -0
  142. package/components/Onboarding/ui/StepStrategy/useLogic/index.d.ts +1 -0
  143. package/components/Onboarding/ui/StepStrategy/useLogic/index.js +1 -0
  144. package/components/Onboarding/ui/StepStrategy/useLogic/useLogic.d.ts +47 -0
  145. package/components/Onboarding/ui/StepStrategy/useLogic/useLogic.js +51 -0
  146. package/components/Onboarding/ui/hooks/useActiveStep/index.d.ts +1 -0
  147. package/components/Onboarding/ui/hooks/useActiveStep/index.js +1 -0
  148. package/components/Onboarding/ui/hooks/useActiveStep/useActiveStep.d.ts +6 -0
  149. package/components/Onboarding/ui/hooks/useActiveStep/useActiveStep.js +7 -0
  150. package/components/Onboarding/ui/hooks/useDelayedActiveStep/index.d.ts +1 -0
  151. package/components/Onboarding/ui/hooks/useDelayedActiveStep/index.js +1 -0
  152. package/components/Onboarding/ui/hooks/useDelayedActiveStep/useDelayedActiveStep.d.ts +15 -0
  153. package/components/Onboarding/ui/hooks/useDelayedActiveStep/useDelayedActiveStep.js +19 -0
  154. package/components/Onboarding/ui/hooks/useFocusTrap/index.d.ts +1 -0
  155. package/components/Onboarding/ui/hooks/useFocusTrap/index.js +1 -0
  156. package/components/Onboarding/ui/hooks/useFocusTrap/useFocusTrap.d.ts +6 -0
  157. package/components/Onboarding/ui/hooks/useFocusTrap/useFocusTrap.js +33 -0
  158. package/components/Onboarding/ui/hooks/useKeyboardNav/index.d.ts +1 -0
  159. package/components/Onboarding/ui/hooks/useKeyboardNav/index.js +1 -0
  160. package/components/Onboarding/ui/hooks/useKeyboardNav/useKeyboardNav.d.ts +11 -0
  161. package/components/Onboarding/ui/hooks/useKeyboardNav/useKeyboardNav.js +62 -0
  162. package/components/Onboarding/ui/hooks/useStepTransition/index.d.ts +1 -0
  163. package/components/Onboarding/ui/hooks/useStepTransition/index.js +1 -0
  164. package/components/Onboarding/ui/hooks/useStepTransition/useStepTransition.d.ts +30 -0
  165. package/components/Onboarding/ui/hooks/useStepTransition/useStepTransition.js +46 -0
  166. package/components/Onboarding/ui/hooks/useTargetAnchor/index.d.ts +1 -0
  167. package/components/Onboarding/ui/hooks/useTargetAnchor/index.js +1 -0
  168. package/components/Onboarding/ui/hooks/useTargetAnchor/useTargetAnchor.d.ts +37 -0
  169. package/components/Onboarding/ui/hooks/useTargetAnchor/useTargetAnchor.js +56 -0
  170. package/components/Onboarding/ui/hooks/useTrackedRect/index.d.ts +1 -0
  171. package/components/Onboarding/ui/hooks/useTrackedRect/index.js +1 -0
  172. package/components/Onboarding/ui/hooks/useTrackedRect/useTrackedRect.d.ts +5 -0
  173. package/components/Onboarding/ui/hooks/useTrackedRect/useTrackedRect.js +43 -0
  174. package/components/Onboarding/ui/hooks/useViewportSize/index.d.ts +1 -0
  175. package/components/Onboarding/ui/hooks/useViewportSize/index.js +1 -0
  176. package/components/Onboarding/ui/hooks/useViewportSize/useViewportSize.d.ts +5 -0
  177. package/components/Onboarding/ui/hooks/useViewportSize/useViewportSize.js +14 -0
  178. package/components/Onboarding/ui/styles.d.ts +5 -0
  179. package/components/Onboarding/ui/styles.js +15 -0
  180. package/components/Onboarding/utils/createVirtualAnchor/createVirtualAnchor.d.ts +12 -0
  181. package/components/Onboarding/utils/createVirtualAnchor/createVirtualAnchor.js +6 -0
  182. package/components/Onboarding/utils/createVirtualAnchor/index.d.ts +1 -0
  183. package/components/Onboarding/utils/createVirtualAnchor/index.js +1 -0
  184. package/components/Onboarding/utils/geometry/index.d.ts +4 -0
  185. package/components/Onboarding/utils/geometry/index.js +4 -0
  186. package/components/Onboarding/utils/geometry/overlayPath/index.d.ts +1 -0
  187. package/components/Onboarding/utils/geometry/overlayPath/index.js +1 -0
  188. package/components/Onboarding/utils/geometry/overlayPath/overlayPath.d.ts +6 -0
  189. package/components/Onboarding/utils/geometry/overlayPath/overlayPath.js +29 -0
  190. package/components/Onboarding/utils/geometry/parseOffset/index.d.ts +1 -0
  191. package/components/Onboarding/utils/geometry/parseOffset/index.js +1 -0
  192. package/components/Onboarding/utils/geometry/parseOffset/parseOffset.d.ts +4 -0
  193. package/components/Onboarding/utils/geometry/parseOffset/parseOffset.js +5 -0
  194. package/components/Onboarding/utils/geometry/rect/index.d.ts +2 -0
  195. package/components/Onboarding/utils/geometry/rect/index.js +1 -0
  196. package/components/Onboarding/utils/geometry/rect/rect.d.ts +34 -0
  197. package/components/Onboarding/utils/geometry/rect/rect.js +60 -0
  198. package/components/Onboarding/utils/geometry/viewport/index.d.ts +2 -0
  199. package/components/Onboarding/utils/geometry/viewport/index.js +1 -0
  200. package/components/Onboarding/utils/geometry/viewport/viewport.d.ts +14 -0
  201. package/components/Onboarding/utils/geometry/viewport/viewport.js +10 -0
  202. package/components/Onboarding/utils/getScrollParents/getScrollParents.d.ts +7 -0
  203. package/components/Onboarding/utils/getScrollParents/getScrollParents.js +24 -0
  204. package/components/Onboarding/utils/getScrollParents/index.d.ts +1 -0
  205. package/components/Onboarding/utils/getScrollParents/index.js +1 -0
  206. package/components/Onboarding/utils/getTargetElement/getTargetElement.d.ts +4 -0
  207. package/components/Onboarding/utils/getTargetElement/getTargetElement.js +9 -0
  208. package/components/Onboarding/utils/getTargetElement/index.d.ts +1 -0
  209. package/components/Onboarding/utils/getTargetElement/index.js +1 -0
  210. package/components/Onboarding/utils/observeRemoval/index.d.ts +1 -0
  211. package/components/Onboarding/utils/observeRemoval/index.js +1 -0
  212. package/components/Onboarding/utils/observeRemoval/observeRemoval.d.ts +4 -0
  213. package/components/Onboarding/utils/observeRemoval/observeRemoval.js +13 -0
  214. package/components/Onboarding/utils/scrollIntoView/index.d.ts +1 -0
  215. package/components/Onboarding/utils/scrollIntoView/index.js +1 -0
  216. package/components/Onboarding/utils/scrollIntoView/scrollIntoView.d.ts +13 -0
  217. package/components/Onboarding/utils/scrollIntoView/scrollIntoView.js +85 -0
  218. package/components/Onboarding/utils/waitForElement/index.d.ts +2 -0
  219. package/components/Onboarding/utils/waitForElement/index.js +1 -0
  220. package/components/Onboarding/utils/waitForElement/waitForElement.d.ts +21 -0
  221. package/components/Onboarding/utils/waitForElement/waitForElement.js +45 -0
  222. package/components/Onboarding/validation/index.d.ts +1 -0
  223. package/components/Onboarding/validation/index.js +1 -0
  224. package/components/Onboarding/validation/validateTourConfig/index.d.ts +1 -0
  225. package/components/Onboarding/validation/validateTourConfig/index.js +1 -0
  226. package/components/Onboarding/validation/validateTourConfig/validateTourConfig.d.ts +12 -0
  227. package/components/Onboarding/validation/validateTourConfig/validateTourConfig.js +52 -0
  228. package/components/TagsList/Tag/Tag.js +3 -2
  229. package/node/components/ConfirmDialog/ConfirmDialog.js +3 -1
  230. package/node/components/ConfirmDialog/constants.d.ts +4 -0
  231. package/node/components/ConfirmDialog/constants.js +8 -0
  232. package/node/components/ConfirmDialog/index.d.ts +1 -0
  233. package/node/components/ConfirmDialog/index.js +3 -0
  234. package/node/components/ConfirmDialog/public.d.ts +1 -0
  235. package/node/components/ConfirmDialog/public.js +3 -0
  236. package/node/components/ConfirmDialog/types.d.ts +1 -1
  237. package/node/components/NewPopover/NewPopover.d.ts +1 -1
  238. package/node/components/NewPopover/NewPopover.js +12 -3
  239. package/node/components/NewPopover/constants.d.ts +7 -0
  240. package/node/components/NewPopover/constants.js +12 -1
  241. package/node/components/NewPopover/styles.d.ts +4 -0
  242. package/node/components/NewPopover/styles.js +101 -5
  243. package/node/components/NewPopover/types.d.ts +13 -0
  244. package/node/components/NewPopover/useLogic/useLogic.d.ts +7 -3
  245. package/node/components/NewPopover/useLogic/useLogic.js +15 -1
  246. package/node/components/Onboarding/Onboarding.d.ts +35 -0
  247. package/node/components/Onboarding/Onboarding.js +51 -0
  248. package/node/components/Onboarding/constants.d.ts +34 -0
  249. package/node/components/Onboarding/constants.js +37 -0
  250. package/node/components/Onboarding/core/ActiveStepStore/ActiveStepStore.d.ts +50 -0
  251. package/node/components/Onboarding/core/ActiveStepStore/ActiveStepStore.js +67 -0
  252. package/node/components/Onboarding/core/ActiveStepStore/index.d.ts +1 -0
  253. package/node/components/Onboarding/core/ActiveStepStore/index.js +17 -0
  254. package/node/components/Onboarding/core/ExitController/ExitController.d.ts +46 -0
  255. package/node/components/Onboarding/core/ExitController/ExitController.js +60 -0
  256. package/node/components/Onboarding/core/ExitController/index.d.ts +1 -0
  257. package/node/components/Onboarding/core/ExitController/index.js +17 -0
  258. package/node/components/Onboarding/core/OnboardingTour/OnboardingTour.d.ts +101 -0
  259. package/node/components/Onboarding/core/OnboardingTour/OnboardingTour.js +266 -0
  260. package/node/components/Onboarding/core/OnboardingTour/index.d.ts +1 -0
  261. package/node/components/Onboarding/core/OnboardingTour/index.js +5 -0
  262. package/node/components/Onboarding/core/ProgressStorage/ProgressStorage.d.ts +22 -0
  263. package/node/components/Onboarding/core/ProgressStorage/ProgressStorage.js +62 -0
  264. package/node/components/Onboarding/core/ProgressStorage/index.d.ts +1 -0
  265. package/node/components/Onboarding/core/ProgressStorage/index.js +17 -0
  266. package/node/components/Onboarding/core/StepNavigator/StepNavigator.d.ts +28 -0
  267. package/node/components/Onboarding/core/StepNavigator/StepNavigator.js +77 -0
  268. package/node/components/Onboarding/core/StepNavigator/index.d.ts +1 -0
  269. package/node/components/Onboarding/core/StepNavigator/index.js +17 -0
  270. package/node/components/Onboarding/core/StepResolver/StepResolver.d.ts +19 -0
  271. package/node/components/Onboarding/core/StepResolver/StepResolver.js +53 -0
  272. package/node/components/Onboarding/core/StepResolver/index.d.ts +1 -0
  273. package/node/components/Onboarding/core/StepResolver/index.js +17 -0
  274. package/node/components/Onboarding/core/StepsController/StepsController.d.ts +16 -0
  275. package/node/components/Onboarding/core/StepsController/StepsController.js +39 -0
  276. package/node/components/Onboarding/core/StepsController/index.d.ts +1 -0
  277. package/node/components/Onboarding/core/StepsController/index.js +17 -0
  278. package/node/components/Onboarding/faker.d.ts +27 -0
  279. package/node/components/Onboarding/faker.js +88 -0
  280. package/node/components/Onboarding/index.d.ts +5 -0
  281. package/node/components/Onboarding/index.js +9 -0
  282. package/node/components/Onboarding/public.d.ts +5 -0
  283. package/node/components/Onboarding/public.js +9 -0
  284. package/node/components/Onboarding/services/LocalStorageSaveStrategy/LocalStorageSaveStrategy.d.ts +20 -0
  285. package/node/components/Onboarding/services/LocalStorageSaveStrategy/LocalStorageSaveStrategy.js +29 -0
  286. package/node/components/Onboarding/services/LocalStorageSaveStrategy/index.d.ts +1 -0
  287. package/node/components/Onboarding/services/LocalStorageSaveStrategy/index.js +17 -0
  288. package/node/components/Onboarding/types/config.d.ts +18 -0
  289. package/node/components/Onboarding/types/config.js +2 -0
  290. package/node/components/Onboarding/types/index.d.ts +4 -0
  291. package/node/components/Onboarding/types/index.js +20 -0
  292. package/node/components/Onboarding/types/progress.d.ts +28 -0
  293. package/node/components/Onboarding/types/progress.js +2 -0
  294. package/node/components/Onboarding/types/step.d.ts +144 -0
  295. package/node/components/Onboarding/types/step.js +2 -0
  296. package/node/components/Onboarding/types/tour.d.ts +168 -0
  297. package/node/components/Onboarding/types/tour.js +2 -0
  298. package/node/components/Onboarding/ui/ConfirmExit/ConfirmExit.d.ts +10 -0
  299. package/node/components/Onboarding/ui/ConfirmExit/ConfirmExit.js +10 -0
  300. package/node/components/Onboarding/ui/ConfirmExit/index.d.ts +2 -0
  301. package/node/components/Onboarding/ui/ConfirmExit/index.js +5 -0
  302. package/node/components/Onboarding/ui/ConfirmExit/styles.d.ts +30 -0
  303. package/node/components/Onboarding/ui/ConfirmExit/styles.js +14 -0
  304. package/node/components/Onboarding/ui/OnboardingContainer/OnboardingContainer.d.ts +12 -0
  305. package/node/components/Onboarding/ui/OnboardingContainer/OnboardingContainer.js +19 -0
  306. package/node/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/OnboardingErrorBoundary.d.ts +22 -0
  307. package/node/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/OnboardingErrorBoundary.js +24 -0
  308. package/node/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/index.d.ts +2 -0
  309. package/node/components/Onboarding/ui/OnboardingContainer/OnboardingErrorBoundary/index.js +5 -0
  310. package/node/components/Onboarding/ui/OnboardingContainer/index.d.ts +1 -0
  311. package/node/components/Onboarding/ui/OnboardingContainer/index.js +5 -0
  312. package/node/components/Onboarding/ui/OnboardingContainer/useLogic/index.d.ts +1 -0
  313. package/node/components/Onboarding/ui/OnboardingContainer/useLogic/index.js +5 -0
  314. package/node/components/Onboarding/ui/OnboardingContainer/useLogic/useLogic.d.ts +10 -0
  315. package/node/components/Onboarding/ui/OnboardingContainer/useLogic/useLogic.js +18 -0
  316. package/node/components/Onboarding/ui/Overlay/Overlay.d.ts +29 -0
  317. package/node/components/Onboarding/ui/Overlay/Overlay.js +28 -0
  318. package/node/components/Onboarding/ui/Overlay/constants.d.ts +7 -0
  319. package/node/components/Onboarding/ui/Overlay/constants.js +11 -0
  320. package/node/components/Onboarding/ui/Overlay/index.d.ts +2 -0
  321. package/node/components/Onboarding/ui/Overlay/index.js +5 -0
  322. package/node/components/Onboarding/ui/Overlay/styles.d.ts +22 -0
  323. package/node/components/Onboarding/ui/Overlay/styles.js +60 -0
  324. package/node/components/Onboarding/ui/Overlay/useLogic/index.d.ts +1 -0
  325. package/node/components/Onboarding/ui/Overlay/useLogic/index.js +5 -0
  326. package/node/components/Onboarding/ui/Overlay/useLogic/useLogic.d.ts +13 -0
  327. package/node/components/Onboarding/ui/Overlay/useLogic/useLogic.js +14 -0
  328. package/node/components/Onboarding/ui/StepStrategy/StepStrategy.d.ts +6 -0
  329. package/node/components/Onboarding/ui/StepStrategy/StepStrategy.js +21 -0
  330. package/node/components/Onboarding/ui/StepStrategy/index.d.ts +1 -0
  331. package/node/components/Onboarding/ui/StepStrategy/index.js +17 -0
  332. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/HighlightStep.d.ts +6 -0
  333. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/HighlightStep.js +23 -0
  334. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/index.d.ts +2 -0
  335. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/index.js +5 -0
  336. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/styles.d.ts +25 -0
  337. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/styles.js +59 -0
  338. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/index.d.ts +1 -0
  339. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/index.js +5 -0
  340. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/useLogic.d.ts +12 -0
  341. package/node/components/Onboarding/ui/StepStrategy/steps/HighlightStep/useLogic/useLogic.js +41 -0
  342. package/node/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/StandaloneStep.d.ts +6 -0
  343. package/node/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/StandaloneStep.js +15 -0
  344. package/node/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/index.d.ts +2 -0
  345. package/node/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/index.js +5 -0
  346. package/node/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/styles.d.ts +13 -0
  347. package/node/components/Onboarding/ui/StepStrategy/steps/StandaloneStep/styles.js +12 -0
  348. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/ProgressDots.d.ts +6 -0
  349. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/ProgressDots.js +19 -0
  350. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/constants.d.ts +4 -0
  351. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/constants.js +8 -0
  352. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/index.d.ts +2 -0
  353. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/index.js +5 -0
  354. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/styles.d.ts +9 -0
  355. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/ProgressDots/styles.js +37 -0
  356. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/StepFooter.d.ts +9 -0
  357. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/StepFooter.js +22 -0
  358. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/constants.d.ts +4 -0
  359. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/constants.js +7 -0
  360. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/index.d.ts +2 -0
  361. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/index.js +5 -0
  362. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/styles.d.ts +21 -0
  363. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/styles.js +31 -0
  364. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/index.d.ts +1 -0
  365. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/index.js +5 -0
  366. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/useLogic.d.ts +16 -0
  367. package/node/components/Onboarding/ui/StepStrategy/steps/StepFooter/useLogic/useLogic.js +26 -0
  368. package/node/components/Onboarding/ui/StepStrategy/steps/types.d.ts +16 -0
  369. package/node/components/Onboarding/ui/StepStrategy/steps/types.js +2 -0
  370. package/node/components/Onboarding/ui/StepStrategy/useLogic/index.d.ts +1 -0
  371. package/node/components/Onboarding/ui/StepStrategy/useLogic/index.js +5 -0
  372. package/node/components/Onboarding/ui/StepStrategy/useLogic/useLogic.d.ts +47 -0
  373. package/node/components/Onboarding/ui/StepStrategy/useLogic/useLogic.js +55 -0
  374. package/node/components/Onboarding/ui/hooks/useActiveStep/index.d.ts +1 -0
  375. package/node/components/Onboarding/ui/hooks/useActiveStep/index.js +5 -0
  376. package/node/components/Onboarding/ui/hooks/useActiveStep/useActiveStep.d.ts +6 -0
  377. package/node/components/Onboarding/ui/hooks/useActiveStep/useActiveStep.js +11 -0
  378. package/node/components/Onboarding/ui/hooks/useDelayedActiveStep/index.d.ts +1 -0
  379. package/node/components/Onboarding/ui/hooks/useDelayedActiveStep/index.js +17 -0
  380. package/node/components/Onboarding/ui/hooks/useDelayedActiveStep/useDelayedActiveStep.d.ts +15 -0
  381. package/node/components/Onboarding/ui/hooks/useDelayedActiveStep/useDelayedActiveStep.js +23 -0
  382. package/node/components/Onboarding/ui/hooks/useFocusTrap/index.d.ts +1 -0
  383. package/node/components/Onboarding/ui/hooks/useFocusTrap/index.js +5 -0
  384. package/node/components/Onboarding/ui/hooks/useFocusTrap/useFocusTrap.d.ts +6 -0
  385. package/node/components/Onboarding/ui/hooks/useFocusTrap/useFocusTrap.js +37 -0
  386. package/node/components/Onboarding/ui/hooks/useKeyboardNav/index.d.ts +1 -0
  387. package/node/components/Onboarding/ui/hooks/useKeyboardNav/index.js +5 -0
  388. package/node/components/Onboarding/ui/hooks/useKeyboardNav/useKeyboardNav.d.ts +11 -0
  389. package/node/components/Onboarding/ui/hooks/useKeyboardNav/useKeyboardNav.js +66 -0
  390. package/node/components/Onboarding/ui/hooks/useStepTransition/index.d.ts +1 -0
  391. package/node/components/Onboarding/ui/hooks/useStepTransition/index.js +5 -0
  392. package/node/components/Onboarding/ui/hooks/useStepTransition/useStepTransition.d.ts +30 -0
  393. package/node/components/Onboarding/ui/hooks/useStepTransition/useStepTransition.js +50 -0
  394. package/node/components/Onboarding/ui/hooks/useTargetAnchor/index.d.ts +1 -0
  395. package/node/components/Onboarding/ui/hooks/useTargetAnchor/index.js +17 -0
  396. package/node/components/Onboarding/ui/hooks/useTargetAnchor/useTargetAnchor.d.ts +37 -0
  397. package/node/components/Onboarding/ui/hooks/useTargetAnchor/useTargetAnchor.js +60 -0
  398. package/node/components/Onboarding/ui/hooks/useTrackedRect/index.d.ts +1 -0
  399. package/node/components/Onboarding/ui/hooks/useTrackedRect/index.js +5 -0
  400. package/node/components/Onboarding/ui/hooks/useTrackedRect/useTrackedRect.d.ts +5 -0
  401. package/node/components/Onboarding/ui/hooks/useTrackedRect/useTrackedRect.js +47 -0
  402. package/node/components/Onboarding/ui/hooks/useViewportSize/index.d.ts +1 -0
  403. package/node/components/Onboarding/ui/hooks/useViewportSize/index.js +5 -0
  404. package/node/components/Onboarding/ui/hooks/useViewportSize/useViewportSize.d.ts +5 -0
  405. package/node/components/Onboarding/ui/hooks/useViewportSize/useViewportSize.js +18 -0
  406. package/node/components/Onboarding/ui/styles.d.ts +5 -0
  407. package/node/components/Onboarding/ui/styles.js +19 -0
  408. package/node/components/Onboarding/utils/createVirtualAnchor/createVirtualAnchor.d.ts +12 -0
  409. package/node/components/Onboarding/utils/createVirtualAnchor/createVirtualAnchor.js +10 -0
  410. package/node/components/Onboarding/utils/createVirtualAnchor/index.d.ts +1 -0
  411. package/node/components/Onboarding/utils/createVirtualAnchor/index.js +17 -0
  412. package/node/components/Onboarding/utils/geometry/index.d.ts +4 -0
  413. package/node/components/Onboarding/utils/geometry/index.js +20 -0
  414. package/node/components/Onboarding/utils/geometry/overlayPath/index.d.ts +1 -0
  415. package/node/components/Onboarding/utils/geometry/overlayPath/index.js +5 -0
  416. package/node/components/Onboarding/utils/geometry/overlayPath/overlayPath.d.ts +6 -0
  417. package/node/components/Onboarding/utils/geometry/overlayPath/overlayPath.js +33 -0
  418. package/node/components/Onboarding/utils/geometry/parseOffset/index.d.ts +1 -0
  419. package/node/components/Onboarding/utils/geometry/parseOffset/index.js +5 -0
  420. package/node/components/Onboarding/utils/geometry/parseOffset/parseOffset.d.ts +4 -0
  421. package/node/components/Onboarding/utils/geometry/parseOffset/parseOffset.js +9 -0
  422. package/node/components/Onboarding/utils/geometry/rect/index.d.ts +2 -0
  423. package/node/components/Onboarding/utils/geometry/rect/index.js +9 -0
  424. package/node/components/Onboarding/utils/geometry/rect/rect.d.ts +34 -0
  425. package/node/components/Onboarding/utils/geometry/rect/rect.js +69 -0
  426. package/node/components/Onboarding/utils/geometry/viewport/index.d.ts +2 -0
  427. package/node/components/Onboarding/utils/geometry/viewport/index.js +5 -0
  428. package/node/components/Onboarding/utils/geometry/viewport/viewport.d.ts +14 -0
  429. package/node/components/Onboarding/utils/geometry/viewport/viewport.js +14 -0
  430. package/node/components/Onboarding/utils/getScrollParents/getScrollParents.d.ts +7 -0
  431. package/node/components/Onboarding/utils/getScrollParents/getScrollParents.js +28 -0
  432. package/node/components/Onboarding/utils/getScrollParents/index.d.ts +1 -0
  433. package/node/components/Onboarding/utils/getScrollParents/index.js +5 -0
  434. package/node/components/Onboarding/utils/getTargetElement/getTargetElement.d.ts +4 -0
  435. package/node/components/Onboarding/utils/getTargetElement/getTargetElement.js +13 -0
  436. package/node/components/Onboarding/utils/getTargetElement/index.d.ts +1 -0
  437. package/node/components/Onboarding/utils/getTargetElement/index.js +5 -0
  438. package/node/components/Onboarding/utils/observeRemoval/index.d.ts +1 -0
  439. package/node/components/Onboarding/utils/observeRemoval/index.js +17 -0
  440. package/node/components/Onboarding/utils/observeRemoval/observeRemoval.d.ts +4 -0
  441. package/node/components/Onboarding/utils/observeRemoval/observeRemoval.js +17 -0
  442. package/node/components/Onboarding/utils/scrollIntoView/index.d.ts +1 -0
  443. package/node/components/Onboarding/utils/scrollIntoView/index.js +5 -0
  444. package/node/components/Onboarding/utils/scrollIntoView/scrollIntoView.d.ts +13 -0
  445. package/node/components/Onboarding/utils/scrollIntoView/scrollIntoView.js +89 -0
  446. package/node/components/Onboarding/utils/waitForElement/index.d.ts +2 -0
  447. package/node/components/Onboarding/utils/waitForElement/index.js +5 -0
  448. package/node/components/Onboarding/utils/waitForElement/waitForElement.d.ts +21 -0
  449. package/node/components/Onboarding/utils/waitForElement/waitForElement.js +49 -0
  450. package/node/components/Onboarding/validation/index.d.ts +1 -0
  451. package/node/components/Onboarding/validation/index.js +6 -0
  452. package/node/components/Onboarding/validation/validateTourConfig/index.d.ts +1 -0
  453. package/node/components/Onboarding/validation/validateTourConfig/index.js +6 -0
  454. package/node/components/Onboarding/validation/validateTourConfig/validateTourConfig.d.ts +12 -0
  455. package/node/components/Onboarding/validation/validateTourConfig/validateTourConfig.js +80 -0
  456. package/node/components/TagsList/Tag/Tag.js +3 -2
  457. package/package.json +3 -2
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.InnerContainer = exports.AnimatedWrapper = exports.StyledMuiPopper = void 0;
6
+ exports.InnerContainer = exports.AnimatedWrapper = exports.PopoverArrow = exports.StyledMuiPopper = void 0;
7
7
  const Popper_1 = __importDefault(require("@mui/material/Popper"));
8
8
  const styled_1 = require("../styled");
9
9
  const constants_1 = require("./constants");
@@ -12,6 +12,12 @@ exports.StyledMuiPopper = (0, styled_1.styled)(Popper_1.default) `
12
12
  z-index: ${({ theme }) => theme.zIndex.tooltip};
13
13
  }
14
14
 
15
+ /* Anchor ушёл за скролл/вьюпорт — popper вешает reference-hidden.
16
+ Стрелка иначе тянется к пропавшему anchor и торчит криво — прячем её. */
17
+ &[data-popper-reference-hidden] .${constants_1.popoverClassnames.arrow} {
18
+ visibility: hidden;
19
+ }
20
+
15
21
  &&[data-popper-placement*='top'] .${constants_1.popoverClassnames.animatedWrapper} {
16
22
  transform-origin: bottom center;
17
23
 
@@ -35,16 +41,106 @@ exports.StyledMuiPopper = (0, styled_1.styled)(Popper_1.default) `
35
41
 
36
42
  margin-left: ${({ theme }) => theme.spacing(2)};
37
43
  }
44
+
45
+ /* Со стрелкой отступ больше */
46
+ &&[data-popper-placement*='top']
47
+ .${constants_1.popoverClassnames.animatedWrapperHasArrow} {
48
+ margin-bottom: ${({ theme }) => theme.spacing(4)};
49
+ }
50
+
51
+ &&[data-popper-placement*='bottom']
52
+ .${constants_1.popoverClassnames.animatedWrapperHasArrow} {
53
+ margin-top: ${({ theme }) => theme.spacing(4)};
54
+ }
55
+
56
+ &&[data-popper-placement*='left']
57
+ .${constants_1.popoverClassnames.animatedWrapperHasArrow} {
58
+ margin-right: ${({ theme }) => theme.spacing(4)};
59
+ }
60
+
61
+ &&[data-popper-placement*='right']
62
+ .${constants_1.popoverClassnames.animatedWrapperHasArrow} {
63
+ margin-left: ${({ theme }) => theme.spacing(4)};
64
+ }
65
+
66
+ &&[data-popper-placement*='bottom'] .${constants_1.popoverClassnames.arrow} {
67
+ top: -16px;
68
+
69
+ width: 23px;
70
+ height: 16px;
71
+
72
+ &::before {
73
+ border-color: transparent transparent
74
+ ${({ theme }) => theme.palette.background.paper};
75
+ border-width: 0 11.5px 16px;
76
+ }
77
+ }
78
+
79
+ &&[data-popper-placement*='top'] .${constants_1.popoverClassnames.arrow} {
80
+ bottom: -16px;
81
+
82
+ width: 23px;
83
+ height: 16px;
84
+
85
+ &::before {
86
+ border-color: ${({ theme }) => theme.palette.background.paper} transparent
87
+ transparent;
88
+ border-width: 16px 11.5px 0;
89
+ }
90
+ }
91
+
92
+ &&[data-popper-placement*='right'] .${constants_1.popoverClassnames.arrow} {
93
+ left: -16px;
94
+
95
+ width: 16px;
96
+ height: 23px;
97
+
98
+ &::before {
99
+ border-color: transparent ${({ theme }) => theme.palette.background.paper}
100
+ transparent transparent;
101
+ border-width: 11.5px 16px 11.5px 0;
102
+ }
103
+ }
104
+
105
+ &&[data-popper-placement*='left'] .${constants_1.popoverClassnames.arrow} {
106
+ right: -16px;
107
+
108
+ width: 16px;
109
+ height: 23px;
110
+
111
+ &::before {
112
+ border-color: transparent transparent transparent
113
+ ${({ theme }) => theme.palette.background.paper};
114
+ border-width: 11.5px 0 11.5px 16px;
115
+ }
116
+ }
117
+ `;
118
+ exports.PopoverArrow = styled_1.styled.span `
119
+ position: absolute;
120
+
121
+ &::before {
122
+ content: '';
123
+
124
+ display: block;
125
+
126
+ width: 0;
127
+ height: 0;
128
+ margin: auto;
129
+
130
+ border-style: solid;
131
+ }
38
132
  `;
39
133
  exports.AnimatedWrapper = styled_1.styled.div `
134
+ position: relative;
135
+
40
136
  animation: popover-grow-out
41
- ${({ theme }) => theme.transitions.duration.enteringScreen}ms
42
- ${({ theme }) => theme.transitions.easing.easeInOut} forwards;
137
+ ${({ theme }) => theme.transitions.duration.leavingScreen}ms
138
+ ${({ theme }) => theme.transitions.easing.easeIn} forwards;
43
139
 
44
140
  &.${constants_1.popoverClassnames.animatedWrapperOpen} {
45
141
  animation: popover-grow-in
46
- ${({ theme }) => theme.transitions.duration.enteringScreen}ms
47
- ${({ theme }) => theme.transitions.easing.easeInOut} forwards;
142
+ ${({ theme }) => theme.transitions.duration.standard}ms
143
+ ${({ theme }) => theme.transitions.easing.easeOut} forwards;
48
144
  }
49
145
 
50
146
  @keyframes popover-grow-in {
@@ -5,6 +5,14 @@ type NewPopoverVirtualElement = {
5
5
  getBoundingClientRect: () => DOMRect;
6
6
  };
7
7
  export type NewPopoverAnchorEl = null | NewPopoverVirtualElement | HTMLElement | (() => HTMLElement) | (() => NewPopoverVirtualElement);
8
+ /**
9
+ * Модификатор Popper.js.
10
+ */
11
+ export type NewPopoverModifier = {
12
+ name: string;
13
+ enabled?: boolean;
14
+ options?: Record<string, unknown>;
15
+ };
8
16
  export type NewPopoverProps = {
9
17
  /**
10
18
  * Якорь позиционирования
@@ -49,5 +57,10 @@ export type NewPopoverProps = {
49
57
  * @default false
50
58
  */
51
59
  disableAutoFocus?: boolean;
60
+ /**
61
+ * Показывать стрелку, указывающую на anchorEl
62
+ * @default false
63
+ */
64
+ hasArrow?: boolean;
52
65
  };
53
66
  export {};
@@ -1,11 +1,15 @@
1
- import { type NewPopoverProps } from '../types';
2
- type UseLogicParams = Pick<NewPopoverProps, 'isOpen' | 'anchorEl' | 'onClose' | 'disableAutoFocus'>;
3
- export declare const useLogic: ({ isOpen, anchorEl, onClose, disableAutoFocus, }: UseLogicParams) => {
1
+ /// <reference types="react" />
2
+ import { type NewPopoverModifier, type NewPopoverProps } from '../types';
3
+ type UseLogicParams = Pick<NewPopoverProps, 'isOpen' | 'anchorEl' | 'onClose' | 'disableAutoFocus' | 'hasArrow'>;
4
+ export declare const useLogic: ({ isOpen, anchorEl, onClose, disableAutoFocus, hasArrow, }: UseLogicParams) => {
4
5
  isMobile: boolean;
5
6
  isOpened: boolean;
6
7
  shouldRender: boolean;
7
8
  handleAnimationEnd: () => void;
8
9
  handleClose: (event: Event) => void;
9
10
  setContainerRef: (node: HTMLDivElement | null) => void;
11
+ arrowElement: HTMLSpanElement | null;
12
+ setArrowElement: import("react").Dispatch<import("react").SetStateAction<HTMLSpanElement | null>>;
13
+ mergedModifiers: NewPopoverModifier[];
10
14
  };
11
15
  export {};
@@ -7,10 +7,12 @@ const useEscapeClickEffect_1 = require("../../useEscapeClickEffect");
7
7
  const useFocusTrapEffect_1 = require("../../useFocusTrapEffect");
8
8
  const usePopoverAnimation_1 = require("../../usePopoverAnimation");
9
9
  const useViewportType_1 = require("../../useViewportType");
10
+ const constants_1 = require("../constants");
10
11
  const utils_1 = require("../utils");
11
- const useLogic = ({ isOpen, anchorEl, onClose, disableAutoFocus, }) => {
12
+ const useLogic = ({ isOpen, anchorEl, onClose, disableAutoFocus, hasArrow, }) => {
12
13
  const containerRef = (0, react_1.useRef)(null);
13
14
  const [isContainerMounted, setIsContainerMounted] = (0, react_1.useState)(false);
15
+ const [arrowElement, setArrowElement] = (0, react_1.useState)(null);
14
16
  const setContainerRef = (0, react_1.useCallback)((node) => {
15
17
  containerRef.current = node;
16
18
  setIsContainerMounted(Boolean(node));
@@ -46,6 +48,15 @@ const useLogic = ({ isOpen, anchorEl, onClose, disableAutoFocus, }) => {
46
48
  allowOutsideClick: true,
47
49
  fallbackFocus: () => containerRef.current || document.body,
48
50
  });
51
+ const mergedModifiers = (0, react_1.useMemo)(() => {
52
+ if (!hasArrow) {
53
+ return constants_1.DEFAULT_MODIFIERS;
54
+ }
55
+ return [
56
+ ...constants_1.DEFAULT_MODIFIERS,
57
+ { name: 'arrow', enabled: true, options: { element: arrowElement } },
58
+ ];
59
+ }, [hasArrow, arrowElement]);
49
60
  return {
50
61
  isMobile,
51
62
  isOpened,
@@ -53,6 +64,9 @@ const useLogic = ({ isOpen, anchorEl, onClose, disableAutoFocus, }) => {
53
64
  handleAnimationEnd,
54
65
  handleClose,
55
66
  setContainerRef,
67
+ arrowElement,
68
+ setArrowElement,
69
+ mergedModifiers,
56
70
  };
57
71
  };
58
72
  exports.useLogic = useLogic;
@@ -0,0 +1,35 @@
1
+ import { ErrorService } from '../services/ErrorService';
2
+ import { ActiveStepStore } from './core/ActiveStepStore';
3
+ import { OnboardingTour } from './core/OnboardingTour';
4
+ import { type OnboardingConfig, type OnboardingTourConfig, type SaveStrategyFactory, type Step } from './types';
5
+ /**
6
+ * Фасад Onboarding, который собирает туры.
7
+ *
8
+ * Создаётся через createOnboarding.
9
+ */
10
+ export declare class Onboarding {
11
+ private readonly saveStrategyFactory;
12
+ private readonly errorService;
13
+ readonly activeStepStore: ActiveStepStore;
14
+ constructor(saveStrategyFactory: SaveStrategyFactory, errorService: ErrorService);
15
+ /**
16
+ * Создаёт тур.
17
+ */
18
+ createTour: <const TSteps extends readonly Step[]>(tourConfig: OnboardingTourConfig<TSteps>) => OnboardingTour<TSteps>;
19
+ /**
20
+ * Закрывает показанный сейчас тур.
21
+ */
22
+ closeActiveTour: () => void;
23
+ }
24
+ /**
25
+ * Создаёт экземпляр онбординга.
26
+ *
27
+ * Экземпляр передаётся контейнеру явно: `<OnboardingContainer onboarding={...}/>`.
28
+ *
29
+ * @example
30
+ * const onboarding = createOnboarding({ saveStrategy });
31
+ * const tour = onboarding.createTour({ name: 'intro', steps: [...] });
32
+ * <OnboardingContainer onboarding={onboarding} />
33
+ * tour.start();
34
+ */
35
+ export declare const createOnboarding: (config?: OnboardingConfig) => Onboarding;
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createOnboarding = exports.Onboarding = void 0;
4
+ const ErrorService_1 = require("../services/ErrorService");
5
+ const ActiveStepStore_1 = require("./core/ActiveStepStore");
6
+ const OnboardingTour_1 = require("./core/OnboardingTour");
7
+ const ProgressStorage_1 = require("./core/ProgressStorage");
8
+ const LocalStorageSaveStrategy_1 = require("./services/LocalStorageSaveStrategy");
9
+ const validation_1 = require("./validation");
10
+ /**
11
+ * Фасад Onboarding, который собирает туры.
12
+ *
13
+ * Создаётся через createOnboarding.
14
+ */
15
+ class Onboarding {
16
+ constructor(saveStrategyFactory, errorService) {
17
+ this.saveStrategyFactory = saveStrategyFactory;
18
+ this.errorService = errorService;
19
+ this.activeStepStore = new ActiveStepStore_1.ActiveStepStore();
20
+ /**
21
+ * Создаёт тур.
22
+ */
23
+ this.createTour = (tourConfig) => {
24
+ // Fail-fast на некорректной конфигурации до сборки тура.
25
+ (0, validation_1.validateTourConfig)(tourConfig);
26
+ // Ключ хранилища уникален на тур, поэтому стратегия строится на createTour.
27
+ const progressStorage = new ProgressStorage_1.ProgressStorage(this.saveStrategyFactory(tourConfig.name));
28
+ return new OnboardingTour_1.OnboardingTour(tourConfig, progressStorage, this.activeStepStore, this.errorService);
29
+ };
30
+ /**
31
+ * Закрывает показанный сейчас тур.
32
+ */
33
+ this.closeActiveTour = () => {
34
+ this.activeStepStore.closeActiveTour();
35
+ };
36
+ }
37
+ }
38
+ exports.Onboarding = Onboarding;
39
+ /**
40
+ * Создаёт экземпляр онбординга.
41
+ *
42
+ * Экземпляр передаётся контейнеру явно: `<OnboardingContainer onboarding={...}/>`.
43
+ *
44
+ * @example
45
+ * const onboarding = createOnboarding({ saveStrategy });
46
+ * const tour = onboarding.createTour({ name: 'intro', steps: [...] });
47
+ * <OnboardingContainer onboarding={onboarding} />
48
+ * tour.start();
49
+ */
50
+ const createOnboarding = (config = {}) => new Onboarding(config.saveStrategy ?? LocalStorageSaveStrategy_1.createLocalStorageSaveStrategy, ErrorService_1.ErrorService.getInstance());
51
+ exports.createOnboarding = createOnboarding;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * data-атрибут, по которому highlight-шаг находит свой элемент.
3
+ */
4
+ export declare const TOUR_ID_ATTR = "data-tour-id";
5
+ /**
6
+ * Тайм-аут по умолчанию ожидания элемента highlight-шага в DOM (мс).
7
+ * `0` — элемент ищется синхронно. Ожидание включается только при заданном
8
+ * `waitForTimeout`.
9
+ */
10
+ export declare const DEFAULT_WAIT_ELEMENT_TIMEOUT_MS = 0;
11
+ /**
12
+ * Базовый отступ hole overlay вокруг подсвечиваемого элемента (px).
13
+ * Применяется, когда у шага не задан `highlightOffset`.
14
+ */
15
+ export declare const DEFAULT_HIGHLIGHT_PADDING = 8;
16
+ /**
17
+ * Скругление углов hole overlay (px).
18
+ */
19
+ export declare const DEFAULT_HIGHLIGHT_RADIUS = 8;
20
+ /**
21
+ * Поведение автоскролла к элементу highlight-шага.
22
+ */
23
+ export declare const SCROLL_BEHAVIOR: ScrollBehavior;
24
+ /**
25
+ * Надбавки к z-index собственных поверхностей онбординга поверх
26
+ * `theme.zIndex.tooltip`, чтобы они перекрывали
27
+ * обычные UIKit-модалки/подсказки.
28
+ */
29
+ export declare const ONBOARDING_Z_INDEX_OFFSET: {
30
+ /** Overlay-backdrop и диалоги (standalone-шаг, confirm-exit). */
31
+ readonly base: 10;
32
+ /** Highlight-popover — всплывает над базовым слоем. */
33
+ readonly popover: 30;
34
+ };
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ONBOARDING_Z_INDEX_OFFSET = exports.SCROLL_BEHAVIOR = exports.DEFAULT_HIGHLIGHT_RADIUS = exports.DEFAULT_HIGHLIGHT_PADDING = exports.DEFAULT_WAIT_ELEMENT_TIMEOUT_MS = exports.TOUR_ID_ATTR = void 0;
4
+ /**
5
+ * data-атрибут, по которому highlight-шаг находит свой элемент.
6
+ */
7
+ exports.TOUR_ID_ATTR = 'data-tour-id';
8
+ /**
9
+ * Тайм-аут по умолчанию ожидания элемента highlight-шага в DOM (мс).
10
+ * `0` — элемент ищется синхронно. Ожидание включается только при заданном
11
+ * `waitForTimeout`.
12
+ */
13
+ exports.DEFAULT_WAIT_ELEMENT_TIMEOUT_MS = 0;
14
+ /**
15
+ * Базовый отступ hole overlay вокруг подсвечиваемого элемента (px).
16
+ * Применяется, когда у шага не задан `highlightOffset`.
17
+ */
18
+ exports.DEFAULT_HIGHLIGHT_PADDING = 8;
19
+ /**
20
+ * Скругление углов hole overlay (px).
21
+ */
22
+ exports.DEFAULT_HIGHLIGHT_RADIUS = 8;
23
+ /**
24
+ * Поведение автоскролла к элементу highlight-шага.
25
+ */
26
+ exports.SCROLL_BEHAVIOR = 'smooth';
27
+ /**
28
+ * Надбавки к z-index собственных поверхностей онбординга поверх
29
+ * `theme.zIndex.tooltip`, чтобы они перекрывали
30
+ * обычные UIKit-модалки/подсказки.
31
+ */
32
+ exports.ONBOARDING_Z_INDEX_OFFSET = {
33
+ /** Overlay-backdrop и диалоги (standalone-шаг, confirm-exit). */
34
+ base: 10,
35
+ /** Highlight-popover — всплывает над базовым слоем. */
36
+ popover: 30,
37
+ };
@@ -0,0 +1,50 @@
1
+ import { type ActiveStepState } from '../../types';
2
+ type Listener = VoidFunction;
3
+ /**
4
+ * Ссылка на тур, которую держит store: по ней он опознаёт владельца слота
5
+ * (сравнение по идентичности экземпляра, а не по имени) и может закрыть тур.
6
+ */
7
+ export type TourHandle = {
8
+ /**
9
+ * Закрытие тура штатным путём (используется `Onboarding.closeActiveTour`).
10
+ */
11
+ close: () => void;
12
+ };
13
+ /**
14
+ * Store активного шага, связывающий туры с `<OnboardingContainer/>`.
15
+ */
16
+ export declare class ActiveStepStore {
17
+ private activeStep;
18
+ private activeTour;
19
+ private readonly listeners;
20
+ subscribe: (listener: Listener) => () => void;
21
+ /**
22
+ * Состояние активного шага (null — тур не показан).
23
+ */
24
+ getActiveStep: () => ActiveStepState | null;
25
+ /**
26
+ * Публикует шаг тура и делает этот тур владельцем слота.
27
+ */
28
+ setActiveStep: (step: ActiveStepState, tour: TourHandle) => void;
29
+ /**
30
+ * Владеет ли слотом сейчас именно тур (пустой store — `false`).
31
+ */
32
+ isActiveTour: (tour: TourHandle) => boolean;
33
+ /**
34
+ * Показан ли сейчас шаг тура. Имена шагов могут совпадать
35
+ * в разных турах, поэтому проверяется и тур, и имя.
36
+ */
37
+ isActiveStep: (tour: TourHandle, stepName: string) => boolean;
38
+ /**
39
+ * Освобождает слот, если тур сейчас его владелец.
40
+ */
41
+ release: (tour: TourHandle) => void;
42
+ /**
43
+ * Закрытие активного тура обычным путём.
44
+ * Внешний триггер: размонтирование онбординга, смена юзера.
45
+ */
46
+ closeActiveTour: () => void;
47
+ private clear;
48
+ private emit;
49
+ }
50
+ export {};
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActiveStepStore = void 0;
4
+ /**
5
+ * Store активного шага, связывающий туры с `<OnboardingContainer/>`.
6
+ */
7
+ class ActiveStepStore {
8
+ constructor() {
9
+ this.activeStep = null;
10
+ this.activeTour = null;
11
+ this.listeners = new Set();
12
+ this.subscribe = (listener) => {
13
+ this.listeners.add(listener);
14
+ return () => {
15
+ this.listeners.delete(listener);
16
+ };
17
+ };
18
+ /**
19
+ * Состояние активного шага (null — тур не показан).
20
+ */
21
+ this.getActiveStep = () => this.activeStep;
22
+ /**
23
+ * Публикует шаг тура и делает этот тур владельцем слота.
24
+ */
25
+ this.setActiveStep = (step, tour) => {
26
+ this.activeStep = step;
27
+ this.activeTour = tour;
28
+ this.emit();
29
+ };
30
+ /**
31
+ * Владеет ли слотом сейчас именно тур (пустой store — `false`).
32
+ */
33
+ this.isActiveTour = (tour) => this.activeTour === tour;
34
+ /**
35
+ * Показан ли сейчас шаг тура. Имена шагов могут совпадать
36
+ * в разных турах, поэтому проверяется и тур, и имя.
37
+ */
38
+ this.isActiveStep = (tour, stepName) => this.isActiveTour(tour) && this.activeStep?.step.name === stepName;
39
+ /**
40
+ * Освобождает слот, если тур сейчас его владелец.
41
+ */
42
+ this.release = (tour) => {
43
+ if (this.isActiveTour(tour)) {
44
+ this.clear();
45
+ }
46
+ };
47
+ /**
48
+ * Закрытие активного тура обычным путём.
49
+ * Внешний триггер: размонтирование онбординга, смена юзера.
50
+ */
51
+ this.closeActiveTour = () => {
52
+ this.activeTour?.close();
53
+ };
54
+ }
55
+ clear() {
56
+ if (this.activeStep === null) {
57
+ return;
58
+ }
59
+ this.activeStep = null;
60
+ this.activeTour = null;
61
+ this.emit();
62
+ }
63
+ emit() {
64
+ this.listeners.forEach((listener) => listener());
65
+ }
66
+ }
67
+ exports.ActiveStepStore = ActiveStepStore;
@@ -0,0 +1 @@
1
+ export * from './ActiveStepStore';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ActiveStepStore"), exports);
@@ -0,0 +1,46 @@
1
+ export type ExitControllerParams = {
2
+ /**
3
+ * Фактическое закрытие тура. Вызывается только после подтверждения в
4
+ * ConfirmExit, поэтому всегда означает пользовательский выход (тур помечается
5
+ * прерванным).
6
+ */
7
+ close: () => void;
8
+ /**
9
+ * Уведомить о смене состояния (перерисовать активный шаг) — например, чтобы
10
+ * показать/скрыть ConfirmExit.
11
+ */
12
+ onChange: () => void;
13
+ };
14
+ /**
15
+ * Единая точка выхода из тура.
16
+ *
17
+ * Все пути закрытия (Esc, клик по overlay, крестик, клик мимо) идут через
18
+ * requestClose и всегда требуют подтверждение
19
+ * (ConfirmExit); закрытие происходит только по confirm.
20
+ */
21
+ export declare class ExitController {
22
+ private readonly params;
23
+ private confirming;
24
+ constructor(params: ExitControllerParams);
25
+ /**
26
+ * Идёт ли запрос подтверждения выхода.
27
+ */
28
+ get isConfirming(): boolean;
29
+ /**
30
+ * Запрос на закрытие — показывает ConfirmExit. Повторные вызовы во время
31
+ * подтверждения игнорируются.
32
+ */
33
+ requestClose: () => void;
34
+ /**
35
+ * Подтверждение выхода из ConfirmExit.
36
+ */
37
+ confirm: () => void;
38
+ /**
39
+ * Отмена выхода — продолжаем тур.
40
+ */
41
+ cancel: () => void;
42
+ /**
43
+ * Сброс состояния (при старте/закрытии тура).
44
+ */
45
+ reset: () => void;
46
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExitController = void 0;
4
+ /**
5
+ * Единая точка выхода из тура.
6
+ *
7
+ * Все пути закрытия (Esc, клик по overlay, крестик, клик мимо) идут через
8
+ * requestClose и всегда требуют подтверждение
9
+ * (ConfirmExit); закрытие происходит только по confirm.
10
+ */
11
+ class ExitController {
12
+ constructor(params) {
13
+ this.params = params;
14
+ this.confirming = false;
15
+ /**
16
+ * Запрос на закрытие — показывает ConfirmExit. Повторные вызовы во время
17
+ * подтверждения игнорируются.
18
+ */
19
+ this.requestClose = () => {
20
+ if (this.confirming) {
21
+ return;
22
+ }
23
+ this.confirming = true;
24
+ this.params.onChange();
25
+ };
26
+ /**
27
+ * Подтверждение выхода из ConfirmExit.
28
+ */
29
+ this.confirm = () => {
30
+ if (!this.confirming) {
31
+ return;
32
+ }
33
+ this.confirming = false;
34
+ this.params.close();
35
+ };
36
+ /**
37
+ * Отмена выхода — продолжаем тур.
38
+ */
39
+ this.cancel = () => {
40
+ if (!this.confirming) {
41
+ return;
42
+ }
43
+ this.confirming = false;
44
+ this.params.onChange();
45
+ };
46
+ /**
47
+ * Сброс состояния (при старте/закрытии тура).
48
+ */
49
+ this.reset = () => {
50
+ this.confirming = false;
51
+ };
52
+ }
53
+ /**
54
+ * Идёт ли запрос подтверждения выхода.
55
+ */
56
+ get isConfirming() {
57
+ return this.confirming;
58
+ }
59
+ }
60
+ exports.ExitController = ExitController;
@@ -0,0 +1 @@
1
+ export * from './ExitController';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ExitController"), exports);