@intlayer/design-system 2.0.2

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 (252) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +30 -0
  3. package/dist/.vite/manifest.json +953 -0
  4. package/dist/MarkDownRender-BeQGOIow.cjs +14 -0
  5. package/dist/MarkDownRender-gURA8GAt.js +315 -0
  6. package/dist/StringWrapper-CW70GPXq.js +28 -0
  7. package/dist/StringWrapper-DUDqtkwz.cjs +1 -0
  8. package/dist/check-BLEiR8OY.js +12 -0
  9. package/dist/check-rhNgx2ZQ.cjs +6 -0
  10. package/dist/components/Accordion/Accordion.cjs.js +8 -0
  11. package/dist/components/Accordion/Accordion.d.ts +10 -0
  12. package/dist/components/Accordion/Accordion.es.js +48 -0
  13. package/dist/components/Accordion/index.cjs.js +1 -0
  14. package/dist/components/Accordion/index.d.ts +1 -0
  15. package/dist/components/Accordion/index.es.js +5 -0
  16. package/dist/components/Avatar/index.cjs.js +6 -0
  17. package/dist/components/Avatar/index.d.ts +9 -0
  18. package/dist/components/Avatar/index.es.js +71 -0
  19. package/dist/components/Button/index.cjs.js +6 -0
  20. package/dist/components/Button/index.d.ts +22 -0
  21. package/dist/components/Button/index.es.js +306 -0
  22. package/dist/components/Container/index.cjs.js +7 -0
  23. package/dist/components/Container/index.d.ts +23 -0
  24. package/dist/components/Container/index.es.js +152 -0
  25. package/dist/components/ContentEditor/ContentEditor.cjs.js +5 -0
  26. package/dist/components/ContentEditor/ContentEditor.d.ts +8 -0
  27. package/dist/components/ContentEditor/ContentEditor.es.js +75 -0
  28. package/dist/components/ContentEditor/index.cjs.js +1 -0
  29. package/dist/components/ContentEditor/index.d.ts +1 -0
  30. package/dist/components/ContentEditor/index.es.js +5 -0
  31. package/dist/components/ContentSelector/ContentSelector.cjs.js +1 -0
  32. package/dist/components/ContentSelector/ContentSelector.d.ts +11 -0
  33. package/dist/components/ContentSelector/ContentSelector.es.js +14 -0
  34. package/dist/components/ContentSelector/index.cjs.js +1 -0
  35. package/dist/components/ContentSelector/index.d.ts +1 -0
  36. package/dist/components/ContentSelector/index.es.js +5 -0
  37. package/dist/components/DictionaryEditor/DictionaryEditor.cjs.js +1 -0
  38. package/dist/components/DictionaryEditor/DictionaryEditor.d.ts +20 -0
  39. package/dist/components/DictionaryEditor/DictionaryEditor.es.js +25 -0
  40. package/dist/components/DictionaryEditor/ItemLayout.cjs.js +1 -0
  41. package/dist/components/DictionaryEditor/ItemLayout.d.ts +16 -0
  42. package/dist/components/DictionaryEditor/ItemLayout.es.js +81 -0
  43. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.cjs.js +1 -0
  44. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.d.ts +9 -0
  45. package/dist/components/DictionaryEditor/NodeWrapper/ArrayWrapper.es.js +10 -0
  46. package/dist/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.cjs.js +1 -0
  47. package/dist/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.d.ts +9 -0
  48. package/dist/components/DictionaryEditor/NodeWrapper/EnumerationWrapper.es.js +9 -0
  49. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.cjs.js +1 -0
  50. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.d.ts +9 -0
  51. package/dist/components/DictionaryEditor/NodeWrapper/NestedObjectWrapper.es.js +9 -0
  52. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.cjs.js +1 -0
  53. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.d.ts +8 -0
  54. package/dist/components/DictionaryEditor/NodeWrapper/StringWrapper.es.js +9 -0
  55. package/dist/components/DictionaryEditor/NodeWrapper/TranslationWrapper.cjs.js +1 -0
  56. package/dist/components/DictionaryEditor/NodeWrapper/TranslationWrapper.d.ts +9 -0
  57. package/dist/components/DictionaryEditor/NodeWrapper/TranslationWrapper.es.js +7 -0
  58. package/dist/components/DictionaryEditor/NodeWrapper/index.cjs.js +1 -0
  59. package/dist/components/DictionaryEditor/NodeWrapper/index.d.ts +19 -0
  60. package/dist/components/DictionaryEditor/NodeWrapper/index.es.js +9 -0
  61. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.cjs.js +1 -0
  62. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.d.ts +10 -0
  63. package/dist/components/DictionaryEditor/ValidDictionaryChangeButtons.es.js +40 -0
  64. package/dist/components/DictionaryEditor/index.cjs.js +1 -0
  65. package/dist/components/DictionaryEditor/index.d.ts +1 -0
  66. package/dist/components/DictionaryEditor/index.es.js +5 -0
  67. package/dist/components/DropDown/index.cjs.js +5 -0
  68. package/dist/components/DropDown/index.d.ts +3 -0
  69. package/dist/components/DropDown/index.es.js +50 -0
  70. package/dist/components/DropDown/types.cjs.js +1 -0
  71. package/dist/components/DropDown/types.d.ts +15 -0
  72. package/dist/components/DropDown/types.es.js +1 -0
  73. package/dist/components/Footer/index.cjs.js +1 -0
  74. package/dist/components/Footer/index.d.ts +17 -0
  75. package/dist/components/Footer/index.es.js +64 -0
  76. package/dist/components/Headers/index.cjs.js +1 -0
  77. package/dist/components/Headers/index.d.ts +5 -0
  78. package/dist/components/Headers/index.es.js +35 -0
  79. package/dist/components/IDE/CodeRender.cjs.js +11 -0
  80. package/dist/components/IDE/CodeRender.d.ts +10 -0
  81. package/dist/components/IDE/CodeRender.es.js +833 -0
  82. package/dist/components/IDE/IDE.cjs.js +1 -0
  83. package/dist/components/IDE/IDE.d.ts +10 -0
  84. package/dist/components/IDE/IDE.es.js +124 -0
  85. package/dist/components/IDE/MarkDownRender.cjs.js +1 -0
  86. package/dist/components/IDE/MarkDownRender.d.ts +8 -0
  87. package/dist/components/IDE/MarkDownRender.es.js +7 -0
  88. package/dist/components/IDE/index.cjs.js +1 -0
  89. package/dist/components/IDE/index.d.ts +2 -0
  90. package/dist/components/IDE/index.es.js +7 -0
  91. package/dist/components/Loader/index.cjs.js +1 -0
  92. package/dist/components/Loader/index.d.ts +6 -0
  93. package/dist/components/Loader/index.es.js +21 -0
  94. package/dist/components/Loader/spinner.cjs.js +1 -0
  95. package/dist/components/Loader/spinner.d.ts +7 -0
  96. package/dist/components/Loader/spinner.es.js +22 -0
  97. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.cjs.js +6 -0
  98. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.d.ts +11 -0
  99. package/dist/components/LocaleSwitcherDropDown/LocaleSwitcher.es.js +571 -0
  100. package/dist/components/LocaleSwitcherDropDown/index.cjs.js +1 -0
  101. package/dist/components/LocaleSwitcherDropDown/index.d.ts +1 -0
  102. package/dist/components/LocaleSwitcherDropDown/index.es.js +5 -0
  103. package/dist/components/Logo/LogoCircle.cjs.js +1 -0
  104. package/dist/components/Logo/LogoCircle.d.ts +4 -0
  105. package/dist/components/Logo/LogoCircle.es.js +12 -0
  106. package/dist/components/Logo/LogoNoFrame.cjs.js +1 -0
  107. package/dist/components/Logo/LogoNoFrame.d.ts +4 -0
  108. package/dist/components/Logo/LogoNoFrame.es.js +28 -0
  109. package/dist/components/Logo/LogoSquare.cjs.js +1 -0
  110. package/dist/components/Logo/LogoSquare.d.ts +4 -0
  111. package/dist/components/Logo/LogoSquare.es.js +12 -0
  112. package/dist/components/Logo/LogoSquircle.cjs.js +1 -0
  113. package/dist/components/Logo/LogoSquircle.d.ts +4 -0
  114. package/dist/components/Logo/LogoSquircle.es.js +17 -0
  115. package/dist/components/Logo/LogoTextOnly.cjs.js +1 -0
  116. package/dist/components/Logo/LogoTextOnly.d.ts +4 -0
  117. package/dist/components/Logo/LogoTextOnly.es.js +28 -0
  118. package/dist/components/Logo/LogoWithTextBelowCircle.cjs.js +1 -0
  119. package/dist/components/Logo/LogoWithTextBelowCircle.d.ts +4 -0
  120. package/dist/components/Logo/LogoWithTextBelowCircle.es.js +30 -0
  121. package/dist/components/Logo/LogoWithTextBelowNoFrame.cjs.js +1 -0
  122. package/dist/components/Logo/LogoWithTextBelowNoFrame.d.ts +4 -0
  123. package/dist/components/Logo/LogoWithTextBelowNoFrame.es.js +28 -0
  124. package/dist/components/Logo/LogoWithTextBelowSquircle.cjs.js +1 -0
  125. package/dist/components/Logo/LogoWithTextBelowSquircle.d.ts +4 -0
  126. package/dist/components/Logo/LogoWithTextBelowSquircle.es.js +17 -0
  127. package/dist/components/Logo/LogoWithTextCircle.cjs.js +1 -0
  128. package/dist/components/Logo/LogoWithTextCircle.d.ts +4 -0
  129. package/dist/components/Logo/LogoWithTextCircle.es.js +51 -0
  130. package/dist/components/Logo/LogoWithTextNoFrame.cjs.js +1 -0
  131. package/dist/components/Logo/LogoWithTextNoFrame.d.ts +4 -0
  132. package/dist/components/Logo/LogoWithTextNoFrame.es.js +28 -0
  133. package/dist/components/Logo/LogoWithTextSquircle.cjs.js +1 -0
  134. package/dist/components/Logo/LogoWithTextSquircle.d.ts +4 -0
  135. package/dist/components/Logo/LogoWithTextSquircle.es.js +17 -0
  136. package/dist/components/Logo/index.cjs.js +1 -0
  137. package/dist/components/Logo/index.d.ts +20 -0
  138. package/dist/components/Logo/index.es.js +65 -0
  139. package/dist/components/MarkDownRender/index.cjs.js +1 -0
  140. package/dist/components/MarkDownRender/index.d.ts +8 -0
  141. package/dist/components/MarkDownRender/index.es.js +84 -0
  142. package/dist/components/MaxHeightSmoother/index.cjs.js +6 -0
  143. package/dist/components/MaxHeightSmoother/index.d.ts +11 -0
  144. package/dist/components/MaxHeightSmoother/index.es.js +52 -0
  145. package/dist/components/MaxWidthSmoother/index.cjs.js +6 -0
  146. package/dist/components/MaxWidthSmoother/index.d.ts +11 -0
  147. package/dist/components/MaxWidthSmoother/index.es.js +39 -0
  148. package/dist/components/Modal/index.cjs.js +1 -0
  149. package/dist/components/Modal/index.d.ts +9 -0
  150. package/dist/components/Modal/index.es.js +64 -0
  151. package/dist/components/Navbar/Burger.cjs.js +1 -0
  152. package/dist/components/Navbar/Burger.d.ts +7 -0
  153. package/dist/components/Navbar/Burger.es.js +84 -0
  154. package/dist/components/Navbar/DesktopNavbar.cjs.js +7 -0
  155. package/dist/components/Navbar/DesktopNavbar.d.ts +10 -0
  156. package/dist/components/Navbar/DesktopNavbar.es.js +76 -0
  157. package/dist/components/Navbar/MobileNavbar.cjs.js +9 -0
  158. package/dist/components/Navbar/MobileNavbar.d.ts +12 -0
  159. package/dist/components/Navbar/MobileNavbar.es.js +199 -0
  160. package/dist/components/Navbar/index.cjs.js +1 -0
  161. package/dist/components/Navbar/index.d.ts +20 -0
  162. package/dist/components/Navbar/index.es.js +25 -0
  163. package/dist/components/Navbar/useNavigation.cjs.js +1 -0
  164. package/dist/components/Navbar/useNavigation.d.ts +5 -0
  165. package/dist/components/Navbar/useNavigation.es.js +39 -0
  166. package/dist/components/Popover/index.cjs.js +1 -0
  167. package/dist/components/Popover/index.d.ts +8 -0
  168. package/dist/components/Popover/index.es.js +48 -0
  169. package/dist/components/PressableDiv/PressableDiv.cjs.js +1 -0
  170. package/dist/components/PressableDiv/PressableDiv.d.ts +10 -0
  171. package/dist/components/PressableDiv/PressableDiv.es.js +62 -0
  172. package/dist/components/PressableDiv/index.cjs.js +1 -0
  173. package/dist/components/PressableDiv/index.d.ts +1 -0
  174. package/dist/components/PressableDiv/index.es.js +5 -0
  175. package/dist/components/ProfileDropDown/index.cjs.js +6 -0
  176. package/dist/components/ProfileDropDown/index.d.ts +6 -0
  177. package/dist/components/ProfileDropDown/index.es.js +37 -0
  178. package/dist/components/RedirectionButton/RedirectionButton.cjs.js +6 -0
  179. package/dist/components/RedirectionButton/RedirectionButton.d.ts +8 -0
  180. package/dist/components/RedirectionButton/RedirectionButton.es.js +42 -0
  181. package/dist/components/RedirectionButton/index.cjs.js +1 -0
  182. package/dist/components/RedirectionButton/index.d.ts +1 -0
  183. package/dist/components/RedirectionButton/index.es.js +5 -0
  184. package/dist/components/RightDrawer/RightDrawer.cjs.js +8 -0
  185. package/dist/components/RightDrawer/RightDrawer.d.ts +16 -0
  186. package/dist/components/RightDrawer/RightDrawer.es.js +118 -0
  187. package/dist/components/RightDrawer/index.cjs.js +1 -0
  188. package/dist/components/RightDrawer/index.d.ts +2 -0
  189. package/dist/components/RightDrawer/index.es.js +8 -0
  190. package/dist/components/RightDrawer/useRightDrawerStore.cjs.js +1 -0
  191. package/dist/components/RightDrawer/useRightDrawerStore.d.ts +8 -0
  192. package/dist/components/RightDrawer/useRightDrawerStore.es.js +15 -0
  193. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.cjs.js +1 -0
  194. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.d.ts +10 -0
  195. package/dist/components/ThemeSwitcherDropDown/DesktopThemeSwitcher.es.js +69 -0
  196. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.cjs.js +1 -0
  197. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.d.ts +10 -0
  198. package/dist/components/ThemeSwitcherDropDown/MobileThemeSwitcher.es.js +65 -0
  199. package/dist/components/ThemeSwitcherDropDown/index.cjs.js +1 -0
  200. package/dist/components/ThemeSwitcherDropDown/index.d.ts +3 -0
  201. package/dist/components/ThemeSwitcherDropDown/index.es.js +9 -0
  202. package/dist/components/ThemeSwitcherDropDown/types.cjs.js +1 -0
  203. package/dist/components/ThemeSwitcherDropDown/types.d.ts +5 -0
  204. package/dist/components/ThemeSwitcherDropDown/types.es.js +5 -0
  205. package/dist/components/index.cjs.js +1 -0
  206. package/dist/components/index.d.ts +22 -0
  207. package/dist/components/index.es.js +61 -0
  208. package/dist/createLucideIcon-DlZEiEGq.js +80 -0
  209. package/dist/createLucideIcon-ZOnO-fn6.cjs +21 -0
  210. package/dist/hooks/index.cjs.js +1 -0
  211. package/dist/hooks/index.d.ts +5 -0
  212. package/dist/hooks/index.es.js +13 -0
  213. package/dist/hooks/useDevice.cjs.js +1 -0
  214. package/dist/hooks/useDevice.d.ts +8 -0
  215. package/dist/hooks/useDevice.es.js +48 -0
  216. package/dist/hooks/useGetElementOrWindow.cjs.js +1 -0
  217. package/dist/hooks/useGetElementOrWindow.d.ts +1 -0
  218. package/dist/hooks/useGetElementOrWindow.es.js +11 -0
  219. package/dist/hooks/useIsMounted.cjs.js +1 -0
  220. package/dist/hooks/useIsMounted.d.ts +1 -0
  221. package/dist/hooks/useIsMounted.es.js +11 -0
  222. package/dist/hooks/useScrollBlockage/index.cjs.js +1 -0
  223. package/dist/hooks/useScrollBlockage/index.d.ts +14 -0
  224. package/dist/hooks/useScrollBlockage/index.es.js +24 -0
  225. package/dist/hooks/useScrollBlockage/useScrollBlockageStore.cjs.js +1 -0
  226. package/dist/hooks/useScrollBlockage/useScrollBlockageStore.d.ts +12 -0
  227. package/dist/hooks/useScrollBlockage/useScrollBlockageStore.es.js +40 -0
  228. package/dist/hooks/useScrollDetection.cjs.js +1 -0
  229. package/dist/hooks/useScrollDetection.d.ts +13 -0
  230. package/dist/hooks/useScrollDetection.es.js +41 -0
  231. package/dist/index-B2ncVbtX.cjs +1 -0
  232. package/dist/index-D-PWvdb-.js +91 -0
  233. package/dist/intlayer-editor/src/client/renderContentEditor.d.ts +14 -0
  234. package/dist/jsx-runtime-D6agescH.cjs +30 -0
  235. package/dist/jsx-runtime-Tw_Kw2GZ.js +638 -0
  236. package/dist/localeList-CaRF-907.js +300 -0
  237. package/dist/localeList-DlUgKn8J.cjs +1 -0
  238. package/dist/motion-BuKul-u9.cjs +1 -0
  239. package/dist/motion-CP5YERk7.js +4517 -0
  240. package/dist/styled-components.browser.esm-D6kkzXl4.js +1085 -0
  241. package/dist/styled-components.browser.esm-GqWwDlfY.cjs +58 -0
  242. package/dist/sun-BQYZHcpc.cjs +16 -0
  243. package/dist/sun-BrKC5Qwg.js +49 -0
  244. package/dist/utils/capitalize.cjs.js +1 -0
  245. package/dist/utils/capitalize.d.ts +1 -0
  246. package/dist/utils/capitalize.es.js +5 -0
  247. package/dist/utils/cn.cjs.js +1 -0
  248. package/dist/utils/cn.d.ts +3 -0
  249. package/dist/utils/cn.es.js +2338 -0
  250. package/dist/x-BKwnSvvj.js +15 -0
  251. package/dist/x-DIXoN4xe.cjs +6 -0
  252. package/package.json +84 -0
@@ -0,0 +1,76 @@
1
+ "use client";
2
+ import { j as a } from "../../jsx-runtime-Tw_Kw2GZ.js";
3
+ import { p as o, c as b } from "../../styled-components.browser.esm-D6kkzXl4.js";
4
+ import { Button as v } from "../Button/index.es.js";
5
+ import { useNavActions as k } from "./useNavigation.es.js";
6
+ const m = o.nav(() => [{
7
+ position: "sticky",
8
+ top: "0px",
9
+ zIndex: "50",
10
+ display: "flex",
11
+ width: "100vw",
12
+ alignItems: "center",
13
+ backgroundColor: "rgba(231, 231, 231, 0.8)",
14
+ paddingLeft: "1rem",
15
+ paddingRight: "1rem",
16
+ paddingTop: "0.75rem",
17
+ paddingBottom: "0.75rem",
18
+ "--tw-shadow": "0 0 10px -15px rgba(0,0,0,0.3)",
19
+ "--tw-shadow-colored": "0 0 10px -15px var(--tw-shadow-color)",
20
+ boxShadow: "var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)",
21
+ "--tw-backdrop-blur": "blur(8px)",
22
+ backdropFilter: "var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)",
23
+ '&:where([data-theme="dark"], [data-theme="dark"] *)': {
24
+ backgroundColor: "rgba(69, 69, 69, 0.8)"
25
+ }
26
+ }, b`
27
+ -webkit-backdrop-filter: var(--tw-backdrop-blur)
28
+ var(--tw-backdrop-brightness) var(--tw-backdrop-contrast)
29
+ var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate)
30
+ var(--tw-backdrop-invert) var(--tw-backdrop-opacity)
31
+ var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
32
+ `]), g = o.div({
33
+ marginLeft: "10vw",
34
+ display: "flex",
35
+ flexDirection: "row",
36
+ gap: "1.5rem",
37
+ letterSpacing: "0.025em",
38
+ "--tw-text-opacity": "1",
39
+ color: "rgba(93, 93, 93, var(--tw-text-opacity))",
40
+ '&:where([data-theme="dark"], [data-theme="dark"] *)': {
41
+ "--tw-text-opacity": "1",
42
+ color: "rgba(136, 136, 136, var(--tw-text-opacity))"
43
+ }
44
+ }), h = o.div({
45
+ marginRight: "1rem",
46
+ display: "flex",
47
+ width: "100%",
48
+ alignItems: "center",
49
+ justifyContent: "flex-end",
50
+ gap: "0.5rem"
51
+ }), j = ({
52
+ logo: e,
53
+ sections: t,
54
+ rightItems: i
55
+ }) => {
56
+ const {
57
+ activeSection: d,
58
+ onClickSection: c
59
+ } = k();
60
+ return /* @__PURE__ */ a.jsxs(m, { children: [
61
+ e,
62
+ /* @__PURE__ */ a.jsx(g, { role: "tablist", "aria-orientation": "horizontal", "aria-multiselectable": "false", children: t == null ? void 0 : t.map(({
63
+ id: r,
64
+ url: p,
65
+ label: n,
66
+ title: l,
67
+ onClick: s
68
+ }) => /* @__PURE__ */ a.jsx(v, { role: "tab", variant: "invisible-link", color: "text", "aria-selected": d === r, label: n, onClick: (w) => {
69
+ c(r, p), s(w);
70
+ }, children: l }, r)) }),
71
+ /* @__PURE__ */ a.jsx(h, { children: i })
72
+ ] });
73
+ };
74
+ export {
75
+ j as DesktopNavbar
76
+ };
@@ -0,0 +1,9 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../jsx-runtime-D6agescH.cjs"),r=require("../../styled-components.browser.esm-GqWwDlfY.cjs"),w=require("react"),D=require("../../hooks/useScrollBlockage/index.cjs.js"),H=require("../../hooks/useScrollDetection.cjs.js"),q=require("../MaxHeightSmoother/index.cjs.js"),I=require("./Burger.cjs.js"),B=require("./useNavigation.cjs.js"),y=require("../../motion-BuKul-u9.cjs"),N={open:{y:0,opacity:1,transition:{y:{stiffness:1e3,velocity:-100}}},closed:{y:50,opacity:0,transition:{y:{stiffness:1e3}}}},X={open:{transition:{staggerChildren:.07,delayChildren:.2}},closed:{transition:{staggerChildren:.05,staggerDirection:-1}}},Y=r.pt(y.motion.div)`
2
+ ${{width:"100%",cursor:"pointer",padding:"0.75rem",textAlign:"center",transitionProperty:"color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter",transitionTimingFunction:"cubic-bezier(0.4, 0, 0.2, 1)",transitionDuration:"150ms","&:hover":{"--tw-text-opacity":"1",color:"rgba(232, 121, 249, var(--tw-text-opacity))"},'&[aria-selected="true"]':{"--tw-text-opacity":"1",color:"rgba(232, 121, 249, var(--tw-text-opacity))"}}}
3
+ `,g=({sections:o,activeSection:l,onClickSection:s})=>t.jsxRuntimeExports.jsx("div",{role:"tablist","aria-orientation":"vertical","aria-multiselectable":"false",children:o==null?void 0:o.map(({id:a,label:d,url:n,title:i,onClick:e})=>t.jsxRuntimeExports.jsx(Y,{role:"tab",id:a,"aria-label":d,onClick:c=>{s(a,n),e==null||e(c)},variants:N,"aria-selected":l===a,children:i},a))}),F=({logo:o,topChildren:l,topSections:s=[],bottomSections:a=[],rightItems:d})=>{var m;const[n,i]=w.useState(!1),[e,c]=w.useState(!1),x=w.useRef(null),{activeSection:v,onClickSection:u}=B.useNavActions();D.useScrollBlockage({disableScroll:e,key:"mobile_nav"}),H.useScrollDetection({onScrollUp:()=>i(!1),onScrollDown:()=>i(!0),isEnabled:!e});const h=n?0:((m=x.current)==null?void 0:m.clientHeight)??0,k=s.length+a.length>0,b=[{backgroundColor:"rgba(231, 231, 231, 0.95)","--tw-shadow":"0 0 10px -15px rgba(0,0,0,0.3)","--tw-shadow-colored":"0 0 10px -15px var(--tw-shadow-color)",boxShadow:"var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)","--tw-backdrop-blur":"blur(8px)",backdropFilter:"var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)",'&:where([data-theme="dark"], [data-theme="dark"] *)':{backgroundColor:"rgba(69, 69, 69, 0.95)"}},r.ct`
4
+ -webkit-backdrop-filter: var(--tw-backdrop-blur)
5
+ var(--tw-backdrop-brightness) var(--tw-backdrop-contrast)
6
+ var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate)
7
+ var(--tw-backdrop-invert) var(--tw-backdrop-opacity)
8
+ var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
9
+ `],f=r.pt.nav(({$isHidden:p})=>[...b,{position:"sticky",top:"0px",zIndex:"50",display:"flex",width:"100vw",flexDirection:"column",transitionProperty:"color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter",transitionTimingFunction:"cubic-bezier(0.4, 0, 0.2, 1)",transitionDuration:"150ms"},p?{"--tw-translate-y":"-100%",transform:"translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))"}:{"--tw-translate-y":"0px",transform:"translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))"}]),j=r.pt.div({display:"flex",width:"100%",alignItems:"center",justifyContent:"space-between",gap:"10vw",paddingLeft:"1rem",paddingRight:"1rem",paddingTop:"0.75rem",paddingBottom:"0.75rem"}),S=r.pt.div({display:"flex",width:"100%",alignItems:"center",justifyContent:"flex-end",gap:"1.5rem"}),R=r.pt.div({display:"flex",width:"100%",alignItems:"center",justifyContent:"flex-end",gap:"0.25rem"}),C=r.pt.div(()=>[...b,{position:"absolute",bottom:"0px",left:"0px",width:"100%","--tw-translate-y":"100%",transform:"translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))"}]),E=r.pt(y.motion.div)(()=>({display:"flex",width:"100%",flexDirection:"column",paddingBottom:"20%",paddingTop:"2.5rem",fontSize:"1.125rem",lineHeight:"1.75rem",letterSpacing:"0.025em","--tw-text-opacity":"1",color:"rgba(18, 18, 18, var(--tw-text-opacity))",'&:where([data-theme="dark"], [data-theme="dark"] *)':{"--tw-text-opacity":"1",color:"rgba(255, 245, 237, var(--tw-text-opacity))"}})),_=r.pt.div({display:"flex",height:"100%",flexDirection:"column",justifyContent:"space-between"});return t.jsxRuntimeExports.jsxs(f,{id:"mobile-menu",$isHidden:n,children:[t.jsxRuntimeExports.jsxs(j,{ref:x,children:[o,t.jsxRuntimeExports.jsxs(S,{children:[t.jsxRuntimeExports.jsx(R,{children:d}),k&&t.jsxRuntimeExports.jsx(I.Burger,{isActive:e,onClick:()=>c(p=>!p)})]})]}),t.jsxRuntimeExports.jsx(C,{children:t.jsxRuntimeExports.jsx(q.MaxHeightSmoother,{isHidden:!e,children:t.jsxRuntimeExports.jsxs(E,{onClick:()=>c(!1),animate:e?"open":"closed",variants:X,style:{height:`calc(100vh - ${h}px)`},children:[l,t.jsxRuntimeExports.jsxs(_,{children:[t.jsxRuntimeExports.jsx(g,{sections:s,activeSection:v,onClickSection:u}),t.jsxRuntimeExports.jsx(g,{sections:a,activeSection:v,onClickSection:u})]})]})})})]})};exports.MobileNavbar=F;
@@ -0,0 +1,12 @@
1
+ import { FC, ReactNode } from 'react';
2
+ import { NavSection } from '.';
3
+
4
+ type MobileNavbarProps = {
5
+ logo: ReactNode;
6
+ topChildren?: ReactNode;
7
+ topSections?: NavSection[];
8
+ bottomSections?: NavSection[];
9
+ rightItems?: ReactNode;
10
+ };
11
+ export declare const MobileNavbar: FC<MobileNavbarProps>;
12
+ export {};
@@ -0,0 +1,199 @@
1
+ "use client";
2
+ import { j as t } from "../../jsx-runtime-Tw_Kw2GZ.js";
3
+ import { p as r, c as R } from "../../styled-components.browser.esm-D6kkzXl4.js";
4
+ import { useState as y, useRef as X } from "react";
5
+ import { useScrollBlockage as Y } from "../../hooks/useScrollBlockage/index.es.js";
6
+ import { useScrollDetection as B } from "../../hooks/useScrollDetection.es.js";
7
+ import { MaxHeightSmoother as F } from "../MaxHeightSmoother/index.es.js";
8
+ import { Burger as z } from "./Burger.es.js";
9
+ import { useNavActions as P } from "./useNavigation.es.js";
10
+ import { m as g } from "../../motion-CP5YERk7.js";
11
+ const T = {
12
+ open: {
13
+ y: 0,
14
+ opacity: 1,
15
+ transition: {
16
+ y: {
17
+ stiffness: 1e3,
18
+ velocity: -100
19
+ }
20
+ }
21
+ },
22
+ closed: {
23
+ y: 50,
24
+ opacity: 0,
25
+ transition: {
26
+ y: {
27
+ stiffness: 1e3
28
+ }
29
+ }
30
+ }
31
+ }, A = {
32
+ open: {
33
+ transition: {
34
+ staggerChildren: 0.07,
35
+ delayChildren: 0.2
36
+ }
37
+ },
38
+ closed: {
39
+ transition: {
40
+ staggerChildren: 0.05,
41
+ staggerDirection: -1
42
+ }
43
+ }
44
+ }, L = r(g.div)`
45
+ ${{
46
+ width: "100%",
47
+ cursor: "pointer",
48
+ padding: "0.75rem",
49
+ textAlign: "center",
50
+ transitionProperty: "color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter",
51
+ transitionTimingFunction: "cubic-bezier(0.4, 0, 0.2, 1)",
52
+ transitionDuration: "150ms",
53
+ "&:hover": {
54
+ "--tw-text-opacity": "1",
55
+ color: "rgba(232, 121, 249, var(--tw-text-opacity))"
56
+ },
57
+ '&[aria-selected="true"]': {
58
+ "--tw-text-opacity": "1",
59
+ color: "rgba(232, 121, 249, var(--tw-text-opacity))"
60
+ }
61
+ }}
62
+ `, h = ({
63
+ sections: o,
64
+ activeSection: c,
65
+ onClickSection: i
66
+ }) => /* @__PURE__ */ t.jsx("div", { role: "tablist", "aria-orientation": "vertical", "aria-multiselectable": "false", children: o == null ? void 0 : o.map(({
67
+ id: a,
68
+ label: d,
69
+ url: n,
70
+ title: s,
71
+ onClick: e
72
+ }) => /* @__PURE__ */ t.jsx(L, { role: "tab", id: a, "aria-label": d, onClick: (l) => {
73
+ i(a, n), e == null || e(l);
74
+ }, variants: T, "aria-selected": c === a, children: s }, a)) }), J = ({
75
+ logo: o,
76
+ topChildren: c,
77
+ topSections: i = [],
78
+ bottomSections: a = [],
79
+ rightItems: d
80
+ }) => {
81
+ var x;
82
+ const [n, s] = y(!1), [e, l] = y(!1), p = X(null), {
83
+ activeSection: v,
84
+ onClickSection: b
85
+ } = P();
86
+ Y({
87
+ disableScroll: e,
88
+ key: "mobile_nav"
89
+ }), B({
90
+ onScrollUp: () => s(!1),
91
+ onScrollDown: () => s(!0),
92
+ isEnabled: !e
93
+ });
94
+ const f = n ? 0 : ((x = p.current) == null ? void 0 : x.clientHeight) ?? 0, k = i.length + a.length > 0, m = [{
95
+ backgroundColor: "rgba(231, 231, 231, 0.95)",
96
+ "--tw-shadow": "0 0 10px -15px rgba(0,0,0,0.3)",
97
+ "--tw-shadow-colored": "0 0 10px -15px var(--tw-shadow-color)",
98
+ boxShadow: "var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)",
99
+ "--tw-backdrop-blur": "blur(8px)",
100
+ backdropFilter: "var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)",
101
+ '&:where([data-theme="dark"], [data-theme="dark"] *)': {
102
+ backgroundColor: "rgba(69, 69, 69, 0.95)"
103
+ }
104
+ }, R`
105
+ -webkit-backdrop-filter: var(--tw-backdrop-blur)
106
+ var(--tw-backdrop-brightness) var(--tw-backdrop-contrast)
107
+ var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate)
108
+ var(--tw-backdrop-invert) var(--tw-backdrop-opacity)
109
+ var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
110
+ `], u = r.nav(({
111
+ $isHidden: w
112
+ }) => [...m, {
113
+ position: "sticky",
114
+ top: "0px",
115
+ zIndex: "50",
116
+ display: "flex",
117
+ width: "100vw",
118
+ flexDirection: "column",
119
+ transitionProperty: "color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter",
120
+ transitionTimingFunction: "cubic-bezier(0.4, 0, 0.2, 1)",
121
+ transitionDuration: "150ms"
122
+ }, w ? {
123
+ "--tw-translate-y": "-100%",
124
+ transform: "translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))"
125
+ } : {
126
+ "--tw-translate-y": "0px",
127
+ transform: "translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))"
128
+ }]), S = r.div({
129
+ display: "flex",
130
+ width: "100%",
131
+ alignItems: "center",
132
+ justifyContent: "space-between",
133
+ gap: "10vw",
134
+ paddingLeft: "1rem",
135
+ paddingRight: "1rem",
136
+ paddingTop: "0.75rem",
137
+ paddingBottom: "0.75rem"
138
+ }), j = r.div({
139
+ display: "flex",
140
+ width: "100%",
141
+ alignItems: "center",
142
+ justifyContent: "flex-end",
143
+ gap: "1.5rem"
144
+ }), C = r.div({
145
+ display: "flex",
146
+ width: "100%",
147
+ alignItems: "center",
148
+ justifyContent: "flex-end",
149
+ gap: "0.25rem"
150
+ }), D = r.div(() => [...m, {
151
+ position: "absolute",
152
+ bottom: "0px",
153
+ left: "0px",
154
+ width: "100%",
155
+ "--tw-translate-y": "100%",
156
+ transform: "translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))"
157
+ }]), H = r(g.div)(() => ({
158
+ display: "flex",
159
+ width: "100%",
160
+ flexDirection: "column",
161
+ paddingBottom: "20%",
162
+ paddingTop: "2.5rem",
163
+ fontSize: "1.125rem",
164
+ lineHeight: "1.75rem",
165
+ letterSpacing: "0.025em",
166
+ "--tw-text-opacity": "1",
167
+ color: "rgba(18, 18, 18, var(--tw-text-opacity))",
168
+ '&:where([data-theme="dark"], [data-theme="dark"] *)': {
169
+ "--tw-text-opacity": "1",
170
+ color: "rgba(255, 245, 237, var(--tw-text-opacity))"
171
+ }
172
+ })), I = r.div({
173
+ display: "flex",
174
+ height: "100%",
175
+ flexDirection: "column",
176
+ justifyContent: "space-between"
177
+ });
178
+ return /* @__PURE__ */ t.jsxs(u, { id: "mobile-menu", $isHidden: n, children: [
179
+ /* @__PURE__ */ t.jsxs(S, { ref: p, children: [
180
+ o,
181
+ /* @__PURE__ */ t.jsxs(j, { children: [
182
+ /* @__PURE__ */ t.jsx(C, { children: d }),
183
+ k && /* @__PURE__ */ t.jsx(z, { isActive: e, onClick: () => l((w) => !w) })
184
+ ] })
185
+ ] }),
186
+ /* @__PURE__ */ t.jsx(D, { children: /* @__PURE__ */ t.jsx(F, { isHidden: !e, children: /* @__PURE__ */ t.jsxs(H, { onClick: () => l(!1), animate: e ? "open" : "closed", variants: A, style: {
187
+ height: `calc(100vh - ${f}px)`
188
+ }, children: [
189
+ c,
190
+ /* @__PURE__ */ t.jsxs(I, { children: [
191
+ /* @__PURE__ */ t.jsx(h, { sections: i, activeSection: v, onClickSection: b }),
192
+ /* @__PURE__ */ t.jsx(h, { sections: a, activeSection: v, onClickSection: b })
193
+ ] })
194
+ ] }) }) })
195
+ ] });
196
+ };
197
+ export {
198
+ J as MobileNavbar
199
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../jsx-runtime-D6agescH.cjs"),c=require("../../hooks/useDevice.cjs.js");require("react");require("../../hooks/useScrollBlockage/useScrollBlockageStore.cjs.js");const x=require("../../hooks/useIsMounted.cjs.js"),m=require("./DesktopNavbar.cjs.js"),b=require("./MobileNavbar.cjs.js"),p=({logo:t,mobileTopChildren:s,desktopSections:r=[],mobileTopSections:o=[],mobileBottomSections:n=[],rightItemsDesktop:i,rightItemsMobile:u})=>{const{isMobile:a}=c.useDevice();return x.useIsMounted()?e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{children:a?e.jsxRuntimeExports.jsx(b.MobileNavbar,{topChildren:s,topSections:o,bottomSections:n,logo:t,rightItems:u}):e.jsxRuntimeExports.jsx(m.DesktopNavbar,{sections:r,rightItems:i,logo:t})}):e.jsxRuntimeExports.jsx(e.jsxRuntimeExports.Fragment,{})};exports.Navbar=p;
@@ -0,0 +1,20 @@
1
+ import { FC, MouseEventHandler, ReactNode } from 'react';
2
+
3
+ export interface NavSection {
4
+ title: ReactNode;
5
+ id: string;
6
+ onClick: MouseEventHandler;
7
+ url?: string;
8
+ label: string;
9
+ }
10
+ interface NavbarProps {
11
+ logo: ReactNode;
12
+ desktopSections?: NavSection[];
13
+ mobileTopChildren?: ReactNode;
14
+ mobileTopSections?: NavSection[];
15
+ mobileBottomSections?: NavSection[];
16
+ rightItemsDesktop?: ReactNode;
17
+ rightItemsMobile?: ReactNode;
18
+ }
19
+ export declare const Navbar: FC<NavbarProps>;
20
+ export {};
@@ -0,0 +1,25 @@
1
+ "use client";
2
+ import { j as t } from "../../jsx-runtime-Tw_Kw2GZ.js";
3
+ import { useDevice as a } from "../../hooks/useDevice.es.js";
4
+ import "react";
5
+ import "../../hooks/useScrollBlockage/useScrollBlockageStore.es.js";
6
+ import { useIsMounted as c } from "../../hooks/useIsMounted.es.js";
7
+ import { DesktopNavbar as u } from "./DesktopNavbar.es.js";
8
+ import { MobileNavbar as x } from "./MobileNavbar.es.js";
9
+ const g = ({
10
+ logo: o,
11
+ mobileTopChildren: r,
12
+ desktopSections: e = [],
13
+ mobileTopSections: s = [],
14
+ mobileBottomSections: i = [],
15
+ rightItemsDesktop: m,
16
+ rightItemsMobile: n
17
+ }) => {
18
+ const {
19
+ isMobile: p
20
+ } = a();
21
+ return c() ? /* @__PURE__ */ t.jsx(t.Fragment, { children: p ? /* @__PURE__ */ t.jsx(x, { topChildren: r, topSections: s, bottomSections: i, logo: o, rightItems: n }) : /* @__PURE__ */ t.jsx(u, { sections: e, rightItems: m, logo: o }) }) : /* @__PURE__ */ t.jsx(t.Fragment, {});
22
+ };
23
+ export {
24
+ g as Navbar
25
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("react"),f=()=>{const[r,i]=l.useState(null),c=()=>{const e=window.scrollY,s=document.querySelectorAll("section"),t=[];s.forEach(o=>t.push({id:o.id,offsetTop:o.offsetTop,offsetHeight:o.offsetHeight}));const n=t.find(o=>o.offsetTop<=e+window.screen.height/4&&o.offsetTop+o.offsetHeight>e+window.screen.height/4);n&&i(n.id)};return l.useEffect(()=>(window.addEventListener("scroll",c),()=>{window.removeEventListener("scroll",c)}),[]),{activeSection:r,onClickLogo:e=>{i(null),window.location.pathname==="/"?window.scrollTo({top:0,behavior:"smooth"}):e("/")},onClickSection:(e,s,t)=>{if(i(e),window.location.pathname===s){const n=document.getElementById(e);n&&n.scrollIntoView({behavior:"smooth",block:"center",inline:"nearest"})}else t==null||t()}}};exports.useNavActions=f;
@@ -0,0 +1,5 @@
1
+ export declare const useNavActions: () => {
2
+ activeSection: string | null;
3
+ onClickLogo: (onClick: (url: string) => void) => void;
4
+ onClickSection: (sectionId: string, url?: string, onClick?: () => void) => void;
5
+ };
@@ -0,0 +1,39 @@
1
+ "use client";
2
+ import { useState as r, useEffect as f } from "react";
3
+ const h = () => {
4
+ const [l, i] = r(null), c = () => {
5
+ const e = window.scrollY, s = document.querySelectorAll("section"), t = [];
6
+ s.forEach((o) => t.push({
7
+ id: o.id,
8
+ offsetTop: o.offsetTop,
9
+ offsetHeight: o.offsetHeight
10
+ }));
11
+ const n = t.find((o) => o.offsetTop <= e + window.screen.height / 4 && o.offsetTop + o.offsetHeight > e + window.screen.height / 4);
12
+ n && i(n.id);
13
+ };
14
+ return f(() => (window.addEventListener("scroll", c), () => {
15
+ window.removeEventListener("scroll", c);
16
+ }), []), {
17
+ activeSection: l,
18
+ onClickLogo: (e) => {
19
+ i(null), window.location.pathname === "/" ? window.scrollTo({
20
+ top: 0,
21
+ behavior: "smooth"
22
+ }) : e("/");
23
+ },
24
+ onClickSection: (e, s, t) => {
25
+ if (i(e), window.location.pathname === s) {
26
+ const n = document.getElementById(e);
27
+ n && n.scrollIntoView({
28
+ behavior: "smooth",
29
+ block: "center",
30
+ inline: "nearest"
31
+ });
32
+ } else
33
+ t == null || t();
34
+ }
35
+ };
36
+ };
37
+ export {
38
+ h as useNavActions
39
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../jsx-runtime-D6agescH.cjs"),r=require("../../styled-components.browser.esm-GqWwDlfY.cjs"),a=r.pt.div({position:"relative"}),o=r.pt.div({position:"absolute",bottom:"0px",right:"1.25rem","--tw-translate-y":"1.75rem",transform:"translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))",borderRadius:"0.375rem",backgroundColor:"currentColor",padding:"0.25rem",fontSize:"0.75rem",lineHeight:"1rem","--tw-text-opacity":"0.75",opacity:"0",transitionProperty:"all",transitionTimingFunction:"cubic-bezier(0.4, 0, 0.2, 1)",transitionDuration:"200ms",transitionDelay:"700ms",animationDelay:"700ms",animationDuration:"200ms",animationTimingFunction:"cubic-bezier(0.4, 0, 0.2, 1)","&:hover":{transitionDelay:"0s",animationDelay:"0s"},".group:hover &":{opacity:"1"}}),n=r.pt.span({maxWidth:"60%",userSelect:"none","--tw-text-opacity":"1",color:"rgba(255, 255, 255, var(--tw-text-opacity))",mixBlendMode:"difference"}),s=({children:i,content:t})=>e.jsxRuntimeExports.jsxs(a,{className:"group","aria-haspopup":!0,"aria-expanded":!1,"aria-label":"Display the popup by hovering this element",children:[i,e.jsxRuntimeExports.jsx(o,{"aria-hidden":!0,children:typeof t=="string"?e.jsxRuntimeExports.jsx(n,{children:t}):t})]});exports.Popover=s;
@@ -0,0 +1,8 @@
1
+ import { FC, ReactNode } from 'react';
2
+
3
+ type PopoverProps = {
4
+ content: ReactNode | string;
5
+ children: ReactNode;
6
+ };
7
+ export declare const Popover: FC<PopoverProps>;
8
+ export {};
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ import { j as e } from "../../jsx-runtime-Tw_Kw2GZ.js";
3
+ import { p as a } from "../../styled-components.browser.esm-D6kkzXl4.js";
4
+ const i = a.div({
5
+ position: "relative"
6
+ }), o = a.div({
7
+ position: "absolute",
8
+ bottom: "0px",
9
+ right: "1.25rem",
10
+ "--tw-translate-y": "1.75rem",
11
+ transform: "translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))",
12
+ borderRadius: "0.375rem",
13
+ backgroundColor: "currentColor",
14
+ padding: "0.25rem",
15
+ fontSize: "0.75rem",
16
+ lineHeight: "1rem",
17
+ "--tw-text-opacity": "0.75",
18
+ opacity: "0",
19
+ transitionProperty: "all",
20
+ transitionTimingFunction: "cubic-bezier(0.4, 0, 0.2, 1)",
21
+ transitionDuration: "200ms",
22
+ transitionDelay: "700ms",
23
+ animationDelay: "700ms",
24
+ animationDuration: "200ms",
25
+ animationTimingFunction: "cubic-bezier(0.4, 0, 0.2, 1)",
26
+ "&:hover": {
27
+ transitionDelay: "0s",
28
+ animationDelay: "0s"
29
+ },
30
+ ".group:hover &": {
31
+ opacity: "1"
32
+ }
33
+ }), n = a.span({
34
+ maxWidth: "60%",
35
+ userSelect: "none",
36
+ "--tw-text-opacity": "1",
37
+ color: "rgba(255, 255, 255, var(--tw-text-opacity))",
38
+ mixBlendMode: "difference"
39
+ }), p = ({
40
+ children: r,
41
+ content: t
42
+ }) => /* @__PURE__ */ e.jsxs(i, { className: "group", "aria-haspopup": !0, "aria-expanded": !1, "aria-label": "Display the popup by hovering this element", children: [
43
+ r,
44
+ /* @__PURE__ */ e.jsx(o, { "aria-hidden": !0, children: typeof t == "string" ? /* @__PURE__ */ e.jsx(n, { children: t }) : t })
45
+ ] });
46
+ export {
47
+ p as Popover
48
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const b=require("../../jsx-runtime-D6agescH.cjs"),e=require("react"),v=require("../../styled-components.browser.esm-GqWwDlfY.cjs"),y=400,g=v.pt.div(({$isSelecting:s})=>[{display:"inline",cursor:"pointer",borderRadius:"0.375rem",outlineStyle:"solid",outlineWidth:"2px",outlineOffset:"4px",outlineColor:"transparent",transitionProperty:"all",transitionTimingFunction:"cubic-bezier(0.4, 0, 0.2, 1)",transitionDuration:"200ms",transitionDelay:"100ms",animationDelay:"100ms",animationDuration:"200ms"},s?{outlineColor:"inherit"}:{"&:hover":{outlineColor:"inherit"}}]),E=({children:s,onPress:f,onClickOutside:t,pressDuration:p=y,isSelecting:a,...S})=>{const i=e.useRef(null),[c,u]=e.useState(a),n=e.useRef(null),T=()=>{u(!0),f()},h=()=>{n.current=setTimeout(()=>{T()},p)},d=()=>{n.current&&(clearTimeout(n.current),n.current=null)},m=()=>{d(),h()},o=()=>{d()},l=e.useCallback(r=>{i.current&&!i.current.contains(r.target)&&(u(!1),t==null||t())},[t]);e.useEffect(()=>(document.addEventListener("mousedown",l),()=>{document.removeEventListener("mousedown",l)}),[l]);const C=r=>{c&&(r.preventDefault(),r.stopPropagation())},D=()=>{u(!1)};return b.jsxRuntimeExports.jsx(g,{role:"button",tabIndex:0,onKeyUp:()=>null,onClick:C,onMouseDown:m,onMouseUp:o,onMouseLeave:o,onTouchStart:m,onTouchEnd:o,onTouchCancel:o,onBlur:D,ref:i,$isSelecting:a??c,...S,children:s})};exports.PressableDiv=E;
@@ -0,0 +1,10 @@
1
+ import { FC, HTMLAttributes } from 'react';
2
+
3
+ type PressableDivProps = {
4
+ onPress: () => void;
5
+ onClickOutside?: () => void;
6
+ pressDuration?: number;
7
+ isSelecting?: boolean;
8
+ } & HTMLAttributes<HTMLDivElement>;
9
+ export declare const PressableDiv: FC<PressableDivProps>;
10
+ export {};
@@ -0,0 +1,62 @@
1
+ "use client";
2
+ import { j as v } from "../../jsx-runtime-Tw_Kw2GZ.js";
3
+ import { useRef as d, useState as E, useCallback as b, useEffect as g } from "react";
4
+ import { p as x } from "../../styled-components.browser.esm-D6kkzXl4.js";
5
+ const y = 400, O = x.div(({
6
+ $isSelecting: r
7
+ }) => [{
8
+ display: "inline",
9
+ cursor: "pointer",
10
+ borderRadius: "0.375rem",
11
+ outlineStyle: "solid",
12
+ outlineWidth: "2px",
13
+ outlineOffset: "4px",
14
+ outlineColor: "transparent",
15
+ transitionProperty: "all",
16
+ transitionTimingFunction: "cubic-bezier(0.4, 0, 0.2, 1)",
17
+ transitionDuration: "200ms",
18
+ transitionDelay: "100ms",
19
+ animationDelay: "100ms",
20
+ animationDuration: "200ms"
21
+ }, r ? {
22
+ outlineColor: "inherit"
23
+ } : {
24
+ "&:hover": {
25
+ outlineColor: "inherit"
26
+ }
27
+ }]), L = ({
28
+ children: r,
29
+ onPress: p,
30
+ onClickOutside: e,
31
+ pressDuration: f = y,
32
+ isSelecting: l,
33
+ ...h
34
+ }) => {
35
+ const i = d(null), [a, s] = E(l), t = d(null), T = () => {
36
+ s(!0), p();
37
+ }, S = () => {
38
+ t.current = setTimeout(() => {
39
+ T();
40
+ }, f);
41
+ }, c = () => {
42
+ t.current && (clearTimeout(t.current), t.current = null);
43
+ }, m = () => {
44
+ c(), S();
45
+ }, n = () => {
46
+ c();
47
+ }, u = b((o) => {
48
+ i.current && !i.current.contains(o.target) && (s(!1), e == null || e());
49
+ }, [e]);
50
+ g(() => (document.addEventListener("mousedown", u), () => {
51
+ document.removeEventListener("mousedown", u);
52
+ }), [u]);
53
+ const C = (o) => {
54
+ a && (o.preventDefault(), o.stopPropagation());
55
+ }, D = () => {
56
+ s(!1);
57
+ };
58
+ return /* @__PURE__ */ v.jsx(O, { role: "button", tabIndex: 0, onKeyUp: () => null, onClick: C, onMouseDown: m, onMouseUp: n, onMouseLeave: n, onTouchStart: m, onTouchEnd: n, onTouchCancel: n, onBlur: D, ref: i, $isSelecting: l ?? a, ...h, children: r });
59
+ };
60
+ export {
61
+ L as PressableDiv
62
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./PressableDiv.cjs.js");exports.PressableDiv=e.PressableDiv;
@@ -0,0 +1 @@
1
+ export * from './PressableDiv';
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ import { PressableDiv as s } from "./PressableDiv.es.js";
3
+ export {
4
+ s as PressableDiv
5
+ };
@@ -0,0 +1,6 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../jsx-runtime-D6agescH.cjs"),i=require("../../styled-components.browser.esm-GqWwDlfY.cjs"),s=require("../Avatar/index.cjs.js"),t=require("../DropDown/index.cjs.js"),c=require("../../createLucideIcon-ZOnO-fn6.cjs");/**
2
+ * @license lucide-react v0.376.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const p=c.createLucideIcon("Container",[["path",{d:"M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z",key:"1t2lqe"}],["path",{d:"M10 21.9V14L2.1 9.1",key:"o7czzq"}],["path",{d:"m10 14 11.9-6.9",key:"zm5e20"}],["path",{d:"M14 19.8v-8.1",key:"159ecu"}],["path",{d:"M18 17.5V9.4",key:"11uown"}]]),n="profile",d=i.pt(p)(()=>({minWidth:"100px",padding:"1.5rem"})),a=({children:o,...r})=>e.jsxRuntimeExports.jsxs(t.DropDown.Trigger,{identifier:n,children:[e.jsxRuntimeExports.jsx(s.Avatar,{...r}),e.jsxRuntimeExports.jsx(t.DropDown,{identifier:n,children:e.jsxRuntimeExports.jsx(d,{children:o})})]});exports.ProfileDropDown=a;
@@ -0,0 +1,6 @@
1
+ import { FC, PropsWithChildren } from 'react';
2
+ import { AvatarProps } from '../Avatar';
3
+
4
+ type ProfileDropDownProps = PropsWithChildren<AvatarProps>;
5
+ export declare const ProfileDropDown: FC<ProfileDropDownProps>;
6
+ export {};
@@ -0,0 +1,37 @@
1
+ "use client";
2
+ import { j as e } from "../../jsx-runtime-Tw_Kw2GZ.js";
3
+ import { p as n } from "../../styled-components.browser.esm-D6kkzXl4.js";
4
+ import { Avatar as p } from "../Avatar/index.es.js";
5
+ import { DropDown as t } from "../DropDown/index.es.js";
6
+ import { c as a } from "../../createLucideIcon-DlZEiEGq.js";
7
+ /**
8
+ * @license lucide-react v0.376.0 - ISC
9
+ *
10
+ * This source code is licensed under the ISC license.
11
+ * See the LICENSE file in the root directory of this source tree.
12
+ */
13
+ const c = a("Container", [
14
+ [
15
+ "path",
16
+ {
17
+ d: "M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z",
18
+ key: "1t2lqe"
19
+ }
20
+ ],
21
+ ["path", { d: "M10 21.9V14L2.1 9.1", key: "o7czzq" }],
22
+ ["path", { d: "m10 14 11.9-6.9", key: "zm5e20" }],
23
+ ["path", { d: "M14 19.8v-8.1", key: "159ecu" }],
24
+ ["path", { d: "M18 17.5V9.4", key: "11uown" }]
25
+ ]), o = "profile", m = n(c)(() => ({
26
+ minWidth: "100px",
27
+ padding: "1.5rem"
28
+ })), x = ({
29
+ children: r,
30
+ ...i
31
+ }) => /* @__PURE__ */ e.jsxs(t.Trigger, { identifier: o, children: [
32
+ /* @__PURE__ */ e.jsx(p, { ...i }),
33
+ /* @__PURE__ */ e.jsx(t, { identifier: o, children: /* @__PURE__ */ e.jsx(m, { children: r }) })
34
+ ] });
35
+ export {
36
+ x as ProfileDropDown
37
+ };
@@ -0,0 +1,6 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("../../jsx-runtime-D6agescH.cjs"),r=require("../../styled-components.browser.esm-GqWwDlfY.cjs"),s=require("../../createLucideIcon-ZOnO-fn6.cjs");/**
2
+ * @license lucide-react v0.376.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const i=s.createLucideIcon("ChevronRight",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]),c=r.pt.button({display:"flex",width:"100%",alignItems:"center",justifyContent:"space-between",gap:"0.5rem",borderRadius:"0.25rem",padding:"0.5rem","&:hover":{backgroundColor:"rgb(241 245 249 / 0.3)"},"&:focus":{outline:"2px solid transparent",outlineOffset:"2px"},"&:disabled":{cursor:"not-allowed",opacity:"0.5"}}),u=({children:t,label:o,...n})=>e.jsxRuntimeExports.jsxs(c,{"aria-label":o,...n,children:[t,e.jsxRuntimeExports.jsx(i,{})]});exports.RedirectionButton=u;
@@ -0,0 +1,8 @@
1
+ import { ButtonHTMLAttributes, FC, ReactNode } from 'react';
2
+
3
+ type RedirectionButtonProps = ButtonHTMLAttributes<HTMLButtonElement> & {
4
+ children: ReactNode;
5
+ label: string;
6
+ };
7
+ export declare const RedirectionButton: FC<RedirectionButtonProps>;
8
+ export {};