@luxfi/ui 8.0.0 → 8.2.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 (1276) hide show
  1. package/dist/3d-button.cjs +298 -0
  2. package/dist/3d-button.d.ts +52 -0
  3. package/dist/3d-button.d.ts.map +1 -0
  4. package/dist/3d-button.js +273 -0
  5. package/dist/3d-card.cjs +236 -0
  6. package/dist/3d-card.d.ts +29 -0
  7. package/dist/3d-card.d.ts.map +1 -0
  8. package/dist/3d-card.js +209 -0
  9. package/dist/3d-carousel.cjs +375 -0
  10. package/dist/3d-carousel.d.ts +26 -0
  11. package/dist/3d-carousel.d.ts.map +1 -0
  12. package/dist/3d-carousel.js +348 -0
  13. package/dist/3d-grid.cjs +360 -0
  14. package/dist/3d-grid.d.ts +49 -0
  15. package/dist/3d-grid.d.ts.map +1 -0
  16. package/dist/3d-grid.js +335 -0
  17. package/dist/3d-marquee.cjs +8669 -0
  18. package/dist/3d-marquee.d.ts +65 -0
  19. package/dist/3d-marquee.d.ts.map +1 -0
  20. package/dist/3d-marquee.js +8645 -0
  21. package/dist/3d-model-viewer.cjs +909 -0
  22. package/dist/3d-model-viewer.d.ts +45 -0
  23. package/dist/3d-model-viewer.d.ts.map +1 -0
  24. package/dist/3d-model-viewer.js +886 -0
  25. package/dist/3d-pin.cjs +46 -0
  26. package/dist/3d-pin.d.ts +8 -0
  27. package/dist/3d-pin.d.ts.map +1 -0
  28. package/dist/3d-pin.js +24 -0
  29. package/dist/3d-scene.cjs +439 -0
  30. package/dist/3d-scene.d.ts +76 -0
  31. package/dist/3d-scene.d.ts.map +1 -0
  32. package/dist/3d-scene.js +407 -0
  33. package/dist/3d-text.cjs +367 -0
  34. package/dist/3d-text.d.ts +62 -0
  35. package/dist/3d-text.d.ts.map +1 -0
  36. package/dist/3d-text.js +341 -0
  37. package/dist/accordion.d.ts.map +1 -1
  38. package/dist/advanced-chart.cjs +53 -0
  39. package/dist/advanced-chart.d.ts +6 -0
  40. package/dist/advanced-chart.d.ts.map +1 -0
  41. package/dist/advanced-chart.js +51 -0
  42. package/dist/advanced-navigation-bar.cjs +459 -0
  43. package/dist/advanced-navigation-bar.d.ts +14 -0
  44. package/dist/advanced-navigation-bar.d.ts.map +1 -0
  45. package/dist/advanced-navigation-bar.js +437 -0
  46. package/dist/ai-actions.cjs +57 -0
  47. package/dist/ai-actions.d.ts +14 -0
  48. package/dist/ai-actions.d.ts.map +1 -0
  49. package/dist/ai-actions.js +35 -0
  50. package/dist/ai-agents.cjs +1764 -0
  51. package/dist/ai-agents.d.ts +56 -0
  52. package/dist/ai-agents.d.ts.map +1 -0
  53. package/dist/ai-agents.js +1740 -0
  54. package/dist/ai-assistant.cjs +907 -0
  55. package/dist/ai-assistant.d.ts +28 -0
  56. package/dist/ai-assistant.d.ts.map +1 -0
  57. package/dist/ai-assistant.js +886 -0
  58. package/dist/ai-chat.cjs +1165 -0
  59. package/dist/ai-chat.d.ts +56 -0
  60. package/dist/ai-chat.d.ts.map +1 -0
  61. package/dist/ai-chat.js +1141 -0
  62. package/dist/ai-code.cjs +1866 -0
  63. package/dist/ai-code.d.ts +58 -0
  64. package/dist/ai-code.d.ts.map +1 -0
  65. package/dist/ai-code.js +1841 -0
  66. package/dist/ai-model-selector-navigation-bar.cjs +59 -0
  67. package/dist/ai-model-selector-navigation-bar.d.ts +15 -0
  68. package/dist/ai-model-selector-navigation-bar.d.ts.map +1 -0
  69. package/dist/ai-model-selector-navigation-bar.js +37 -0
  70. package/dist/ai-models.cjs +41 -0
  71. package/dist/ai-models.d.ts +15 -0
  72. package/dist/ai-models.d.ts.map +1 -0
  73. package/dist/ai-models.js +19 -0
  74. package/dist/ai-playground.cjs +1110 -0
  75. package/dist/ai-playground.d.ts +67 -0
  76. package/dist/ai-playground.d.ts.map +1 -0
  77. package/dist/ai-playground.js +1088 -0
  78. package/dist/ai-tools.cjs +1043 -0
  79. package/dist/ai-tools.d.ts +23 -0
  80. package/dist/ai-tools.d.ts.map +1 -0
  81. package/dist/ai-tools.js +1022 -0
  82. package/dist/ai-vision.cjs +1831 -0
  83. package/dist/ai-vision.d.ts +74 -0
  84. package/dist/ai-vision.d.ts.map +1 -0
  85. package/dist/ai-vision.js +1810 -0
  86. package/dist/ai-voice-settings.cjs +1511 -0
  87. package/dist/ai-voice-settings.d.ts +100 -0
  88. package/dist/ai-voice-settings.d.ts.map +1 -0
  89. package/dist/ai-voice-settings.js +1478 -0
  90. package/dist/ai-voice.cjs +1522 -0
  91. package/dist/ai-voice.d.ts +51 -0
  92. package/dist/ai-voice.d.ts.map +1 -0
  93. package/dist/ai-voice.js +1501 -0
  94. package/dist/alert.cjs +13 -142
  95. package/dist/alert.js +14 -143
  96. package/dist/android.cjs +127 -0
  97. package/dist/android.d.ts +19 -0
  98. package/dist/android.d.ts.map +1 -0
  99. package/dist/android.js +104 -0
  100. package/dist/animated-background.cjs +8830 -0
  101. package/dist/animated-background.d.ts +103 -0
  102. package/dist/animated-background.d.ts.map +1 -0
  103. package/dist/animated-background.js +8824 -0
  104. package/dist/animated-beam.cjs +8438 -0
  105. package/dist/animated-beam.d.ts +15 -0
  106. package/dist/animated-beam.d.ts.map +1 -0
  107. package/dist/animated-beam.js +8417 -0
  108. package/dist/animated-cursor.cjs +269 -0
  109. package/dist/animated-cursor.d.ts +71 -0
  110. package/dist/animated-cursor.d.ts.map +1 -0
  111. package/dist/animated-cursor.js +264 -0
  112. package/dist/animated-icon.cjs +8927 -0
  113. package/dist/animated-icon.d.ts +119 -0
  114. package/dist/animated-icon.d.ts.map +1 -0
  115. package/dist/animated-icon.js +8902 -0
  116. package/dist/animated-list.cjs +9226 -0
  117. package/dist/animated-list.d.ts +126 -0
  118. package/dist/animated-list.d.ts.map +1 -0
  119. package/dist/animated-list.js +9201 -0
  120. package/dist/animated-number.cjs +8773 -0
  121. package/dist/animated-number.d.ts +127 -0
  122. package/dist/animated-number.d.ts.map +1 -0
  123. package/dist/animated-number.js +8767 -0
  124. package/dist/animated-testimonials.cjs +8653 -0
  125. package/dist/animated-testimonials.d.ts +17 -0
  126. package/dist/animated-testimonials.d.ts.map +1 -0
  127. package/dist/animated-testimonials.js +8632 -0
  128. package/dist/animated-text.cjs +8914 -0
  129. package/dist/animated-text.d.ts +65 -0
  130. package/dist/animated-text.d.ts.map +1 -0
  131. package/dist/animated-text.js +8890 -0
  132. package/dist/animated-tooltip.cjs +8624 -0
  133. package/dist/animated-tooltip.d.ts +9 -0
  134. package/dist/animated-tooltip.d.ts.map +1 -0
  135. package/dist/animated-tooltip.js +8603 -0
  136. package/dist/announcement.cjs +465 -0
  137. package/dist/announcement.d.ts +9 -0
  138. package/dist/announcement.d.ts.map +1 -0
  139. package/dist/announcement.js +443 -0
  140. package/dist/app-switcher-navigation-bar.cjs +470 -0
  141. package/dist/app-switcher-navigation-bar.d.ts +15 -0
  142. package/dist/app-switcher-navigation-bar.d.ts.map +1 -0
  143. package/dist/app-switcher-navigation-bar.js +448 -0
  144. package/dist/apple-cards-carousel.cjs +9356 -0
  145. package/dist/apple-cards-carousel.d.ts +36 -0
  146. package/dist/apple-cards-carousel.d.ts.map +1 -0
  147. package/dist/apple-cards-carousel.js +9334 -0
  148. package/dist/apple-hello-effect.cjs +8380 -0
  149. package/dist/apple-hello-effect.d.ts +8 -0
  150. package/dist/apple-hello-effect.d.ts.map +1 -0
  151. package/dist/apple-hello-effect.js +8359 -0
  152. package/dist/auth.cjs +6 -5
  153. package/dist/auth.d.ts.map +1 -1
  154. package/dist/auth.js +6 -5
  155. package/dist/badge.cjs +28 -164
  156. package/dist/badge.d.ts +2 -5
  157. package/dist/badge.d.ts.map +1 -1
  158. package/dist/badge.js +29 -165
  159. package/dist/bank.d.ts +31 -31
  160. package/dist/bank.d.ts.map +1 -1
  161. package/dist/banner.cjs +78 -0
  162. package/dist/banner.d.ts +20 -0
  163. package/dist/banner.d.ts.map +1 -0
  164. package/dist/banner.js +55 -0
  165. package/dist/breadcrumb-and-filters-navigation-bar.cjs +51 -0
  166. package/dist/breadcrumb-and-filters-navigation-bar.d.ts +10 -0
  167. package/dist/breadcrumb-and-filters-navigation-bar.d.ts.map +1 -0
  168. package/dist/breadcrumb-and-filters-navigation-bar.js +29 -0
  169. package/dist/breadcrumb-navigation-bar.cjs +37 -0
  170. package/dist/breadcrumb-navigation-bar.d.ts +10 -0
  171. package/dist/breadcrumb-navigation-bar.d.ts.map +1 -0
  172. package/dist/breadcrumb-navigation-bar.js +15 -0
  173. package/dist/button.cjs +21 -150
  174. package/dist/button.d.ts +1 -1
  175. package/dist/button.d.ts.map +1 -1
  176. package/dist/button.js +21 -150
  177. package/dist/calendar.cjs +55 -0
  178. package/dist/calendar.d.ts +9 -0
  179. package/dist/calendar.d.ts.map +1 -0
  180. package/dist/calendar.js +53 -0
  181. package/dist/centered-logo-navigation-bar.cjs +37 -0
  182. package/dist/centered-logo-navigation-bar.d.ts +15 -0
  183. package/dist/centered-logo-navigation-bar.d.ts.map +1 -0
  184. package/dist/centered-logo-navigation-bar.js +15 -0
  185. package/dist/chart.cjs +266 -0
  186. package/dist/chart.d.ts +52 -0
  187. package/dist/chart.d.ts.map +1 -0
  188. package/dist/chart.js +238 -0
  189. package/dist/choicebox.cjs +77 -0
  190. package/dist/choicebox.d.ts +15 -0
  191. package/dist/choicebox.d.ts.map +1 -0
  192. package/dist/choicebox.js +55 -0
  193. package/dist/chrome.cjs +36 -30
  194. package/dist/chrome.d.ts.map +1 -1
  195. package/dist/chrome.js +37 -31
  196. package/dist/code-block.cjs +871 -0
  197. package/dist/code-block.d.ts +38 -0
  198. package/dist/code-block.d.ts.map +1 -0
  199. package/dist/code-block.js +849 -0
  200. package/dist/code-compare.cjs +1714 -0
  201. package/dist/code-compare.d.ts +46 -0
  202. package/dist/code-compare.d.ts.map +1 -0
  203. package/dist/code-compare.js +1692 -0
  204. package/dist/code-diff.cjs +1073 -0
  205. package/dist/code-diff.d.ts +42 -0
  206. package/dist/code-diff.d.ts.map +1 -0
  207. package/dist/code-diff.js +1051 -0
  208. package/dist/code-editor.cjs +641 -0
  209. package/dist/code-editor.d.ts +23 -0
  210. package/dist/code-editor.d.ts.map +1 -0
  211. package/dist/code-editor.js +616 -0
  212. package/dist/code-explorer.cjs +729 -0
  213. package/dist/code-explorer.d.ts +41 -0
  214. package/dist/code-explorer.d.ts.map +1 -0
  215. package/dist/code-explorer.js +707 -0
  216. package/dist/code-preview.cjs +1349 -0
  217. package/dist/code-preview.d.ts +38 -0
  218. package/dist/code-preview.d.ts.map +1 -0
  219. package/dist/code-preview.js +1327 -0
  220. package/dist/code-snippet.cjs +920 -0
  221. package/dist/code-snippet.d.ts +48 -0
  222. package/dist/code-snippet.d.ts.map +1 -0
  223. package/dist/code-snippet.js +897 -0
  224. package/dist/code-tabs.cjs +76 -0
  225. package/dist/code-tabs.d.ts +12 -0
  226. package/dist/code-tabs.d.ts.map +1 -0
  227. package/dist/code-tabs.js +54 -0
  228. package/dist/code-terminal.cjs +894 -0
  229. package/dist/code-terminal.d.ts +48 -0
  230. package/dist/code-terminal.d.ts.map +1 -0
  231. package/dist/code-terminal.js +872 -0
  232. package/dist/collaboration-navigation-bar.cjs +49 -0
  233. package/dist/collaboration-navigation-bar.d.ts +11 -0
  234. package/dist/collaboration-navigation-bar.d.ts.map +1 -0
  235. package/dist/collaboration-navigation-bar.js +27 -0
  236. package/dist/collapsible.cjs +34 -155
  237. package/dist/collapsible.d.ts +2 -2
  238. package/dist/collapsible.d.ts.map +1 -1
  239. package/dist/collapsible.js +34 -155
  240. package/dist/color-mode.d.ts +1 -1
  241. package/dist/color-mode.d.ts.map +1 -1
  242. package/dist/color-picker.cjs +516 -0
  243. package/dist/color-picker.d.ts +10 -0
  244. package/dist/color-picker.d.ts.map +1 -0
  245. package/dist/color-picker.js +495 -0
  246. package/dist/combobox.cjs +488 -0
  247. package/dist/combobox.d.ts +14 -0
  248. package/dist/combobox.d.ts.map +1 -0
  249. package/dist/combobox.js +466 -0
  250. package/dist/communication-navigation-bar.cjs +438 -0
  251. package/dist/communication-navigation-bar.d.ts +7 -0
  252. package/dist/communication-navigation-bar.d.ts.map +1 -0
  253. package/dist/communication-navigation-bar.js +416 -0
  254. package/dist/company-profile.cjs +46 -0
  255. package/dist/company-profile.d.ts +10 -0
  256. package/dist/company-profile.d.ts.map +1 -0
  257. package/dist/company-profile.js +44 -0
  258. package/dist/comparison.cjs +60 -0
  259. package/dist/comparison.d.ts +16 -0
  260. package/dist/comparison.d.ts.map +1 -0
  261. package/dist/comparison.js +38 -0
  262. package/dist/context-switcher-navigation-bar.cjs +51 -0
  263. package/dist/context-switcher-navigation-bar.d.ts +10 -0
  264. package/dist/context-switcher-navigation-bar.d.ts.map +1 -0
  265. package/dist/context-switcher-navigation-bar.js +29 -0
  266. package/dist/credit-card.cjs +77 -0
  267. package/dist/credit-card.d.ts +11 -0
  268. package/dist/credit-card.d.ts.map +1 -0
  269. package/dist/credit-card.js +55 -0
  270. package/dist/crypto-screener.cjs +43 -0
  271. package/dist/crypto-screener.d.ts +4 -0
  272. package/dist/crypto-screener.d.ts.map +1 -0
  273. package/dist/crypto-screener.js +41 -0
  274. package/dist/cursor.cjs +71 -0
  275. package/dist/cursor.d.ts +9 -0
  276. package/dist/cursor.d.ts.map +1 -0
  277. package/dist/cursor.js +49 -0
  278. package/dist/dashboard-navigation-bar.cjs +441 -0
  279. package/dist/dashboard-navigation-bar.d.ts +11 -0
  280. package/dist/dashboard-navigation-bar.d.ts.map +1 -0
  281. package/dist/dashboard-navigation-bar.js +419 -0
  282. package/dist/dialog-stack.cjs +460 -0
  283. package/dist/dialog-stack.d.ts +13 -0
  284. package/dist/dialog-stack.d.ts.map +1 -0
  285. package/dist/dialog-stack.js +438 -0
  286. package/dist/dialog.cjs +12 -11
  287. package/dist/dialog.d.ts +1 -1
  288. package/dist/dialog.d.ts.map +1 -1
  289. package/dist/dialog.js +12 -11
  290. package/dist/direction.cjs +26 -0
  291. package/dist/direction.d.ts +20 -0
  292. package/dist/direction.d.ts.map +1 -0
  293. package/dist/direction.js +23 -0
  294. package/dist/dock.cjs +8675 -0
  295. package/dist/dock.d.ts +20 -0
  296. package/dist/dock.d.ts.map +1 -0
  297. package/dist/dock.js +8653 -0
  298. package/dist/drawer.d.ts +6 -6
  299. package/dist/drawer.d.ts.map +1 -1
  300. package/dist/dropzone.cjs +116 -0
  301. package/dist/dropzone.d.ts +11 -0
  302. package/dist/dropzone.d.ts.map +1 -0
  303. package/dist/dropzone.js +94 -0
  304. package/dist/e-commerce-navigation-bar.cjs +442 -0
  305. package/dist/e-commerce-navigation-bar.d.ts +12 -0
  306. package/dist/e-commerce-navigation-bar.d.ts.map +1 -0
  307. package/dist/e-commerce-navigation-bar.js +420 -0
  308. package/dist/editor.cjs +497 -0
  309. package/dist/editor.d.ts +9 -0
  310. package/dist/editor.d.ts.map +1 -0
  311. package/dist/editor.js +475 -0
  312. package/dist/empty.cjs +117 -0
  313. package/dist/empty.d.ts +18 -0
  314. package/dist/empty.d.ts.map +1 -0
  315. package/dist/empty.js +110 -0
  316. package/dist/engine.cjs +91 -0
  317. package/dist/engine.js +86 -0
  318. package/dist/field.cjs +2 -1
  319. package/dist/field.d.ts.map +1 -1
  320. package/dist/field.js +3 -2
  321. package/dist/financials.cjs +66 -0
  322. package/dist/financials.d.ts +12 -0
  323. package/dist/financials.d.ts.map +1 -0
  324. package/dist/financials.js +64 -0
  325. package/dist/forex-screener.cjs +44 -0
  326. package/dist/forex-screener.d.ts +4 -0
  327. package/dist/forex-screener.d.ts.map +1 -0
  328. package/dist/forex-screener.js +42 -0
  329. package/dist/gantt.cjs +65 -0
  330. package/dist/gantt.d.ts +13 -0
  331. package/dist/gantt.d.ts.map +1 -0
  332. package/dist/gantt.js +43 -0
  333. package/dist/grid-pattern.cjs +327 -0
  334. package/dist/grid-pattern.d.ts +111 -0
  335. package/dist/grid-pattern.d.ts.map +1 -0
  336. package/dist/grid-pattern.js +304 -0
  337. package/dist/hooks/use-mobile.cjs +22 -0
  338. package/dist/hooks/use-mobile.d.ts +3 -0
  339. package/dist/hooks/use-mobile.d.ts.map +1 -0
  340. package/dist/hooks/use-mobile.js +17 -0
  341. package/dist/iam.d.ts.map +1 -1
  342. package/dist/icon-button.cjs +13 -142
  343. package/dist/icon-button.js +14 -143
  344. package/dist/icon-navigation-bar.cjs +48 -0
  345. package/dist/icon-navigation-bar.d.ts +11 -0
  346. package/dist/icon-navigation-bar.d.ts.map +1 -0
  347. package/dist/icon-navigation-bar.js +26 -0
  348. package/dist/identity.d.ts.map +1 -1
  349. package/dist/image-crop.cjs +482 -0
  350. package/dist/image-crop.d.ts +9 -0
  351. package/dist/image-crop.d.ts.map +1 -0
  352. package/dist/image-crop.js +460 -0
  353. package/dist/image-zoom.cjs +77 -0
  354. package/dist/image-zoom.d.ts +7 -0
  355. package/dist/image-zoom.d.ts.map +1 -0
  356. package/dist/image-zoom.js +55 -0
  357. package/dist/image.cjs +15 -143
  358. package/dist/image.d.ts.map +1 -1
  359. package/dist/image.js +16 -144
  360. package/dist/index.cjs +30274 -1201
  361. package/dist/index.d.ts +121 -0
  362. package/dist/index.d.ts.map +1 -1
  363. package/dist/index.js +30006 -1220
  364. package/dist/ink.cjs +17 -0
  365. package/dist/ink.d.ts.map +1 -1
  366. package/dist/ink.js +15 -0
  367. package/dist/input-otp.cjs +72 -0
  368. package/dist/input-otp.d.ts +35 -0
  369. package/dist/input-otp.d.ts.map +1 -0
  370. package/dist/input-otp.js +47 -0
  371. package/dist/input.d.ts +7 -7
  372. package/dist/input.d.ts.map +1 -1
  373. package/dist/iphone-15-pro.cjs +61 -0
  374. package/dist/iphone-15-pro.d.ts +9 -0
  375. package/dist/iphone-15-pro.d.ts.map +1 -0
  376. package/dist/iphone-15-pro.js +39 -0
  377. package/dist/item.cjs +215 -0
  378. package/dist/item.d.ts +41 -0
  379. package/dist/item.d.ts.map +1 -0
  380. package/dist/item.js +200 -0
  381. package/dist/kanban.cjs +1354 -0
  382. package/dist/kanban.d.ts +37 -0
  383. package/dist/kanban.d.ts.map +1 -0
  384. package/dist/kanban.js +1330 -0
  385. package/dist/kbd.cjs +40 -0
  386. package/dist/kbd.d.ts +4 -0
  387. package/dist/kbd.d.ts.map +1 -0
  388. package/dist/kbd.js +37 -0
  389. package/dist/limelight-nav-navigation-bar.cjs +51 -0
  390. package/dist/limelight-nav-navigation-bar.d.ts +10 -0
  391. package/dist/limelight-nav-navigation-bar.d.ts.map +1 -0
  392. package/dist/limelight-nav-navigation-bar.js +29 -0
  393. package/dist/limelight-nav.cjs +570 -0
  394. package/dist/limelight-nav.d.ts +10 -0
  395. package/dist/limelight-nav.d.ts.map +1 -0
  396. package/dist/limelight-nav.js +549 -0
  397. package/dist/link.cjs +29 -152
  398. package/dist/link.d.ts +1 -1
  399. package/dist/link.d.ts.map +1 -1
  400. package/dist/link.js +30 -153
  401. package/dist/list.cjs +35 -0
  402. package/dist/list.d.ts +5 -0
  403. package/dist/list.d.ts.map +1 -0
  404. package/dist/list.js +12 -0
  405. package/dist/lux.config.d.ts +88 -88
  406. package/dist/lux.config.d.ts.map +1 -1
  407. package/dist/magnetic.cjs +63 -0
  408. package/dist/magnetic.d.ts +8 -0
  409. package/dist/magnetic.d.ts.map +1 -0
  410. package/dist/magnetic.js +41 -0
  411. package/dist/market-overview.cjs +102 -0
  412. package/dist/market-overview.d.ts +4 -0
  413. package/dist/market-overview.d.ts.map +1 -0
  414. package/dist/market-overview.js +100 -0
  415. package/dist/marquee.cjs +67 -0
  416. package/dist/marquee.d.ts +10 -0
  417. package/dist/marquee.d.ts.map +1 -0
  418. package/dist/marquee.js +45 -0
  419. package/dist/menu-dock.cjs +64 -0
  420. package/dist/menu-dock.d.ts +14 -0
  421. package/dist/menu-dock.d.ts.map +1 -0
  422. package/dist/menu-dock.js +42 -0
  423. package/dist/menu.d.ts.map +1 -1
  424. package/dist/menubar.cjs +116 -0
  425. package/dist/menubar.d.ts +30 -0
  426. package/dist/menubar.d.ts.map +1 -0
  427. package/dist/menubar.js +61 -0
  428. package/dist/message-dock.cjs +480 -0
  429. package/dist/message-dock.d.ts +15 -0
  430. package/dist/message-dock.d.ts.map +1 -0
  431. package/dist/message-dock.js +458 -0
  432. package/dist/mini-calendar.cjs +505 -0
  433. package/dist/mini-calendar.d.ts +10 -0
  434. package/dist/mini-calendar.d.ts.map +1 -0
  435. package/dist/mini-calendar.js +483 -0
  436. package/dist/minimal-tiptap.cjs +48 -0
  437. package/dist/minimal-tiptap.d.ts +8 -0
  438. package/dist/minimal-tiptap.d.ts.map +1 -0
  439. package/dist/minimal-tiptap.js +26 -0
  440. package/dist/motion-highlight.cjs +71 -0
  441. package/dist/motion-highlight.d.ts +7 -0
  442. package/dist/motion-highlight.d.ts.map +1 -0
  443. package/dist/motion-highlight.js +49 -0
  444. package/dist/music-player.cjs +810 -0
  445. package/dist/music-player.d.ts +19 -0
  446. package/dist/music-player.d.ts.map +1 -0
  447. package/dist/music-player.js +788 -0
  448. package/dist/native-select.cjs +82 -0
  449. package/dist/native-select.d.ts +9 -0
  450. package/dist/native-select.d.ts.map +1 -0
  451. package/dist/native-select.js +58 -0
  452. package/dist/news-timeline.cjs +42 -0
  453. package/dist/news-timeline.d.ts +4 -0
  454. package/dist/news-timeline.d.ts.map +1 -0
  455. package/dist/news-timeline.js +40 -0
  456. package/dist/order-entry.cjs +141 -0
  457. package/dist/order-entry.d.ts +15 -0
  458. package/dist/order-entry.d.ts.map +1 -0
  459. package/dist/order-entry.js +136 -0
  460. package/dist/orders-history.cjs +83 -0
  461. package/dist/orders-history.d.ts +18 -0
  462. package/dist/orders-history.d.ts.map +1 -0
  463. package/dist/orders-history.js +78 -0
  464. package/dist/pagination.cjs +132 -0
  465. package/dist/pagination.d.ts +29 -0
  466. package/dist/pagination.d.ts.map +1 -0
  467. package/dist/pagination.js +104 -0
  468. package/dist/particles-background.cjs +159 -0
  469. package/dist/particles-background.d.ts +19 -0
  470. package/dist/particles-background.d.ts.map +1 -0
  471. package/dist/particles-background.js +157 -0
  472. package/dist/pill.cjs +80 -0
  473. package/dist/pill.d.ts +21 -0
  474. package/dist/pill.d.ts.map +1 -0
  475. package/dist/pill.js +57 -0
  476. package/dist/pixel-image.cjs +71 -0
  477. package/dist/pixel-image.d.ts +8 -0
  478. package/dist/pixel-image.d.ts.map +1 -0
  479. package/dist/pixel-image.js +49 -0
  480. package/dist/popover.cjs +11 -9
  481. package/dist/popover.d.ts.map +1 -1
  482. package/dist/popover.js +11 -9
  483. package/dist/positions-list.cjs +98 -0
  484. package/dist/positions-list.d.ts +13 -0
  485. package/dist/positions-list.d.ts.map +1 -0
  486. package/dist/positions-list.js +93 -0
  487. package/dist/progress-circle.cjs +2 -1
  488. package/dist/progress-circle.d.ts.map +1 -1
  489. package/dist/progress-circle.js +2 -1
  490. package/dist/progress.d.ts.map +1 -1
  491. package/dist/provider.d.ts.map +1 -1
  492. package/dist/pulse-animation.cjs +8741 -0
  493. package/dist/pulse-animation.d.ts +155 -0
  494. package/dist/pulse-animation.d.ts.map +1 -0
  495. package/dist/pulse-animation.js +8732 -0
  496. package/dist/qr-code.cjs +65 -0
  497. package/dist/qr-code.d.ts +21 -0
  498. package/dist/qr-code.d.ts.map +1 -0
  499. package/dist/qr-code.js +43 -0
  500. package/dist/radio.d.ts.map +1 -1
  501. package/dist/relative-time.cjs +88 -0
  502. package/dist/relative-time.d.ts +9 -0
  503. package/dist/relative-time.d.ts.map +1 -0
  504. package/dist/relative-time.js +66 -0
  505. package/dist/resizable.cjs +61 -0
  506. package/dist/resizable.d.ts +24 -0
  507. package/dist/resizable.d.ts.map +1 -0
  508. package/dist/resizable.js +37 -0
  509. package/dist/reveal-animation.cjs +8791 -0
  510. package/dist/reveal-animation.d.ts +134 -0
  511. package/dist/reveal-animation.d.ts.map +1 -0
  512. package/dist/reveal-animation.js +8779 -0
  513. package/dist/safari.cjs +90 -0
  514. package/dist/safari.d.ts +9 -0
  515. package/dist/safari.d.ts.map +1 -0
  516. package/dist/safari.js +68 -0
  517. package/dist/sandbox.cjs +94 -0
  518. package/dist/sandbox.d.ts +9 -0
  519. package/dist/sandbox.d.ts.map +1 -0
  520. package/dist/sandbox.js +72 -0
  521. package/dist/search-and-toggle-navigation-bar.cjs +51 -0
  522. package/dist/search-and-toggle-navigation-bar.d.ts +10 -0
  523. package/dist/search-and-toggle-navigation-bar.d.ts.map +1 -0
  524. package/dist/search-and-toggle-navigation-bar.js +29 -0
  525. package/dist/select.cjs +34 -160
  526. package/dist/select.d.ts.map +1 -1
  527. package/dist/select.js +34 -160
  528. package/dist/sidebar.cjs +1134 -0
  529. package/dist/sidebar.d.ts +80 -0
  530. package/dist/sidebar.d.ts.map +1 -0
  531. package/dist/sidebar.js +1090 -0
  532. package/dist/simple-navigation-bar.cjs +45 -0
  533. package/dist/simple-navigation-bar.d.ts +11 -0
  534. package/dist/simple-navigation-bar.d.ts.map +1 -0
  535. package/dist/simple-navigation-bar.js +23 -0
  536. package/dist/site/commerce/ui/conf.cjs +15 -0
  537. package/dist/site/commerce/ui/conf.d.ts +12 -0
  538. package/dist/site/commerce/ui/conf.d.ts.map +1 -0
  539. package/dist/site/commerce/ui/conf.js +13 -0
  540. package/dist/site/commerce/ui/context.cjs +280 -0
  541. package/dist/site/commerce/ui/context.d.ts +7 -0
  542. package/dist/site/commerce/ui/context.d.ts.map +1 -0
  543. package/dist/site/commerce/ui/context.js +276 -0
  544. package/dist/site/commerce/ui/store.cjs +205 -0
  545. package/dist/site/commerce/ui/store.d.ts +81 -0
  546. package/dist/site/commerce/ui/store.d.ts.map +1 -0
  547. package/dist/site/commerce/ui/store.js +203 -0
  548. package/dist/site/components/access-code-input.cjs +52 -0
  549. package/dist/site/components/access-code-input.d.ts +8 -0
  550. package/dist/site/components/access-code-input.d.ts.map +1 -0
  551. package/dist/site/components/access-code-input.js +50 -0
  552. package/dist/site/components/analytics.cjs +52 -0
  553. package/dist/site/components/analytics.d.ts +3 -0
  554. package/dist/site/components/analytics.d.ts.map +1 -0
  555. package/dist/site/components/analytics.js +46 -0
  556. package/dist/site/components/auth/callback.cjs +31 -0
  557. package/dist/site/components/auth/callback.d.ts +9 -0
  558. package/dist/site/components/auth/callback.d.ts.map +1 -0
  559. package/dist/site/components/auth/callback.js +29 -0
  560. package/dist/site/components/auth/login-panel.cjs +131 -0
  561. package/dist/site/components/auth/login-panel.css +4 -0
  562. package/dist/site/components/auth/login-panel.d.ts +12 -0
  563. package/dist/site/components/auth/login-panel.d.ts.map +1 -0
  564. package/dist/site/components/auth/login-panel.js +124 -0
  565. package/dist/site/components/auth/login.cjs +35 -0
  566. package/dist/site/components/auth/login.d.ts +13 -0
  567. package/dist/site/components/auth/login.d.ts.map +1 -0
  568. package/dist/site/components/auth/login.js +33 -0
  569. package/dist/site/components/auth/provider.cjs +20 -0
  570. package/dist/site/components/auth/provider.d.ts +6 -0
  571. package/dist/site/components/auth/provider.d.ts.map +1 -0
  572. package/dist/site/components/auth/provider.js +18 -0
  573. package/dist/site/components/auth/resume.cjs +15 -0
  574. package/dist/site/components/auth/resume.d.ts +4 -0
  575. package/dist/site/components/auth/resume.d.ts.map +1 -0
  576. package/dist/site/components/auth/resume.js +12 -0
  577. package/dist/site/components/auth/widget.cjs +63 -0
  578. package/dist/site/components/auth/widget.d.ts +13 -0
  579. package/dist/site/components/auth/widget.d.ts.map +1 -0
  580. package/dist/site/components/auth/widget.js +61 -0
  581. package/dist/site/components/back-button.cjs +36 -0
  582. package/dist/site/components/back-button.d.ts +17 -0
  583. package/dist/site/components/back-button.d.ts.map +1 -0
  584. package/dist/site/components/back-button.js +34 -0
  585. package/dist/site/components/chat-widget.cjs +67 -0
  586. package/dist/site/components/chat-widget.d.ts +12 -0
  587. package/dist/site/components/chat-widget.d.ts.map +1 -0
  588. package/dist/site/components/chat-widget.js +61 -0
  589. package/dist/site/components/commerce/bag-button.cjs +79 -0
  590. package/dist/site/components/commerce/bag-button.css +4 -0
  591. package/dist/site/components/commerce/bag-button.d.ts +16 -0
  592. package/dist/site/components/commerce/bag-button.d.ts.map +1 -0
  593. package/dist/site/components/commerce/bag-button.js +77 -0
  594. package/dist/site/components/commerce/buy-button.cjs +31 -0
  595. package/dist/site/components/commerce/buy-button.d.ts +11 -0
  596. package/dist/site/components/commerce/buy-button.d.ts.map +1 -0
  597. package/dist/site/components/commerce/buy-button.js +29 -0
  598. package/dist/site/components/commerce/checkout-button.cjs +116 -0
  599. package/dist/site/components/commerce/checkout-button.css +4 -0
  600. package/dist/site/components/commerce/checkout-button.d.ts +13 -0
  601. package/dist/site/components/commerce/checkout-button.d.ts.map +1 -0
  602. package/dist/site/components/commerce/checkout-button.js +114 -0
  603. package/dist/site/components/commerce/checkout-panel/cart-accordian.cjs +50 -0
  604. package/dist/site/components/commerce/checkout-panel/cart-accordian.d.ts +11 -0
  605. package/dist/site/components/commerce/checkout-panel/cart-accordian.d.ts.map +1 -0
  606. package/dist/site/components/commerce/checkout-panel/cart-accordian.js +48 -0
  607. package/dist/site/components/commerce/checkout-panel/checkout-panel-props.cjs +2 -0
  608. package/dist/site/components/commerce/checkout-panel/checkout-panel-props.d.ts +8 -0
  609. package/dist/site/components/commerce/checkout-panel/checkout-panel-props.d.ts.map +1 -0
  610. package/dist/site/components/commerce/checkout-panel/checkout-panel-props.js +1 -0
  611. package/dist/site/components/commerce/checkout-panel/desktop-bag-carousel.cjs +30 -0
  612. package/dist/site/components/commerce/checkout-panel/desktop-bag-carousel.d.ts +10 -0
  613. package/dist/site/components/commerce/checkout-panel/desktop-bag-carousel.d.ts.map +1 -0
  614. package/dist/site/components/commerce/checkout-panel/desktop-bag-carousel.js +28 -0
  615. package/dist/site/components/commerce/checkout-panel/desktop-cp.cjs +235 -0
  616. package/dist/site/components/commerce/checkout-panel/desktop-cp.css +132 -0
  617. package/dist/site/components/commerce/checkout-panel/desktop-cp.d.ts +5 -0
  618. package/dist/site/components/commerce/checkout-panel/desktop-cp.d.ts.map +1 -0
  619. package/dist/site/components/commerce/checkout-panel/desktop-cp.js +229 -0
  620. package/dist/site/components/commerce/checkout-panel/index.cjs +502 -0
  621. package/dist/site/components/commerce/checkout-panel/index.css +132 -0
  622. package/dist/site/components/commerce/checkout-panel/index.d.ts +6 -0
  623. package/dist/site/components/commerce/checkout-panel/index.d.ts.map +1 -0
  624. package/dist/site/components/commerce/checkout-panel/index.js +496 -0
  625. package/dist/site/components/commerce/checkout-panel/mobile-cp.cjs +295 -0
  626. package/dist/site/components/commerce/checkout-panel/mobile-cp.css +132 -0
  627. package/dist/site/components/commerce/checkout-panel/mobile-cp.d.ts +5 -0
  628. package/dist/site/components/commerce/checkout-panel/mobile-cp.d.ts.map +1 -0
  629. package/dist/site/components/commerce/checkout-panel/mobile-cp.js +289 -0
  630. package/dist/site/components/commerce/checkout-panel/policy-links.cjs +25 -0
  631. package/dist/site/components/commerce/checkout-panel/policy-links.d.ts +6 -0
  632. package/dist/site/components/commerce/checkout-panel/policy-links.d.ts.map +1 -0
  633. package/dist/site/components/commerce/checkout-panel/policy-links.js +19 -0
  634. package/dist/site/components/commerce/checkout-panel/steps-indicator.cjs +27 -0
  635. package/dist/site/components/commerce/checkout-panel/steps-indicator.d.ts +7 -0
  636. package/dist/site/components/commerce/checkout-panel/steps-indicator.d.ts.map +1 -0
  637. package/dist/site/components/commerce/checkout-panel/steps-indicator.js +25 -0
  638. package/dist/site/components/commerce/checkout-panel/thank-you.cjs +25 -0
  639. package/dist/site/components/commerce/checkout-panel/thank-you.d.ts +5 -0
  640. package/dist/site/components/commerce/checkout-panel/thank-you.d.ts.map +1 -0
  641. package/dist/site/components/commerce/checkout-panel/thank-you.js +19 -0
  642. package/dist/site/components/commerce/desktop-bag-popup.cjs +72 -0
  643. package/dist/site/components/commerce/desktop-bag-popup.css +4 -0
  644. package/dist/site/components/commerce/desktop-bag-popup.d.ts +8 -0
  645. package/dist/site/components/commerce/desktop-bag-popup.d.ts.map +1 -0
  646. package/dist/site/components/commerce/desktop-bag-popup.js +70 -0
  647. package/dist/site/components/commerce/drawer/index.cjs +361 -0
  648. package/dist/site/components/commerce/drawer/index.css +132 -0
  649. package/dist/site/components/commerce/drawer/index.d.ts +4 -0
  650. package/dist/site/components/commerce/drawer/index.d.ts.map +1 -0
  651. package/dist/site/components/commerce/drawer/index.js +359 -0
  652. package/dist/site/components/commerce/drawer/micro.cjs +230 -0
  653. package/dist/site/components/commerce/drawer/micro.css +4 -0
  654. package/dist/site/components/commerce/drawer/micro.d.ts +8 -0
  655. package/dist/site/components/commerce/drawer/micro.d.ts.map +1 -0
  656. package/dist/site/components/commerce/drawer/micro.js +228 -0
  657. package/dist/site/components/commerce/drawer/shell.cjs +78 -0
  658. package/dist/site/components/commerce/drawer/shell.css +127 -0
  659. package/dist/site/components/commerce/drawer/shell.d.ts +9 -0
  660. package/dist/site/components/commerce/drawer/shell.d.ts.map +1 -0
  661. package/dist/site/components/commerce/drawer/shell.js +76 -0
  662. package/dist/site/components/contact-dialog/contact-form.cjs +70 -0
  663. package/dist/site/components/contact-dialog/contact-form.d.ts +13 -0
  664. package/dist/site/components/contact-dialog/contact-form.d.ts.map +1 -0
  665. package/dist/site/components/contact-dialog/contact-form.js +64 -0
  666. package/dist/site/components/contact-dialog/disclaimer.cjs +15 -0
  667. package/dist/site/components/contact-dialog/disclaimer.d.ts +4 -0
  668. package/dist/site/components/contact-dialog/disclaimer.d.ts.map +1 -0
  669. package/dist/site/components/contact-dialog/disclaimer.js +13 -0
  670. package/dist/site/components/contact-dialog/index.cjs +113 -0
  671. package/dist/site/components/contact-dialog/index.d.ts +5 -0
  672. package/dist/site/components/contact-dialog/index.d.ts.map +1 -0
  673. package/dist/site/components/contact-dialog/index.js +107 -0
  674. package/dist/site/components/copyright.cjs +24 -0
  675. package/dist/site/components/copyright.d.ts +6 -0
  676. package/dist/site/components/copyright.d.ts.map +1 -0
  677. package/dist/site/components/copyright.js +22 -0
  678. package/dist/site/components/drawer-margin.cjs +35 -0
  679. package/dist/site/components/drawer-margin.d.ts +6 -0
  680. package/dist/site/components/drawer-margin.d.ts.map +1 -0
  681. package/dist/site/components/drawer-margin.js +33 -0
  682. package/dist/site/components/footer-nav.cjs +22 -0
  683. package/dist/site/components/footer-nav.d.ts +9 -0
  684. package/dist/site/components/footer-nav.d.ts.map +1 -0
  685. package/dist/site/components/footer-nav.js +20 -0
  686. package/dist/site/components/footer.cjs +132 -0
  687. package/dist/site/components/footer.d.ts +9 -0
  688. package/dist/site/components/footer.d.ts.map +1 -0
  689. package/dist/site/components/footer.js +126 -0
  690. package/dist/site/components/header/desktop-nav-menu.cjs +170 -0
  691. package/dist/site/components/header/desktop-nav-menu.d.ts +9 -0
  692. package/dist/site/components/header/desktop-nav-menu.d.ts.map +1 -0
  693. package/dist/site/components/header/desktop-nav-menu.js +145 -0
  694. package/dist/site/components/header/desktop.cjs +405 -0
  695. package/dist/site/components/header/desktop.css +4 -0
  696. package/dist/site/components/header/desktop.d.ts +13 -0
  697. package/dist/site/components/header/desktop.d.ts.map +1 -0
  698. package/dist/site/components/header/desktop.js +381 -0
  699. package/dist/site/components/header/index.cjs +717 -0
  700. package/dist/site/components/header/index.css +132 -0
  701. package/dist/site/components/header/index.d.ts +11 -0
  702. package/dist/site/components/header/index.d.ts.map +1 -0
  703. package/dist/site/components/header/index.js +693 -0
  704. package/dist/site/components/header/mobile-bag-drawer.cjs +114 -0
  705. package/dist/site/components/header/mobile-bag-drawer.css +4 -0
  706. package/dist/site/components/header/mobile-bag-drawer.d.ts +9 -0
  707. package/dist/site/components/header/mobile-bag-drawer.d.ts.map +1 -0
  708. package/dist/site/components/header/mobile-bag-drawer.js +112 -0
  709. package/dist/site/components/header/mobile-menu-toggle-button.cjs +30 -0
  710. package/dist/site/components/header/mobile-menu-toggle-button.d.ts +8 -0
  711. package/dist/site/components/header/mobile-menu-toggle-button.d.ts.map +1 -0
  712. package/dist/site/components/header/mobile-menu-toggle-button.js +28 -0
  713. package/dist/site/components/header/mobile-nav-menu-ai.cjs +66 -0
  714. package/dist/site/components/header/mobile-nav-menu-ai.css +132 -0
  715. package/dist/site/components/header/mobile-nav-menu-ai.d.ts +7 -0
  716. package/dist/site/components/header/mobile-nav-menu-ai.d.ts.map +1 -0
  717. package/dist/site/components/header/mobile-nav-menu-ai.js +60 -0
  718. package/dist/site/components/header/mobile-nav-menu-item.cjs +98 -0
  719. package/dist/site/components/header/mobile-nav-menu-item.css +132 -0
  720. package/dist/site/components/header/mobile-nav-menu-item.d.ts +8 -0
  721. package/dist/site/components/header/mobile-nav-menu-item.d.ts.map +1 -0
  722. package/dist/site/components/header/mobile-nav-menu-item.js +92 -0
  723. package/dist/site/components/header/mobile-nav-menu.cjs +175 -0
  724. package/dist/site/components/header/mobile-nav-menu.css +132 -0
  725. package/dist/site/components/header/mobile-nav-menu.d.ts +14 -0
  726. package/dist/site/components/header/mobile-nav-menu.d.ts.map +1 -0
  727. package/dist/site/components/header/mobile-nav-menu.js +169 -0
  728. package/dist/site/components/header/mobile.cjs +447 -0
  729. package/dist/site/components/header/mobile.css +132 -0
  730. package/dist/site/components/header/mobile.d.ts +12 -0
  731. package/dist/site/components/header/mobile.d.ts.map +1 -0
  732. package/dist/site/components/header/mobile.js +441 -0
  733. package/dist/site/components/header/theme-toggle.cjs +28 -0
  734. package/dist/site/components/header/theme-toggle.d.ts +4 -0
  735. package/dist/site/components/header/theme-toggle.d.ts.map +1 -0
  736. package/dist/site/components/header/theme-toggle.js +26 -0
  737. package/dist/site/components/icons/avatar.cjs +12 -0
  738. package/dist/site/components/icons/avatar.d.ts +5 -0
  739. package/dist/site/components/icons/avatar.d.ts.map +1 -0
  740. package/dist/site/components/icons/avatar.js +10 -0
  741. package/dist/site/components/icons/bag-icon.cjs +9 -0
  742. package/dist/site/components/icons/bag-icon.d.ts +5 -0
  743. package/dist/site/components/icons/bag-icon.d.ts.map +1 -0
  744. package/dist/site/components/icons/bag-icon.js +7 -0
  745. package/dist/site/components/icons/index.cjs +39 -0
  746. package/dist/site/components/icons/index.css +4 -0
  747. package/dist/site/components/icons/index.d.ts +6 -0
  748. package/dist/site/components/icons/index.d.ts.map +1 -0
  749. package/dist/site/components/icons/index.js +33 -0
  750. package/dist/site/components/icons/left-arrow.cjs +9 -0
  751. package/dist/site/components/icons/left-arrow.d.ts +5 -0
  752. package/dist/site/components/icons/left-arrow.d.ts.map +1 -0
  753. package/dist/site/components/icons/left-arrow.js +7 -0
  754. package/dist/site/components/icons/right-arrow.cjs +9 -0
  755. package/dist/site/components/icons/right-arrow.d.ts +5 -0
  756. package/dist/site/components/icons/right-arrow.d.ts.map +1 -0
  757. package/dist/site/components/icons/right-arrow.js +7 -0
  758. package/dist/site/components/icons/social-icon.cjs +24 -0
  759. package/dist/site/components/icons/social-icon.css +4 -0
  760. package/dist/site/components/icons/social-icon.d.ts +10 -0
  761. package/dist/site/components/icons/social-icon.d.ts.map +1 -0
  762. package/dist/site/components/icons/social-icon.js +22 -0
  763. package/dist/site/components/index.cjs +2004 -0
  764. package/dist/site/components/index.css +132 -0
  765. package/dist/site/components/index.d.ts +24 -0
  766. package/dist/site/components/index.d.ts.map +1 -0
  767. package/dist/site/components/index.js +1952 -0
  768. package/dist/site/components/logo.cjs +37 -0
  769. package/dist/site/components/logo.d.ts +23 -0
  770. package/dist/site/components/logo.d.ts.map +1 -0
  771. package/dist/site/components/logo.js +31 -0
  772. package/dist/site/components/main.cjs +22 -0
  773. package/dist/site/components/main.d.ts +9 -0
  774. package/dist/site/components/main.d.ts.map +1 -0
  775. package/dist/site/components/main.js +20 -0
  776. package/dist/site/components/mini-chart/index.cjs +94 -0
  777. package/dist/site/components/mini-chart/index.d.ts +3 -0
  778. package/dist/site/components/mini-chart/index.d.ts.map +1 -0
  779. package/dist/site/components/mini-chart/index.js +92 -0
  780. package/dist/site/components/mini-chart/mini-chart-props.cjs +2 -0
  781. package/dist/site/components/mini-chart/mini-chart-props.d.ts +33 -0
  782. package/dist/site/components/mini-chart/mini-chart-props.d.ts.map +1 -0
  783. package/dist/site/components/mini-chart/mini-chart-props.js +1 -0
  784. package/dist/site/components/mini-chart/mini-chart.cjs +80 -0
  785. package/dist/site/components/mini-chart/mini-chart.d.ts +5 -0
  786. package/dist/site/components/mini-chart/mini-chart.d.ts.map +1 -0
  787. package/dist/site/components/mini-chart/mini-chart.js +78 -0
  788. package/dist/site/components/mini-chart/wrapper.cjs +94 -0
  789. package/dist/site/components/mini-chart/wrapper.d.ts +7 -0
  790. package/dist/site/components/mini-chart/wrapper.d.ts.map +1 -0
  791. package/dist/site/components/mini-chart/wrapper.js +92 -0
  792. package/dist/site/components/not-found/index.cjs +844 -0
  793. package/dist/site/components/not-found/index.css +132 -0
  794. package/dist/site/components/not-found/index.d.ts +8 -0
  795. package/dist/site/components/not-found/index.d.ts.map +1 -0
  796. package/dist/site/components/not-found/index.js +820 -0
  797. package/dist/site/components/security/index.cjs +857 -0
  798. package/dist/site/components/security/index.css +132 -0
  799. package/dist/site/components/security/index.d.ts +9 -0
  800. package/dist/site/components/security/index.d.ts.map +1 -0
  801. package/dist/site/components/security/index.js +833 -0
  802. package/dist/site/components/tooltip.cjs +28 -0
  803. package/dist/site/components/tooltip.d.ts +11 -0
  804. package/dist/site/components/tooltip.d.ts.map +1 -0
  805. package/dist/site/components/tooltip.js +26 -0
  806. package/dist/site/next/analytics/fpixel.cjs +14 -0
  807. package/dist/site/next/analytics/fpixel.d.ts +9 -0
  808. package/dist/site/next/analytics/fpixel.d.ts.map +1 -0
  809. package/dist/site/next/analytics/fpixel.js +10 -0
  810. package/dist/site/next/analytics/google-analytics.cjs +8 -0
  811. package/dist/site/next/analytics/google-analytics.d.ts +8 -0
  812. package/dist/site/next/analytics/google-analytics.d.ts.map +1 -0
  813. package/dist/site/next/analytics/google-analytics.js +6 -0
  814. package/dist/site/next/analytics/index.cjs +57 -0
  815. package/dist/site/next/analytics/index.d.ts +4 -0
  816. package/dist/site/next/analytics/index.d.ts.map +1 -0
  817. package/dist/site/next/analytics/index.js +49 -0
  818. package/dist/site/next/analytics/pixel-analytics.cjs +59 -0
  819. package/dist/site/next/analytics/pixel-analytics.d.ts +5 -0
  820. package/dist/site/next/analytics/pixel-analytics.d.ts.map +1 -0
  821. package/dist/site/next/analytics/pixel-analytics.js +52 -0
  822. package/dist/site/next/font/font-desc.cjs +2 -0
  823. package/dist/site/next/font/font-desc.d.ts +19 -0
  824. package/dist/site/next/font/font-desc.d.ts.map +1 -0
  825. package/dist/site/next/font/font-desc.js +1 -0
  826. package/dist/site/next/font/fonts.cjs +42 -0
  827. package/dist/site/next/font/fonts.d.ts +4 -0
  828. package/dist/site/next/font/fonts.d.ts.map +1 -0
  829. package/dist/site/next/font/fonts.js +40 -0
  830. package/dist/site/next/font/get-app-router-font-classes.cjs +96 -0
  831. package/dist/site/next/font/get-app-router-font-classes.d.ts +15 -0
  832. package/dist/site/next/font/get-app-router-font-classes.d.ts.map +1 -0
  833. package/dist/site/next/font/get-app-router-font-classes.js +90 -0
  834. package/dist/site/next/font/load-and-return-lux-next-fonts-on-import.cjs +90 -0
  835. package/dist/site/next/font/load-and-return-lux-next-fonts-on-import.d.ts +8 -0
  836. package/dist/site/next/font/load-and-return-lux-next-fonts-on-import.d.ts.map +1 -0
  837. package/dist/site/next/font/load-and-return-lux-next-fonts-on-import.js +84 -0
  838. package/dist/site/next/font/next-font-desc.cjs +2 -0
  839. package/dist/site/next/font/next-font-desc.d.ts +20 -0
  840. package/dist/site/next/font/next-font-desc.d.ts.map +1 -0
  841. package/dist/site/next/font/next-font-desc.js +1 -0
  842. package/dist/site/next/font/pages-router-font-vars.cjs +100 -0
  843. package/dist/site/next/font/pages-router-font-vars.d.ts +3 -0
  844. package/dist/site/next/font/pages-router-font-vars.d.ts.map +1 -0
  845. package/dist/site/next/font/pages-router-font-vars.js +94 -0
  846. package/dist/site/next/head-metadata/index.cjs +139 -0
  847. package/dist/site/next/head-metadata/index.d.ts +12 -0
  848. package/dist/site/next/head-metadata/index.d.ts.map +1 -0
  849. package/dist/site/next/head-metadata/index.js +129 -0
  850. package/dist/site/next/head-metadata/next-metadata.cjs +2 -0
  851. package/dist/site/next/head-metadata/next-metadata.d.ts +48 -0
  852. package/dist/site/next/head-metadata/next-metadata.d.ts.map +1 -0
  853. package/dist/site/next/head-metadata/next-metadata.js +1 -0
  854. package/dist/site/next/index.cjs +147 -0
  855. package/dist/site/next/index.d.ts +3 -0
  856. package/dist/site/next/index.d.ts.map +1 -0
  857. package/dist/site/next/index.js +140 -0
  858. package/dist/site/next/middleware/determine-device-mw.cjs +17 -0
  859. package/dist/site/next/middleware/determine-device-mw.d.ts +4 -0
  860. package/dist/site/next/middleware/determine-device-mw.d.ts.map +1 -0
  861. package/dist/site/next/middleware/determine-device-mw.js +15 -0
  862. package/dist/site/root-layout/index.cjs +1574 -0
  863. package/dist/site/root-layout/index.css +374 -0
  864. package/dist/site/root-layout/index.d.ts +20 -0
  865. package/dist/site/root-layout/index.d.ts.map +1 -0
  866. package/dist/site/root-layout/index.js +1547 -0
  867. package/dist/site/site-def/footer/community.cjs +77 -0
  868. package/dist/site/site-def/footer/community.css +4 -0
  869. package/dist/site/site-def/footer/community.d.ts +13 -0
  870. package/dist/site/site-def/footer/community.d.ts.map +1 -0
  871. package/dist/site/site-def/footer/community.js +75 -0
  872. package/dist/site/site-def/footer/company.cjs +40 -0
  873. package/dist/site/site-def/footer/company.d.ts +23 -0
  874. package/dist/site/site-def/footer/company.d.ts.map +1 -0
  875. package/dist/site/site-def/footer/company.js +38 -0
  876. package/dist/site/site-def/footer/ecosystem.cjs +40 -0
  877. package/dist/site/site-def/footer/ecosystem.d.ts +11 -0
  878. package/dist/site/site-def/footer/ecosystem.d.ts.map +1 -0
  879. package/dist/site/site-def/footer/ecosystem.js +38 -0
  880. package/dist/site/site-def/footer/index.cjs +228 -0
  881. package/dist/site/site-def/footer/index.css +4 -0
  882. package/dist/site/site-def/footer/index.d.ts +16 -0
  883. package/dist/site/site-def/footer/index.d.ts.map +1 -0
  884. package/dist/site/site-def/footer/index.js +220 -0
  885. package/dist/site/site-def/footer/legal.cjs +24 -0
  886. package/dist/site/site-def/footer/legal.d.ts +5 -0
  887. package/dist/site/site-def/footer/legal.d.ts.map +1 -0
  888. package/dist/site/site-def/footer/legal.js +21 -0
  889. package/dist/site/site-def/footer/network.cjs +48 -0
  890. package/dist/site/site-def/footer/network.d.ts +11 -0
  891. package/dist/site/site-def/footer/network.d.ts.map +1 -0
  892. package/dist/site/site-def/footer/network.js +46 -0
  893. package/dist/site/site-def/index.cjs +627 -0
  894. package/dist/site/site-def/index.css +4 -0
  895. package/dist/site/site-def/index.d.ts +5 -0
  896. package/dist/site/site-def/index.d.ts.map +1 -0
  897. package/dist/site/site-def/index.js +624 -0
  898. package/dist/site/site-def/main-nav.cjs +393 -0
  899. package/dist/site/site-def/main-nav.d.ts +46 -0
  900. package/dist/site/site-def/main-nav.d.ts.map +1 -0
  901. package/dist/site/site-def/main-nav.js +391 -0
  902. package/dist/site/types/chatbot-config.cjs +2 -0
  903. package/dist/site/types/chatbot-config.d.ts +6 -0
  904. package/dist/site/types/chatbot-config.d.ts.map +1 -0
  905. package/dist/site/types/chatbot-config.js +1 -0
  906. package/dist/site/types/chatbot-suggested-question.cjs +2 -0
  907. package/dist/site/types/chatbot-suggested-question.d.ts +7 -0
  908. package/dist/site/types/chatbot-suggested-question.d.ts.map +1 -0
  909. package/dist/site/types/chatbot-suggested-question.js +1 -0
  910. package/dist/site/types/contact-info.cjs +2 -0
  911. package/dist/site/types/contact-info.d.ts +7 -0
  912. package/dist/site/types/contact-info.d.ts.map +1 -0
  913. package/dist/site/types/contact-info.js +1 -0
  914. package/dist/site/types/index.cjs +2 -0
  915. package/dist/site/types/index.d.ts +5 -0
  916. package/dist/site/types/index.d.ts.map +1 -0
  917. package/dist/site/types/index.js +1 -0
  918. package/dist/site/types/site-def.cjs +2 -0
  919. package/dist/site/types/site-def.d.ts +41 -0
  920. package/dist/site/types/site-def.d.ts.map +1 -0
  921. package/dist/site/types/site-def.js +1 -0
  922. package/dist/site/util/index.cjs +11 -0
  923. package/dist/site/util/index.d.ts +2 -0
  924. package/dist/site/util/index.d.ts.map +1 -0
  925. package/dist/site/util/index.js +9 -0
  926. package/dist/skeleton.cjs +14 -143
  927. package/dist/skeleton.d.ts +3 -42
  928. package/dist/skeleton.d.ts.map +1 -1
  929. package/dist/skeleton.js +15 -144
  930. package/dist/slider.d.ts +1 -0
  931. package/dist/slider.d.ts.map +1 -1
  932. package/dist/status-dashboard-navigation-bar.cjs +51 -0
  933. package/dist/status-dashboard-navigation-bar.d.ts +10 -0
  934. package/dist/status-dashboard-navigation-bar.d.ts.map +1 -0
  935. package/dist/status-dashboard-navigation-bar.js +29 -0
  936. package/dist/status.cjs +85 -0
  937. package/dist/status.d.ts +23 -0
  938. package/dist/status.d.ts.map +1 -0
  939. package/dist/status.js +62 -0
  940. package/dist/stock-screener.cjs +44 -0
  941. package/dist/stock-screener.d.ts +4 -0
  942. package/dist/stock-screener.d.ts.map +1 -0
  943. package/dist/stock-screener.js +42 -0
  944. package/dist/switch.cjs +1 -1
  945. package/dist/switch.d.ts +1 -3
  946. package/dist/switch.d.ts.map +1 -1
  947. package/dist/switch.js +1 -1
  948. package/dist/symbol-info.cjs +44 -0
  949. package/dist/symbol-info.d.ts +9 -0
  950. package/dist/symbol-info.d.ts.map +1 -0
  951. package/dist/symbol-info.js +42 -0
  952. package/dist/table.cjs +53 -167
  953. package/dist/table.d.ts +2 -2
  954. package/dist/table.d.ts.map +1 -1
  955. package/dist/table.js +53 -167
  956. package/dist/tabs.d.ts.map +1 -1
  957. package/dist/tag.cjs +13 -142
  958. package/dist/tag.js +14 -143
  959. package/dist/tags.cjs +385 -0
  960. package/dist/tags.d.ts +13 -0
  961. package/dist/tags.d.ts.map +1 -0
  962. package/dist/tags.js +364 -0
  963. package/dist/team-switcher-navigation-bar.cjs +51 -0
  964. package/dist/team-switcher-navigation-bar.d.ts +10 -0
  965. package/dist/team-switcher-navigation-bar.d.ts.map +1 -0
  966. package/dist/team-switcher-navigation-bar.js +29 -0
  967. package/dist/technical-analysis.cjs +69 -0
  968. package/dist/technical-analysis.d.ts +13 -0
  969. package/dist/technical-analysis.d.ts.map +1 -0
  970. package/dist/technical-analysis.js +67 -0
  971. package/dist/terminal.cjs +372 -0
  972. package/dist/terminal.d.ts +21 -0
  973. package/dist/terminal.d.ts.map +1 -0
  974. package/dist/terminal.js +350 -0
  975. package/dist/ticker-tape.cjs +54 -0
  976. package/dist/ticker-tape.d.ts +4 -0
  977. package/dist/ticker-tape.d.ts.map +1 -0
  978. package/dist/ticker-tape.js +52 -0
  979. package/dist/ticker.cjs +66 -0
  980. package/dist/ticker.d.ts +10 -0
  981. package/dist/ticker.d.ts.map +1 -0
  982. package/dist/ticker.js +44 -0
  983. package/dist/timeline.cjs +317 -0
  984. package/dist/timeline.d.ts +20 -0
  985. package/dist/timeline.d.ts.map +1 -0
  986. package/dist/timeline.js +295 -0
  987. package/dist/toaster.d.ts +6 -3
  988. package/dist/toaster.d.ts.map +1 -1
  989. package/dist/toggle.cjs +62 -0
  990. package/dist/toggle.d.ts +26 -0
  991. package/dist/toggle.d.ts.map +1 -0
  992. package/dist/toggle.js +57 -0
  993. package/dist/trading-panel.cjs +212 -0
  994. package/dist/trading-panel.d.ts +7 -0
  995. package/dist/trading-panel.d.ts.map +1 -0
  996. package/dist/trading-panel.js +207 -0
  997. package/dist/two-tier-navigation-bar.cjs +51 -0
  998. package/dist/two-tier-navigation-bar.d.ts +10 -0
  999. package/dist/two-tier-navigation-bar.d.ts.map +1 -0
  1000. package/dist/two-tier-navigation-bar.js +29 -0
  1001. package/dist/underline-navigation-bar.cjs +51 -0
  1002. package/dist/underline-navigation-bar.d.ts +10 -0
  1003. package/dist/underline-navigation-bar.d.ts.map +1 -0
  1004. package/dist/underline-navigation-bar.js +29 -0
  1005. package/dist/utils/cn.cjs +10 -0
  1006. package/dist/utils/cn.js +1 -0
  1007. package/dist/white-label.d.ts +5 -5
  1008. package/dist/white-label.d.ts.map +1 -1
  1009. package/dist/youtube-pip-player.cjs +489 -0
  1010. package/dist/youtube-pip-player.d.ts +41 -0
  1011. package/dist/youtube-pip-player.d.ts.map +1 -0
  1012. package/dist/youtube-pip-player.js +466 -0
  1013. package/package.json +826 -72
  1014. package/src/3d-button.tsx +346 -0
  1015. package/src/3d-card.tsx +271 -0
  1016. package/src/3d-carousel.tsx +444 -0
  1017. package/src/3d-grid.tsx +448 -0
  1018. package/src/3d-marquee.tsx +422 -0
  1019. package/src/3d-model-viewer.tsx +659 -0
  1020. package/src/3d-pin.tsx +37 -0
  1021. package/src/3d-scene.tsx +629 -0
  1022. package/src/3d-text.tsx +442 -0
  1023. package/src/advanced-chart.tsx +63 -0
  1024. package/src/advanced-navigation-bar.tsx +83 -0
  1025. package/src/ai-actions.tsx +60 -0
  1026. package/src/ai-agents.tsx +1174 -0
  1027. package/src/ai-assistant.tsx +227 -0
  1028. package/src/ai-chat.tsx +554 -0
  1029. package/src/ai-code.tsx +1331 -0
  1030. package/src/ai-model-selector-navigation-bar.tsx +78 -0
  1031. package/src/ai-models.tsx +58 -0
  1032. package/src/ai-playground.tsx +429 -0
  1033. package/src/ai-tools.tsx +383 -0
  1034. package/src/ai-vision.tsx +1220 -0
  1035. package/src/ai-voice-settings.tsx +726 -0
  1036. package/src/ai-voice.tsx +711 -0
  1037. package/src/android.tsx +92 -0
  1038. package/src/animated-background.tsx +625 -0
  1039. package/src/animated-beam.tsx +110 -0
  1040. package/src/animated-cursor.tsx +406 -0
  1041. package/src/animated-icon.tsx +520 -0
  1042. package/src/animated-list.tsx +508 -0
  1043. package/src/animated-number.tsx +485 -0
  1044. package/src/animated-testimonials.tsx +119 -0
  1045. package/src/animated-text.tsx +481 -0
  1046. package/src/animated-tooltip.tsx +54 -0
  1047. package/src/announcement.tsx +55 -0
  1048. package/src/app-switcher-navigation-bar.tsx +76 -0
  1049. package/src/apple-cards-carousel.tsx +349 -0
  1050. package/src/apple-hello-effect.tsx +50 -0
  1051. package/src/auth.tsx +9 -8
  1052. package/src/avatar.tsx +1 -1
  1053. package/src/badge.tsx +27 -30
  1054. package/src/banner.tsx +62 -0
  1055. package/src/breadcrumb-and-filters-navigation-bar.tsx +40 -0
  1056. package/src/breadcrumb-navigation-bar.tsx +43 -0
  1057. package/src/button.tsx +10 -9
  1058. package/src/calendar.tsx +62 -0
  1059. package/src/centered-logo-navigation-bar.tsx +43 -0
  1060. package/src/chart.tsx +372 -0
  1061. package/src/choicebox.tsx +89 -0
  1062. package/src/chrome.tsx +41 -40
  1063. package/src/code-block.tsx +278 -0
  1064. package/src/code-compare.tsx +551 -0
  1065. package/src/code-diff.tsx +573 -0
  1066. package/src/code-editor.tsx +250 -0
  1067. package/src/code-explorer.tsx +403 -0
  1068. package/src/code-preview.tsx +488 -0
  1069. package/src/code-snippet.tsx +336 -0
  1070. package/src/code-tabs.tsx +78 -0
  1071. package/src/code-terminal.tsx +530 -0
  1072. package/src/collaboration-navigation-bar.tsx +50 -0
  1073. package/src/collapsible.tsx +3 -2
  1074. package/src/color-picker.tsx +68 -0
  1075. package/src/combobox.tsx +87 -0
  1076. package/src/communication-navigation-bar.tsx +42 -0
  1077. package/src/company-profile.tsx +67 -0
  1078. package/src/comparison.tsx +68 -0
  1079. package/src/context-switcher-navigation-bar.tsx +39 -0
  1080. package/src/credit-card.tsx +72 -0
  1081. package/src/crypto-screener.tsx +57 -0
  1082. package/src/cursor.tsx +61 -0
  1083. package/src/dashboard-navigation-bar.tsx +49 -0
  1084. package/src/dialog-stack.tsx +55 -0
  1085. package/src/dialog.tsx +16 -15
  1086. package/src/direction.tsx +40 -0
  1087. package/src/dock.tsx +172 -0
  1088. package/src/dropzone.tsx +106 -0
  1089. package/src/e-commerce-navigation-bar.tsx +54 -0
  1090. package/src/editor.tsx +85 -0
  1091. package/src/empty.tsx +117 -0
  1092. package/src/field.tsx +2 -1
  1093. package/src/financials.tsx +85 -0
  1094. package/src/forex-screener.tsx +58 -0
  1095. package/src/gantt.tsx +68 -0
  1096. package/src/grid-pattern.tsx +353 -0
  1097. package/src/hooks/use-mobile.ts +29 -0
  1098. package/src/icon-navigation-bar.tsx +36 -0
  1099. package/src/image-crop.tsx +67 -0
  1100. package/src/image-zoom.tsx +64 -0
  1101. package/src/image.tsx +2 -1
  1102. package/src/index.ts +123 -0
  1103. package/src/input-otp.tsx +72 -0
  1104. package/src/iphone-15-pro.tsx +69 -0
  1105. package/src/item.tsx +193 -0
  1106. package/src/kanban.tsx +772 -0
  1107. package/src/kbd.tsx +32 -0
  1108. package/src/limelight-nav-navigation-bar.tsx +39 -0
  1109. package/src/limelight-nav.tsx +101 -0
  1110. package/src/link.tsx +18 -18
  1111. package/src/list.tsx +22 -0
  1112. package/src/magnetic.tsx +54 -0
  1113. package/src/market-overview.tsx +116 -0
  1114. package/src/marquee.tsx +62 -0
  1115. package/src/menu-dock.tsx +56 -0
  1116. package/src/menubar.tsx +149 -0
  1117. package/src/message-dock.tsx +89 -0
  1118. package/src/mini-calendar.tsx +121 -0
  1119. package/src/minimal-tiptap.tsx +32 -0
  1120. package/src/motion-highlight.tsx +55 -0
  1121. package/src/music-player.tsx +413 -0
  1122. package/src/native-select.tsx +63 -0
  1123. package/src/news-timeline.tsx +56 -0
  1124. package/src/order-entry.tsx +162 -0
  1125. package/src/orders-history.tsx +115 -0
  1126. package/src/pagination.tsx +118 -0
  1127. package/src/particles-background.tsx +225 -0
  1128. package/src/pill.tsx +61 -0
  1129. package/src/pixel-image.tsx +64 -0
  1130. package/src/popover.tsx +10 -9
  1131. package/src/positions-list.tsx +108 -0
  1132. package/src/progress-circle.tsx +2 -1
  1133. package/src/pulse-animation.tsx +606 -0
  1134. package/src/qr-code.tsx +64 -0
  1135. package/src/relative-time.tsx +84 -0
  1136. package/src/resizable.tsx +46 -0
  1137. package/src/reveal-animation.tsx +532 -0
  1138. package/src/safari.tsx +115 -0
  1139. package/src/sandbox.tsx +83 -0
  1140. package/src/search-and-toggle-navigation-bar.tsx +39 -0
  1141. package/src/select.tsx +31 -30
  1142. package/src/sidebar.tsx +723 -0
  1143. package/src/simple-navigation-bar.tsx +39 -0
  1144. package/src/site/commerce/ui/conf.ts +13 -0
  1145. package/src/site/commerce/ui/context.tsx +120 -0
  1146. package/src/site/commerce/ui/store.ts +295 -0
  1147. package/src/site/components/access-code-input.tsx +70 -0
  1148. package/src/site/components/analytics.tsx +14 -0
  1149. package/src/site/components/auth/callback.tsx +40 -0
  1150. package/src/site/components/auth/login-panel.tsx +83 -0
  1151. package/src/site/components/auth/login.tsx +47 -0
  1152. package/src/site/components/auth/provider.tsx +34 -0
  1153. package/src/site/components/auth/resume.ts +16 -0
  1154. package/src/site/components/auth/widget.tsx +80 -0
  1155. package/src/site/components/back-button.tsx +46 -0
  1156. package/src/site/components/chat-widget.tsx +83 -0
  1157. package/src/site/components/commerce/bag-button.tsx +99 -0
  1158. package/src/site/components/commerce/buy-button.tsx +33 -0
  1159. package/src/site/components/commerce/checkout-button.tsx +131 -0
  1160. package/src/site/components/commerce/checkout-panel/cart-accordian.tsx +65 -0
  1161. package/src/site/components/commerce/checkout-panel/checkout-panel-props.ts +10 -0
  1162. package/src/site/components/commerce/checkout-panel/desktop-bag-carousel.tsx +36 -0
  1163. package/src/site/components/commerce/checkout-panel/desktop-cp.tsx +82 -0
  1164. package/src/site/components/commerce/checkout-panel/index.tsx +126 -0
  1165. package/src/site/components/commerce/checkout-panel/mobile-cp.tsx +67 -0
  1166. package/src/site/components/commerce/checkout-panel/policy-links.tsx +24 -0
  1167. package/src/site/components/commerce/checkout-panel/steps-indicator.tsx +39 -0
  1168. package/src/site/components/commerce/checkout-panel/thank-you.tsx +18 -0
  1169. package/src/site/components/commerce/desktop-bag-popup.tsx +78 -0
  1170. package/src/site/components/commerce/drawer/index.tsx +88 -0
  1171. package/src/site/components/commerce/drawer/micro.tsx +145 -0
  1172. package/src/site/components/commerce/drawer/shell.tsx +83 -0
  1173. package/src/site/components/contact-dialog/contact-form.tsx +109 -0
  1174. package/src/site/components/contact-dialog/disclaimer.tsx +13 -0
  1175. package/src/site/components/contact-dialog/index.tsx +64 -0
  1176. package/src/site/components/copyright.tsx +22 -0
  1177. package/src/site/components/drawer-margin.tsx +28 -0
  1178. package/src/site/components/footer-nav.tsx +31 -0
  1179. package/src/site/components/footer.tsx +72 -0
  1180. package/src/site/components/header/desktop-nav-menu.tsx +202 -0
  1181. package/src/site/components/header/desktop.tsx +65 -0
  1182. package/src/site/components/header/index.tsx +50 -0
  1183. package/src/site/components/header/mobile-bag-drawer.tsx +51 -0
  1184. package/src/site/components/header/mobile-menu-toggle-button.tsx +34 -0
  1185. package/src/site/components/header/mobile-nav-menu-ai.tsx +52 -0
  1186. package/src/site/components/header/mobile-nav-menu-item.tsx +48 -0
  1187. package/src/site/components/header/mobile-nav-menu.tsx +103 -0
  1188. package/src/site/components/header/mobile.tsx +169 -0
  1189. package/src/site/components/header/theme-toggle.tsx +26 -0
  1190. package/src/site/components/icons/avatar.tsx +11 -0
  1191. package/src/site/components/icons/bag-icon.tsx +10 -0
  1192. package/src/site/components/icons/index.ts +5 -0
  1193. package/src/site/components/icons/left-arrow.tsx +11 -0
  1194. package/src/site/components/icons/right-arrow.tsx +10 -0
  1195. package/src/site/components/icons/social-icon.tsx +35 -0
  1196. package/src/site/components/icons/social-svg.css +3 -0
  1197. package/src/site/components/index.ts +26 -0
  1198. package/src/site/components/logo.tsx +65 -0
  1199. package/src/site/components/main.tsx +26 -0
  1200. package/src/site/components/mini-chart/index.tsx +8 -0
  1201. package/src/site/components/mini-chart/mini-chart-props.ts +44 -0
  1202. package/src/site/components/mini-chart/mini-chart.tsx +86 -0
  1203. package/src/site/components/mini-chart/wrapper.tsx +23 -0
  1204. package/src/site/components/not-found/index.tsx +28 -0
  1205. package/src/site/components/security/index.tsx +55 -0
  1206. package/src/site/components/tooltip.tsx +31 -0
  1207. package/src/site/next/analytics/fpixel.ts +16 -0
  1208. package/src/site/next/analytics/google-analytics.ts +14 -0
  1209. package/src/site/next/analytics/index.ts +3 -0
  1210. package/src/site/next/analytics/pixel-analytics.tsx +55 -0
  1211. package/src/site/next/font/font-desc.ts +18 -0
  1212. package/src/site/next/font/fonts.ts +40 -0
  1213. package/src/site/next/font/get-app-router-font-classes.ts +19 -0
  1214. package/src/site/next/font/load-and-return-lux-next-fonts-on-import.ts +60 -0
  1215. package/src/site/next/font/local/InterVariable-Italic.ttf +0 -0
  1216. package/src/site/next/font/local/InterVariable-Italic.woff2 +0 -0
  1217. package/src/site/next/font/local/InterVariable.ttf +0 -0
  1218. package/src/site/next/font/local/InterVariable.woff2 +0 -0
  1219. package/src/site/next/font/local/Zen-Variable.woff2 +0 -0
  1220. package/src/site/next/font/next-font-desc.ts +29 -0
  1221. package/src/site/next/font/pages-router-font-vars.tsx +18 -0
  1222. package/src/site/next/head-metadata/index.tsx +209 -0
  1223. package/src/site/next/head-metadata/next-metadata.ts +49 -0
  1224. package/src/site/next/index.ts +2 -0
  1225. package/src/site/next/middleware/determine-device-mw.ts +16 -0
  1226. package/src/site/root-layout/WHY_THIS_IS_SEPARATE.txt +2 -0
  1227. package/src/site/root-layout/index.tsx +125 -0
  1228. package/src/site/site-def/footer/community.tsx +58 -0
  1229. package/src/site/site-def/footer/company.ts +37 -0
  1230. package/src/site/site-def/footer/ecosystem.ts +37 -0
  1231. package/src/site/site-def/footer/index.tsx +26 -0
  1232. package/src/site/site-def/footer/legal.ts +28 -0
  1233. package/src/site/site-def/footer/network.ts +45 -0
  1234. package/src/site/site-def/footer/svg/warpcast-logo.svg +12 -0
  1235. package/src/site/site-def/index.ts +4 -0
  1236. package/src/site/site-def/main-nav.tsx +460 -0
  1237. package/src/site/style/cart-animation.css +29 -0
  1238. package/src/site/style/checkout-animation.css +23 -0
  1239. package/src/site/style/drawer-handle-overrides.css +160 -0
  1240. package/src/site/style/fonts/COPY_TO_PUBLIC_FOR_NON_NEXT.txt +0 -0
  1241. package/src/site/style/fonts/InterVariable-Italic.ttf +0 -0
  1242. package/src/site/style/fonts/InterVariable-Italic.woff2 +0 -0
  1243. package/src/site/style/fonts/InterVariable.ttf +0 -0
  1244. package/src/site/style/fonts/InterVariable.woff2 +0 -0
  1245. package/src/site/style/fonts/Zen-Variable.woff2 +0 -0
  1246. package/src/site/style/lux-colors.css +84 -0
  1247. package/src/site/style/lux-fonts.css +24 -0
  1248. package/src/site/style/lux-global-non-next.css +52 -0
  1249. package/src/site/style/lux-global.css +135 -0
  1250. package/src/site/types/chatbot-config.ts +7 -0
  1251. package/src/site/types/chatbot-suggested-question.ts +7 -0
  1252. package/src/site/types/contact-info.ts +11 -0
  1253. package/src/site/types/index.ts +4 -0
  1254. package/src/site/types/site-def.ts +53 -0
  1255. package/src/site/util/index.ts +11 -0
  1256. package/src/skeleton.tsx +20 -168
  1257. package/src/slider.tsx +1 -0
  1258. package/src/status-dashboard-navigation-bar.tsx +39 -0
  1259. package/src/status.tsx +63 -0
  1260. package/src/stock-screener.tsx +58 -0
  1261. package/src/switch.tsx +2 -2
  1262. package/src/symbol-info.tsx +64 -0
  1263. package/src/table.tsx +26 -25
  1264. package/src/tags.tsx +62 -0
  1265. package/src/team-switcher-navigation-bar.tsx +39 -0
  1266. package/src/technical-analysis.tsx +99 -0
  1267. package/src/terminal.tsx +399 -0
  1268. package/src/ticker-tape.tsx +68 -0
  1269. package/src/ticker.tsx +52 -0
  1270. package/src/timeline.tsx +412 -0
  1271. package/src/toggle.tsx +84 -0
  1272. package/src/trading-panel.tsx +262 -0
  1273. package/src/two-tier-navigation-bar.tsx +39 -0
  1274. package/src/underline-navigation-bar.tsx +39 -0
  1275. package/src/youtube-pip-player.tsx +606 -0
  1276. package/tokens.css +11 -0
@@ -0,0 +1,1574 @@
1
+ 'use strict';
2
+
3
+ var primitives = require('@hanzo/ui/primitives');
4
+ var ui = require('@hanzo/ui');
5
+ var commerce = require('@hanzo/commerce');
6
+ var localFont = require('next/font/local');
7
+ var React7 = require('react');
8
+ var navigation = require('next/navigation');
9
+ var Script = require('next/script');
10
+ var jsxRuntime = require('react/jsx-runtime');
11
+ var mobxReactLite = require('mobx-react-lite');
12
+ var usehooksTs = require('usehooks-ts');
13
+ var mobx = require('mobx');
14
+ var logo = require('@luxfi/logo');
15
+ var Link2 = require('next/link');
16
+ var react = require('@hanzo/iam/react');
17
+ var lucideReact = require('lucide-react');
18
+ var paths = require('@hanzo/iam/paths');
19
+ var google = require('@next/third-parties/google');
20
+ require('embla-carousel-autoplay');
21
+ require('@hanzo/ui/theme.css');
22
+ require('@hanzo/ui/styles.css');
23
+
24
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
25
+
26
+ function _interopNamespace(e) {
27
+ if (e && e.__esModule) return e;
28
+ var n = Object.create(null);
29
+ if (e) {
30
+ Object.keys(e).forEach(function (k) {
31
+ if (k !== 'default') {
32
+ var d = Object.getOwnPropertyDescriptor(e, k);
33
+ Object.defineProperty(n, k, d.get ? d : {
34
+ enumerable: true,
35
+ get: function () { return e[k]; }
36
+ });
37
+ }
38
+ });
39
+ }
40
+ n.default = e;
41
+ return Object.freeze(n);
42
+ }
43
+
44
+ var localFont__default = /*#__PURE__*/_interopDefault(localFont);
45
+ var React7__namespace = /*#__PURE__*/_interopNamespace(React7);
46
+ var Script__default = /*#__PURE__*/_interopDefault(Script);
47
+ var Link2__default = /*#__PURE__*/_interopDefault(Link2);
48
+
49
+ // src/site/root-layout/index.tsx
50
+
51
+ // src/site/next/font/fonts.ts
52
+ var fonts_default = [
53
+ {
54
+ fontFamily: ["var(--font-inter)"],
55
+ // do not provide fall-backs due to next bug
56
+ cssVar: "--font-inter",
57
+ name: "sans"
58
+ },
59
+ {
60
+ fontFamily: ["var(--font-inter)"],
61
+ // do not provide fall-backs due to next bug
62
+ cssVar: "--font-inter",
63
+ name: "nav"
64
+ },
65
+ {
66
+ fontFamily: ["var(--font-zen-sans)"],
67
+ // do not provide fall-backs due to next bug
68
+ cssVar: "--font-zen-sans",
69
+ name: "heading"
70
+ },
71
+ {
72
+ name: "serif",
73
+ fontFamily: ["ui-serif", "Georgia", "Cambria", '"Times New Roman"', "Times"]
74
+ },
75
+ {
76
+ name: "mono",
77
+ fontFamily: [
78
+ "ui-monospace",
79
+ "SFMono-Regular",
80
+ "Menlo",
81
+ "Monaco",
82
+ "Consolas",
83
+ '"Liberation Mono"',
84
+ '"Courier New"',
85
+ "monospace"
86
+ ]
87
+ }
88
+ ];
89
+
90
+ // src/site/next/font/load-and-return-lux-next-fonts-on-import.ts
91
+ var zen = localFont__default.default({
92
+ src: "./local/Zen-Variable.woff2",
93
+ weight: "100 900",
94
+ display: "swap",
95
+ variable: "--font-zen-sans"
96
+ });
97
+ var inter = localFont__default.default({
98
+ src: "./local/InterVariable.ttf",
99
+ display: "swap",
100
+ variable: "--font-inter"
101
+ });
102
+ var load_and_return_lux_next_fonts_on_import_default = [
103
+ {
104
+ font: inter,
105
+ name: "sans"
106
+ },
107
+ {
108
+ font: inter,
109
+ name: "nav"
110
+ },
111
+ {
112
+ // Zen is one variable face over 100-900, so the display cut is weight and
113
+ // tracking in CSS rather than a second file: '.font-heading' in style/lux-global.css.
114
+ font: zen,
115
+ name: "heading"
116
+ }
117
+ ].map(
118
+ (el) => {
119
+ const font = fonts_default.find((f) => el.name === f.name);
120
+ if (!font) {
121
+ throw new Error("lux-next-fonts: Next font is not paired to a TW font!");
122
+ }
123
+ return {
124
+ ...font,
125
+ nextFont: el.font
126
+ };
127
+ }
128
+ );
129
+
130
+ // src/site/next/font/get-app-router-font-classes.ts
131
+ var get_app_router_font_classes_default = () => {
132
+ const named = load_and_return_lux_next_fonts_on_import_default.map((desc) => desc.nextFont.variable);
133
+ return [...new Set(named)].join(" ");
134
+ };
135
+
136
+ // src/site/next/analytics/fpixel.ts
137
+ var FB_PIXEL_ID = process.env.NEXT_PUBLIC_FACEBOOK_PIXEL_ID || "";
138
+ var pageview = () => {
139
+ window.fbq("track", "PageView");
140
+ };
141
+ var FacebookPixelHead = () => {
142
+ return /* @__PURE__ */ jsxRuntime.jsx("noscript", { children: /* @__PURE__ */ jsxRuntime.jsx(
143
+ "img",
144
+ {
145
+ height: "1",
146
+ width: "1",
147
+ style: { display: "none" },
148
+ src: `https://www.facebook.com/tr?id=${FB_PIXEL_ID}&ev=PageView&noscript=1`
149
+ }
150
+ ) });
151
+ };
152
+ var FacebookPixel = () => {
153
+ const [loaded, setLoaded] = React7.useState(false);
154
+ const pathname = navigation.usePathname();
155
+ React7.useEffect(() => {
156
+ if (!loaded) return;
157
+ pageview();
158
+ }, [pathname, loaded]);
159
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(
160
+ Script__default.default,
161
+ {
162
+ id: "fb-pixel",
163
+ strategy: "afterInteractive",
164
+ onLoad: () => setLoaded(true),
165
+ dangerouslySetInnerHTML: {
166
+ __html: `
167
+ !function(f,b,e,v,n,t,s)
168
+ {if(f.fbq)return;n=f.fbq=function(){n.callMethod?
169
+ n.callMethod.apply(n,arguments):n.queue.push(arguments)};
170
+ if(!f._fbq)f._fbq=n;n.push=n;n.loaded=!0;n.version='2.0';
171
+ n.queue=[];t=b.createElement(e);t.async=!0;
172
+ t.src=v;s=b.getElementsByTagName(e)[0];
173
+ s.parentNode.insertBefore(t,s)}(window, document,'script',
174
+ 'https://connect.facebook.net/en_US/fbevents.js');
175
+ fbq('init', ${FB_PIXEL_ID});
176
+ `
177
+ }
178
+ }
179
+ ) });
180
+ };
181
+ var log = (s) => {
182
+ {
183
+ console.log("COMMERCE_UI " + s);
184
+ }
185
+ };
186
+ var CommerceUIStore = class {
187
+ // points to either this._pointsConfig.md or this._pointsConfig.dt
188
+ constructor(s, conf) {
189
+ this._vHeight = 0;
190
+ this._routeChangedTime = 0;
191
+ this._currentSkuPath = void 0;
192
+ this._closedByUser = false;
193
+ this._checkingOut = void 0;
194
+ this._ignoreStateChange = false;
195
+ this._activePoint = null;
196
+ this._reactionDisposers = [];
197
+ this.initialize = () => {
198
+ this._reactionDisposers.push(mobx.reaction(
199
+ () => this.state,
200
+ (s) => {
201
+ if (this.ignoreStateChange) {
202
+ log(`STATE CHANGE to "${s}" (IGNORED)`);
203
+ this.setIgnoreStateChange(false);
204
+ return;
205
+ } else {
206
+ log(`STATE CHANGE to "${s}" (UI REACTED)`);
207
+ this._syncUIToState(s);
208
+ }
209
+ }
210
+ ));
211
+ };
212
+ this.newRoute = () => {
213
+ this.setRouteChangedTime((/* @__PURE__ */ new Date()).getTime());
214
+ this.hideVariants();
215
+ this.setClosedByUser(false);
216
+ };
217
+ this.onActivePointChanged = (newPoint) => {
218
+ log("ON onActivePointChanged: " + newPoint);
219
+ if (newPoint === this._points.micro && this.activePoint === this._points.full) {
220
+ log("ON onActivePointChanged: to MICRO");
221
+ this.setIgnoreStateChange(true);
222
+ this.hideVariants();
223
+ } else if (newPoint === this._points.full && this.activePoint === this._points.micro) {
224
+ log("ON onActivePointChanged: to FULL");
225
+ this.setIgnoreStateChange(true);
226
+ this.showRecentVariants();
227
+ }
228
+ this.setActivePoint(newPoint);
229
+ };
230
+ this.showVariants = (skuPath) => {
231
+ this._service.setCurrentItem(void 0);
232
+ this._currentSkuPath = skuPath;
233
+ this._closedByUser = false;
234
+ };
235
+ this.showRecentVariants = () => {
236
+ const recentItemInfo = this._service.recentItem;
237
+ if (recentItemInfo) {
238
+ this._service.setCurrentItem(void 0);
239
+ this._currentSkuPath = recentItemInfo.item.sku;
240
+ this._closedByUser = false;
241
+ }
242
+ };
243
+ this.hideVariants = () => {
244
+ this._currentSkuPath = void 0;
245
+ };
246
+ this.setClosedByUser = (b) => {
247
+ this._closedByUser = b;
248
+ };
249
+ this.setIgnoreStateChange = (b) => {
250
+ this._ignoreStateChange = b;
251
+ };
252
+ this.setCheckingOut = (b) => {
253
+ this._checkingOut = b;
254
+ };
255
+ this.setActivePoint = (pt) => {
256
+ this._activePoint = pt;
257
+ };
258
+ this.setRouteChangedTime = (t) => {
259
+ this._routeChangedTime = t;
260
+ };
261
+ this._syncUIToState = (s) => {
262
+ log("_syncUIToState: " + s);
263
+ if (s === "micro") {
264
+ this.setActivePoint(this.points[0]);
265
+ } else if (s === "full") {
266
+ this.setActivePoint(this.points[this.points.length - 1]);
267
+ } else {
268
+ this.setActivePoint(null);
269
+ }
270
+ };
271
+ this.setMobile = (b) => {
272
+ log("setMobile: " + b);
273
+ this._points = b ? this._pointsConfig.mb : this._pointsConfig.dt;
274
+ };
275
+ this.setViewportHeight = (v) => {
276
+ this._vHeight = v;
277
+ };
278
+ this.dispose = () => {
279
+ this._reactionDisposers.forEach((d) => {
280
+ d();
281
+ });
282
+ };
283
+ this._service = s;
284
+ this._pointsConfig = conf;
285
+ this._points = this._pointsConfig.dt;
286
+ mobx.makeObservable(this, {
287
+ _currentSkuPath: mobx.observable,
288
+ _closedByUser: mobx.observable,
289
+ _checkingOut: mobx.observable,
290
+ _activePoint: mobx.observable,
291
+ _points: mobx.observableRef,
292
+ _vHeight: mobx.observable,
293
+ _routeChangedTime: mobx.observable,
294
+ showVariants: mobx.action,
295
+ showRecentVariants: mobx.action,
296
+ hideVariants: mobx.action,
297
+ setClosedByUser: mobx.action,
298
+ setCheckingOut: mobx.action,
299
+ setActivePoint: mobx.action,
300
+ setMobile: mobx.action,
301
+ setViewportHeight: mobx.action,
302
+ setRouteChangedTime: mobx.action,
303
+ activePoint: mobx.computed,
304
+ checkingOut: mobx.computed,
305
+ closedByUser: mobx.computed,
306
+ currentSkuPath: mobx.computed,
307
+ microHeight: mobx.computed,
308
+ modal: mobx.computed,
309
+ points: mobx.computed,
310
+ showRecent: mobx.computed,
311
+ showBuy: mobx.computed,
312
+ showCheckout: mobx.computed,
313
+ snapPointPx: mobx.computed,
314
+ state: mobx.computed,
315
+ open: mobx.computed
316
+ });
317
+ }
318
+ get currentSkuPath() {
319
+ return this._currentSkuPath;
320
+ }
321
+ get closedByUser() {
322
+ return this._closedByUser;
323
+ }
324
+ get ignoreStateChange() {
325
+ return this._ignoreStateChange;
326
+ }
327
+ get checkingOut() {
328
+ return this._checkingOut;
329
+ }
330
+ get activePoint() {
331
+ return this._activePoint;
332
+ }
333
+ get points() {
334
+ return [this._points.micro, this._points.full];
335
+ }
336
+ get open() {
337
+ log(
338
+ "open(): showCheckout: " + this.showCheckout + " showRecent: " + this.showRecent + " showBuy: " + this.showBuy
339
+ );
340
+ return this._checkingOut !== void 0 && !this._checkingOut && !this.closedByUser && (this.showCheckout || this.showRecent || this.showBuy);
341
+ }
342
+ get state() {
343
+ if (!this.closedByUser && !this._checkingOut) {
344
+ if (this.showBuy) {
345
+ return "full";
346
+ } else if (this.showRecent || this.showCheckout) {
347
+ return "micro";
348
+ }
349
+ }
350
+ return "closed";
351
+ }
352
+ get showRecent() {
353
+ const recentInfo = this._service.recentItem;
354
+ return !!recentInfo && recentInfo.modified > this._routeChangedTime;
355
+ }
356
+ get showBuy() {
357
+ return !!this.currentSkuPath;
358
+ }
359
+ get showCheckout() {
360
+ return !this._service.cartEmpty;
361
+ }
362
+ get modal() {
363
+ return this.state !== "micro";
364
+ }
365
+ get microHeight() {
366
+ return this._points.micro;
367
+ }
368
+ get isMobile() {
369
+ return this._pointsConfig.mb === this._points;
370
+ }
371
+ get snapPointPx() {
372
+ if (!this._activePoint || this._vHeight === 0) return 0;
373
+ if (typeof this._activePoint === "string") {
374
+ return parseInt(this._activePoint);
375
+ }
376
+ return this._vHeight * this._activePoint;
377
+ }
378
+ };
379
+
380
+ // src/site/commerce/ui/conf.ts
381
+ var conf_default = {
382
+ mb: {
383
+ micro: "72px",
384
+ full: "600px"
385
+ },
386
+ dt: {
387
+ micro: "90px",
388
+ full: "620px"
389
+ }
390
+ };
391
+ var DESKTOP_MIN = 768;
392
+ var log2 = (s) => {
393
+ };
394
+ mobxReactLite.enableStaticRendering(typeof window === "undefined");
395
+ var CommerceUIContext = React7.createContext(void 0);
396
+ var useCommerceDrawer = () => {
397
+ return React7.useContext(CommerceUIContext);
398
+ };
399
+ var useSelectAndBuy = () => {
400
+ return React7.useContext(CommerceUIContext);
401
+ };
402
+ var CommerceUIProvider = ({
403
+ children
404
+ }) => {
405
+ const cmmc = commerce.useCommerce();
406
+ const pathname = navigation.usePathname();
407
+ const storeRef = React7.useRef(new CommerceUIStore(cmmc, conf_default));
408
+ const prevPathRef = React7.useRef("initial");
409
+ const onResize = () => {
410
+ const width = window.innerWidth;
411
+ if (width < DESKTOP_MIN) {
412
+ if (!storeRef.current.isMobile) {
413
+ storeRef.current.setMobile(true);
414
+ }
415
+ } else if (storeRef.current.isMobile) {
416
+ storeRef.current.setMobile(false);
417
+ }
418
+ storeRef.current.setViewportHeight(window.innerHeight);
419
+ };
420
+ const onResize_debounced = usehooksTs.useDebounceCallback(onResize, 500);
421
+ React7.useLayoutEffect(() => {
422
+ storeRef.current.initialize();
423
+ onResize();
424
+ window.addEventListener("resize", onResize_debounced);
425
+ return () => {
426
+ window.removeEventListener("resize", onResize_debounced);
427
+ storeRef.current.dispose();
428
+ };
429
+ }, []);
430
+ React7.useEffect(() => {
431
+ const checkingOut = pathname === "/checkout";
432
+ log2("useEffect: prev pathname: " + prevPathRef.current);
433
+ if (storeRef.current.checkingOut === void 0 || storeRef.current._checkingOut !== checkingOut) {
434
+ storeRef.current.setCheckingOut(checkingOut);
435
+ }
436
+ if (prevPathRef.current === "initial") {
437
+ prevPathRef.current = pathname;
438
+ storeRef.current.newRoute();
439
+ } else if (!checkingOut && prevPathRef.current !== pathname) {
440
+ storeRef.current.newRoute();
441
+ prevPathRef.current = pathname;
442
+ log2("ROUTE CHANGE: " + pathname + ": " + storeRef.current._routeChangedTime);
443
+ }
444
+ }, [pathname]);
445
+ return /* @__PURE__ */ jsxRuntime.jsx(CommerceUIContext.Provider, { value: storeRef.current, children });
446
+ };
447
+ var ChatWidget = ({
448
+ title,
449
+ chatbotUrl,
450
+ subtitle,
451
+ question,
452
+ suggestedQuestions,
453
+ buttonClx = ""
454
+ }) => {
455
+ const [showChatbot, setShowChatbot] = React7__namespace.default.useState(false);
456
+ const onClick = () => {
457
+ setShowChatbot(!showChatbot);
458
+ };
459
+ const searchParams = new URLSearchParams();
460
+ if (question) {
461
+ searchParams.append("question", question);
462
+ }
463
+ if (suggestedQuestions) {
464
+ searchParams.append("sQuestions", suggestedQuestions.map(({ message }) => message).join(","));
465
+ searchParams.append("sHeadings", suggestedQuestions.map(({ heading }) => heading).join(","));
466
+ searchParams.append("sIcons", suggestedQuestions.map(({ icon }) => icon).join(","));
467
+ }
468
+ const iframeSrc = `${chatbotUrl}?${searchParams.toString()}`;
469
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
470
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "fixed bottom-0 sm:bottom-16 right-0 w-full h-full sm:max-w-[400px] sm:max-h-[550px] sm:px-4 z-floating " + (showChatbot ? "flex" : "hidden"), children: /* @__PURE__ */ jsxRuntime.jsxs(primitives.Card, { className: "flex flex-col h-full w-full", children: [
471
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex px-4 py-2 h-12 bg-level-0 items-center justify-between", children: [
472
+ /* @__PURE__ */ jsxRuntime.jsxs("h1", { className: "font-semibold font-heading", children: [
473
+ title,
474
+ " ",
475
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "opacity-60", children: subtitle })
476
+ ] }),
477
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.Button, { onClick, variant: "link", size: "icon", className: "w-fit sm:hidden", children: /* @__PURE__ */ jsxRuntime.jsx(logo.LuxLogo, { variant: "white", size: 24 }) })
478
+ ] }),
479
+ /* @__PURE__ */ jsxRuntime.jsx("iframe", { src: iframeSrc, className: "h-full" })
480
+ ] }) }),
481
+ /* @__PURE__ */ jsxRuntime.jsx(
482
+ ui.Box,
483
+ {
484
+ tag: "span",
485
+ onClick,
486
+ className: ui.cn(
487
+ // z-index should be below anything in commerce-iu (buy drawer and checkout widget)
488
+ "fixed bottom-5 right-[24px] md:z-floating z-16 cursor-pointer",
489
+ "hover:drop-shadow-[0_2px_6px_rgba(255,255,255,1)]",
490
+ "transition-transform",
491
+ showChatbot ? "rotate-180" : "",
492
+ buttonClx
493
+ ),
494
+ children: /* @__PURE__ */ jsxRuntime.jsx(logo.LuxLogo, { variant: "white", size: 28 })
495
+ }
496
+ )
497
+ ] });
498
+ };
499
+ var chat_widget_default = ChatWidget;
500
+ var SIZE = {
501
+ xl: { mark: 40, word: 22, gap: "gap-4" },
502
+ lg: { mark: 40, word: 22, gap: "gap-4" },
503
+ md: { mark: 32, word: 18, gap: "gap-3" },
504
+ sm: { mark: 24, word: 13, gap: "gap-2" },
505
+ xs: { mark: 16, word: 9, gap: "gap-1.5" }
506
+ };
507
+ var Logo = ({
508
+ size = "md",
509
+ href,
510
+ // no default please!
511
+ outerClx = "",
512
+ variant = "full",
513
+ onClick
514
+ }) => {
515
+ const s = SIZE[size] ?? SIZE.md;
516
+ const clx = "flex flex-row items-center " + s.gap + " " + (href ? "hover:opacity-80 cursor-pointer " : "cursor-default ") + outerClx;
517
+ const art = /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
518
+ variant !== "wordmark" && /* @__PURE__ */ jsxRuntime.jsx(logo.Logo, { variant: "white", size: s.mark }),
519
+ variant !== "mark" && /* @__PURE__ */ jsxRuntime.jsx(logo.Wordmark, { height: s.word })
520
+ ] });
521
+ return href ? /* @__PURE__ */ jsxRuntime.jsx(Link2__default.default, { href, style: ui.css(clx), onClick, children: art }) : /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "span", className: clx, onClick, children: art });
522
+ };
523
+
524
+ // src/site/components/auth/resume.ts
525
+ var KEY = "lux-auth-resume";
526
+ var remember = () => {
527
+ sessionStorage.setItem(KEY, window.location.pathname + window.location.search);
528
+ };
529
+ var Widget = ({
530
+ noLogin = false,
531
+ handleLogin,
532
+ className
533
+ }) => {
534
+ const { isAuthenticated, isLoading, login, logout } = react.useIam();
535
+ const identity = react.useIamIdentity();
536
+ if (isLoading) {
537
+ return null;
538
+ }
539
+ if (!isAuthenticated) {
540
+ return noLogin ? null : /* @__PURE__ */ jsxRuntime.jsx(
541
+ primitives.Button,
542
+ {
543
+ variant: "primary",
544
+ className: ui.cn("h-8 w-fit !min-w-0", className),
545
+ onClick: handleLogin ?? (() => {
546
+ remember();
547
+ void login();
548
+ }),
549
+ children: "Login"
550
+ }
551
+ );
552
+ }
553
+ return /* @__PURE__ */ jsxRuntime.jsxs(primitives.Popover, { children: [
554
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
555
+ primitives.Button,
556
+ {
557
+ variant: "outline",
558
+ size: "icon",
559
+ className: ui.cn("rounded-full text-muted border-2 border-muted bg-level-1 hover:bg-level-2 hover:border-foreground hover:text-foreground uppercase w-8 h-8", className),
560
+ children: identity?.initials
561
+ }
562
+ ) }),
563
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.PopoverContent, { className: "bg-level-0", children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "grid gap-4", children: [
564
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "space-y-2 truncate", children: [
565
+ /* @__PURE__ */ jsxRuntime.jsx("h4", { className: "font-medium leading-none truncate", children: identity?.name }),
566
+ identity?.email && identity.email !== identity.name && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm opacity-50 truncate", children: identity.email })
567
+ ] }),
568
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.Separator, {}),
569
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.Button, { variant: "outline", onClick: () => {
570
+ logout();
571
+ }, children: "Logout" })
572
+ ] }) })
573
+ ] });
574
+ };
575
+ var AuthWidget = (props) => React7.useContext(react.IamContext) ? /* @__PURE__ */ jsxRuntime.jsx(Widget, { ...props }) : null;
576
+ var widget_default = AuthWidget;
577
+ var Avatar = (props) => /* @__PURE__ */ jsxRuntime.jsxs("svg", { width: "17", height: "21", viewBox: "0 0 17 21", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...props, children: [
578
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M8.66112 10.3544C6.14668 10.3544 4.32664 6.91073 4.32664 4.59206C4.32664 2.12213 6.27238 0.115723 8.66112 0.115723C11.0499 0.115723 12.9956 2.12514 12.9956 4.59206C12.9956 6.91398 11.1756 10.3544 8.66112 10.3544ZM8.66112 1.1542C6.82539 1.1542 5.33242 2.69703 5.33242 4.59185C5.33242 6.65402 6.94715 9.31553 8.66112 9.31553C10.3761 9.31553 11.9898 6.65387 11.9898 4.5925C11.9898 2.69668 10.4969 1.15398 8.66112 1.15398V1.1542Z", fill: "white" }),
579
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M6.79776 11.3345H10.5242C13.7802 11.3345 16.4302 14.0712 16.4302 17.4338C16.4302 19.0831 15.1297 20.423 13.5356 20.423H3.78923C2.19216 20.423 0.894689 19.0831 0.894689 17.4338C0.893706 14.0712 3.54156 11.3345 6.79776 11.3345ZM3.78819 19.3844H13.5337C14.5749 19.3844 15.4225 18.509 15.4225 17.4338C15.4225 14.6453 13.2253 12.3731 10.5223 12.3731H6.79862C4.0956 12.3731 1.89839 14.6423 1.89839 17.4338C1.89937 18.509 2.74701 19.3844 3.78816 19.3844H3.78819Z", fill: "white" })
580
+ ] });
581
+ var avatar_default = Avatar;
582
+ var BagIcon = (props) => /* @__PURE__ */ jsxRuntime.jsx("svg", { fill: "none", viewBox: "0 0 1019 1281", ...props, children: /* @__PURE__ */ jsxRuntime.jsx("path", { d: "m977.243 365.553h-175.407v-90.629c0-151.923-131.968-274.924-292.334-274.924-160.367 0-292.337 123.002-292.337 274.924v90.629h-175.4023c-23.3886 0-41.7627 17.051-41.7627 38.756v775.121c0 55.8 48.4456 100.76 108.582 100.76h801.84c60.138 0 108.578-44.96 108.578-100.76v-775.121c0-21.705-18.37-38.756-41.757-38.756zm-676.553-90.629c0-108.517 93.546-196.9408 208.812-196.9408 115.265 0 208.813 88.4218 208.813 196.9408v89.08h-417.625z", fill: "currentColor" }) });
583
+ var bag_icon_default = BagIcon;
584
+
585
+ // src/site/next/analytics/google-analytics.ts
586
+ var sendGAEvent = (name, options = {}) => {
587
+ window.gtag("event", name, options);
588
+ };
589
+ var DesktopBagPopup = ({
590
+ triggerClx = "",
591
+ popupClx = "",
592
+ trigger
593
+ }) => {
594
+ const cmmc = commerce.useCommerce();
595
+ const [bagOpen, setBagOpen] = React7.useState(false);
596
+ const router = navigation.useRouter();
597
+ React7.useEffect(() => {
598
+ if (bagOpen) {
599
+ sendGAEvent("view_cart", {
600
+ items: cmmc.cartItems.map((item) => ({
601
+ item_id: item.sku,
602
+ item_name: item.title,
603
+ item_category: item.familyId,
604
+ price: item.price,
605
+ quantity: item.quantity
606
+ })),
607
+ value: cmmc.cartTotal,
608
+ currency: "USD"
609
+ });
610
+ }
611
+ }, [bagOpen]);
612
+ return /* @__PURE__ */ jsxRuntime.jsxs(primitives.Popover, { open: bagOpen, onOpenChange: setBagOpen, children: [
613
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.PopoverTrigger, { className: triggerClx, children: trigger }),
614
+ /* @__PURE__ */ jsxRuntime.jsxs(primitives.PopoverContent, { sideOffset: 28, className: ui.cn("relative flex flex-col p-0 px-4 pb-4 pt-2", popupClx), children: [
615
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.PopoverClose, { className: "absolute z-above-content right-2 top-2 self-end hover:bg-level-3 text-muted hover:text-accent p-1 rounded-full", children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.X, { className: "w-5 h-5" }) }),
616
+ /* @__PURE__ */ jsxRuntime.jsxs(
617
+ commerce.CartPanel,
618
+ {
619
+ handleCheckout: () => {
620
+ router.push("/checkout");
621
+ },
622
+ className: "mt-4 mb-4 border-none py-0 px-4",
623
+ listClx: "rounded-sm pr-3",
624
+ scrollAfter: 5,
625
+ scrollHeightClx: "h-[70vh]",
626
+ itemClx: "mt-3",
627
+ totalClx: "sticky px-1 pr-2 -bottom-[1px] bg-level-1",
628
+ buttonClx: "max-w-[220px] flex-none",
629
+ children: [
630
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center flex-none justify-center ", children: [
631
+ /* @__PURE__ */ jsxRuntime.jsx(bag_icon_default, { className: "mr-2 relative w-6 h-7 fill-foreground " }),
632
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-heading text-foreground text-default", children: "Your Bag" })
633
+ ] }),
634
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-[1px] w-pr-80 bg-muted-3 mx-auto mt-1.5 flex-none" })
635
+ ]
636
+ }
637
+ )
638
+ ] })
639
+ ] });
640
+ };
641
+ var desktop_bag_popup_default = DesktopBagPopup;
642
+ var BagButton = mobxReactLite.observer(({
643
+ showIfEmpty = false,
644
+ animateOnHover = true,
645
+ animateOnQuantityChange = true,
646
+ size = "default",
647
+ className = "",
648
+ iconClx = "",
649
+ onClick
650
+ }) => {
651
+ const c = commerce.useCommerce();
652
+ const wiggleRef = React7.useRef(mobx.observable.box("none"));
653
+ React7.useEffect(() => (
654
+ // return IReactionDisposer
655
+ animateOnQuantityChange && c ? mobx.reaction(
656
+ () => c.cartQuantity,
657
+ (curr, prev) => {
658
+ if (curr > prev) {
659
+ mobx.runInAction(() => {
660
+ wiggleRef.current.set("more");
661
+ });
662
+ } else {
663
+ mobx.runInAction(() => {
664
+ wiggleRef.current.set("less");
665
+ });
666
+ }
667
+ setTimeout(() => {
668
+ mobx.runInAction(() => {
669
+ wiggleRef.current.set("none");
670
+ });
671
+ }, 800);
672
+ }
673
+ ) : void 0
674
+ ), []);
675
+ if (!c || !showIfEmpty && c.cartEmpty) {
676
+ return /* @__PURE__ */ jsxRuntime.jsx("div", {});
677
+ }
678
+ return /* @__PURE__ */ jsxRuntime.jsxs(
679
+ ui.Box,
680
+ {
681
+ "aria-label": "Bag",
682
+ role: "button",
683
+ onClick,
684
+ className: ui.cn(
685
+ primitives.buttonVariants({ variant: "ghost", size }),
686
+ "rounded-md",
687
+ // Overides the bg change on hover --not a "hover effect"
688
+ "relative group p-0 aspect-square hover:bg-background",
689
+ wiggleRef.current.get() === "more" ? "item-added-to-cart-animation" : wiggleRef.current.get() === "less" ? "item-removed-from-cart-animation" : "",
690
+ className
691
+ ),
692
+ children: [
693
+ !c.cartEmpty && /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: "z-above-content flex flex-col justify-center items-center absolute left-0 right-0 top-0 bottom-0 leading-none font-sans font-bold text-primary-fg text-xs ", children: [
694
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-[3px] w-full" }),
695
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: c.cartQuantity })
696
+ ] }),
697
+ /* @__PURE__ */ jsxRuntime.jsx(bag_icon_default, { width: "24", height: "28", className: ui.cn(
698
+ "relative -top-[3px] fill-primary",
699
+ iconClx,
700
+ animateOnHover ? "group-hover:fill-primary-hover group-hover:scale-105 transition-scale transition-duration-300" : ""
701
+ ), "aria-hidden": "true" })
702
+ ]
703
+ }
704
+ );
705
+ });
706
+ var bag_button_default = BagButton;
707
+ var DesktopNav = ({ links, isMenuOpened, setIsMenuOpen }) => {
708
+ React7__namespace.useEffect(() => {
709
+ const preventScroll = (e) => {
710
+ e.preventDefault();
711
+ };
712
+ if (isMenuOpened) {
713
+ window.addEventListener("wheel", preventScroll, { passive: false });
714
+ window.addEventListener("touchmove", preventScroll, { passive: false });
715
+ window.addEventListener("keydown", preventScrollKeys, { passive: false });
716
+ } else {
717
+ window.removeEventListener("wheel", preventScroll);
718
+ window.removeEventListener("touchmove", preventScroll);
719
+ window.removeEventListener("keydown", preventScrollKeys);
720
+ }
721
+ return () => {
722
+ window.removeEventListener("wheel", preventScroll);
723
+ window.removeEventListener("touchmove", preventScroll);
724
+ window.removeEventListener("keydown", preventScrollKeys);
725
+ };
726
+ }, [isMenuOpened]);
727
+ const preventScrollKeys = (e) => {
728
+ if (["ArrowUp", "ArrowDown", "ArrowLeft", "ArrowRight", " "].includes(e.key)) {
729
+ e.preventDefault();
730
+ }
731
+ };
732
+ const handleMouseEnter = React7__namespace.useCallback(() => {
733
+ setIsMenuOpen(true);
734
+ }, [setIsMenuOpen]);
735
+ const handleMouseLeave = React7__namespace.useCallback(() => {
736
+ setIsMenuOpen(false);
737
+ }, [setIsMenuOpen]);
738
+ const handleContentMouseMove = () => {
739
+ setIsMenuOpen(false);
740
+ };
741
+ const menuHiddenClass = !isMenuOpened ? "invisible" : "";
742
+ return links.length > 0 ? /* @__PURE__ */ jsxRuntime.jsx(primitives.NavigationMenu, { children: /* @__PURE__ */ jsxRuntime.jsx(primitives.NavigationMenuList, { children: links.map((el, index) => /* @__PURE__ */ jsxRuntime.jsx(primitives.NavigationMenuItem, { className: "!m-0", children: el.isAIMenu ? /* @__PURE__ */ jsxRuntime.jsx(Link2__default.default, { href: el.href, style: ui.css(ui.cn(primitives.navigationMenuTriggerStyle(), " text-muted-1 bg-transparent")), children: el.title }) : el.title === "Cards" ? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
743
+ /* @__PURE__ */ jsxRuntime.jsx(
744
+ primitives.NavigationMenuTrigger,
745
+ {
746
+ className: "text-muted-1 bg-transparent",
747
+ onMouseEnter: handleMouseEnter,
748
+ onFocus: handleMouseEnter,
749
+ onMouseLeave: handleMouseLeave,
750
+ onBlur: handleMouseLeave,
751
+ children: /* @__PURE__ */ jsxRuntime.jsx(Link2__default.default, { href: el.href, children: el.title })
752
+ }
753
+ ),
754
+ /* @__PURE__ */ jsxRuntime.jsx(
755
+ primitives.NavigationMenuContent,
756
+ {
757
+ className: ui.cn("fixed left-0 top-14 pt-6 w-screen h-full border-0 !backdrop-blur-3xl bg-transparent mt-0", menuHiddenClass),
758
+ onMouseEnter: handleMouseEnter,
759
+ onMouseLeave: handleMouseLeave,
760
+ children: /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center items-start", children: /* @__PURE__ */ jsxRuntime.jsx(
761
+ "div",
762
+ {
763
+ className: "grid xl:grid-cols-3 w-full justify-center max-w-[750px]",
764
+ onMouseLeave: handleContentMouseMove,
765
+ children: GroupChildMenu({ childs: el.childMenu, isCards: true })
766
+ }
767
+ ) })
768
+ }
769
+ )
770
+ ] }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
771
+ /* @__PURE__ */ jsxRuntime.jsx(
772
+ primitives.NavigationMenuTrigger,
773
+ {
774
+ className: "text-muted-1 bg-transparent",
775
+ onMouseEnter: handleMouseEnter,
776
+ onFocus: handleMouseEnter,
777
+ onMouseLeave: handleMouseLeave,
778
+ onBlur: handleMouseLeave,
779
+ children: el.href && el.href !== "" ? /* @__PURE__ */ jsxRuntime.jsx(Link2__default.default, { href: el.href, children: el.title }) : /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: el.title })
780
+ }
781
+ ),
782
+ /* @__PURE__ */ jsxRuntime.jsx(
783
+ primitives.NavigationMenuContent,
784
+ {
785
+ className: ui.cn("fixed left-0 top-14 pt-6 w-screen h-full border-0 !backdrop-blur-3xl bg-transparent mt-0", menuHiddenClass),
786
+ onMouseEnter: handleMouseEnter,
787
+ onMouseLeave: handleMouseLeave,
788
+ children: /* @__PURE__ */ jsxRuntime.jsx(
789
+ "div",
790
+ {
791
+ className: "flex flex-row w-full justify-center",
792
+ onMouseLeave: handleContentMouseMove,
793
+ children: GroupChildMenu({ childs: el.childMenu })
794
+ }
795
+ )
796
+ }
797
+ )
798
+ ] }) }, index)) }) }) : null;
799
+ };
800
+ var desktop_nav_menu_default = DesktopNav;
801
+ var ListItem = React7__namespace.forwardRef(({ className, title, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("li", { children: /* @__PURE__ */ jsxRuntime.jsx(primitives.NavigationMenuLink, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
802
+ ui.Box,
803
+ {
804
+ tag: "a",
805
+ ref,
806
+ className: ui.cn(
807
+ "block select-none space-y-1 rounded-md p-3 leading-none no-underline outline-none transition-colors hover:text-accent-foreground focus:bg-level-1 focus:text-accent-foreground text-muted-1 hover:text-primary hover:bg-transparent duration-1000 ease-in-out",
808
+ className
809
+ ),
810
+ ...props,
811
+ children: [
812
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-medium leading-none", children: title }),
813
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "line-clamp-3 text-sm leading-snug text-muted-1", children })
814
+ ]
815
+ }
816
+ ) }) }, title));
817
+ ListItem.displayName = "ListItem";
818
+ var GroupChildMenu = (params) => {
819
+ const { childs, isCards = false } = params;
820
+ if (!childs) {
821
+ return null;
822
+ }
823
+ const groupedChildMenus = childs.reduce((grouped, childLink) => {
824
+ if (childLink.groupName) {
825
+ grouped[childLink.groupName] = grouped[childLink.groupName] || [];
826
+ grouped[childLink.groupName].push(childLink);
827
+ }
828
+ return grouped;
829
+ }, {});
830
+ const getChildExtraClass = (index) => {
831
+ if (isCards && (index === 3 || index === 4)) {
832
+ return "xl:-mt-32";
833
+ }
834
+ return "";
835
+ };
836
+ return Object.entries(groupedChildMenus).map(([groupName, childLinks], index) => /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn("py-4 px-4 ", getChildExtraClass(index)), children: [
837
+ /* @__PURE__ */ jsxRuntime.jsx("h2", { className: "text-muted-1", children: groupName }),
838
+ /* @__PURE__ */ jsxRuntime.jsx("ul", { className: "w-[200px] gap-3 md:w-[250px] lg:w-[250px]", children: childLinks.map((link) => /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-start items-center", children: [
839
+ link.icon,
840
+ /* @__PURE__ */ jsxRuntime.jsx(ListItem, { title: link.title, href: link.href, className: "ml-[14px]", children: link.contents }, link.title)
841
+ ] }, link.title)) })
842
+ ] }, groupName));
843
+ };
844
+ var DesktopHeader = ({
845
+ links,
846
+ className = "",
847
+ noAuth = false,
848
+ noCommerce = false,
849
+ children,
850
+ logoVariant = "full"
851
+ }) => {
852
+ const [isMenuOpened, setIsMenuOpen] = React7__namespace.default.useState(false);
853
+ return /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "header", id: "DESKTOP_HEADER", className: ui.cn(
854
+ "bg-[rgba(0, 0, 0, 0.5)] !backdrop-blur-3xl fixed z-header top-0 left-0 right-0",
855
+ className,
856
+ isMenuOpened ? " h-full" : ""
857
+ ), children: /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: "flex flex-row h-[80px] items-center justify-between mx-[24px] w-full max-w-screen", children: [
858
+ /* @__PURE__ */ jsxRuntime.jsx(Logo, { size: logoVariant === "mark" ? "lg" : "md", href: "/", outerClx: "hidden lg:flex", variant: logoVariant }, "two"),
859
+ /* @__PURE__ */ jsxRuntime.jsx(Logo, { size: "sm", href: "/", outerClx: "hidden md:flex lg:hidden", variant: logoVariant }, "one"),
860
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex w-full gap-4 items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(desktop_nav_menu_default, { links, isMenuOpened, setIsMenuOpen }) }),
861
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center", children: [
862
+ !noCommerce && /* @__PURE__ */ jsxRuntime.jsx(desktop_bag_popup_default, { popupClx: "w-[340px]", trigger: /* @__PURE__ */ jsxRuntime.jsx(bag_button_default, { className: "text-primary -mr-[3px] lg:min-w-0" }) }),
863
+ !noAuth && /* @__PURE__ */ jsxRuntime.jsx(widget_default, {}),
864
+ children
865
+ ] })
866
+ ] }) });
867
+ };
868
+ var desktop_default = DesktopHeader;
869
+ var Login = ({
870
+ className,
871
+ onSuccess
872
+ }) => {
873
+ const { config } = react.useIam();
874
+ const [state] = React7.useState(() => crypto.randomUUID());
875
+ React7.useEffect(remember, []);
876
+ return /* @__PURE__ */ jsxRuntime.jsx(
877
+ react.Login,
878
+ {
879
+ serverUrl: config.serverUrl,
880
+ clientId: config.clientId,
881
+ redirectUri: config.redirectUri,
882
+ organization: config.organization,
883
+ state,
884
+ className: ui.cn("hanzo-iam-card", className),
885
+ onSuccess
886
+ }
887
+ );
888
+ };
889
+ var login_default = Login;
890
+ var MobileMenuToggleButton = ({
891
+ open: open2,
892
+ setOpen,
893
+ className = ""
894
+ }) => {
895
+ return /* @__PURE__ */ jsxRuntime.jsx(
896
+ primitives.Button,
897
+ {
898
+ variant: "ghost",
899
+ size: "default",
900
+ className: ui.cn("rounded-full", ui.cn("p-0 aspect-square hover:bg-background sm:hover:bg-level-1 active:scale-75", className)),
901
+ onClick: () => {
902
+ setOpen(!open2);
903
+ },
904
+ children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { width: 28, height: 28, style: ui.css(
905
+ "block h-full will-change-transform transition-transform transition-scale transition-duration-[1500] " + (open2 ? "rotate-[135deg] scale-110" : "rotate-none")
906
+ ) })
907
+ }
908
+ );
909
+ };
910
+ var mobile_menu_toggle_button_default = MobileMenuToggleButton;
911
+ var MobileBagDrawer = ({
912
+ open: open2,
913
+ setOpen,
914
+ handleCheckout,
915
+ className = ""
916
+ }) => {
917
+ return /* @__PURE__ */ jsxRuntime.jsx(primitives.Drawer, { open: open2, onOpenChange: setOpen, children: /* @__PURE__ */ jsxRuntime.jsx(primitives.DrawerContent, { className: ui.cn("rounded-t-xl mt-6 pb-12 h-auto", className), children: /* @__PURE__ */ jsxRuntime.jsxs(
918
+ commerce.CartPanel,
919
+ {
920
+ handleCheckout,
921
+ className: "mt-4 mb-4 border-none py-0 px-4 w-full ",
922
+ listClx: "rounded-sm pr-3",
923
+ scrollAfter: 5,
924
+ itemClx: "mt-2",
925
+ totalClx: "sticky px-1 pr-2 border rounded-sm -bottom-[1px] bg-background",
926
+ buttonClx: "max-w-[220px] flex-none",
927
+ children: [
928
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center flex-none justify-center ", children: [
929
+ /* @__PURE__ */ jsxRuntime.jsx(
930
+ bag_button_default,
931
+ {
932
+ animateOnHover: false,
933
+ showIfEmpty: true,
934
+ className: "mr-2 relative w-6 h-7",
935
+ iconClx: "fill-foreground "
936
+ }
937
+ ),
938
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-heading text-foreground text-default", children: "Your Bag" })
939
+ ] }),
940
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-[1px] w-pr-80 bg-muted-3 mx-auto mt-1.5 flex-none" })
941
+ ]
942
+ }
943
+ ) }) });
944
+ };
945
+ var mobile_bag_drawer_default = MobileBagDrawer;
946
+ var MobileNavMenuAI = ({ setMenuOpen }) => {
947
+ const [isOpen, setIsOpen] = React7.useState(false);
948
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
949
+ /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: "w-full text-2xl cursor-pointer", children: [
950
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-between", children: [
951
+ /* @__PURE__ */ jsxRuntime.jsx(Logo, { variant: "wordmark", size: "md", outerClx: "p-6 h-full" }),
952
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "span", className: ui.cn("grid", "block h-full aspect-square hover:bg-background sm:hover:bg-level-1 active:scale-75 text-foreground will-change-transform transition-transform transition-scale transition-duration-[1500] mt-6 mr-6 " + (!open ? "rotate-none" : "rotate-[135deg] scale-110")), children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { width: 28, height: 28, style: ui.css("w-full h-full"), onClick: () => setMenuOpen(false) }) })
953
+ ] }),
954
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "flex items-center gap-5 border-b border-[#3A3A3A] mt-4 rounded-full bg-muted-4 mx-6", children: /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: "text-muted-1 font-bold flex-1 flex justify-between min-h-12 items-center px-2", onClick: () => setIsOpen(true), children: [
955
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-base pl-2 font-light", children: "Ask AI a question" }),
956
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ArrowRight, {})
957
+ ] }) })
958
+ ] }),
959
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "fixed bottom-0 sm:bottom-16 right-0 w-full h-full sm:max-w-[400px] sm:max-h-[550px] sm:px-4 z-floating " + (isOpen ? "flex" : "hidden"), children: /* @__PURE__ */ jsxRuntime.jsxs(primitives.Card, { className: "flex flex-col h-full w-full", children: [
960
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex px-4 py-2 h-16 bg-level-0 items-center justify-between", children: [
961
+ /* @__PURE__ */ jsxRuntime.jsxs("h3", { className: "font-semibold font-heading", children: [
962
+ "LUX",
963
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "opacity-60", children: "AI" })
964
+ ] }),
965
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.Button, { onClick: () => setIsOpen(false), variant: "link", size: "icon", className: "w-fit sm:hidden", children: /* @__PURE__ */ jsxRuntime.jsx(lucideReact.Plus, { className: "w-6 h-6 flex-none mr-1 rotate-45 transition-transform" }) })
966
+ ] }),
967
+ /* @__PURE__ */ jsxRuntime.jsx("iframe", { src: "https://lux.chat/iframe", className: "h-full" })
968
+ ] }) })
969
+ ] });
970
+ };
971
+ var mobile_nav_menu_ai_default = MobileNavMenuAI;
972
+ var MobileNav = ({
973
+ currentAs,
974
+ links,
975
+ setMenuState,
976
+ className = "",
977
+ commonItemClx,
978
+ setChatbotOpen,
979
+ setMenuOpen
980
+ }) => links.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn("flex flex-col h-full", className), children: [
981
+ /* @__PURE__ */ jsxRuntime.jsx(mobile_nav_menu_ai_default, { setMenuOpen }),
982
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "flex flex-col flex-1 overflow-auto", children: /* @__PURE__ */ jsxRuntime.jsx(primitives.Accordion, { type: "single", collapsible: true, className: "w-full h-full", children: links.map((el, index) => {
983
+ const itemClx = commonItemClx ? typeof commonItemClx === "string" ? commonItemClx : commonItemClx(el) : "";
984
+ const variant = el.variant ?? "link";
985
+ let internalClx = variant === "link" ? " text-muted hover:text-foreground active:text-accent rounded-none" : " min-w-0";
986
+ if (currentAs && currentAs === el.href) {
987
+ internalClx += " pointer-events-none";
988
+ if (variant === "link") {
989
+ internalClx += " text-accent";
990
+ }
991
+ }
992
+ if (!el.isAIMenu) {
993
+ return /* @__PURE__ */ jsxRuntime.jsxs(primitives.AccordionItem, { value: el.title ? el.title : "", className: "!no-underline !border-0 px-6", children: [
994
+ /* @__PURE__ */ jsxRuntime.jsxs(primitives.AccordionTrigger, { className: ui.cn(internalClx, itemClx, ""), children: [
995
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: ui.cn(internalClx, itemClx, "flex items-center justify-between w-full pl-3 text-base font-normal leading-6"), children: el.title }),
996
+ /* @__PURE__ */ jsxRuntime.jsx(lucideReact.ChevronDown, { style: ui.css("w-4 h-4 mr-3") })
997
+ ] }),
998
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.AccordionContent, { children: el.childMenu && /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "px-4", children: Object.entries(el.childMenu.reduce((acc, child) => {
999
+ const group = acc[child.groupName ? child.groupName : ""] || [];
1000
+ group.push(child);
1001
+ acc[child.groupName ? child.groupName : ""] = group;
1002
+ return acc;
1003
+ }, {})).map(([groupName, children]) => /* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
1004
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "mt-4 mb-4 font-light text-muted-1", children: groupName }),
1005
+ children.map((child, childIndex) => /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "m-2", children: /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: "flex items-center py-1", children: [
1006
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: child.icon && child.icon }),
1007
+ /* @__PURE__ */ jsxRuntime.jsx(
1008
+ Link2__default.default,
1009
+ {
1010
+ href: child.href,
1011
+ target: child.newTab ? "_blank" : "_self",
1012
+ rel: "noopener noreferrer",
1013
+ children: /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "span", className: "text-muted-2 hover:underline ml-5 hover:text-primary", children: child.title })
1014
+ }
1015
+ )
1016
+ ] }) }, childIndex))
1017
+ ] }, groupName)) }) })
1018
+ ] }, index);
1019
+ }
1020
+ }) }) }),
1021
+ /* @__PURE__ */ jsxRuntime.jsx(widget_default, { className: "text-2xl z-10", handleLogin: () => {
1022
+ setMenuState("login");
1023
+ } })
1024
+ ] }) : null;
1025
+ var mobile_nav_menu_default = MobileNav;
1026
+ var bagClx = "mt-4 mb-8 border-none py-0 px-4 w-full sm:min-w-[350px] sm:max-w-[500px] sm:mx-auto min-h-[60vh] max-h-[70vh] sm:animate-in sm:zoom-in-90 ";
1027
+ var MobileHeader = ({
1028
+ currentAs,
1029
+ links,
1030
+ className = "",
1031
+ setChatbotOpen,
1032
+ noAuth = false,
1033
+ // :aa TODO
1034
+ noCommerce = false
1035
+ // :aa TODO
1036
+ }) => {
1037
+ const cmmc = commerce.useCommerce();
1038
+ const [menuState, setMenuState] = React7.useState("closed");
1039
+ const [bagDrawerOpen, setBagDrawerOpen] = React7.useState(false);
1040
+ const router = navigation.useRouter();
1041
+ React7.useEffect(() => {
1042
+ if (menuState === "bag" || bagDrawerOpen) {
1043
+ sendGAEvent("view_cart", {
1044
+ items: cmmc.cartItems.map((item) => ({
1045
+ item_id: item.sku,
1046
+ item_name: item.title,
1047
+ item_category: item.familyId,
1048
+ price: item.price,
1049
+ quantity: item.quantity
1050
+ })),
1051
+ value: cmmc.cartTotal,
1052
+ currency: "USD"
1053
+ });
1054
+ }
1055
+ }, [menuState, bagDrawerOpen]);
1056
+ const menuOpen = () => menuState !== "closed";
1057
+ const onLoginChanged = (token) => {
1058
+ if (!!token) {
1059
+ setMenuState("nav");
1060
+ }
1061
+ };
1062
+ const setMenuOpen = (open2) => {
1063
+ if (!open2) {
1064
+ setMenuState("closed");
1065
+ } else {
1066
+ setMenuState("nav");
1067
+ }
1068
+ };
1069
+ const handleCheckout = () => {
1070
+ setMenuState("closed");
1071
+ setBagDrawerOpen(false);
1072
+ router.push("/checkout");
1073
+ };
1074
+ const openBag = () => {
1075
+ if (menuOpen()) {
1076
+ setMenuState("bag");
1077
+ } else {
1078
+ setBagDrawerOpen(true);
1079
+ }
1080
+ };
1081
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1082
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "header", id: "MOBILE_HEADER", className: ui.cn(
1083
+ `bg-background fixed z-header top-0 left-0 w-full ${menuOpen() ? "hidden" : "block"}`,
1084
+ className
1085
+ ), children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "w-full h-full flex flex-row justify-between items-center font-bold pr-5", children: [
1086
+ /* @__PURE__ */ jsxRuntime.jsx(Logo, { href: "/", size: "md", outerClx: "p-6 h-full", variant: "wordmark" }),
1087
+ menuOpen() && /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "absolute left-0 top-0 bottom-0 right-0 pl-8 flex flex-row bg-background animate-mobile-menu-open", children: /* @__PURE__ */ jsxRuntime.jsx(avatar_default, { className: "self-center " }) }),
1088
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-0 flex-row", children: [
1089
+ /* @__PURE__ */ jsxRuntime.jsx(bag_button_default, { className: "text-primary -mr-[3px]", onClick: openBag }),
1090
+ /* @__PURE__ */ jsxRuntime.jsx(mobile_menu_toggle_button_default, { className: "text-foreground", open: menuOpen(), setOpen: setMenuOpen })
1091
+ ] })
1092
+ ] }) }),
1093
+ !noCommerce && /* @__PURE__ */ jsxRuntime.jsx(
1094
+ mobile_bag_drawer_default,
1095
+ {
1096
+ className: "",
1097
+ open: bagDrawerOpen,
1098
+ setOpen: setBagDrawerOpen,
1099
+ handleCheckout
1100
+ }
1101
+ ),
1102
+ menuOpen() && /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: "fixed top-0 left-0 w-full h-full flex flex-column bg-background z-below-header animate-mobile-menu-open", children: !!!noAuth && menuState === "login" ? /* @__PURE__ */ jsxRuntime.jsx(login_default, { onSuccess: onLoginChanged, className: "sm:animate-in sm:zoom-in-90 m-auto w-full max-w-sm px-8" }) : !!!noCommerce && menuState === "bag" ? /* @__PURE__ */ jsxRuntime.jsxs(
1103
+ commerce.CartPanel,
1104
+ {
1105
+ handleCheckout: () => {
1106
+ router.push("/checkout");
1107
+ },
1108
+ className: bagClx,
1109
+ listClx: "rounded-sm",
1110
+ scrollAfter: 6,
1111
+ scrollHeightClx: "h-[80vh]",
1112
+ itemClx: "mt-2",
1113
+ totalClx: "sticky px-1 pr-2 border rounded-sm -bottom-[1px] bg-level-1",
1114
+ buttonClx: "max-w-[220px] flex-none",
1115
+ children: [
1116
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-row items-center flex-none justify-center ", children: [
1117
+ /* @__PURE__ */ jsxRuntime.jsx(bag_icon_default, { className: "mr-2 relative w-4 h-5 fill-foreground " }),
1118
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "font-heading text-foreground text-default", children: "Your Bag" })
1119
+ ] }),
1120
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "h-[1px] w-pr-80 bg-muted-3 mx-auto mt-1.5 flex-none" })
1121
+ ]
1122
+ }
1123
+ ) : (
1124
+ /* menuState === 'nav' */
1125
+ /* @__PURE__ */ jsxRuntime.jsx(
1126
+ mobile_nav_menu_default,
1127
+ {
1128
+ currentAs,
1129
+ links,
1130
+ className: "sm:animate-in sm:zoom-in-90 w-full",
1131
+ commonItemClx: "px-0 text-xl h-16 justify-start ",
1132
+ setMenuState,
1133
+ setChatbotOpen,
1134
+ setMenuOpen
1135
+ }
1136
+ )
1137
+ ) })
1138
+ ] });
1139
+ };
1140
+ var mobile_default = MobileHeader;
1141
+ var Header = ({
1142
+ siteDef,
1143
+ className = "",
1144
+ children,
1145
+ logoVariant = "full"
1146
+ }) => {
1147
+ const [open2, setOpen] = React7__namespace.default.useState(false);
1148
+ const { nav: { common, featured }, currentAs, noAuth, commerce } = siteDef;
1149
+ const links = featured ? [...common, ...featured] : common;
1150
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1151
+ /* @__PURE__ */ jsxRuntime.jsx(
1152
+ desktop_default,
1153
+ {
1154
+ className: ui.cn(className, "hidden md:flex"),
1155
+ links,
1156
+ currentAs,
1157
+ noAuth,
1158
+ noCommerce: !!!commerce,
1159
+ logoVariant,
1160
+ children
1161
+ }
1162
+ ),
1163
+ /* @__PURE__ */ jsxRuntime.jsx(
1164
+ mobile_default,
1165
+ {
1166
+ className: ui.cn(className, "md:hidden"),
1167
+ links,
1168
+ currentAs,
1169
+ setChatbotOpen: setOpen,
1170
+ noAuth,
1171
+ noCommerce: !!!commerce
1172
+ }
1173
+ )
1174
+ ] });
1175
+ };
1176
+ var header_default = Header;
1177
+ var ORG = "lux";
1178
+ var CALLBACK = "/auth/callback";
1179
+ var configure = (app) => ({
1180
+ serverUrl: paths.BRAND_SERVER_URLS[ORG],
1181
+ organization: ORG,
1182
+ clientId: `${ORG}-${app}`,
1183
+ /* Read per render rather than at module load: one bundle serves the real
1184
+ host and any preview of it, and each must redeem its code back to itself. */
1185
+ redirectUri: (typeof window === "undefined" ? "" : window.location.origin) + CALLBACK
1186
+ });
1187
+ var Auth = ({ app, children }) => /* @__PURE__ */ jsxRuntime.jsx(react.IamProvider, { config: configure(app), children });
1188
+ var provider_default = Auth;
1189
+ var CommerceDrawer = mobxReactLite.observer(({
1190
+ children,
1191
+ handleHandleClicked,
1192
+ drawerClx = "",
1193
+ ...rest
1194
+ }) => {
1195
+ const drawer = useCommerceDrawer();
1196
+ return /* @__PURE__ */ jsxRuntime.jsx(
1197
+ primitives.Drawer,
1198
+ {
1199
+ open: drawer.open,
1200
+ onOpenChange: () => {
1201
+ },
1202
+ modal: drawer.modal,
1203
+ snapPoints: drawer.points,
1204
+ activeSnapPoint: drawer.activePoint,
1205
+ setActiveSnapPoint: drawer.onActivePointChanged.bind(drawer),
1206
+ fastDragSkipsToEnd: false,
1207
+ dragHandleOnly: true,
1208
+ handleHandleClicked,
1209
+ extendHandleDragRegion: false,
1210
+ ...rest,
1211
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
1212
+ primitives.DrawerContent,
1213
+ {
1214
+ defaultHandle: false,
1215
+ className: ui.cn(
1216
+ "border-0",
1217
+ drawer.isMobile ? "pt-5" : "pt-6",
1218
+ "w-full h-full"
1219
+ ),
1220
+ onOpenAutoFocus: (e) => {
1221
+ e.preventDefault();
1222
+ },
1223
+ children: [
1224
+ /* @__PURE__ */ jsxRuntime.jsx(
1225
+ primitives.DrawerHandle,
1226
+ {
1227
+ className: ui.cn(
1228
+ "absolute top-0 left-0 right-0 mx-auto z-10",
1229
+ "flex justify-center items-start",
1230
+ "border-t rounded-t-lg border-muted-3",
1231
+ drawer.isMobile ? "h-5 touch-pan-y" : "h-6"
1232
+ ),
1233
+ children: /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: ui.cn(
1234
+ // pseudo-handle
1235
+ "rounded-[3px] bg-level-3",
1236
+ drawer.isMobile ? "w-[155px] mt-[5px] h-1.5" : "w-[180px] mt-[3px] h-2.5 hover:bg-level-4",
1237
+ !drawer.isMobile ? "cursor-grab active:cursor-grabbing" : ""
1238
+ ) })
1239
+ }
1240
+ ),
1241
+ children
1242
+ ]
1243
+ }
1244
+ )
1245
+ }
1246
+ );
1247
+ });
1248
+ var shell_default = CommerceDrawer;
1249
+ var IconAndQuantity = mobxReactLite.observer(({
1250
+ animateOnQuantityChange = false,
1251
+ showArrow = true,
1252
+ showQuantity = true,
1253
+ clx = "",
1254
+ iconClx = "",
1255
+ digitClx = ""
1256
+ }) => {
1257
+ const cmmc = commerce.useCommerce();
1258
+ const wiggleRef = React7.useRef(mobx.observable.box("none"));
1259
+ React7.useEffect(() => (
1260
+ // return IReactionDisposer
1261
+ animateOnQuantityChange ? mobx.reaction(
1262
+ () => cmmc.cartQuantity,
1263
+ (curr, prev) => {
1264
+ if (curr > prev) {
1265
+ mobx.runInAction(() => {
1266
+ wiggleRef.current.set("more");
1267
+ });
1268
+ } else {
1269
+ mobx.runInAction(() => {
1270
+ wiggleRef.current.set("less");
1271
+ });
1272
+ }
1273
+ setTimeout(() => {
1274
+ mobx.runInAction(() => {
1275
+ wiggleRef.current.set("none");
1276
+ });
1277
+ }, 800);
1278
+ }
1279
+ ) : void 0
1280
+ ), []);
1281
+ return /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn("flex items-center justify-center", clx), children: [
1282
+ showQuantity && /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn(
1283
+ "relative flex items-center justify-center mr-1",
1284
+ wiggleRef.current.get() === "more" ? "item-added-to-cart-animation" : wiggleRef.current.get() === "less" ? "item-removed-from-cart-animation" : ""
1285
+ ), children: [
1286
+ cmmc.cartQuantity > 0 && /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { className: ui.cn(
1287
+ "z-above-content flex flex-col justify-center items-center",
1288
+ "absolute left-0 right-0 top-0 bottom-0",
1289
+ digitClx
1290
+ ), children: /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
1291
+ /* color: 'white' tailwind bug? ,*/
1292
+ fontSize: "11px",
1293
+ position: "relative",
1294
+ top: "1px"
1295
+ }, children: cmmc.cartQuantity }) }),
1296
+ /* @__PURE__ */ jsxRuntime.jsx(bag_icon_default, { width: "19", height: "24", className: ui.cn("relative -top-[3px] opacity-70", iconClx), "aria-hidden": "true" })
1297
+ ] }),
1298
+ showArrow && /* @__PURE__ */ jsxRuntime.jsx("span", { style: { fontSize: "17px" }, children: "\u203A" })
1299
+ ] });
1300
+ });
1301
+ var CheckoutButton = ({
1302
+ handleCheckout,
1303
+ variant = "primary",
1304
+ rounded = "lg",
1305
+ className,
1306
+ showQuantity = true,
1307
+ showArrow = true,
1308
+ animateOnQuantityChange = true,
1309
+ centerText = true,
1310
+ children,
1311
+ ...rest
1312
+ }) => {
1313
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1314
+ primitives.Button,
1315
+ {
1316
+ ...rest,
1317
+ onClick: handleCheckout,
1318
+ variant,
1319
+ className: ui.cn(`rounded-${rounded}`, ui.cn(
1320
+ "flex justify-between items-stretch group",
1321
+ showQuantity ? centerText ? "px-1.5" : "pl-2.5 pr-1.5" : "",
1322
+ className
1323
+ )),
1324
+ children: [
1325
+ centerText && // must scale this one too, as it effects layout
1326
+ /* @__PURE__ */ jsxRuntime.jsx(
1327
+ IconAndQuantity,
1328
+ {
1329
+ showArrow,
1330
+ showQuantity,
1331
+ clx: "invisible group-hover:scale-105 transition-scale transition-duration-300"
1332
+ }
1333
+ ),
1334
+ children ?? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex justify-center items-center", children: "Checkout" }),
1335
+ /* @__PURE__ */ jsxRuntime.jsx(
1336
+ IconAndQuantity,
1337
+ {
1338
+ clx: "group-hover:scale-105 transition-scale transition-duration-300",
1339
+ animateOnQuantityChange,
1340
+ showArrow,
1341
+ showQuantity,
1342
+ iconClx: "fill-background",
1343
+ digitClx: "text-foreground group-hover:opacity-80 leading-none font-bold font-sans"
1344
+ }
1345
+ )
1346
+ ]
1347
+ }
1348
+ );
1349
+ };
1350
+ var checkout_button_default = CheckoutButton;
1351
+ var CN = {
1352
+ // h: mind padding!
1353
+ mobile: { w: 36, h: 32 },
1354
+ sm: { w: 60, h: 34 },
1355
+ desktop: { w: 60, h: 32 }
1356
+ };
1357
+ var Info = ({
1358
+ item,
1359
+ clx = ""
1360
+ }) => {
1361
+ const cmmc = commerce.useCommerce();
1362
+ const family = cmmc.getFamilyById(item.familyId);
1363
+ let topLine = family.title;
1364
+ if (item.sku.startsWith("LXM-AG") || item.sku.startsWith("LXM-AU")) {
1365
+ topLine = family.parentTitle + ", " + family.title;
1366
+ }
1367
+ const optionLabel = item.optionLabelShort ?? item.optionLabel;
1368
+ const priceStr = commerce.formatCurrencyValue(item.price);
1369
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1370
+ /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn("sm:hidden flex flex-col !text-muted items-stretch whitespace-nowrap text-ellipsis ", clx), children: [
1371
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-left text-xs", children: topLine }),
1372
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-between text-xxs", children: [
1373
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: optionLabel }),
1374
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pl-2.5", children: priceStr })
1375
+ ] })
1376
+ ] }),
1377
+ /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn("hidden sm:flex !text-muted flex-col items-stretch whitespace-nowrap text-ellipsis text-xs", clx), children: [
1378
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-left", children: topLine }),
1379
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex justify-between", children: [
1380
+ /* @__PURE__ */ jsxRuntime.jsx("div", { children: optionLabel }),
1381
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "pl-2.5", children: priceStr })
1382
+ ] })
1383
+ ] })
1384
+ ] });
1385
+ };
1386
+ var PROMPT_COMMON_CLX = "block absolute top-0 left-0 bg-transparent duration-400 transition-opacity";
1387
+ var Micro = mobxReactLite.observer(({
1388
+ clx = "",
1389
+ handleCheckout,
1390
+ handleItemClicked
1391
+ }) => {
1392
+ const drawer = useCommerceDrawer();
1393
+ const cmmc = commerce.useCommerce();
1394
+ return /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn(
1395
+ drawer.showRecent ? "grid grid-cols-2" : "flex justify-center items-center ",
1396
+ drawer.showRecent ? drawer.isMobile ? "-mt-3" : "-mt-3" : "",
1397
+ "gap-2 md:gap-3 relative",
1398
+ clx
1399
+ ), children: [
1400
+ drawer.showRecent && /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: "flex flex-col items-stretch " + (drawer.isMobile ? "justify-start" : "group"), children: [
1401
+ /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { tag: "p", className: "relative text-muted text-xxs md:text-xs leading-none pl-1 self-start " + (drawer.isMobile ? "top-[3px]" : "top-[1px]"), children: [
1402
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "invisible", children: "scrictly for layout" }),
1403
+ drawer.isMobile ? /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "span", className: PROMPT_COMMON_CLX, children: "tap for options:" }) : /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1404
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "span", className: PROMPT_COMMON_CLX + " group-hover:opacity-0", children: "recent item:" }),
1405
+ /* @__PURE__ */ jsxRuntime.jsx(ui.Box, { tag: "span", className: PROMPT_COMMON_CLX + " opacity-0 group-hover:opacity-100", children: "view options:" })
1406
+ ] })
1407
+ ] }),
1408
+ /* @__PURE__ */ jsxRuntime.jsxs(
1409
+ primitives.Button,
1410
+ {
1411
+ variant: "ghost",
1412
+ className: ui.cn(`rounded-${drawer.isMobile ? "md" : "lg"}`, ui.cn(
1413
+ "box-content",
1414
+ "flex flex-row justify-between items-center gap-1",
1415
+ "-ml-1.5",
1416
+ "overflow-hidden ",
1417
+ "px-1 md:px-2 py-[2px]",
1418
+ "border border-transparent group-hover:border-muted-3",
1419
+ "group-hover:!bg-transparent",
1420
+ "!min-w-0"
1421
+ )),
1422
+ size: drawer.isMobile ? "sm" : "default",
1423
+ onClick: handleItemClicked,
1424
+ children: [
1425
+ cmmc.recentItem?.item.img && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1426
+ /* @__PURE__ */ jsxRuntime.jsx(ui.MediaStack, { media: { img: cmmc.recentItem.item.img }, constrainTo: CN.mobile, className: "sm:hidden grow-0 shrink-0" }),
1427
+ /* @__PURE__ */ jsxRuntime.jsx(ui.MediaStack, { media: { img: cmmc.recentItem.item.img }, constrainTo: CN.sm, className: "hidden sm:block md:hidden grow-0 shrink-0" }),
1428
+ /* @__PURE__ */ jsxRuntime.jsx(ui.MediaStack, { media: { img: cmmc.recentItem.item.img }, constrainTo: CN.desktop, className: "hidden md:block grow-0 shrink-0" })
1429
+ ] }),
1430
+ cmmc.recentItem && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "grow w-full", children: /* @__PURE__ */ jsxRuntime.jsx(Info, { item: cmmc.recentItem.item, clx: "w-full" }) })
1431
+ ]
1432
+ }
1433
+ )
1434
+ ] }),
1435
+ drawer.showCheckout && /* @__PURE__ */ jsxRuntime.jsxs(ui.Box, { className: ui.cn(
1436
+ "flex flex-col w-full",
1437
+ drawer.showRecent ? "items-stretch" : "items-center",
1438
+ drawer.isMobile ? "justify-start" : "justify-center"
1439
+ ), children: [
1440
+ drawer.showRecent && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "invisible text-muted text-xxs md:text-xs leading-none pl-1 self-start", children: "for layout" }),
1441
+ /* @__PURE__ */ jsxRuntime.jsx(
1442
+ checkout_button_default,
1443
+ {
1444
+ handleCheckout,
1445
+ variant: "primary",
1446
+ size: drawer.isMobile ? "sm" : "lg",
1447
+ className: ui.cn(`rounded-${drawer.isMobile ? "md" : "lg"}`, ui.cn(
1448
+ drawer.isMobile ? drawer.showRecent ? "pl-3.5 pr-2.5" : "min-w-[320px]" : drawer.showRecent ? "" : "w-[320px]",
1449
+ "text-sm font-semibold"
1450
+ )),
1451
+ centerText: drawer.isMobile ? !drawer.showRecent : true
1452
+ }
1453
+ )
1454
+ ] })
1455
+ ] });
1456
+ });
1457
+ var micro_default = Micro;
1458
+ var CommerceUIComponent = mobxReactLite.observer(() => {
1459
+ const buy = useSelectAndBuy();
1460
+ const drawer = useCommerceDrawer();
1461
+ const router = navigation.useRouter();
1462
+ const handleCheckout = () => {
1463
+ router.push("/checkout");
1464
+ };
1465
+ const handleHandleClicked = () => {
1466
+ if (drawer.state === "full") {
1467
+ buy.hideVariants();
1468
+ } else if (drawer.state === "micro") {
1469
+ buy.showRecentVariants();
1470
+ }
1471
+ };
1472
+ const handleItemClicked = () => {
1473
+ buy.showRecentVariants();
1474
+ };
1475
+ const handleCloseGesture = () => {
1476
+ if (drawer.state === "full") {
1477
+ buy.hideVariants();
1478
+ return true;
1479
+ }
1480
+ return false;
1481
+ };
1482
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1483
+ shell_default,
1484
+ {
1485
+ handleHandleClicked,
1486
+ handleCloseGesture,
1487
+ drawerClx: "flex flex-col",
1488
+ children: [
1489
+ drawer.state === "full" && /* The actual drawer is larger than the visible area (due to awkward
1490
+ vaul impl. So we have to ask the drawer for its currect snappoint
1491
+ and constrain layout to that.
1492
+ */
1493
+ /* @__PURE__ */ jsxRuntime.jsx("div", { style: {
1494
+ height: drawer.snapPointPx - 24
1495
+ /* fudge factor for handle area */
1496
+ }, children: /* @__PURE__ */ jsxRuntime.jsx(
1497
+ commerce.CarouselBuyCard,
1498
+ {
1499
+ skuPath: buy.currentSkuPath,
1500
+ checkoutButton: /* @__PURE__ */ jsxRuntime.jsx(
1501
+ checkout_button_default,
1502
+ {
1503
+ handleCheckout,
1504
+ className: "w-full min-w-[160px] sm:max-w-[320px]"
1505
+ }
1506
+ ),
1507
+ clx: "justify-between h-full pb-3 gap-8",
1508
+ addBtnClx: "w-full min-w-[160px] sm:max-w-[320px]",
1509
+ buttonsAreaClx: "grow-0 shrink-0 mt-0",
1510
+ selectorClx: "max-w-[475px] justify-between grow"
1511
+ }
1512
+ ) }),
1513
+ drawer.state === "micro" && /* @__PURE__ */ jsxRuntime.jsx(
1514
+ micro_default,
1515
+ {
1516
+ handleCheckout,
1517
+ handleItemClicked,
1518
+ clx: "w-full px-2 sm:w-[460px] sm:mx-auto md:w-[550px]"
1519
+ }
1520
+ )
1521
+ ]
1522
+ }
1523
+ );
1524
+ });
1525
+ var drawer_default = CommerceUIComponent;
1526
+ var Analytics = () => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1527
+ /* @__PURE__ */ jsxRuntime.jsx(FacebookPixel, {}),
1528
+ /* @__PURE__ */ jsxRuntime.jsx(google.GoogleAnalytics, { gaId: process.env.NEXT_PUBLIC_GA_MEASUREMENT_ID ?? "" })
1529
+ ] });
1530
+ var viewport = {
1531
+ themeColor: [
1532
+ { media: "(prefers-color-scheme: light)", color: "white" },
1533
+ { media: "(prefers-color-scheme: dark)", color: "black" }
1534
+ ]
1535
+ };
1536
+ var bodyClasses = get_app_router_font_classes_default();
1537
+ function RootLayout({
1538
+ showHeader = false,
1539
+ chatbot = false,
1540
+ siteDef,
1541
+ children
1542
+ }) {
1543
+ const Guts = () => /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1544
+ showHeader && /* @__PURE__ */ jsxRuntime.jsx(header_default, { siteDef }),
1545
+ children,
1546
+ chatbot && /* @__PURE__ */ jsxRuntime.jsx(
1547
+ chat_widget_default,
1548
+ {
1549
+ title: "LUX",
1550
+ subtitle: "AI",
1551
+ chatbotUrl: "https://lux.chat/iframe",
1552
+ suggestedQuestions: siteDef.chatbot?.suggestedQuestions ?? [],
1553
+ buttonClx: "hidden md:block"
1554
+ }
1555
+ )
1556
+ ] });
1557
+ return /* @__PURE__ */ jsxRuntime.jsxs("html", { lang: "en", suppressHydrationWarning: true, className: "hanzo-ui-dark-theme", style: { backgroundColor: "#000" }, children: [
1558
+ /* @__PURE__ */ jsxRuntime.jsxs("head", { children: [
1559
+ /* @__PURE__ */ jsxRuntime.jsx("base", { target: "_blank" }),
1560
+ /* @__PURE__ */ jsxRuntime.jsx(FacebookPixelHead, {})
1561
+ ] }),
1562
+ /* @__PURE__ */ jsxRuntime.jsx("body", { suppressHydrationWarning: true, className: bodyClasses, children: /* @__PURE__ */ jsxRuntime.jsxs(ui.Hanzo, { theme: "dark", children: [
1563
+ /* @__PURE__ */ jsxRuntime.jsx(Analytics, {}),
1564
+ /* @__PURE__ */ jsxRuntime.jsx(provider_default, { app: siteDef.app, children: siteDef?.commerce ? /* @__PURE__ */ jsxRuntime.jsx(commerce.CommerceProvider, { config: siteDef.commerce, children: /* @__PURE__ */ jsxRuntime.jsxs(CommerceUIProvider, { children: [
1565
+ /* @__PURE__ */ jsxRuntime.jsx(Guts, {}),
1566
+ /* @__PURE__ */ jsxRuntime.jsx(drawer_default, {})
1567
+ ] }) }) : /* @__PURE__ */ jsxRuntime.jsx(Guts, {}) }),
1568
+ /* @__PURE__ */ jsxRuntime.jsx(primitives.Toaster, { position: "top-center", duration: 3e3 })
1569
+ ] }) })
1570
+ ] });
1571
+ }
1572
+
1573
+ exports.RootLayout = RootLayout;
1574
+ exports.viewport = viewport;