@mantine/core 9.6.2 → 9.7.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 (436) hide show
  1. package/cjs/components/ActionBar/ActionBar.cjs +0 -3
  2. package/cjs/components/ActionBar/ActionBar.cjs.map +1 -1
  3. package/cjs/components/ActionBar/ActionBar.module.cjs.map +1 -1
  4. package/cjs/components/AppShell/AppShell.cjs +33 -6
  5. package/cjs/components/AppShell/AppShell.cjs.map +1 -1
  6. package/cjs/components/AppShell/AppShell.context.cjs.map +1 -1
  7. package/cjs/components/AppShell/AppShell.module.cjs +2 -1
  8. package/cjs/components/AppShell/AppShell.module.cjs.map +1 -1
  9. package/cjs/components/AppShell/AppShellAside/AppShellAside.cjs +28 -7
  10. package/cjs/components/AppShell/AppShellAside/AppShellAside.cjs.map +1 -1
  11. package/cjs/components/AppShell/AppShellFooter/AppShellFooter.cjs +28 -7
  12. package/cjs/components/AppShell/AppShellFooter/AppShellFooter.cjs.map +1 -1
  13. package/cjs/components/AppShell/AppShellHeader/AppShellHeader.cjs +28 -7
  14. package/cjs/components/AppShell/AppShellHeader/AppShellHeader.cjs.map +1 -1
  15. package/cjs/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.cjs +3 -2
  16. package/cjs/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.cjs.map +1 -1
  17. package/cjs/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.cjs +27 -16
  18. package/cjs/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.cjs.map +1 -1
  19. package/cjs/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.cjs +24 -16
  20. package/cjs/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.cjs.map +1 -1
  21. package/cjs/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.cjs +24 -16
  22. package/cjs/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.cjs.map +1 -1
  23. package/cjs/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.cjs +30 -19
  24. package/cjs/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.cjs.map +1 -1
  25. package/cjs/components/AppShell/AppShellMediaStyles/escape-css-id/escape-css-id.cjs +26 -0
  26. package/cjs/components/AppShell/AppShellMediaStyles/escape-css-id/escape-css-id.cjs.map +1 -0
  27. package/cjs/components/AppShell/AppShellMediaStyles/get-resized-value/get-resized-value.cjs +10 -0
  28. package/cjs/components/AppShell/AppShellMediaStyles/get-resized-value/get-resized-value.cjs.map +1 -0
  29. package/cjs/components/AppShell/AppShellMediaStyles/get-variables/get-variables.cjs +13 -5
  30. package/cjs/components/AppShell/AppShellMediaStyles/get-variables/get-variables.cjs.map +1 -1
  31. package/cjs/components/AppShell/AppShellNavbar/AppShellNavbar.cjs +28 -7
  32. package/cjs/components/AppShell/AppShellNavbar/AppShellNavbar.cjs.map +1 -1
  33. package/cjs/components/AppShell/AppShellResizeHandle/AppShellResizeHandle.cjs +270 -0
  34. package/cjs/components/AppShell/AppShellResizeHandle/AppShellResizeHandle.cjs.map +1 -0
  35. package/cjs/components/AppShell/use-app-shell-resize/clamp-resize-size.cjs +15 -0
  36. package/cjs/components/AppShell/use-app-shell-resize/clamp-resize-size.cjs.map +1 -0
  37. package/cjs/components/AppShell/use-app-shell-resize/resize-section-config.cjs +51 -0
  38. package/cjs/components/AppShell/use-app-shell-resize/resize-section-config.cjs.map +1 -0
  39. package/cjs/components/AppShell/use-app-shell-resize/safe-area-inset.cjs +12 -0
  40. package/cjs/components/AppShell/use-app-shell-resize/safe-area-inset.cjs.map +1 -0
  41. package/cjs/components/AppShell/use-app-shell-resize/use-app-shell-resize.cjs +127 -0
  42. package/cjs/components/AppShell/use-app-shell-resize/use-app-shell-resize.cjs.map +1 -0
  43. package/cjs/components/AppShell/use-resizing/use-resizing.cjs +20 -2
  44. package/cjs/components/AppShell/use-resizing/use-resizing.cjs.map +1 -1
  45. package/cjs/components/Checkbox/Checkbox.cjs +10 -2
  46. package/cjs/components/Checkbox/Checkbox.cjs.map +1 -1
  47. package/cjs/components/Checkbox/Checkbox.module.cjs +1 -0
  48. package/cjs/components/Checkbox/Checkbox.module.cjs.map +1 -1
  49. package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.cjs +10 -2
  50. package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.cjs.map +1 -1
  51. package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.cjs +1 -0
  52. package/cjs/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.cjs.map +1 -1
  53. package/cjs/components/ComboboxPopover/ComboboxPopover.cjs.map +1 -1
  54. package/cjs/components/Dialog/Dialog.cjs +0 -1
  55. package/cjs/components/Dialog/Dialog.cjs.map +1 -1
  56. package/cjs/components/Dialog/Dialog.module.cjs.map +1 -1
  57. package/cjs/components/HoverCard/HoverCard.cjs +34 -5
  58. package/cjs/components/HoverCard/HoverCard.cjs.map +1 -1
  59. package/cjs/components/HoverCard/HoverCard.context.cjs.map +1 -1
  60. package/cjs/components/HoverCard/HoverCardDropdown/HoverCardDropdown.cjs +13 -18
  61. package/cjs/components/HoverCard/HoverCardDropdown/HoverCardDropdown.cjs.map +1 -1
  62. package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.cjs +6 -23
  63. package/cjs/components/HoverCard/HoverCardTarget/HoverCardTarget.cjs.map +1 -1
  64. package/cjs/components/HoverCard/use-hover-card.cjs +26 -12
  65. package/cjs/components/HoverCard/use-hover-card.cjs.map +1 -1
  66. package/cjs/components/Input/InputWrapper/InputWrapper.cjs +1 -1
  67. package/cjs/components/Input/InputWrapper/InputWrapper.cjs.map +1 -1
  68. package/cjs/components/Marquee/Marquee.cjs.map +1 -1
  69. package/cjs/components/Marquee/Marquee.module.cjs.map +1 -1
  70. package/cjs/components/PasswordInput/PasswordInput.cjs +10 -5
  71. package/cjs/components/PasswordInput/PasswordInput.cjs.map +1 -1
  72. package/cjs/components/PinInput/PinInput.cjs.map +1 -1
  73. package/cjs/components/Portal/Portal.cjs +10 -1
  74. package/cjs/components/Portal/Portal.cjs.map +1 -1
  75. package/cjs/components/Radio/Radio.cjs +10 -2
  76. package/cjs/components/Radio/Radio.cjs.map +1 -1
  77. package/cjs/components/Radio/Radio.module.cjs +1 -0
  78. package/cjs/components/Radio/Radio.module.cjs.map +1 -1
  79. package/cjs/components/Radio/RadioIndicator/RadioIndicator.cjs +10 -2
  80. package/cjs/components/Radio/RadioIndicator/RadioIndicator.cjs.map +1 -1
  81. package/cjs/components/Radio/RadioIndicator/RadioIndicator.module.cjs +1 -0
  82. package/cjs/components/Radio/RadioIndicator/RadioIndicator.module.cjs.map +1 -1
  83. package/cjs/components/Rating/Rating.cjs +35 -12
  84. package/cjs/components/Rating/Rating.cjs.map +1 -1
  85. package/cjs/components/Select/Select.cjs +1 -1
  86. package/cjs/components/Select/Select.cjs.map +1 -1
  87. package/cjs/components/Slider/Thumb/Thumb.cjs +7 -2
  88. package/cjs/components/Slider/Thumb/Thumb.cjs.map +1 -1
  89. package/cjs/components/Table/Table.cjs +23 -10
  90. package/cjs/components/Table/Table.cjs.map +1 -1
  91. package/cjs/components/Toggle/Toggle.cjs +80 -0
  92. package/cjs/components/Toggle/Toggle.cjs.map +1 -0
  93. package/cjs/components/Toggle/Toggle.module.cjs +7 -0
  94. package/cjs/components/Toggle/Toggle.module.cjs.map +1 -0
  95. package/cjs/components/Toolbar/Toolbar.cjs +107 -0
  96. package/cjs/components/Toolbar/Toolbar.cjs.map +1 -0
  97. package/cjs/components/Toolbar/Toolbar.context.cjs +8 -0
  98. package/cjs/components/Toolbar/Toolbar.context.cjs.map +1 -0
  99. package/cjs/components/Toolbar/Toolbar.module.cjs +12 -0
  100. package/cjs/components/Toolbar/Toolbar.module.cjs.map +1 -0
  101. package/cjs/components/Toolbar/ToolbarDivider/ToolbarDivider.cjs +31 -0
  102. package/cjs/components/Toolbar/ToolbarDivider/ToolbarDivider.cjs.map +1 -0
  103. package/cjs/components/Toolbar/ToolbarGroup/ToolbarGroup.cjs +31 -0
  104. package/cjs/components/Toolbar/ToolbarGroup/ToolbarGroup.cjs.map +1 -0
  105. package/cjs/components/Toolbar/ToolbarToggle/ToolbarToggle.cjs +47 -0
  106. package/cjs/components/Toolbar/ToolbarToggle/ToolbarToggle.cjs.map +1 -0
  107. package/cjs/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.cjs +61 -0
  108. package/cjs/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.cjs.map +1 -0
  109. package/cjs/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.context.cjs +8 -0
  110. package/cjs/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.context.cjs.map +1 -0
  111. package/cjs/components/Toolbar/ToolbarToggleItem/ToolbarToggleItem.cjs +51 -0
  112. package/cjs/components/Toolbar/ToolbarToggleItem/ToolbarToggleItem.cjs.map +1 -0
  113. package/cjs/components/Toolbar/use-toolbar-navigation.cjs +76 -0
  114. package/cjs/components/Toolbar/use-toolbar-navigation.cjs.map +1 -0
  115. package/cjs/components/Tooltip/Tooltip.cjs +9 -5
  116. package/cjs/components/Tooltip/Tooltip.cjs.map +1 -1
  117. package/cjs/components/Tooltip/use-tooltip.cjs +6 -3
  118. package/cjs/components/Tooltip/use-tooltip.cjs.map +1 -1
  119. package/cjs/components/Tour/Tour.cjs +283 -0
  120. package/cjs/components/Tour/Tour.cjs.map +1 -0
  121. package/cjs/components/Tour/Tour.context.cjs +25 -0
  122. package/cjs/components/Tour/Tour.context.cjs.map +1 -0
  123. package/cjs/components/Tour/Tour.module.cjs +19 -0
  124. package/cjs/components/Tour/Tour.module.cjs.map +1 -0
  125. package/cjs/components/Tour/TourBeacon/TourBeacon.cjs +54 -0
  126. package/cjs/components/Tour/TourBeacon/TourBeacon.cjs.map +1 -0
  127. package/cjs/components/Tour/TourBeaconPositioned.cjs +46 -0
  128. package/cjs/components/Tour/TourBeaconPositioned.cjs.map +1 -0
  129. package/cjs/components/Tour/TourBody/TourBody.cjs +37 -0
  130. package/cjs/components/Tour/TourBody/TourBody.cjs.map +1 -0
  131. package/cjs/components/Tour/TourCloseButton/TourCloseButton.cjs +26 -0
  132. package/cjs/components/Tour/TourCloseButton/TourCloseButton.cjs.map +1 -0
  133. package/cjs/components/Tour/TourNavigation/TourNavigation.cjs +63 -0
  134. package/cjs/components/Tour/TourNavigation/TourNavigation.cjs.map +1 -0
  135. package/cjs/components/Tour/TourOverlay/TourOverlay.cjs +70 -0
  136. package/cjs/components/Tour/TourOverlay/TourOverlay.cjs.map +1 -0
  137. package/cjs/components/Tour/TourRoot/TourRoot.cjs +125 -0
  138. package/cjs/components/Tour/TourRoot/TourRoot.cjs.map +1 -0
  139. package/cjs/components/Tour/TourStep/TourStep.cjs +10 -0
  140. package/cjs/components/Tour/TourStep/TourStep.cjs.map +1 -0
  141. package/cjs/components/Tour/TourTitle/TourTitle.cjs +38 -0
  142. package/cjs/components/Tour/TourTitle/TourTitle.cjs.map +1 -0
  143. package/cjs/components/Tour/TourTooltip/TourTooltip.cjs +87 -0
  144. package/cjs/components/Tour/TourTooltip/TourTooltip.cjs.map +1 -0
  145. package/cjs/components/Tour/get-overlay-hit-path.cjs +17 -0
  146. package/cjs/components/Tour/get-overlay-hit-path.cjs.map +1 -0
  147. package/cjs/components/Tour/is-element-in-view.cjs +30 -0
  148. package/cjs/components/Tour/is-element-in-view.cjs.map +1 -0
  149. package/cjs/components/Tour/press-aware-auto-update.cjs +38 -0
  150. package/cjs/components/Tour/press-aware-auto-update.cjs.map +1 -0
  151. package/cjs/components/Tour/use-target-rect.cjs +61 -0
  152. package/cjs/components/Tour/use-target-rect.cjs.map +1 -0
  153. package/cjs/components/Tour/use-tooltip-auto-focus.cjs +34 -0
  154. package/cjs/components/Tour/use-tooltip-auto-focus.cjs.map +1 -0
  155. package/cjs/components/Tour/use-tour-state.cjs +102 -0
  156. package/cjs/components/Tour/use-tour-state.cjs.map +1 -0
  157. package/cjs/components/Tour/use-tour.cjs +155 -0
  158. package/cjs/components/Tour/use-tour.cjs.map +1 -0
  159. package/cjs/components/TreeSelect/TreeSelect.cjs +29 -16
  160. package/cjs/components/TreeSelect/TreeSelect.cjs.map +1 -1
  161. package/cjs/core/Box/Box.cjs +1 -1
  162. package/cjs/core/Box/Box.cjs.map +1 -1
  163. package/cjs/core/Box/style-props/style-props-data.cjs +2 -2
  164. package/cjs/core/Box/style-props/style-props-data.cjs.map +1 -1
  165. package/cjs/core/styles-api/use-styles/use-styles.cjs +32 -2
  166. package/cjs/core/styles-api/use-styles/use-styles.cjs.map +1 -1
  167. package/cjs/core/utils/shallow-equal/shallow-equal.cjs +19 -0
  168. package/cjs/core/utils/shallow-equal/shallow-equal.cjs.map +1 -0
  169. package/cjs/index.cjs +42 -2
  170. package/esm/components/ActionBar/ActionBar.mjs +0 -3
  171. package/esm/components/ActionBar/ActionBar.mjs.map +1 -1
  172. package/esm/components/ActionBar/ActionBar.module.mjs.map +1 -1
  173. package/esm/components/AppShell/AppShell.context.mjs.map +1 -1
  174. package/esm/components/AppShell/AppShell.mjs +35 -8
  175. package/esm/components/AppShell/AppShell.mjs.map +1 -1
  176. package/esm/components/AppShell/AppShell.module.mjs +2 -1
  177. package/esm/components/AppShell/AppShell.module.mjs.map +1 -1
  178. package/esm/components/AppShell/AppShellAside/AppShellAside.mjs +29 -8
  179. package/esm/components/AppShell/AppShellAside/AppShellAside.mjs.map +1 -1
  180. package/esm/components/AppShell/AppShellFooter/AppShellFooter.mjs +29 -8
  181. package/esm/components/AppShell/AppShellFooter/AppShellFooter.mjs.map +1 -1
  182. package/esm/components/AppShell/AppShellHeader/AppShellHeader.mjs +29 -8
  183. package/esm/components/AppShell/AppShellHeader/AppShellHeader.mjs.map +1 -1
  184. package/esm/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.mjs +3 -2
  185. package/esm/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.mjs.map +1 -1
  186. package/esm/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.mjs +27 -16
  187. package/esm/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.mjs.map +1 -1
  188. package/esm/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.mjs +24 -16
  189. package/esm/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.mjs.map +1 -1
  190. package/esm/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.mjs +24 -16
  191. package/esm/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.mjs.map +1 -1
  192. package/esm/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.mjs +30 -19
  193. package/esm/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.mjs.map +1 -1
  194. package/esm/components/AppShell/AppShellMediaStyles/escape-css-id/escape-css-id.mjs +26 -0
  195. package/esm/components/AppShell/AppShellMediaStyles/escape-css-id/escape-css-id.mjs.map +1 -0
  196. package/esm/components/AppShell/AppShellMediaStyles/get-resized-value/get-resized-value.mjs +10 -0
  197. package/esm/components/AppShell/AppShellMediaStyles/get-resized-value/get-resized-value.mjs.map +1 -0
  198. package/esm/components/AppShell/AppShellMediaStyles/get-variables/get-variables.mjs +13 -5
  199. package/esm/components/AppShell/AppShellMediaStyles/get-variables/get-variables.mjs.map +1 -1
  200. package/esm/components/AppShell/AppShellNavbar/AppShellNavbar.mjs +29 -8
  201. package/esm/components/AppShell/AppShellNavbar/AppShellNavbar.mjs.map +1 -1
  202. package/esm/components/AppShell/AppShellResizeHandle/AppShellResizeHandle.mjs +270 -0
  203. package/esm/components/AppShell/AppShellResizeHandle/AppShellResizeHandle.mjs.map +1 -0
  204. package/esm/components/AppShell/use-app-shell-resize/clamp-resize-size.mjs +14 -0
  205. package/esm/components/AppShell/use-app-shell-resize/clamp-resize-size.mjs.map +1 -0
  206. package/esm/components/AppShell/use-app-shell-resize/resize-section-config.mjs +49 -0
  207. package/esm/components/AppShell/use-app-shell-resize/resize-section-config.mjs.map +1 -0
  208. package/esm/components/AppShell/use-app-shell-resize/safe-area-inset.mjs +12 -0
  209. package/esm/components/AppShell/use-app-shell-resize/safe-area-inset.mjs.map +1 -0
  210. package/esm/components/AppShell/use-app-shell-resize/use-app-shell-resize.mjs +127 -0
  211. package/esm/components/AppShell/use-app-shell-resize/use-app-shell-resize.mjs.map +1 -0
  212. package/esm/components/AppShell/use-resizing/use-resizing.mjs +21 -3
  213. package/esm/components/AppShell/use-resizing/use-resizing.mjs.map +1 -1
  214. package/esm/components/Checkbox/Checkbox.mjs +10 -2
  215. package/esm/components/Checkbox/Checkbox.mjs.map +1 -1
  216. package/esm/components/Checkbox/Checkbox.module.mjs +1 -0
  217. package/esm/components/Checkbox/Checkbox.module.mjs.map +1 -1
  218. package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.mjs +10 -2
  219. package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.mjs.map +1 -1
  220. package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.mjs +1 -0
  221. package/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.mjs.map +1 -1
  222. package/esm/components/ComboboxPopover/ComboboxPopover.mjs.map +1 -1
  223. package/esm/components/Dialog/Dialog.mjs +0 -1
  224. package/esm/components/Dialog/Dialog.mjs.map +1 -1
  225. package/esm/components/Dialog/Dialog.module.mjs.map +1 -1
  226. package/esm/components/HoverCard/HoverCard.context.mjs.map +1 -1
  227. package/esm/components/HoverCard/HoverCard.mjs +34 -5
  228. package/esm/components/HoverCard/HoverCard.mjs.map +1 -1
  229. package/esm/components/HoverCard/HoverCardDropdown/HoverCardDropdown.mjs +13 -18
  230. package/esm/components/HoverCard/HoverCardDropdown/HoverCardDropdown.mjs.map +1 -1
  231. package/esm/components/HoverCard/HoverCardTarget/HoverCardTarget.mjs +7 -24
  232. package/esm/components/HoverCard/HoverCardTarget/HoverCardTarget.mjs.map +1 -1
  233. package/esm/components/HoverCard/use-hover-card.mjs +27 -13
  234. package/esm/components/HoverCard/use-hover-card.mjs.map +1 -1
  235. package/esm/components/Input/InputWrapper/InputWrapper.mjs +1 -1
  236. package/esm/components/Input/InputWrapper/InputWrapper.mjs.map +1 -1
  237. package/esm/components/Marquee/Marquee.mjs.map +1 -1
  238. package/esm/components/Marquee/Marquee.module.mjs.map +1 -1
  239. package/esm/components/PasswordInput/PasswordInput.mjs +12 -7
  240. package/esm/components/PasswordInput/PasswordInput.mjs.map +1 -1
  241. package/esm/components/PinInput/PinInput.mjs.map +1 -1
  242. package/esm/components/Portal/Portal.mjs +10 -1
  243. package/esm/components/Portal/Portal.mjs.map +1 -1
  244. package/esm/components/Radio/Radio.mjs +10 -2
  245. package/esm/components/Radio/Radio.mjs.map +1 -1
  246. package/esm/components/Radio/Radio.module.mjs +1 -0
  247. package/esm/components/Radio/Radio.module.mjs.map +1 -1
  248. package/esm/components/Radio/RadioIndicator/RadioIndicator.mjs +10 -2
  249. package/esm/components/Radio/RadioIndicator/RadioIndicator.mjs.map +1 -1
  250. package/esm/components/Radio/RadioIndicator/RadioIndicator.module.mjs +1 -0
  251. package/esm/components/Radio/RadioIndicator/RadioIndicator.module.mjs.map +1 -1
  252. package/esm/components/Rating/Rating.mjs +35 -12
  253. package/esm/components/Rating/Rating.mjs.map +1 -1
  254. package/esm/components/Select/Select.mjs +1 -1
  255. package/esm/components/Select/Select.mjs.map +1 -1
  256. package/esm/components/Slider/Thumb/Thumb.mjs +7 -2
  257. package/esm/components/Slider/Thumb/Thumb.mjs.map +1 -1
  258. package/esm/components/Table/Table.mjs +23 -10
  259. package/esm/components/Table/Table.mjs.map +1 -1
  260. package/esm/components/Toggle/Toggle.mjs +80 -0
  261. package/esm/components/Toggle/Toggle.mjs.map +1 -0
  262. package/esm/components/Toggle/Toggle.module.mjs +7 -0
  263. package/esm/components/Toggle/Toggle.module.mjs.map +1 -0
  264. package/esm/components/Toolbar/Toolbar.context.mjs +8 -0
  265. package/esm/components/Toolbar/Toolbar.context.mjs.map +1 -0
  266. package/esm/components/Toolbar/Toolbar.mjs +107 -0
  267. package/esm/components/Toolbar/Toolbar.mjs.map +1 -0
  268. package/esm/components/Toolbar/Toolbar.module.mjs +12 -0
  269. package/esm/components/Toolbar/Toolbar.module.mjs.map +1 -0
  270. package/esm/components/Toolbar/ToolbarDivider/ToolbarDivider.mjs +31 -0
  271. package/esm/components/Toolbar/ToolbarDivider/ToolbarDivider.mjs.map +1 -0
  272. package/esm/components/Toolbar/ToolbarGroup/ToolbarGroup.mjs +31 -0
  273. package/esm/components/Toolbar/ToolbarGroup/ToolbarGroup.mjs.map +1 -0
  274. package/esm/components/Toolbar/ToolbarToggle/ToolbarToggle.mjs +47 -0
  275. package/esm/components/Toolbar/ToolbarToggle/ToolbarToggle.mjs.map +1 -0
  276. package/esm/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.context.mjs +8 -0
  277. package/esm/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.context.mjs.map +1 -0
  278. package/esm/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.mjs +61 -0
  279. package/esm/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.mjs.map +1 -0
  280. package/esm/components/Toolbar/ToolbarToggleItem/ToolbarToggleItem.mjs +51 -0
  281. package/esm/components/Toolbar/ToolbarToggleItem/ToolbarToggleItem.mjs.map +1 -0
  282. package/esm/components/Toolbar/use-toolbar-navigation.mjs +76 -0
  283. package/esm/components/Toolbar/use-toolbar-navigation.mjs.map +1 -0
  284. package/esm/components/Tooltip/Tooltip.mjs +9 -5
  285. package/esm/components/Tooltip/Tooltip.mjs.map +1 -1
  286. package/esm/components/Tooltip/use-tooltip.mjs +7 -4
  287. package/esm/components/Tooltip/use-tooltip.mjs.map +1 -1
  288. package/esm/components/Tour/Tour.context.mjs +22 -0
  289. package/esm/components/Tour/Tour.context.mjs.map +1 -0
  290. package/esm/components/Tour/Tour.mjs +283 -0
  291. package/esm/components/Tour/Tour.mjs.map +1 -0
  292. package/esm/components/Tour/Tour.module.mjs +19 -0
  293. package/esm/components/Tour/Tour.module.mjs.map +1 -0
  294. package/esm/components/Tour/TourBeacon/TourBeacon.mjs +54 -0
  295. package/esm/components/Tour/TourBeacon/TourBeacon.mjs.map +1 -0
  296. package/esm/components/Tour/TourBeaconPositioned.mjs +46 -0
  297. package/esm/components/Tour/TourBeaconPositioned.mjs.map +1 -0
  298. package/esm/components/Tour/TourBody/TourBody.mjs +37 -0
  299. package/esm/components/Tour/TourBody/TourBody.mjs.map +1 -0
  300. package/esm/components/Tour/TourCloseButton/TourCloseButton.mjs +26 -0
  301. package/esm/components/Tour/TourCloseButton/TourCloseButton.mjs.map +1 -0
  302. package/esm/components/Tour/TourNavigation/TourNavigation.mjs +63 -0
  303. package/esm/components/Tour/TourNavigation/TourNavigation.mjs.map +1 -0
  304. package/esm/components/Tour/TourOverlay/TourOverlay.mjs +70 -0
  305. package/esm/components/Tour/TourOverlay/TourOverlay.mjs.map +1 -0
  306. package/esm/components/Tour/TourRoot/TourRoot.mjs +125 -0
  307. package/esm/components/Tour/TourRoot/TourRoot.mjs.map +1 -0
  308. package/esm/components/Tour/TourStep/TourStep.mjs +10 -0
  309. package/esm/components/Tour/TourStep/TourStep.mjs.map +1 -0
  310. package/esm/components/Tour/TourTitle/TourTitle.mjs +38 -0
  311. package/esm/components/Tour/TourTitle/TourTitle.mjs.map +1 -0
  312. package/esm/components/Tour/TourTooltip/TourTooltip.mjs +87 -0
  313. package/esm/components/Tour/TourTooltip/TourTooltip.mjs.map +1 -0
  314. package/esm/components/Tour/get-overlay-hit-path.mjs +17 -0
  315. package/esm/components/Tour/get-overlay-hit-path.mjs.map +1 -0
  316. package/esm/components/Tour/is-element-in-view.mjs +30 -0
  317. package/esm/components/Tour/is-element-in-view.mjs.map +1 -0
  318. package/esm/components/Tour/press-aware-auto-update.mjs +38 -0
  319. package/esm/components/Tour/press-aware-auto-update.mjs.map +1 -0
  320. package/esm/components/Tour/use-target-rect.mjs +59 -0
  321. package/esm/components/Tour/use-target-rect.mjs.map +1 -0
  322. package/esm/components/Tour/use-tooltip-auto-focus.mjs +34 -0
  323. package/esm/components/Tour/use-tooltip-auto-focus.mjs.map +1 -0
  324. package/esm/components/Tour/use-tour-state.mjs +102 -0
  325. package/esm/components/Tour/use-tour-state.mjs.map +1 -0
  326. package/esm/components/Tour/use-tour.mjs +155 -0
  327. package/esm/components/Tour/use-tour.mjs.map +1 -0
  328. package/esm/components/TreeSelect/TreeSelect.mjs +30 -17
  329. package/esm/components/TreeSelect/TreeSelect.mjs.map +1 -1
  330. package/esm/core/Box/Box.mjs +2 -2
  331. package/esm/core/Box/Box.mjs.map +1 -1
  332. package/esm/core/Box/style-props/style-props-data.mjs +2 -2
  333. package/esm/core/Box/style-props/style-props-data.mjs.map +1 -1
  334. package/esm/core/styles-api/use-styles/use-styles.mjs +32 -2
  335. package/esm/core/styles-api/use-styles/use-styles.mjs.map +1 -1
  336. package/esm/core/utils/shallow-equal/shallow-equal.mjs +19 -0
  337. package/esm/core/utils/shallow-equal/shallow-equal.mjs.map +1 -0
  338. package/esm/index.mjs +22 -3
  339. package/lib/components/ActionBar/ActionBar.d.ts +1 -1
  340. package/lib/components/AppShell/AppShell.context.d.ts +4 -0
  341. package/lib/components/AppShell/AppShell.d.ts +5 -3
  342. package/lib/components/AppShell/AppShell.types.d.ts +70 -0
  343. package/lib/components/AppShell/AppShellMediaStyles/AppShellMediaStyles.d.ts +6 -1
  344. package/lib/components/AppShell/AppShellMediaStyles/assign-aside-variables/assign-aside-variables.d.ts +3 -1
  345. package/lib/components/AppShell/AppShellMediaStyles/assign-footer-variables/assign-footer-variables.d.ts +3 -1
  346. package/lib/components/AppShell/AppShellMediaStyles/assign-header-variables/assign-header-variables.d.ts +3 -1
  347. package/lib/components/AppShell/AppShellMediaStyles/assign-navbar-variables/assign-navbar-variables.d.ts +3 -1
  348. package/lib/components/AppShell/AppShellMediaStyles/escape-css-id/escape-css-id.d.ts +2 -0
  349. package/lib/components/AppShell/AppShellMediaStyles/get-resized-value/get-resized-value.d.ts +1 -0
  350. package/lib/components/AppShell/AppShellMediaStyles/get-variables/get-variables.d.ts +6 -1
  351. package/lib/components/AppShell/AppShellResizeHandle/AppShellResizeHandle.d.ts +10 -0
  352. package/lib/components/AppShell/index.d.ts +3 -2
  353. package/lib/components/AppShell/use-app-shell-resize/clamp-resize-size.d.ts +9 -0
  354. package/lib/components/AppShell/use-app-shell-resize/resize-section-config.d.ts +29 -0
  355. package/lib/components/AppShell/use-app-shell-resize/safe-area-inset.d.ts +1 -0
  356. package/lib/components/AppShell/use-app-shell-resize/use-app-shell-resize.d.ts +2 -0
  357. package/lib/components/AppShell/use-resizing/use-resizing.d.ts +2 -1
  358. package/lib/components/Checkbox/Checkbox.d.ts +2 -2
  359. package/lib/components/Checkbox/CheckboxIndicator/CheckboxIndicator.d.ts +2 -2
  360. package/lib/components/Combobox/Combobox.types.d.ts +1 -1
  361. package/lib/components/ComboboxPopover/ComboboxPopover.d.ts +1 -1
  362. package/lib/components/HoverCard/HoverCard.context.d.ts +8 -4
  363. package/lib/components/HoverCard/HoverCard.d.ts +41 -0
  364. package/lib/components/HoverCard/index.d.ts +1 -1
  365. package/lib/components/HoverCard/use-hover-card.d.ts +11 -0
  366. package/lib/components/Marquee/Marquee.d.ts +1 -1
  367. package/lib/components/PinInput/PinInput.d.ts +1 -1
  368. package/lib/components/Radio/Radio.d.ts +2 -2
  369. package/lib/components/Radio/RadioIndicator/RadioIndicator.d.ts +2 -2
  370. package/lib/components/Slider/Thumb/Thumb.d.ts +1 -1
  371. package/lib/components/Toggle/Toggle.d.ts +73 -0
  372. package/lib/components/Toggle/index.d.ts +7 -0
  373. package/lib/components/Toolbar/Toolbar.context.d.ts +7 -0
  374. package/lib/components/Toolbar/Toolbar.d.ts +58 -0
  375. package/lib/components/Toolbar/ToolbarDivider/ToolbarDivider.d.ts +16 -0
  376. package/lib/components/Toolbar/ToolbarGroup/ToolbarGroup.d.ts +16 -0
  377. package/lib/components/Toolbar/ToolbarToggle/ToolbarToggle.d.ts +44 -0
  378. package/lib/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.context.d.ts +7 -0
  379. package/lib/components/Toolbar/ToolbarToggleGroup/ToolbarToggleGroup.d.ts +42 -0
  380. package/lib/components/Toolbar/ToolbarToggleItem/ToolbarToggleItem.d.ts +22 -0
  381. package/lib/components/Toolbar/index.d.ts +32 -0
  382. package/lib/components/Toolbar/use-toolbar-navigation.d.ts +11 -0
  383. package/lib/components/Tooltip/Tooltip.d.ts +3 -1
  384. package/lib/components/Tooltip/use-tooltip.d.ts +2 -0
  385. package/lib/components/Tour/Tour.context.d.ts +66 -0
  386. package/lib/components/Tour/Tour.d.ts +144 -0
  387. package/lib/components/Tour/TourBeacon/TourBeacon.d.ts +23 -0
  388. package/lib/components/Tour/TourBeaconPositioned.d.ts +13 -0
  389. package/lib/components/Tour/TourBody/TourBody.d.ts +19 -0
  390. package/lib/components/Tour/TourCloseButton/TourCloseButton.d.ts +12 -0
  391. package/lib/components/Tour/TourNavigation/TourNavigation.d.ts +11 -0
  392. package/lib/components/Tour/TourOverlay/TourOverlay.d.ts +22 -0
  393. package/lib/components/Tour/TourRoot/TourRoot.d.ts +72 -0
  394. package/lib/components/Tour/TourStep/TourStep.d.ts +30 -0
  395. package/lib/components/Tour/TourTitle/TourTitle.d.ts +19 -0
  396. package/lib/components/Tour/TourTooltip/TourTooltip.d.ts +29 -0
  397. package/lib/components/Tour/get-overlay-hit-path.d.ts +2 -0
  398. package/lib/components/Tour/index.d.ts +23 -0
  399. package/lib/components/Tour/is-element-in-view.d.ts +1 -0
  400. package/lib/components/Tour/press-aware-auto-update.d.ts +2 -0
  401. package/lib/components/Tour/use-target-rect.d.ts +13 -0
  402. package/lib/components/Tour/use-tooltip-auto-focus.d.ts +7 -0
  403. package/lib/components/Tour/use-tour-state.d.ts +23 -0
  404. package/lib/components/Tour/use-tour.d.ts +40 -0
  405. package/lib/components/TreeSelect/TreeSelect.d.ts +14 -0
  406. package/lib/components/TreeSelect/index.d.ts +2 -2
  407. package/lib/components/index.d.ts +3 -0
  408. package/lib/core/Box/style-props/index.d.ts +1 -1
  409. package/lib/core/Box/style-props/style-props-data.d.ts +1 -1
  410. package/lib/core/styles-api/use-styles/use-styles.d.ts +2 -1
  411. package/lib/core/utils/shallow-equal/shallow-equal.d.ts +1 -0
  412. package/package.json +5 -5
  413. package/styles/ActionBar.css +1 -0
  414. package/styles/ActionBar.layer.css +1 -0
  415. package/styles/AppShell.css +68 -0
  416. package/styles/AppShell.layer.css +68 -0
  417. package/styles/Checkbox.css +20 -0
  418. package/styles/Checkbox.layer.css +20 -0
  419. package/styles/CheckboxIndicator.css +16 -0
  420. package/styles/CheckboxIndicator.layer.css +16 -0
  421. package/styles/Dialog.css +1 -0
  422. package/styles/Dialog.layer.css +1 -0
  423. package/styles/Marquee.css +1 -1
  424. package/styles/Marquee.layer.css +1 -1
  425. package/styles/Radio.css +10 -0
  426. package/styles/Radio.layer.css +10 -0
  427. package/styles/RadioIndicator.css +11 -0
  428. package/styles/RadioIndicator.layer.css +11 -0
  429. package/styles/Toggle.css +98 -0
  430. package/styles/Toggle.layer.css +99 -0
  431. package/styles/Toolbar.css +220 -0
  432. package/styles/Toolbar.layer.css +221 -0
  433. package/styles/Tour.css +127 -0
  434. package/styles/Tour.layer.css +128 -0
  435. package/styles.css +576 -1
  436. package/styles.layer.css +576 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tour.cjs","names":["createVarsResolver","getThemeColor","getShadow","factory","useProps","defaultLabels","useId","useState","useRef","useTour","TourStep","useTooltipAutoFocus","useMergedRef","useStyles","TourProvider","OptionalPortal","Box","Transition","getOverlayHitPath","TourBeaconPositioned","FocusTrap","TourCloseButton","TourTitle","TourBody","TourNavigation","classes","TourRoot","TourOverlay","TourTooltip","TourBeacon"],"sources":["../../../src/components/Tour/Tour.tsx"],"sourcesContent":["import { useEffect, useId, useRef, useState } from 'react';\nimport { useMergedRef } from '@mantine/hooks';\nimport {\n Box,\n BoxProps,\n createVarsResolver,\n ElementProps,\n factory,\n Factory,\n getShadow,\n getThemeColor,\n MantineColor,\n StylesApiProps,\n useProps,\n useStyles,\n} from '../../core';\nimport { FocusTrap } from '../FocusTrap';\nimport { OptionalPortal, type PortalProps } from '../Portal';\nimport { Transition, type TransitionOverride } from '../Transition';\nimport { getOverlayHitPath } from './get-overlay-hit-path';\nimport { defaultLabels, TourLabels, TourProvider } from './Tour.context';\nimport { TourBeacon, type TourBeaconProps } from './TourBeacon/TourBeacon';\nimport { TourBeaconPositioned } from './TourBeaconPositioned';\nimport { TourBody, type TourBodyProps } from './TourBody/TourBody';\nimport { TourCloseButton, type TourCloseButtonProps } from './TourCloseButton/TourCloseButton';\nimport { TourNavigation, type TourNavigationProps } from './TourNavigation/TourNavigation';\nimport { TourOverlay, type TourOverlayProps } from './TourOverlay/TourOverlay';\nimport { TourRoot, type TourRootProps } from './TourRoot/TourRoot';\nimport { TourStep, type TourStepProps } from './TourStep/TourStep';\nimport { TourTitle, type TourTitleProps } from './TourTitle/TourTitle';\nimport { TourTooltip, type TourTooltipProps } from './TourTooltip/TourTooltip';\nimport { useTooltipAutoFocus } from './use-tooltip-auto-focus';\nimport { useTour } from './use-tour';\nimport classes from './Tour.module.css';\n\nexport type TourStylesNames =\n | 'root'\n | 'overlay'\n | 'spotlight'\n | 'tooltip'\n | 'title'\n | 'body'\n | 'navigation'\n | 'closeButton'\n | 'stepCounter'\n | 'beacon'\n | 'beaconPulse'\n | 'navigationButton';\n\nexport type TourCssVariables = {\n root:\n | '--tour-z-index'\n | '--tour-overlay-color'\n | '--tour-tooltip-radius'\n | '--tour-tooltip-shadow'\n | '--tour-beacon-size'\n | '--tour-beacon-color'\n | '--tour-color';\n};\n\nexport interface TourProps extends BoxProps, StylesApiProps<TourFactory>, ElementProps<'div'> {\n /** Whether the tour is active @default false */\n active?: boolean;\n\n /** Called when the tour is closed */\n onClose?: () => void;\n\n /** Controlled current step index */\n step?: number;\n\n /** Uncontrolled default step index @default 0 */\n defaultStep?: number;\n\n /** Called when step changes */\n onStepChange?: (step: number) => void;\n\n /** Called when a step opens */\n onStepOpen?: (step: number) => void;\n\n /** Called when a step closes */\n onStepClose?: (step: number) => void;\n\n /** Tour mode @default \"guided\" */\n mode?: 'guided' | 'beacon';\n\n /** Whether to display the overlay @default true */\n withOverlay?: boolean;\n\n /** Whether pointer events pass through the spotlight cutout to the target element, the rest of the overlay keeps blocking clicks @default false */\n withOverlayInteraction?: boolean;\n\n /** Whether to display the close button @default true */\n withCloseButton?: boolean;\n\n /** Whether keyboard navigation is enabled in guided mode @default true */\n withKeyboardNavigation?: boolean;\n\n /** Whether to scroll target elements into view @default true */\n withScrollIntoView?: boolean;\n\n /** Custom scroll handler */\n scrollToHandler?: (element: HTMLElement) => void;\n\n /** Padding around the spotlight cutout in px @default 8 */\n spotlightPadding?: number;\n\n /** Border radius of the spotlight cutout in px @default 4 */\n spotlightRadius?: number;\n\n /** Whether pressing Escape closes the tour @default true */\n closeOnEscape?: boolean;\n\n /** Whether clicking the overlay closes the tour, with `withOverlayInteraction` only clicks outside the spotlight cutout close it @default false */\n closeOnOverlayClick?: boolean;\n\n /** Labels for tour UI elements */\n labels?: Partial<TourLabels>;\n\n /** Whether to render inside a portal @default true */\n withinPortal?: boolean;\n\n /** Props passed to the Portal component */\n portalProps?: Omit<PortalProps, 'children'>;\n\n /** z-index of the tour @default 10000 */\n zIndex?: string | number;\n\n /** Transition props for the tooltip @default { duration: 200, transition: 'pop' } */\n transitionProps?: TransitionOverride;\n\n /** Duration of the tooltip position transition between steps in ms @default 300 */\n stepTransitionDuration?: number;\n\n /** Max width of the tooltip, tooltip always takes this width if viewport allows @default 360 */\n maxWidth?: number;\n\n /** Tour step overlay color @default \"rgba(0, 0, 0, 0.5)\" */\n overlayColor?: string;\n\n /** Key of `theme.colors` or any valid CSS color, controls beacon color and `Tour.Navigation` next button color @default theme.primaryColor */\n color?: MantineColor;\n\n /** Key of `theme.shadows` or any valid CSS box-shadow value, controls the tooltip shadow @default 'md' */\n tooltipShadow?: string;\n\n /** Tour steps – `Tour.Step` elements must be direct children (arrays are supported, Fragments and wrapper components are not) */\n children?: React.ReactNode;\n}\n\nexport type TourFactory = Factory<{\n props: TourProps;\n ref: HTMLDivElement;\n stylesNames: TourStylesNames;\n vars: TourCssVariables;\n staticComponents: {\n Root: typeof TourRoot;\n Step: typeof TourStep;\n Overlay: typeof TourOverlay;\n Tooltip: typeof TourTooltip;\n Title: typeof TourTitle;\n Body: typeof TourBody;\n Navigation: typeof TourNavigation;\n Beacon: typeof TourBeacon;\n CloseButton: typeof TourCloseButton;\n };\n}>;\n\nconst defaultProps = {\n active: false,\n mode: 'guided',\n withOverlay: true,\n withOverlayInteraction: false,\n withCloseButton: true,\n withKeyboardNavigation: true,\n withScrollIntoView: true,\n spotlightPadding: 8,\n closeOnEscape: true,\n closeOnOverlayClick: false,\n withinPortal: true,\n zIndex: 10000,\n transitionProps: { duration: 200, transition: 'pop' },\n maxWidth: 360,\n stepTransitionDuration: 300,\n overlayColor: 'rgba(0, 0, 0, 0.5)',\n} satisfies Partial<TourProps>;\n\nconst varsResolver = createVarsResolver<TourFactory>(\n (theme, { zIndex, overlayColor, tooltipShadow, color }) => ({\n root: {\n '--tour-color': color ? getThemeColor(color, theme) : undefined,\n '--tour-z-index': zIndex?.toString(),\n '--tour-overlay-color': overlayColor,\n '--tour-tooltip-radius': undefined,\n '--tour-tooltip-shadow': getShadow(tooltipShadow),\n '--tour-beacon-size': undefined,\n '--tour-beacon-color': undefined,\n },\n })\n);\n\nconst noop = () => {};\n\nfunction getBeaconLabel(label: string, title: React.ReactNode) {\n return typeof title === 'string' || typeof title === 'number' ? `${label}: ${title}` : label;\n}\n\nexport const Tour = factory<TourFactory>((_props) => {\n const props = useProps('Tour', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n unstyled,\n vars,\n active,\n onClose,\n step: stepProp,\n defaultStep,\n onStepChange,\n onStepOpen,\n onStepClose,\n mode,\n withOverlay,\n withOverlayInteraction,\n withCloseButton,\n withKeyboardNavigation,\n withScrollIntoView,\n scrollToHandler,\n spotlightPadding,\n spotlightRadius,\n closeOnEscape,\n closeOnOverlayClick,\n labels: labelsProp,\n withinPortal,\n portalProps,\n zIndex,\n transitionProps,\n stepTransitionDuration,\n maxWidth,\n overlayColor,\n tooltipShadow,\n color,\n children,\n attributes,\n ...others\n } = props;\n\n const labels: TourLabels = { ...defaultLabels, ...labelsProp };\n const spotlightPaddingValue = spotlightPadding!;\n const id = useId();\n const maskId = `${id}-mask`;\n const [registeredTitleId, registerTitle] = useState<string | null>(null);\n const [registeredBodyId, registerBody] = useState<string | null>(null);\n const titleId = registeredTitleId ?? `${id}-title`;\n const bodyId = registeredBodyId ?? `${id}-body`;\n const titleMounted = registeredTitleId !== null;\n const bodyMounted = registeredBodyId !== null;\n const beaconToFocusRef = useRef<number | null>(null);\n\n const {\n steps,\n setStep,\n beaconOpenStep,\n openBeaconStep,\n close,\n displayStep,\n displayStepIndex,\n targetRect,\n floatingStyles,\n floatingRefs,\n isCentered,\n constrainedWidth,\n stepMoving,\n showTooltip,\n clearExitedTarget,\n } = useTour({\n active,\n onClose,\n step: stepProp,\n defaultStep,\n onStepChange,\n onStepOpen,\n onStepClose,\n mode,\n withKeyboardNavigation,\n withScrollIntoView,\n scrollToHandler,\n closeOnEscape,\n maxWidth,\n stepTransitionDuration,\n children,\n stepComponent: TourStep,\n });\n\n useEffect(() => {\n if (!active) {\n beaconToFocusRef.current = null;\n }\n }, [active]);\n\n const resolvedSpotlightPadding = displayStep?.spotlightPadding ?? spotlightPaddingValue;\n const resolvedSpotlightRadius = displayStep?.spotlightRadius ?? spotlightRadius ?? 4;\n const resolvedWithOverlay = displayStep?.withOverlay ?? withOverlay;\n const focusTrapActive =\n showTooltip && mode === 'guided' && !!resolvedWithOverlay && !withOverlayInteraction;\n\n const autoFocusRef = useTooltipAutoFocus({\n autoFocus: showTooltip && !focusTrapActive,\n opened: showTooltip,\n step: displayStepIndex,\n });\n const tooltipMergedRef = useMergedRef(floatingRefs.setFloating, autoFocusRef);\n\n const getStyles = useStyles<TourFactory>({\n name: 'Tour',\n classes,\n props,\n className,\n style,\n classNames,\n styles,\n unstyled,\n attributes,\n vars,\n varsResolver,\n });\n\n return (\n <TourProvider\n value={{\n getStyles,\n step: displayStepIndex,\n setStep,\n stepsCount: steps.length,\n close,\n withOverlay: !!resolvedWithOverlay,\n withOverlayInteraction: withOverlayInteraction!,\n withCloseButton: withCloseButton!,\n spotlightPadding: resolvedSpotlightPadding,\n spotlightRadius: resolvedSpotlightRadius,\n closeOnOverlayClick: closeOnOverlayClick!,\n transitionProps,\n color,\n labels,\n titleId,\n bodyId,\n titleMounted,\n bodyMounted,\n registerTitle,\n registerBody,\n setTargetElement: noop,\n }}\n >\n <OptionalPortal {...portalProps} withinPortal={withinPortal}>\n <Box {...getStyles('root')} {...others}>\n {resolvedWithOverlay && (\n <Transition\n mounted={showTooltip}\n duration={transitionProps?.duration ?? 200}\n transition=\"fade\"\n >\n {(overlayStyles) => (\n <svg\n {...getStyles('overlay')}\n role=\"presentation\"\n width=\"100%\"\n height=\"100%\"\n style={overlayStyles}\n data-with-overlay-interaction={withOverlayInteraction || undefined}\n onMouseDown={(event) => event.preventDefault()}\n onClick={() => {\n if (closeOnOverlayClick) {\n close();\n }\n }}\n >\n <defs>\n <mask id={maskId}>\n <rect x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" fill=\"white\" />\n {targetRect && (\n <rect\n x={targetRect.left - resolvedSpotlightPadding}\n y={targetRect.top - resolvedSpotlightPadding}\n width={targetRect.width + resolvedSpotlightPadding * 2}\n height={targetRect.height + resolvedSpotlightPadding * 2}\n rx={resolvedSpotlightRadius}\n ry={resolvedSpotlightRadius}\n fill=\"black\"\n {...getStyles('spotlight', {\n style: stepMoving ? { transition: 'all 150ms ease' } : undefined,\n })}\n />\n )}\n </mask>\n </defs>\n <rect\n x=\"0\"\n y=\"0\"\n width=\"100%\"\n height=\"100%\"\n style={{ fill: 'var(--tour-overlay-color)' }}\n mask={`url(#${maskId})`}\n />\n {withOverlayInteraction && (\n <path\n d={getOverlayHitPath(\n targetRect,\n resolvedSpotlightPadding,\n resolvedSpotlightRadius\n )}\n fillRule=\"evenodd\"\n fill=\"transparent\"\n style={{ pointerEvents: 'auto' }}\n />\n )}\n </svg>\n )}\n </Transition>\n )}\n\n {active &&\n mode === 'beacon' &&\n beaconOpenStep === null &&\n steps.map((stepData, index) => {\n if (stepData.withBeacon === false) {\n return null;\n }\n return (\n <TourBeaconPositioned\n key={index}\n target={stepData.target}\n onClick={() => {\n beaconToFocusRef.current = index;\n openBeaconStep(index);\n }}\n ariaLabel={getBeaconLabel(labels.beacon, stepData.title)}\n withInitialFocus={beaconToFocusRef.current === index}\n onInitialFocus={() => {\n beaconToFocusRef.current = null;\n }}\n pulseStyles={getStyles('beaconPulse')}\n {...getStyles('beacon')}\n />\n );\n })}\n\n <Transition\n mounted={showTooltip && !!displayStep}\n duration={transitionProps?.duration ?? 200}\n transition={transitionProps?.transition ?? 'pop'}\n onExited={clearExitedTarget}\n timingFunction={transitionProps?.timingFunction}\n >\n {({\n transitionProperty,\n transitionDuration,\n transitionTimingFunction,\n ...transitionStyles\n }) => (\n <FocusTrap active={focusTrapActive} innerRef={tooltipMergedRef}>\n <Box\n {...getStyles('tooltip')}\n role=\"dialog\"\n tabIndex={-1}\n aria-labelledby={titleMounted ? titleId : undefined}\n aria-label={\n titleMounted\n ? undefined\n : labels.stepCounter(displayStepIndex + 1, steps.length)\n }\n aria-describedby={bodyMounted ? bodyId : undefined}\n data-centered={isCentered || undefined}\n style={{\n ...getStyles('tooltip').style,\n ...(isCentered ? {} : floatingStyles),\n ...transitionStyles,\n width: isCentered ? maxWidth : constrainedWidth,\n transition: [\n ...(transitionProperty\n ? transitionProperty\n .split(',')\n .map(\n (prop: string) =>\n `${prop.trim()} ${transitionDuration} ${transitionTimingFunction || 'ease'}`\n )\n : []),\n ...(stepMoving\n ? ['top', 'left', 'translate'].map(\n (prop) =>\n `${prop} ${stepTransitionDuration}ms cubic-bezier(0.16, 1, 0.3, 1)`\n )\n : []),\n ].join(', '),\n }}\n >\n {focusTrapActive && <FocusTrap.InitialFocus />}\n {withCloseButton && <TourCloseButton />}\n {displayStep?.title && <TourTitle>{displayStep.title}</TourTitle>}\n {displayStep?.children && <TourBody>{displayStep.children}</TourBody>}\n <TourNavigation />\n </Box>\n </FocusTrap>\n )}\n </Transition>\n </Box>\n </OptionalPortal>\n </TourProvider>\n );\n});\n\nTour.classes = classes;\nTour.displayName = '@mantine/core/Tour';\nTour.Root = TourRoot;\nTour.Step = TourStep;\nTour.Overlay = TourOverlay;\nTour.Tooltip = TourTooltip;\nTour.Title = TourTitle;\nTour.Body = TourBody;\nTour.CloseButton = TourCloseButton;\nTour.Navigation = TourNavigation;\nTour.Beacon = TourBeacon;\n\nexport namespace Tour {\n export type Props = TourProps;\n export type StylesNames = TourStylesNames;\n export type CssVariables = TourCssVariables;\n export type Factory = TourFactory;\n\n export namespace Root {\n export type Props = TourRootProps;\n }\n\n export namespace Step {\n export type Props = TourStepProps;\n }\n\n export namespace Overlay {\n export type Props = TourOverlayProps;\n }\n\n export namespace Tooltip {\n export type Props = TourTooltipProps;\n }\n\n export namespace Title {\n export type Props = TourTitleProps;\n }\n\n export namespace Body {\n export type Props = TourBodyProps;\n }\n\n export namespace CloseButton {\n export type Props = TourCloseButtonProps;\n }\n\n export namespace Navigation {\n export type Props = TourNavigationProps;\n }\n\n export namespace Beacon {\n export type Props = TourBeaconProps;\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ "use client";
2
+ let react = require("react");
3
+ //#region packages/@mantine/core/src/components/Tour/Tour.context.ts
4
+ const defaultLabels = {
5
+ skip: "Skip",
6
+ back: "Back",
7
+ next: "Next",
8
+ close: "Close",
9
+ stepCounter: (current, total) => `${current} of ${total}`,
10
+ beacon: "Start tour"
11
+ };
12
+ const TourContext = (0, react.createContext)(null);
13
+ function useTourContext() {
14
+ const ctx = (0, react.use)(TourContext);
15
+ if (ctx === null) throw new Error("Tour component was not found in tree");
16
+ return ctx;
17
+ }
18
+ const TourProvider = TourContext.Provider;
19
+ //#endregion
20
+ exports.TourContext = TourContext;
21
+ exports.TourProvider = TourProvider;
22
+ exports.defaultLabels = defaultLabels;
23
+ exports.useTourContext = useTourContext;
24
+
25
+ //# sourceMappingURL=Tour.context.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tour.context.cjs","names":["createContext","use"],"sources":["../../../src/components/Tour/Tour.context.ts"],"sourcesContent":["import { createContext, use } from 'react';\nimport type { GetStylesApi, MantineColor } from '../../core';\nimport type { TransitionOverride } from '../Transition';\nimport type { TourFactory } from './Tour';\nimport type { TourRootFactory } from './TourRoot/TourRoot';\n\nexport interface TourLabels {\n /** Label for the skip button @default \"Skip\" */\n skip: string;\n\n /** Label for the back button @default \"Back\" */\n back: string;\n\n /** Label for the next button @default \"Next\" */\n next: string;\n\n /** Label for the close/finish button @default \"Close\" */\n close: string;\n\n /** Function that returns step counter text @default (current, total) => `${current} of ${total}` */\n stepCounter: (current: number, total: number) => string;\n\n /** Label for the beacon button, the step title is appended when it is a string @default \"Start tour\" */\n beacon: string;\n}\n\nexport const defaultLabels: TourLabels = {\n skip: 'Skip',\n back: 'Back',\n next: 'Next',\n close: 'Close',\n stepCounter: (current, total) => `${current} of ${total}`,\n beacon: 'Start tour',\n};\n\nexport interface TourContextValue {\n /** Returns styles for the given selector */\n getStyles: GetStylesApi<TourFactory & TourRootFactory>;\n\n /** Current active step index */\n step: number;\n\n /** Sets the active step index */\n setStep: (step: number) => void;\n\n /** Total number of steps */\n stepsCount: number;\n\n /** Closes the tour */\n close: () => void;\n\n /** Whether `Tour.Overlay` is rendered */\n withOverlay: boolean;\n\n /** Whether pointer events pass through the spotlight cutout to the target element */\n withOverlayInteraction: boolean;\n\n /** Whether `Tour.CloseButton` is rendered */\n withCloseButton: boolean;\n\n /** Key of `theme.colors` or any valid CSS color passed to `Tour.Navigation` next button */\n color?: MantineColor;\n\n /** Padding around the spotlight cutout in px */\n spotlightPadding: number;\n\n /** Border radius of the spotlight cutout in px */\n spotlightRadius: number;\n\n /** Whether clicking the overlay closes the tour */\n closeOnOverlayClick: boolean;\n\n /** Default transition props of `Tour.Tooltip` */\n transitionProps: TransitionOverride | undefined;\n\n /** Labels for tour UI elements */\n labels: TourLabels;\n\n /** Id of the mounted `Tour.Title` (or the generated fallback), referenced by the tooltip `aria-labelledby` */\n titleId: string;\n\n /** Id of the mounted `Tour.Body` (or the generated fallback), referenced by the tooltip `aria-describedby` */\n bodyId: string;\n\n /** Whether `Tour.Title` is currently mounted */\n titleMounted: boolean;\n\n /** Whether `Tour.Body` is currently mounted */\n bodyMounted: boolean;\n\n /** Registers the id of the mounted `Tour.Title`, `null` when it unmounts */\n registerTitle: (id: string | null) => void;\n\n /** Registers the id of the mounted `Tour.Body`, `null` when it unmounts */\n registerBody: (id: string | null) => void;\n\n /** Registers the current step target element, used to skip arrow hotkeys fired from inside it */\n setTargetElement: (element: HTMLElement | null) => void;\n}\n\nexport const TourContext = createContext<TourContextValue | null>(null);\n\nexport function useTourContext() {\n const ctx = use(TourContext);\n\n if (ctx === null) {\n throw new Error('Tour component was not found in tree');\n }\n\n return ctx;\n}\n\nexport const TourProvider = TourContext.Provider;\n"],"mappings":";;;AA0BA,MAAa,gBAA4B;CACvC,MAAM;CACN,MAAM;CACN,MAAM;CACN,OAAO;CACP,cAAc,SAAS,UAAU,GAAG,QAAQ,MAAM;CAClD,QAAQ;AACV;AAmEA,MAAa,eAAA,GAAcA,MAAAA,cAAAA,CAAuC,IAAI;AAEtE,SAAgB,iBAAiB;CAC/B,MAAM,OAAA,GAAMC,MAAAA,IAAAA,CAAI,WAAW;CAE3B,IAAI,QAAQ,MACV,MAAM,IAAI,MAAM,sCAAsC;CAGxD,OAAO;AACT;AAEA,MAAa,eAAe,YAAY"}
@@ -0,0 +1,19 @@
1
+ "use client";
2
+ //#region packages/@mantine/core/src/components/Tour/Tour.module.css
3
+ var Tour_module_default = {
4
+ "root": "m_23880f17",
5
+ "overlay": "m_43070dfb",
6
+ "tooltip": "m_401e99ae",
7
+ "title": "m_4d935ac3",
8
+ "body": "m_2380c7d7",
9
+ "navigation": "m_f5605c89",
10
+ "closeButton": "m_324c9375",
11
+ "stepCounter": "m_66c6e5bb",
12
+ "beacon": "m_45dfa139",
13
+ "beaconPulse": "m_af9f65e0",
14
+ "tour-beacon-pulse": "m_b83bf210"
15
+ };
16
+ //#endregion
17
+ exports.default = Tour_module_default;
18
+
19
+ //# sourceMappingURL=Tour.module.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tour.module.cjs","names":[],"sources":["../../../src/components/Tour/Tour.module.css"],"sourcesContent":[".root {\n position: fixed;\n inset: 0;\n pointer-events: none;\n z-index: var(--tour-z-index);\n}\n\n.overlay {\n position: fixed;\n inset: 0;\n pointer-events: auto;\n\n &:where([data-with-overlay-interaction]) {\n pointer-events: none;\n }\n}\n\n.tooltip {\n position: absolute;\n pointer-events: auto;\n padding: var(--mantine-spacing-md);\n border-radius: var(--tour-tooltip-radius, var(--mantine-radius-default));\n box-shadow: var(--tour-tooltip-shadow, var(--mantine-shadow-md));\n z-index: 1;\n box-sizing: border-box;\n\n @mixin where-light {\n background-color: var(--mantine-color-white);\n border: 1px solid var(--mantine-color-gray-3);\n }\n\n @mixin where-dark {\n background-color: var(--mantine-color-dark-7);\n border: 1px solid var(--mantine-color-dark-4);\n }\n\n &:where([data-centered]) {\n position: fixed;\n top: 50%;\n left: 50%;\n translate: -50% -50%;\n max-width: calc(100% - 16px);\n }\n}\n\n.title {\n margin: 0;\n font-weight: 600;\n font-size: var(--mantine-font-size-md);\n line-height: 1.4;\n margin-bottom: var(--mantine-spacing-xs);\n}\n\n.body {\n font-size: var(--mantine-font-size-sm);\n line-height: 1.55;\n}\n\n.navigation {\n margin-top: var(--mantine-spacing-md);\n}\n\n.closeButton {\n position: absolute;\n top: var(--mantine-spacing-xs);\n right: var(--mantine-spacing-xs);\n\n /* stylelint-disable-next-line selector-type-no-unknown */\n :where([dir='rtl']) & {\n right: auto;\n left: var(--mantine-spacing-xs);\n }\n}\n\n.stepCounter {\n font-size: var(--mantine-font-size-sm);\n\n @mixin where-light {\n color: var(--mantine-color-gray-6);\n }\n\n @mixin where-dark {\n color: var(--mantine-color-dark-2);\n }\n}\n\n.beacon {\n position: absolute;\n pointer-events: auto;\n width: var(--tour-beacon-size, 12px);\n height: var(--tour-beacon-size, 12px);\n border-radius: 50%;\n background-color: var(\n --tour-beacon-color,\n var(--tour-color, var(--mantine-primary-color-filled))\n );\n border: 0;\n padding: 0;\n cursor: pointer;\n z-index: 1;\n}\n\n.beaconPulse {\n position: absolute;\n inset: calc(var(--tour-beacon-size, 12px) * -0.35);\n border-radius: 50%;\n background-color: var(\n --tour-beacon-color,\n var(--tour-color, var(--mantine-primary-color-filled))\n );\n opacity: 0.3;\n animation: tour-beacon-pulse 1.5s ease-in-out infinite;\n}\n\n@keyframes tour-beacon-pulse {\n 0%,\n 100% {\n transform: scale(0.8);\n opacity: 0.3;\n }\n\n 50% {\n transform: scale(1);\n opacity: 0;\n }\n}\n"],"mappings":""}
@@ -0,0 +1,54 @@
1
+ "use client";
2
+ const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
3
+ const require_factory = require("../../../core/factory/factory.cjs");
4
+ const require_DirectionProvider = require("../../../core/DirectionProvider/DirectionProvider.cjs");
5
+ const require_UnstyledButton = require("../../UnstyledButton/UnstyledButton.cjs");
6
+ const require_get_floating_position = require("../../../utils/Floating/get-floating-position/get-floating-position.cjs");
7
+ const require_Tour_context = require("../Tour.context.cjs");
8
+ const require_press_aware_auto_update = require("../press-aware-auto-update.cjs");
9
+ const require_use_target_rect = require("../use-target-rect.cjs");
10
+ const require_Tour_module = require("../Tour.module.cjs");
11
+ let _mantine_hooks = require("@mantine/hooks");
12
+ let react_jsx_runtime = require("react/jsx-runtime");
13
+ let _floating_ui_react = require("@floating-ui/react");
14
+ //#region packages/@mantine/core/src/components/Tour/TourBeacon/TourBeacon.tsx
15
+ const defaultProps = {};
16
+ const TourBeacon = require_factory.factory((_props) => {
17
+ const { classNames, className, style, styles, vars, target, onClick, ref, role: _role, "aria-label": ariaLabel, ...others } = require_use_props.useProps("TourBeacon", defaultProps, _props);
18
+ const ctx = require_Tour_context.useTourContext();
19
+ const { dir } = require_DirectionProvider.useDirection();
20
+ const element = require_use_target_rect.useTargetElement(target);
21
+ const { refs, floatingStyles } = (0, _floating_ui_react.useFloating)({
22
+ elements: { reference: element },
23
+ placement: require_get_floating_position.getFloatingPosition(dir, "right-start"),
24
+ whileElementsMounted: require_press_aware_auto_update.pressAwareAutoUpdate,
25
+ middleware: [(0, _floating_ui_react.offset)(8)]
26
+ });
27
+ const mergedRef = (0, _mantine_hooks.useMergedRef)(refs.setFloating, ref);
28
+ const beaconStyles = ctx.getStyles("beacon", {
29
+ className,
30
+ classNames,
31
+ style,
32
+ styles
33
+ });
34
+ if (!element) return null;
35
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_UnstyledButton.UnstyledButton, {
36
+ ref: mergedRef,
37
+ role: "button",
38
+ "aria-label": ariaLabel || ctx.labels.beacon,
39
+ ...beaconStyles,
40
+ style: {
41
+ ...beaconStyles.style,
42
+ ...floatingStyles
43
+ },
44
+ onClick,
45
+ ...others,
46
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { ...ctx.getStyles("beaconPulse") })
47
+ });
48
+ });
49
+ TourBeacon.classes = require_Tour_module.default;
50
+ TourBeacon.displayName = "@mantine/core/TourBeacon";
51
+ //#endregion
52
+ exports.TourBeacon = TourBeacon;
53
+
54
+ //# sourceMappingURL=TourBeacon.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourBeacon.cjs","names":["factory","useProps","useTourContext","useDirection","useTargetElement","useFloating","getFloatingPosition","pressAwareAutoUpdate","offset","useMergedRef","UnstyledButton","classes"],"sources":["../../../../src/components/Tour/TourBeacon/TourBeacon.tsx"],"sourcesContent":["import { offset, useFloating } from '@floating-ui/react';\nimport { useMergedRef } from '@mantine/hooks';\nimport {\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useDirection,\n useProps,\n} from '../../../core';\nimport { getFloatingPosition } from '../../../utils/Floating';\nimport { UnstyledButton } from '../../UnstyledButton';\nimport { pressAwareAutoUpdate } from '../press-aware-auto-update';\nimport { useTourContext } from '../Tour.context';\nimport { useTargetElement } from '../use-target-rect';\nimport classes from '../Tour.module.css';\n\nexport type TourBeaconStylesNames = 'beacon' | 'beaconPulse';\n\nexport interface TourBeaconProps\n extends BoxProps, CompoundStylesApiProps<TourBeaconFactory>, ElementProps<'button'> {\n /** CSS selector or ref to the target element */\n target?: string | React.RefObject<HTMLElement | null>;\n\n /** Called when the beacon is clicked */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n}\n\nexport type TourBeaconFactory = Factory<{\n props: TourBeaconProps;\n ref: HTMLButtonElement;\n stylesNames: TourBeaconStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TourBeaconProps> = {};\n\nexport const TourBeacon = factory<TourBeaconFactory>((_props) => {\n const props = useProps('TourBeacon', defaultProps, _props);\n const {\n classNames,\n className,\n style,\n styles,\n vars,\n target,\n onClick,\n ref,\n role: _role,\n 'aria-label': ariaLabel,\n ...others\n } = props;\n\n const ctx = useTourContext();\n const { dir } = useDirection();\n const element = useTargetElement(target);\n\n const { refs, floatingStyles } = useFloating({\n elements: { reference: element },\n placement: getFloatingPosition(dir, 'right-start'),\n whileElementsMounted: pressAwareAutoUpdate,\n middleware: [offset(8)],\n });\n\n const mergedRef = useMergedRef(refs.setFloating, ref);\n const beaconStyles = ctx.getStyles('beacon', { className, classNames, style, styles });\n\n if (!element) {\n return null;\n }\n\n return (\n <UnstyledButton\n ref={mergedRef}\n role=\"button\"\n aria-label={ariaLabel || ctx.labels.beacon}\n {...beaconStyles}\n style={{\n ...beaconStyles.style,\n ...floatingStyles,\n }}\n onClick={onClick}\n {...others}\n >\n <span {...ctx.getStyles('beaconPulse')} />\n </UnstyledButton>\n );\n});\n\nTourBeacon.classes = classes;\nTourBeacon.displayName = '@mantine/core/TourBeacon';\n\nexport namespace TourBeacon {\n export type Props = TourBeaconProps;\n}\n"],"mappings":";;;;;;;;;;;;;;AAoCA,MAAM,eAAyC,CAAC;AAEhD,MAAa,aAAaA,gBAAAA,SAA4B,WAAW;CAE/D,MAAM,EACJ,YACA,WACA,OACA,QACA,MACA,QACA,SACA,KACA,MAAM,OACN,cAAc,WACd,GAAG,WAZSC,kBAAAA,SAAS,cAAc,cAAc,MAa3C;CAER,MAAM,MAAMC,qBAAAA,eAAe;CAC3B,MAAM,EAAE,QAAQC,0BAAAA,aAAa;CAC7B,MAAM,UAAUC,wBAAAA,iBAAiB,MAAM;CAEvC,MAAM,EAAE,MAAM,oBAAA,GAAmBC,mBAAAA,YAAAA,CAAY;EAC3C,UAAU,EAAE,WAAW,QAAQ;EAC/B,WAAWC,8BAAAA,oBAAoB,KAAK,aAAa;EACjD,sBAAsBC,gCAAAA;EACtB,YAAY,EAAA,GAACC,mBAAAA,OAAAA,CAAO,CAAC,CAAC;CACxB,CAAC;CAED,MAAM,aAAA,GAAYC,eAAAA,aAAAA,CAAa,KAAK,aAAa,GAAG;CACpD,MAAM,eAAe,IAAI,UAAU,UAAU;EAAE;EAAW;EAAY;EAAO;CAAO,CAAC;CAErF,IAAI,CAAC,SACH,OAAO;CAGT,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,uBAAAA,gBAAD;EACE,KAAK;EACL,MAAK;EACL,cAAY,aAAa,IAAI,OAAO;EACpC,GAAI;EACJ,OAAO;GACL,GAAG,aAAa;GAChB,GAAG;EACL;EACS;EACT,GAAI;EAEJ,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD,EAAM,GAAI,IAAI,UAAU,aAAa,EAAI,CAAA;CAC3B,CAAA;AAEpB,CAAC;AAED,WAAW,UAAUC,oBAAAA;AACrB,WAAW,cAAc"}
@@ -0,0 +1,46 @@
1
+ "use client";
2
+ const require_UnstyledButton = require("../UnstyledButton/UnstyledButton.cjs");
3
+ const require_press_aware_auto_update = require("./press-aware-auto-update.cjs");
4
+ const require_use_target_rect = require("./use-target-rect.cjs");
5
+ let react = require("react");
6
+ let _mantine_hooks = require("@mantine/hooks");
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ let _floating_ui_react = require("@floating-ui/react");
9
+ //#region packages/@mantine/core/src/components/Tour/TourBeaconPositioned.tsx
10
+ function TourBeaconPositioned({ target, onClick, ariaLabel, className, style, pulseStyles, withInitialFocus, onInitialFocus }) {
11
+ const element = require_use_target_rect.useTargetElement(target);
12
+ const buttonRef = (0, react.useRef)(null);
13
+ const { refs, floatingStyles } = (0, _floating_ui_react.useFloating)({
14
+ elements: { reference: element },
15
+ placement: "top-end",
16
+ whileElementsMounted: require_press_aware_auto_update.pressAwareAutoUpdate,
17
+ middleware: [(0, _floating_ui_react.offset)({
18
+ mainAxis: -4,
19
+ crossAxis: -4
20
+ })]
21
+ });
22
+ const mergedRef = (0, _mantine_hooks.useMergedRef)(refs.setFloating, buttonRef);
23
+ (0, react.useEffect)(() => {
24
+ if (withInitialFocus && buttonRef.current) {
25
+ buttonRef.current.focus({ preventScroll: true });
26
+ onInitialFocus?.();
27
+ }
28
+ }, [withInitialFocus, element]);
29
+ if (!element) return null;
30
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_UnstyledButton.UnstyledButton, {
31
+ ref: mergedRef,
32
+ role: "button",
33
+ "aria-label": ariaLabel,
34
+ className,
35
+ style: {
36
+ ...style,
37
+ ...floatingStyles
38
+ },
39
+ onClick,
40
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", { ...pulseStyles })
41
+ });
42
+ }
43
+ //#endregion
44
+ exports.TourBeaconPositioned = TourBeaconPositioned;
45
+
46
+ //# sourceMappingURL=TourBeaconPositioned.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourBeaconPositioned.cjs","names":["useTargetElement","useRef","useFloating","pressAwareAutoUpdate","offset","useMergedRef","UnstyledButton"],"sources":["../../../src/components/Tour/TourBeaconPositioned.tsx"],"sourcesContent":["import { useEffect, useRef } from 'react';\nimport { offset, useFloating } from '@floating-ui/react';\nimport { useMergedRef } from '@mantine/hooks';\nimport { UnstyledButton } from '../UnstyledButton';\nimport { pressAwareAutoUpdate } from './press-aware-auto-update';\nimport { useTargetElement, type TourTarget } from './use-target-rect';\n\ninterface TourBeaconPositionedProps {\n target: TourTarget;\n onClick: () => void;\n ariaLabel: string;\n className?: string;\n style?: React.CSSProperties;\n pulseStyles?: Record<string, unknown>;\n withInitialFocus?: boolean;\n onInitialFocus?: () => void;\n}\n\nexport function TourBeaconPositioned({\n target,\n onClick,\n ariaLabel,\n className,\n style,\n pulseStyles,\n withInitialFocus,\n onInitialFocus,\n}: TourBeaconPositionedProps) {\n const element = useTargetElement(target);\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n const { refs, floatingStyles } = useFloating({\n elements: { reference: element },\n placement: 'top-end',\n whileElementsMounted: pressAwareAutoUpdate,\n middleware: [offset({ mainAxis: -4, crossAxis: -4 })],\n });\n\n const mergedRef = useMergedRef(refs.setFloating, buttonRef);\n\n useEffect(() => {\n if (withInitialFocus && buttonRef.current) {\n buttonRef.current.focus({ preventScroll: true });\n onInitialFocus?.();\n }\n }, [withInitialFocus, element]);\n\n if (!element) {\n return null;\n }\n\n return (\n <UnstyledButton\n ref={mergedRef}\n role=\"button\"\n aria-label={ariaLabel}\n className={className}\n style={{ ...style, ...floatingStyles }}\n onClick={onClick}\n >\n <span {...pulseStyles} />\n </UnstyledButton>\n );\n}\n"],"mappings":";;;;;;;;;AAkBA,SAAgB,qBAAqB,EACnC,QACA,SACA,WACA,WACA,OACA,aACA,kBACA,kBAC4B;CAC5B,MAAM,UAAUA,wBAAAA,iBAAiB,MAAM;CACvC,MAAM,aAAA,GAAYC,MAAAA,OAAAA,CAA0B,IAAI;CAEhD,MAAM,EAAE,MAAM,oBAAA,GAAmBC,mBAAAA,YAAAA,CAAY;EAC3C,UAAU,EAAE,WAAW,QAAQ;EAC/B,WAAW;EACX,sBAAsBC,gCAAAA;EACtB,YAAY,EAAA,GAACC,mBAAAA,OAAAA,CAAO;GAAE,UAAU;GAAI,WAAW;EAAG,CAAC,CAAC;CACtD,CAAC;CAED,MAAM,aAAA,GAAYC,eAAAA,aAAAA,CAAa,KAAK,aAAa,SAAS;CAE1D,CAAA,GAAA,MAAA,UAAA,OAAgB;EACd,IAAI,oBAAoB,UAAU,SAAS;GACzC,UAAU,QAAQ,MAAM,EAAE,eAAe,KAAK,CAAC;GAC/C,iBAAiB;EACnB;CACF,GAAG,CAAC,kBAAkB,OAAO,CAAC;CAE9B,IAAI,CAAC,SACH,OAAO;CAGT,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,uBAAAA,gBAAD;EACE,KAAK;EACL,MAAK;EACL,cAAY;EACD;EACX,OAAO;GAAE,GAAG;GAAO,GAAG;EAAe;EAC5B;EAET,UAAA,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD,EAAM,GAAI,YAAc,CAAA;CACV,CAAA;AAEpB"}
@@ -0,0 +1,37 @@
1
+ "use client";
2
+ const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
3
+ const require_factory = require("../../../core/factory/factory.cjs");
4
+ const require_Box = require("../../../core/Box/Box.cjs");
5
+ const require_Tour_context = require("../Tour.context.cjs");
6
+ const require_Tour_module = require("../Tour.module.cjs");
7
+ let react = require("react");
8
+ let react_jsx_runtime = require("react/jsx-runtime");
9
+ //#region packages/@mantine/core/src/components/Tour/TourBody/TourBody.tsx
10
+ const defaultProps = {};
11
+ const TourBody = require_factory.factory((_props) => {
12
+ const { children, classNames, className, style, styles, vars, id, ...others } = require_use_props.useProps("TourBody", defaultProps, _props);
13
+ const ctx = require_Tour_context.useTourContext();
14
+ const { registerBody } = ctx;
15
+ const resolvedId = id ?? ctx.bodyId;
16
+ (0, react.useEffect)(() => {
17
+ registerBody(resolvedId);
18
+ return () => registerBody(null);
19
+ }, [registerBody, resolvedId]);
20
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Box.Box, {
21
+ id: resolvedId,
22
+ ...ctx.getStyles("body", {
23
+ className,
24
+ classNames,
25
+ style,
26
+ styles
27
+ }),
28
+ ...others,
29
+ children
30
+ });
31
+ });
32
+ TourBody.classes = require_Tour_module.default;
33
+ TourBody.displayName = "@mantine/core/TourBody";
34
+ //#endregion
35
+ exports.TourBody = TourBody;
36
+
37
+ //# sourceMappingURL=TourBody.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourBody.cjs","names":["factory","useProps","useTourContext","Box","classes"],"sources":["../../../../src/components/Tour/TourBody/TourBody.tsx"],"sourcesContent":["import { useEffect } from 'react';\nimport {\n Box,\n BoxProps,\n CompoundStylesApiProps,\n ElementProps,\n factory,\n Factory,\n useProps,\n} from '../../../core';\nimport { useTourContext } from '../Tour.context';\nimport classes from '../Tour.module.css';\n\nexport type TourBodyStylesNames = 'body';\n\nexport interface TourBodyProps\n extends BoxProps, CompoundStylesApiProps<TourBodyFactory>, ElementProps<'div'> {}\n\nexport type TourBodyFactory = Factory<{\n props: TourBodyProps;\n ref: HTMLDivElement;\n stylesNames: TourBodyStylesNames;\n compound: true;\n}>;\n\nconst defaultProps: Partial<TourBodyProps> = {};\n\nexport const TourBody = factory<TourBodyFactory>((_props) => {\n const props = useProps('TourBody', defaultProps, _props);\n const { children, classNames, className, style, styles, vars, id, ...others } = props;\n const ctx = useTourContext();\n const { registerBody } = ctx;\n const resolvedId = id ?? ctx.bodyId;\n\n useEffect(() => {\n registerBody(resolvedId);\n return () => registerBody(null);\n }, [registerBody, resolvedId]);\n\n return (\n <Box\n id={resolvedId}\n {...ctx.getStyles('body', { className, classNames, style, styles })}\n {...others}\n >\n {children}\n </Box>\n );\n});\n\nTourBody.classes = classes;\nTourBody.displayName = '@mantine/core/TourBody';\n\nexport namespace TourBody {\n export type Props = TourBodyProps;\n}\n"],"mappings":";;;;;;;;;AAyBA,MAAM,eAAuC,CAAC;AAE9C,MAAa,WAAWA,gBAAAA,SAA0B,WAAW;CAE3D,MAAM,EAAE,UAAU,YAAY,WAAW,OAAO,QAAQ,MAAM,IAAI,GAAG,WADvDC,kBAAAA,SAAS,YAAY,cAAc,MACmC;CACpF,MAAM,MAAMC,qBAAAA,eAAe;CAC3B,MAAM,EAAE,iBAAiB;CACzB,MAAM,aAAa,MAAM,IAAI;CAE7B,CAAA,GAAA,MAAA,UAAA,OAAgB;EACd,aAAa,UAAU;EACvB,aAAa,aAAa,IAAI;CAChC,GAAG,CAAC,cAAc,UAAU,CAAC;CAE7B,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,YAAAA,KAAD;EACE,IAAI;EACJ,GAAI,IAAI,UAAU,QAAQ;GAAE;GAAW;GAAY;GAAO;EAAO,CAAC;EAClE,GAAI;EAEH;CACE,CAAA;AAET,CAAC;AAED,SAAS,UAAUC,oBAAAA;AACnB,SAAS,cAAc"}
@@ -0,0 +1,26 @@
1
+ "use client";
2
+ const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
3
+ const require_CloseButton = require("../../CloseButton/CloseButton.cjs");
4
+ const require_Tour_context = require("../Tour.context.cjs");
5
+ let react_jsx_runtime = require("react/jsx-runtime");
6
+ //#region packages/@mantine/core/src/components/Tour/TourCloseButton/TourCloseButton.tsx
7
+ const defaultProps = {};
8
+ function TourCloseButton(_props) {
9
+ const { onClick, ...others } = require_use_props.useProps("TourCloseButton", defaultProps, _props);
10
+ const ctx = require_Tour_context.useTourContext();
11
+ if (!ctx.withCloseButton) return null;
12
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_CloseButton.CloseButton, {
13
+ "aria-label": ctx.labels.close,
14
+ ...ctx.getStyles("closeButton"),
15
+ onClick: (event) => {
16
+ ctx.close();
17
+ onClick?.(event);
18
+ },
19
+ ...others
20
+ });
21
+ }
22
+ TourCloseButton.displayName = "@mantine/core/TourCloseButton";
23
+ //#endregion
24
+ exports.TourCloseButton = TourCloseButton;
25
+
26
+ //# sourceMappingURL=TourCloseButton.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourCloseButton.cjs","names":["useProps","useTourContext","CloseButton"],"sources":["../../../../src/components/Tour/TourCloseButton/TourCloseButton.tsx"],"sourcesContent":["import { useProps } from '../../../core';\nimport { CloseButton, type __CloseButtonProps } from '../../CloseButton';\nimport { useTourContext } from '../Tour.context';\n\nexport interface TourCloseButtonProps extends __CloseButtonProps {\n /** Called when the close button is clicked */\n onClick?: React.MouseEventHandler<HTMLButtonElement>;\n}\n\nconst defaultProps: Partial<TourCloseButtonProps> = {};\n\nexport function TourCloseButton(_props: TourCloseButtonProps) {\n const props = useProps('TourCloseButton', defaultProps, _props);\n const { onClick, ...others } = props;\n const ctx = useTourContext();\n\n if (!ctx.withCloseButton) {\n return null;\n }\n\n return (\n <CloseButton\n aria-label={ctx.labels.close}\n {...ctx.getStyles('closeButton')}\n onClick={(event: React.MouseEvent<HTMLButtonElement>) => {\n ctx.close();\n onClick?.(event);\n }}\n {...others}\n />\n );\n}\n\nTourCloseButton.displayName = '@mantine/core/TourCloseButton';\n\nexport namespace TourCloseButton {\n export type Props = TourCloseButtonProps;\n}\n"],"mappings":";;;;;;AASA,MAAM,eAA8C,CAAC;AAErD,SAAgB,gBAAgB,QAA8B;CAE5D,MAAM,EAAE,SAAS,GAAG,WADNA,kBAAAA,SAAS,mBAAmB,cAAc,MACrB;CACnC,MAAM,MAAMC,qBAAAA,eAAe;CAE3B,IAAI,CAAC,IAAI,iBACP,OAAO;CAGT,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,oBAAAA,aAAD;EACE,cAAY,IAAI,OAAO;EACvB,GAAI,IAAI,UAAU,aAAa;EAC/B,UAAU,UAA+C;GACvD,IAAI,MAAM;GACV,UAAU,KAAK;EACjB;EACA,GAAI;CACL,CAAA;AAEL;AAEA,gBAAgB,cAAc"}
@@ -0,0 +1,63 @@
1
+ "use client";
2
+ const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
3
+ const require_Box = require("../../../core/Box/Box.cjs");
4
+ const require_Group = require("../../Group/Group.cjs");
5
+ const require_Button = require("../../Button/Button.cjs");
6
+ const require_Tour_context = require("../Tour.context.cjs");
7
+ let react_jsx_runtime = require("react/jsx-runtime");
8
+ //#region packages/@mantine/core/src/components/Tour/TourNavigation/TourNavigation.tsx
9
+ const defaultProps = {};
10
+ function TourNavigation(_props) {
11
+ const { ...others } = require_use_props.useProps("TourNavigation", defaultProps, _props);
12
+ const ctx = require_Tour_context.useTourContext();
13
+ const isFirstStep = ctx.step === 0;
14
+ const isLastStep = ctx.step === ctx.stepsCount - 1;
15
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Box.Box, {
16
+ ...ctx.getStyles("navigation"),
17
+ ...others,
18
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Group.Group, {
19
+ justify: "space-between",
20
+ wrap: "nowrap",
21
+ children: [
22
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.Button, {
23
+ variant: "default",
24
+ onClick: ctx.close,
25
+ size: "compact-sm",
26
+ ...ctx.getStyles("navigationButton"),
27
+ children: ctx.labels.skip
28
+ }),
29
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Box.Box, {
30
+ component: "span",
31
+ "aria-live": "polite",
32
+ ...ctx.getStyles("stepCounter"),
33
+ children: ctx.labels.stepCounter(ctx.step + 1, ctx.stepsCount)
34
+ }),
35
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Group.Group, {
36
+ gap: "xs",
37
+ wrap: "nowrap",
38
+ children: [!isFirstStep && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.Button, {
39
+ variant: "default",
40
+ onClick: () => ctx.setStep(ctx.step - 1),
41
+ size: "compact-sm",
42
+ ...ctx.getStyles("navigationButton"),
43
+ children: ctx.labels.back
44
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Button.Button, {
45
+ onClick: () => {
46
+ if (isLastStep) ctx.close();
47
+ else ctx.setStep(ctx.step + 1);
48
+ },
49
+ size: "compact-sm",
50
+ color: ctx.color,
51
+ ...ctx.getStyles("navigationButton"),
52
+ children: isLastStep ? ctx.labels.close : ctx.labels.next
53
+ })]
54
+ })
55
+ ]
56
+ })
57
+ });
58
+ }
59
+ TourNavigation.displayName = "@mantine/core/TourNavigation";
60
+ //#endregion
61
+ exports.TourNavigation = TourNavigation;
62
+
63
+ //# sourceMappingURL=TourNavigation.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourNavigation.cjs","names":["useProps","useTourContext","Box","Group","Button"],"sources":["../../../../src/components/Tour/TourNavigation/TourNavigation.tsx"],"sourcesContent":["import { Box, useProps } from '../../../core';\nimport { Button } from '../../Button';\nimport { Group } from '../../Group';\nimport { useTourContext } from '../Tour.context';\n\nexport interface TourNavigationProps {\n /** Called when the navigation container is clicked (fires for clicks on any of its buttons and the step counter) */\n onClick?: React.MouseEventHandler<HTMLDivElement>;\n}\n\nconst defaultProps: Partial<TourNavigationProps> = {};\n\nexport function TourNavigation(_props: TourNavigationProps) {\n const props = useProps('TourNavigation', defaultProps, _props);\n const { ...others } = props;\n const ctx = useTourContext();\n const isFirstStep = ctx.step === 0;\n const isLastStep = ctx.step === ctx.stepsCount - 1;\n\n return (\n <Box {...ctx.getStyles('navigation')} {...others}>\n <Group justify=\"space-between\" wrap=\"nowrap\">\n <Button\n variant=\"default\"\n onClick={ctx.close}\n size=\"compact-sm\"\n {...ctx.getStyles('navigationButton')}\n >\n {ctx.labels.skip}\n </Button>\n\n <Box component=\"span\" aria-live=\"polite\" {...ctx.getStyles('stepCounter')}>\n {ctx.labels.stepCounter(ctx.step + 1, ctx.stepsCount)}\n </Box>\n\n <Group gap=\"xs\" wrap=\"nowrap\">\n {!isFirstStep && (\n <Button\n variant=\"default\"\n onClick={() => ctx.setStep(ctx.step - 1)}\n size=\"compact-sm\"\n {...ctx.getStyles('navigationButton')}\n >\n {ctx.labels.back}\n </Button>\n )}\n <Button\n onClick={() => {\n if (isLastStep) {\n ctx.close();\n } else {\n ctx.setStep(ctx.step + 1);\n }\n }}\n size=\"compact-sm\"\n color={ctx.color}\n {...ctx.getStyles('navigationButton')}\n >\n {isLastStep ? ctx.labels.close : ctx.labels.next}\n </Button>\n </Group>\n </Group>\n </Box>\n );\n}\n\nTourNavigation.displayName = '@mantine/core/TourNavigation';\n\nexport namespace TourNavigation {\n export type Props = TourNavigationProps;\n}\n"],"mappings":";;;;;;;;AAUA,MAAM,eAA6C,CAAC;AAEpD,SAAgB,eAAe,QAA6B;CAE1D,MAAM,EAAE,GAAG,WADGA,kBAAAA,SAAS,kBAAkB,cAAc,MAC7B;CAC1B,MAAM,MAAMC,qBAAAA,eAAe;CAC3B,MAAM,cAAc,IAAI,SAAS;CACjC,MAAM,aAAa,IAAI,SAAS,IAAI,aAAa;CAEjD,OACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,YAAAA,KAAD;EAAK,GAAI,IAAI,UAAU,YAAY;EAAG,GAAI;EACxC,UAAA,iBAAA,GAAA,kBAAA,KAAA,CAACC,cAAAA,OAAD;GAAO,SAAQ;GAAgB,MAAK;GAApC,UAAA;IACE,iBAAA,GAAA,kBAAA,IAAA,CAACC,eAAAA,QAAD;KACE,SAAQ;KACR,SAAS,IAAI;KACb,MAAK;KACL,GAAI,IAAI,UAAU,kBAAkB;KAEnC,UAAA,IAAI,OAAO;IACN,CAAA;IAER,iBAAA,GAAA,kBAAA,IAAA,CAACF,YAAAA,KAAD;KAAK,WAAU;KAAO,aAAU;KAAS,GAAI,IAAI,UAAU,aAAa;KACrE,UAAA,IAAI,OAAO,YAAY,IAAI,OAAO,GAAG,IAAI,UAAU;IACjD,CAAA;IAEL,iBAAA,GAAA,kBAAA,KAAA,CAACC,cAAAA,OAAD;KAAO,KAAI;KAAK,MAAK;KAArB,UAAA,CACG,CAAC,eACA,iBAAA,GAAA,kBAAA,IAAA,CAACC,eAAAA,QAAD;MACE,SAAQ;MACR,eAAe,IAAI,QAAQ,IAAI,OAAO,CAAC;MACvC,MAAK;MACL,GAAI,IAAI,UAAU,kBAAkB;MAEnC,UAAA,IAAI,OAAO;KACN,CAAA,GAEV,iBAAA,GAAA,kBAAA,IAAA,CAACA,eAAAA,QAAD;MACE,eAAe;OACb,IAAI,YACF,IAAI,MAAM;YAEV,IAAI,QAAQ,IAAI,OAAO,CAAC;MAE5B;MACA,MAAK;MACL,OAAO,IAAI;MACX,GAAI,IAAI,UAAU,kBAAkB;MAEnC,UAAA,aAAa,IAAI,OAAO,QAAQ,IAAI,OAAO;KACtC,CAAA,CACH;;GACF;;CACJ,CAAA;AAET;AAEA,eAAe,cAAc"}
@@ -0,0 +1,70 @@
1
+ "use client";
2
+ const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
3
+ const require_get_overlay_hit_path = require("../get-overlay-hit-path.cjs");
4
+ const require_Tour_context = require("../Tour.context.cjs");
5
+ let react = require("react");
6
+ let react_jsx_runtime = require("react/jsx-runtime");
7
+ //#region packages/@mantine/core/src/components/Tour/TourOverlay/TourOverlay.tsx
8
+ const defaultProps = {};
9
+ function TourOverlay(_props) {
10
+ const { targetRect, color, withInteraction, onClick } = require_use_props.useProps("TourOverlay", defaultProps, _props);
11
+ const ctx = require_Tour_context.useTourContext();
12
+ const maskId = (0, react.useId)();
13
+ const resolvedColor = color || "var(--tour-overlay-color, rgba(0, 0, 0, 0.5))";
14
+ const padding = ctx.spotlightPadding;
15
+ const radius = ctx.spotlightRadius ?? 4;
16
+ const interactive = withInteraction || ctx.withOverlayInteraction;
17
+ if (!ctx.withOverlay) return null;
18
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("svg", {
19
+ ...ctx.getStyles("overlay"),
20
+ role: "presentation",
21
+ width: "100%",
22
+ height: "100%",
23
+ "data-with-overlay-interaction": interactive || void 0,
24
+ onMouseDown: (event) => event.preventDefault(),
25
+ onClick: (event) => {
26
+ if (ctx.closeOnOverlayClick) ctx.close();
27
+ onClick?.(event);
28
+ },
29
+ children: [
30
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("defs", { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("mask", {
31
+ id: maskId,
32
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("rect", {
33
+ x: "0",
34
+ y: "0",
35
+ width: "100%",
36
+ height: "100%",
37
+ fill: "white"
38
+ }), targetRect && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("rect", {
39
+ x: targetRect.left - padding,
40
+ y: targetRect.top - padding,
41
+ width: targetRect.width + padding * 2,
42
+ height: targetRect.height + padding * 2,
43
+ rx: radius,
44
+ ry: radius,
45
+ fill: "black",
46
+ ...ctx.getStyles("spotlight")
47
+ })]
48
+ }) }),
49
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)("rect", {
50
+ x: "0",
51
+ y: "0",
52
+ width: "100%",
53
+ height: "100%",
54
+ style: { fill: resolvedColor },
55
+ mask: `url(#${maskId})`
56
+ }),
57
+ interactive && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
58
+ d: require_get_overlay_hit_path.getOverlayHitPath(targetRect, padding, radius),
59
+ fillRule: "evenodd",
60
+ fill: "transparent",
61
+ style: { pointerEvents: "auto" }
62
+ })
63
+ ]
64
+ });
65
+ }
66
+ TourOverlay.displayName = "@mantine/core/TourOverlay";
67
+ //#endregion
68
+ exports.TourOverlay = TourOverlay;
69
+
70
+ //# sourceMappingURL=TourOverlay.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TourOverlay.cjs","names":["useProps","useTourContext","useId","getOverlayHitPath"],"sources":["../../../../src/components/Tour/TourOverlay/TourOverlay.tsx"],"sourcesContent":["import { useId } from 'react';\nimport { useProps } from '../../../core';\nimport { getOverlayHitPath } from '../get-overlay-hit-path';\nimport { useTourContext } from '../Tour.context';\n\nexport interface TourOverlayProps {\n /** Rectangle describing the target element position */\n targetRect?: { top: number; left: number; width: number; height: number } | null;\n\n /** Overlay fill color */\n color?: string;\n\n /** Whether pointer events pass through the spotlight cutout to the target element, the rest of the overlay keeps blocking clicks */\n withInteraction?: boolean;\n\n /** Called when the overlay is clicked */\n onClick?: React.MouseEventHandler<SVGSVGElement>;\n}\n\nconst defaultProps: Partial<TourOverlayProps> = {};\n\nexport function TourOverlay(_props: TourOverlayProps) {\n const props = useProps('TourOverlay', defaultProps, _props);\n const { targetRect, color, withInteraction, onClick } = props;\n\n const ctx = useTourContext();\n const maskId = useId();\n const resolvedColor = color || 'var(--tour-overlay-color, rgba(0, 0, 0, 0.5))';\n const padding = ctx.spotlightPadding;\n const radius = ctx.spotlightRadius ?? 4;\n const interactive = withInteraction || ctx.withOverlayInteraction;\n\n if (!ctx.withOverlay) {\n return null;\n }\n\n return (\n <svg\n {...ctx.getStyles('overlay')}\n role=\"presentation\"\n width=\"100%\"\n height=\"100%\"\n data-with-overlay-interaction={interactive || undefined}\n onMouseDown={(event) => event.preventDefault()}\n onClick={(event) => {\n if (ctx.closeOnOverlayClick) {\n ctx.close();\n }\n onClick?.(event);\n }}\n >\n <defs>\n <mask id={maskId}>\n <rect x=\"0\" y=\"0\" width=\"100%\" height=\"100%\" fill=\"white\" />\n {targetRect && (\n <rect\n x={targetRect.left - padding}\n y={targetRect.top - padding}\n width={targetRect.width + padding * 2}\n height={targetRect.height + padding * 2}\n rx={radius}\n ry={radius}\n fill=\"black\"\n {...ctx.getStyles('spotlight')}\n />\n )}\n </mask>\n </defs>\n <rect\n x=\"0\"\n y=\"0\"\n width=\"100%\"\n height=\"100%\"\n style={{ fill: resolvedColor }}\n mask={`url(#${maskId})`}\n />\n {interactive && (\n <path\n d={getOverlayHitPath(targetRect, padding, radius)}\n fillRule=\"evenodd\"\n fill=\"transparent\"\n style={{ pointerEvents: 'auto' }}\n />\n )}\n </svg>\n );\n}\n\nTourOverlay.displayName = '@mantine/core/TourOverlay';\n\nexport namespace TourOverlay {\n export type Props = TourOverlayProps;\n}\n"],"mappings":";;;;;;;AAmBA,MAAM,eAA0C,CAAC;AAEjD,SAAgB,YAAY,QAA0B;CAEpD,MAAM,EAAE,YAAY,OAAO,iBAAiB,YAD9BA,kBAAAA,SAAS,eAAe,cAAc,MACQ;CAE5D,MAAM,MAAMC,qBAAAA,eAAe;CAC3B,MAAM,UAAA,GAASC,MAAAA,MAAAA,CAAM;CACrB,MAAM,gBAAgB,SAAS;CAC/B,MAAM,UAAU,IAAI;CACpB,MAAM,SAAS,IAAI,mBAAmB;CACtC,MAAM,cAAc,mBAAmB,IAAI;CAE3C,IAAI,CAAC,IAAI,aACP,OAAO;CAGT,OACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,OAAD;EACE,GAAI,IAAI,UAAU,SAAS;EAC3B,MAAK;EACL,OAAM;EACN,QAAO;EACP,iCAA+B,eAAe,KAAA;EAC9C,cAAc,UAAU,MAAM,eAAe;EAC7C,UAAU,UAAU;GAClB,IAAI,IAAI,qBACN,IAAI,MAAM;GAEZ,UAAU,KAAK;EACjB;EAZF,UAAA;GAcE,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,KAAA,CAAC,QAAD;IAAM,IAAI;IAAV,UAAA,CACE,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;KAAM,GAAE;KAAI,GAAE;KAAI,OAAM;KAAO,QAAO;KAAO,MAAK;IAAS,CAAA,GAC1D,cACC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;KACE,GAAG,WAAW,OAAO;KACrB,GAAG,WAAW,MAAM;KACpB,OAAO,WAAW,QAAQ,UAAU;KACpC,QAAQ,WAAW,SAAS,UAAU;KACtC,IAAI;KACJ,IAAI;KACJ,MAAK;KACL,GAAI,IAAI,UAAU,WAAW;IAC9B,CAAA,CAEC;GACF,CAAA,EAAA,CAAA;GACN,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;IACE,GAAE;IACF,GAAE;IACF,OAAM;IACN,QAAO;IACP,OAAO,EAAE,MAAM,cAAc;IAC7B,MAAM,QAAQ,OAAO;GACtB,CAAA;GACA,eACC,iBAAA,GAAA,kBAAA,IAAA,CAAC,QAAD;IACE,GAAGC,6BAAAA,kBAAkB,YAAY,SAAS,MAAM;IAChD,UAAS;IACT,MAAK;IACL,OAAO,EAAE,eAAe,OAAO;GAChC,CAAA;EAEA;;AAET;AAEA,YAAY,cAAc"}
@@ -0,0 +1,125 @@
1
+ "use client";
2
+ const require_get_size = require("../../../core/utils/get-size/get-size.cjs");
3
+ const require_create_vars_resolver = require("../../../core/styles-api/create-vars-resolver/create-vars-resolver.cjs");
4
+ const require_get_theme_color = require("../../../core/MantineProvider/color-functions/get-theme-color/get-theme-color.cjs");
5
+ const require_use_props = require("../../../core/MantineProvider/use-props/use-props.cjs");
6
+ const require_use_styles = require("../../../core/styles-api/use-styles/use-styles.cjs");
7
+ const require_factory = require("../../../core/factory/factory.cjs");
8
+ const require_Box = require("../../../core/Box/Box.cjs");
9
+ const require_OptionalPortal = require("../../Portal/OptionalPortal.cjs");
10
+ const require_Tour_context = require("../Tour.context.cjs");
11
+ const require_Tour_module = require("../Tour.module.cjs");
12
+ const require_use_tour_state = require("../use-tour-state.cjs");
13
+ let react = require("react");
14
+ let react_jsx_runtime = require("react/jsx-runtime");
15
+ //#region packages/@mantine/core/src/components/Tour/TourRoot/TourRoot.tsx
16
+ const defaultProps = {
17
+ active: false,
18
+ withOverlay: true,
19
+ withOverlayInteraction: false,
20
+ withCloseButton: true,
21
+ withKeyboardNavigation: true,
22
+ spotlightPadding: 8,
23
+ closeOnEscape: true,
24
+ closeOnOverlayClick: false,
25
+ withinPortal: true,
26
+ zIndex: 1e4,
27
+ transitionProps: {
28
+ duration: 200,
29
+ transition: "fade"
30
+ },
31
+ overlayColor: "rgba(0, 0, 0, 0.5)"
32
+ };
33
+ const varsResolver = require_create_vars_resolver.createVarsResolver((theme, { zIndex, overlayColor, tooltipShadow, color }) => ({ root: {
34
+ "--tour-color": color ? require_get_theme_color.getThemeColor(color, theme) : void 0,
35
+ "--tour-z-index": zIndex?.toString(),
36
+ "--tour-overlay-color": overlayColor,
37
+ "--tour-tooltip-radius": void 0,
38
+ "--tour-tooltip-shadow": require_get_size.getShadow(tooltipShadow),
39
+ "--tour-beacon-size": void 0,
40
+ "--tour-beacon-color": void 0
41
+ } }));
42
+ const TourRoot = require_factory.factory((_props) => {
43
+ const props = require_use_props.useProps("TourRoot", defaultProps, _props);
44
+ const { classNames, className, style, styles, unstyled, vars, active, stepsCount, onClose, step: stepProp, defaultStep, onStepChange, onStepOpen, onStepClose, withOverlay, withOverlayInteraction, withCloseButton, withKeyboardNavigation, spotlightPadding, spotlightRadius, closeOnEscape, closeOnOverlayClick, labels: labelsProp, withinPortal, portalProps, zIndex, transitionProps, overlayColor, tooltipShadow, color, children, attributes, ...others } = props;
45
+ const labels = {
46
+ ...require_Tour_context.defaultLabels,
47
+ ...labelsProp
48
+ };
49
+ const id = (0, react.useId)();
50
+ const [registeredTitleId, registerTitle] = (0, react.useState)(null);
51
+ const [registeredBodyId, registerBody] = (0, react.useState)(null);
52
+ const titleId = registeredTitleId ?? `${id}-title`;
53
+ const bodyId = registeredBodyId ?? `${id}-body`;
54
+ const titleMounted = registeredTitleId !== null;
55
+ const bodyMounted = registeredBodyId !== null;
56
+ const { currentStep, setStep, close, targetRef } = require_use_tour_state.useTourState({
57
+ active,
58
+ onClose,
59
+ step: stepProp,
60
+ defaultStep,
61
+ onStepChange,
62
+ onStepOpen: (index) => onStepOpen?.(index),
63
+ onStepClose: (index) => onStepClose?.(index),
64
+ mode: "guided",
65
+ stepsCount,
66
+ closeOnEscape,
67
+ withKeyboardNavigation
68
+ });
69
+ const setTargetElement = (0, react.useCallback)((element) => {
70
+ targetRef.current = element;
71
+ }, [targetRef]);
72
+ const getStyles = require_use_styles.useStyles({
73
+ name: "Tour",
74
+ classes: require_Tour_module.default,
75
+ props,
76
+ className,
77
+ style,
78
+ classNames,
79
+ styles,
80
+ unstyled,
81
+ attributes,
82
+ vars,
83
+ varsResolver
84
+ });
85
+ if (!active) return null;
86
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Tour_context.TourProvider, {
87
+ value: {
88
+ getStyles,
89
+ step: currentStep,
90
+ setStep,
91
+ stepsCount,
92
+ close,
93
+ withOverlay,
94
+ withOverlayInteraction,
95
+ withCloseButton,
96
+ spotlightPadding,
97
+ spotlightRadius: spotlightRadius ?? 4,
98
+ closeOnOverlayClick,
99
+ transitionProps,
100
+ color,
101
+ labels,
102
+ titleId,
103
+ bodyId,
104
+ titleMounted,
105
+ bodyMounted,
106
+ registerTitle,
107
+ registerBody,
108
+ setTargetElement
109
+ },
110
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_OptionalPortal.OptionalPortal, {
111
+ ...portalProps,
112
+ withinPortal,
113
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Box.Box, {
114
+ ...getStyles("root"),
115
+ ...others,
116
+ children
117
+ })
118
+ })
119
+ });
120
+ });
121
+ TourRoot.displayName = "@mantine/core/TourRoot";
122
+ //#endregion
123
+ exports.TourRoot = TourRoot;
124
+
125
+ //# sourceMappingURL=TourRoot.cjs.map