tanstack_start_ts 1.0.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 (336) hide show
  1. package/.wrangler/deploy/config.json +1 -0
  2. package/bunfig.toml +6 -0
  3. package/components.json +22 -0
  4. package/config.json +0 -0
  5. package/dist/client/.assetsignore +2 -0
  6. package/dist/client/assets/ProductCard-DbIkJAE-.js +1 -0
  7. package/dist/client/assets/about-AskxOruL.js +1 -0
  8. package/dist/client/assets/admin-BZVcAQM3.js +1 -0
  9. package/dist/client/assets/admin.functions--RdVcuBx.js +1 -0
  10. package/dist/client/assets/admin.login-QgrF_9Fp.js +1 -0
  11. package/dist/client/assets/affiliate-disclosure-BIAsA-HO.js +1 -0
  12. package/dist/client/assets/categories-D0N418mK.js +1 -0
  13. package/dist/client/assets/category._slug-aCaQm14E.js +1 -0
  14. package/dist/client/assets/contact-PhvO-V15.js +1 -0
  15. package/dist/client/assets/faq-BsiHWPM8.js +1 -0
  16. package/dist/client/assets/hero-bg-BP2eVUIX.jpg +0 -0
  17. package/dist/client/assets/index-BU9rnkF3.js +1 -0
  18. package/dist/client/assets/index-BpJWZkva.js +1 -0
  19. package/dist/client/assets/index-vRX-zAyq.js +1 -0
  20. package/dist/client/assets/login-DteE0ZGp.js +1 -0
  21. package/dist/client/assets/logo-pSNfLJQk.png +0 -0
  22. package/dist/client/assets/privacy-B_Pu7040.js +1 -0
  23. package/dist/client/assets/product-links-BkZ41Gv3.js +1 -0
  24. package/dist/client/assets/product._id-BVUysCW-.js +1 -0
  25. package/dist/client/assets/products.functions-cGzRziKO.js +1 -0
  26. package/dist/client/assets/profile-CveRcKq2.js +1 -0
  27. package/dist/client/assets/reset-password-ySEjItX_.js +1 -0
  28. package/dist/client/assets/saved-CHtdQDJF.js +1 -0
  29. package/dist/client/assets/search-CXWfET1y.js +1 -0
  30. package/dist/client/assets/signup-CEx90iuV.js +1 -0
  31. package/dist/client/assets/styles-DrNJG0BO.css +1 -0
  32. package/dist/client/assets/terms-VqJ9kX9b.js +1 -0
  33. package/dist/client/assets/update-password-C-d0ix5e.js +1 -0
  34. package/dist/client/assets/vendor-aria-hidden-DvXkyWUv.js +1 -0
  35. package/dist/client/assets/vendor-class-variance-authority-5VPnzWs2.js +1 -0
  36. package/dist/client/assets/vendor-clsx-B-dksMZM.js +1 -0
  37. package/dist/client/assets/vendor-cookie-es-CS0aJGDi.js +1 -0
  38. package/dist/client/assets/vendor-detect-node-es-l0sNRNKZ.js +1 -0
  39. package/dist/client/assets/vendor-floating-ui-core-BlUy28sp.js +1 -0
  40. package/dist/client/assets/vendor-floating-ui-dom-BxK0hn2R.js +1 -0
  41. package/dist/client/assets/vendor-floating-ui-react-dom-Bas3975S.js +1 -0
  42. package/dist/client/assets/vendor-floating-ui-utils-BfYUAVcw.js +1 -0
  43. package/dist/client/assets/vendor-framer-motion-BMdL-cuX.js +9 -0
  44. package/dist/client/assets/vendor-get-nonce-C-Z93AgS.js +1 -0
  45. package/dist/client/assets/vendor-iceberg-js-tWD4K6Lg.js +1 -0
  46. package/dist/client/assets/vendor-lovable.dev-cloud-auth-js-VuzqtJVg.js +1 -0
  47. package/dist/client/assets/vendor-lucide-react-b5K2fehp.js +1 -0
  48. package/dist/client/assets/vendor-motion-dom-BETJamZt.js +1 -0
  49. package/dist/client/assets/vendor-motion-utils-BuWewJbj.js +1 -0
  50. package/dist/client/assets/vendor-radix-ui-primitive-Dc_FVRD7.js +1 -0
  51. package/dist/client/assets/vendor-radix-ui-react-accordion-C22Rgxe9.js +1 -0
  52. package/dist/client/assets/vendor-radix-ui-react-arrow-DMHj2mKI.js +1 -0
  53. package/dist/client/assets/vendor-radix-ui-react-avatar-CVPBkFXg.js +1 -0
  54. package/dist/client/assets/vendor-radix-ui-react-collapsible-BvM-4sKX.js +1 -0
  55. package/dist/client/assets/vendor-radix-ui-react-collection-D9KtqmHm.js +1 -0
  56. package/dist/client/assets/vendor-radix-ui-react-compose-refs-Cvq0AS8Z.js +1 -0
  57. package/dist/client/assets/vendor-radix-ui-react-context-CAqqn5Nx.js +1 -0
  58. package/dist/client/assets/vendor-radix-ui-react-dialog-DZ01vOLq.js +5 -0
  59. package/dist/client/assets/vendor-radix-ui-react-direction-DxZwNuei.js +1 -0
  60. package/dist/client/assets/vendor-radix-ui-react-dismissable-layer-Dqgrs55Y.js +1 -0
  61. package/dist/client/assets/vendor-radix-ui-react-dropdown-menu-0uzvrqkn.js +1 -0
  62. package/dist/client/assets/vendor-radix-ui-react-focus-guards-DgWoZ-fP.js +1 -0
  63. package/dist/client/assets/vendor-radix-ui-react-focus-scope-BLIu5QaL.js +1 -0
  64. package/dist/client/assets/vendor-radix-ui-react-id-bpga_rLa.js +1 -0
  65. package/dist/client/assets/vendor-radix-ui-react-menu-D0qf2r6_.js +1 -0
  66. package/dist/client/assets/vendor-radix-ui-react-popper-BafIylxU.js +1 -0
  67. package/dist/client/assets/vendor-radix-ui-react-portal-BnAsfNCS.js +1 -0
  68. package/dist/client/assets/vendor-radix-ui-react-presence-C-f3UKQ2.js +1 -0
  69. package/dist/client/assets/vendor-radix-ui-react-primitive-zTHwXNoz.js +1 -0
  70. package/dist/client/assets/vendor-radix-ui-react-roving-focus-jyJB8K2E.js +1 -0
  71. package/dist/client/assets/vendor-radix-ui-react-slot-6LXHJrHl.js +1 -0
  72. package/dist/client/assets/vendor-radix-ui-react-use-callback-ref-E91aPc6s.js +1 -0
  73. package/dist/client/assets/vendor-radix-ui-react-use-controllable-state-Ca3eMtxa.js +1 -0
  74. package/dist/client/assets/vendor-radix-ui-react-use-effect-event-CPeX4A3c.js +1 -0
  75. package/dist/client/assets/vendor-radix-ui-react-use-escape-keydown-7n3YsXFo.js +1 -0
  76. package/dist/client/assets/vendor-radix-ui-react-use-is-hydrated-C1PY1qNv.js +1 -0
  77. package/dist/client/assets/vendor-radix-ui-react-use-layout-effect-B3AcGWPy.js +1 -0
  78. package/dist/client/assets/vendor-radix-ui-react-use-size-CXS04sct.js +1 -0
  79. package/dist/client/assets/vendor-react-dom-BnNs-kzm.js +9 -0
  80. package/dist/client/assets/vendor-react-gJPiVnX5.js +1 -0
  81. package/dist/client/assets/vendor-react-remove-scroll-DHKl-IMP.js +4 -0
  82. package/dist/client/assets/vendor-react-remove-scroll-bar-CSjdInc2.js +38 -0
  83. package/dist/client/assets/vendor-react-style-singleton-BqHpkgXn.js +1 -0
  84. package/dist/client/assets/vendor-scheduler-7OC5HNn7.js +1 -0
  85. package/dist/client/assets/vendor-seroval-B_Fur-nl.js +3 -0
  86. package/dist/client/assets/vendor-seroval-plugins-CBHnPkZJ.js +1 -0
  87. package/dist/client/assets/vendor-sonner-71-LdGG1.js +1 -0
  88. package/dist/client/assets/vendor-supabase-auth-js-DWrN-bIx.js +18 -0
  89. package/dist/client/assets/vendor-supabase-functions-js-uY_V-TxC.js +1 -0
  90. package/dist/client/assets/vendor-supabase-phoenix-BzEf37Ve.js +2 -0
  91. package/dist/client/assets/vendor-supabase-postgrest-js-C4rBWbCx.js +4 -0
  92. package/dist/client/assets/vendor-supabase-realtime-js-D6BlOYKE.js +23 -0
  93. package/dist/client/assets/vendor-supabase-storage-js-BG98L3Zz.js +1 -0
  94. package/dist/client/assets/vendor-supabase-supabase-js-DCCzdwBJ.js +1 -0
  95. package/dist/client/assets/vendor-tailwind-merge-Ct12j0u0.js +1 -0
  96. package/dist/client/assets/vendor-tanstack-history-C617CaxG.js +1 -0
  97. package/dist/client/assets/vendor-tanstack-query-core-7wuJJ5ZL.js +1 -0
  98. package/dist/client/assets/vendor-tanstack-react-query-HImzo8sX.js +1 -0
  99. package/dist/client/assets/vendor-tanstack-react-router-sIZLK-LU.js +1 -0
  100. package/dist/client/assets/vendor-tanstack-react-start-client-GiYCfWmf.js +1 -0
  101. package/dist/client/assets/vendor-tanstack-react-store-EvTi3ahh.js +1 -0
  102. package/dist/client/assets/vendor-tanstack-router-core-Cr7bYUZv.js +1 -0
  103. package/dist/client/assets/vendor-tanstack-start-client-core-C-00BBOu.js +2 -0
  104. package/dist/client/assets/vendor-tanstack-start-fn-stubs-l0sNRNKZ.js +1 -0
  105. package/dist/client/assets/vendor-tanstack-store-BC7mA7pq.js +1 -0
  106. package/dist/client/assets/vendor-tslib-Du-meQkk.js +1 -0
  107. package/dist/client/assets/vendor-use-callback-ref-C_fIAtot.js +1 -0
  108. package/dist/client/assets/vendor-use-sidecar-Bh0DDN6h.js +1 -0
  109. package/dist/client/assets/vendor-use-sync-external-store-ZvKHXaIn.js +1 -0
  110. package/dist/client/assets/vendor-vercel-analytics-DwPM5BWs.js +1 -0
  111. package/dist/client/assets/vendor-zod-By9teAtI.js +1 -0
  112. package/dist/client/robots.txt +2 -0
  113. package/dist/server/.dev.vars +5 -0
  114. package/dist/server/.vite/manifest.json +2528 -0
  115. package/dist/server/assets/ProductCard-CUPXy5Eo.js +149 -0
  116. package/dist/server/assets/_tanstack-start-manifest_v-do7vTWFD.js +4 -0
  117. package/dist/server/assets/about-TfKQw0Ga.js +28 -0
  118. package/dist/server/assets/admin-DspfJOJk.js +578 -0
  119. package/dist/server/assets/admin.functions-B78ppWLR.js +645 -0
  120. package/dist/server/assets/admin.functions-BWlKBoTL.js +93 -0
  121. package/dist/server/assets/admin.login-CV7QfeA6.js +139 -0
  122. package/dist/server/assets/affiliate-disclosure-B1wI1cDb.js +86 -0
  123. package/dist/server/assets/auth-middleware-Cn49MidW.js +62 -0
  124. package/dist/server/assets/categories-Z7jnAYZP.js +108 -0
  125. package/dist/server/assets/category._slug-D0XY3FGK.js +112 -0
  126. package/dist/server/assets/contact-IzyONsXs.js +104 -0
  127. package/dist/server/assets/faq-aRhB_CR3.js +133 -0
  128. package/dist/server/assets/hero-bg-BP2eVUIX.jpg +0 -0
  129. package/dist/server/assets/index-BTPHbXw9.js +221 -0
  130. package/dist/server/assets/index-ByJkHkrU.js +30 -0
  131. package/dist/server/assets/login-Dvy5Dm0f.js +175 -0
  132. package/dist/server/assets/logo-pSNfLJQk.png +0 -0
  133. package/dist/server/assets/privacy-B6Wiez1P.js +93 -0
  134. package/dist/server/assets/product-links-CGYEPP56.js +16 -0
  135. package/dist/server/assets/product._id-BpRa-1z0.js +231 -0
  136. package/dist/server/assets/products.functions-DSlmibYN.js +209 -0
  137. package/dist/server/assets/products.functions-DlHkRiqi.js +24 -0
  138. package/dist/server/assets/profile-B0NWzVAZ.js +314 -0
  139. package/dist/server/assets/reset-password-CY-rmqMr.js +115 -0
  140. package/dist/server/assets/saved-7FA6Dbom.js +126 -0
  141. package/dist/server/assets/search-Yw5c_fZa.js +329 -0
  142. package/dist/server/assets/signup-UPzgZo4i.js +143 -0
  143. package/dist/server/assets/styles-DrNJG0BO.css +1 -0
  144. package/dist/server/assets/terms-CMnX95bP.js +89 -0
  145. package/dist/server/assets/update-password-Cr94ea8n.js +131 -0
  146. package/dist/server/assets/vendor-aria-hidden-DPa16MWu.js +122 -0
  147. package/dist/server/assets/vendor-class-variance-authority-0YxJPB9Y.js +44 -0
  148. package/dist/server/assets/vendor-cloudflare-unenv-preset-ya0VEFBz.js +250 -0
  149. package/dist/server/assets/vendor-clsx-DgYk2OaC.js +16 -0
  150. package/dist/server/assets/vendor-cookie-es-DAoofYiI.js +44 -0
  151. package/dist/server/assets/vendor-detect-node-es-l0sNRNKZ.js +1 -0
  152. package/dist/server/assets/vendor-floating-ui-core-3tkK0THV.js +726 -0
  153. package/dist/server/assets/vendor-floating-ui-dom-C-cPtgJv.js +626 -0
  154. package/dist/server/assets/vendor-floating-ui-react-dom-CRG6gBpH.js +319 -0
  155. package/dist/server/assets/vendor-floating-ui-utils-DmXANH-E.js +320 -0
  156. package/dist/server/assets/vendor-framer-motion-X4zAkX3J.js +1979 -0
  157. package/dist/server/assets/vendor-get-nonce-DiSj3EHl.js +9 -0
  158. package/dist/server/assets/vendor-h3-v2-CCobnLY5.js +287 -0
  159. package/dist/server/assets/vendor-iceberg-js-bHCkXyJn.js +534 -0
  160. package/dist/server/assets/vendor-isbot-CZ7WjwVs.js +21 -0
  161. package/dist/server/assets/vendor-lovable.dev-cloud-auth-js-BE03njZw.js +180 -0
  162. package/dist/server/assets/vendor-lucide-react-Ddew6HYb.js +458 -0
  163. package/dist/server/assets/vendor-motion-dom-D2MTwGIG.js +5983 -0
  164. package/dist/server/assets/vendor-motion-utils-LJlIFN6m.js +161 -0
  165. package/dist/server/assets/vendor-radix-ui-primitive-B-mNdDrH.js +11 -0
  166. package/dist/server/assets/vendor-radix-ui-react-accordion-1Izf6x00.js +308 -0
  167. package/dist/server/assets/vendor-radix-ui-react-arrow-B882lnFK.js +23 -0
  168. package/dist/server/assets/vendor-radix-ui-react-avatar-BVgZt2Ab.js +209 -0
  169. package/dist/server/assets/vendor-radix-ui-react-collapsible-DCBbMZiS.js +147 -0
  170. package/dist/server/assets/vendor-radix-ui-react-collection-BZ2srfgU.js +150 -0
  171. package/dist/server/assets/vendor-radix-ui-react-compose-refs-D3qsKVk1.js +39 -0
  172. package/dist/server/assets/vendor-radix-ui-react-context-BVoNDLue.js +78 -0
  173. package/dist/server/assets/vendor-radix-ui-react-dialog-DlxMaNYK.js +406 -0
  174. package/dist/server/assets/vendor-radix-ui-react-direction-Dt_WDL1t.js +9 -0
  175. package/dist/server/assets/vendor-radix-ui-react-dismissable-layer-CjsuPohV.js +210 -0
  176. package/dist/server/assets/vendor-radix-ui-react-dropdown-menu-DVxKumY8.js +263 -0
  177. package/dist/server/assets/vendor-radix-ui-react-focus-guards-D_6NoePE.js +29 -0
  178. package/dist/server/assets/vendor-radix-ui-react-focus-scope-DEIhTJJH.js +206 -0
  179. package/dist/server/assets/vendor-radix-ui-react-id-DFFpgh6m.js +14 -0
  180. package/dist/server/assets/vendor-radix-ui-react-menu-CiTMLwjT.js +893 -0
  181. package/dist/server/assets/vendor-radix-ui-react-popper-23Ye2Vyc.js +286 -0
  182. package/dist/server/assets/vendor-radix-ui-react-portal-CZCH5uPk.js +16 -0
  183. package/dist/server/assets/vendor-radix-ui-react-presence-CaAULlDU.js +128 -0
  184. package/dist/server/assets/vendor-radix-ui-react-primitive-BeOk3UYa.js +124 -0
  185. package/dist/server/assets/vendor-radix-ui-react-roving-focus-DES9GR8l.js +224 -0
  186. package/dist/server/assets/vendor-radix-ui-react-slot-DUhZbzoH.js +103 -0
  187. package/dist/server/assets/vendor-radix-ui-react-use-callback-ref-BynBgohw.js +11 -0
  188. package/dist/server/assets/vendor-radix-ui-react-use-controllable-state-C9KpT6DG.js +69 -0
  189. package/dist/server/assets/vendor-radix-ui-react-use-effect-event-gpNY2xjS.js +1 -0
  190. package/dist/server/assets/vendor-radix-ui-react-use-escape-keydown-CcYRQ2pp.js +17 -0
  191. package/dist/server/assets/vendor-radix-ui-react-use-is-hydrated-D_LcBPXY.js +15 -0
  192. package/dist/server/assets/vendor-radix-ui-react-use-layout-effect-1LNLXAjr.js +6 -0
  193. package/dist/server/assets/vendor-radix-ui-react-use-size-D6fiKJQo.js +39 -0
  194. package/dist/server/assets/vendor-react-DvBrY0qp.js +511 -0
  195. package/dist/server/assets/vendor-react-dom-yvMLPM0j.js +10484 -0
  196. package/dist/server/assets/vendor-react-remove-scroll-BNtiEvVN.js +328 -0
  197. package/dist/server/assets/vendor-react-remove-scroll-bar-hLqRASRk.js +82 -0
  198. package/dist/server/assets/vendor-react-style-singleton-BXjcXskB.js +69 -0
  199. package/dist/server/assets/vendor-rou3-3NaGPdI8.js +8 -0
  200. package/dist/server/assets/vendor-seroval-dJyC-Zhz.js +1775 -0
  201. package/dist/server/assets/vendor-seroval-plugins-Pq_U2meB.js +58 -0
  202. package/dist/server/assets/vendor-sonner-CqbjhsRh.js +1086 -0
  203. package/dist/server/assets/vendor-srvx-BA-baEX9.js +6 -0
  204. package/dist/server/assets/vendor-supabase-auth-js-D4xjVprw.js +7602 -0
  205. package/dist/server/assets/vendor-supabase-functions-js-sWy4UYn1.js +322 -0
  206. package/dist/server/assets/vendor-supabase-phoenix-Bw3Uh2Nn.js +1777 -0
  207. package/dist/server/assets/vendor-supabase-postgrest-js-AO-BXa7I.js +4938 -0
  208. package/dist/server/assets/vendor-supabase-realtime-js-BtdNgJbm.js +2111 -0
  209. package/dist/server/assets/vendor-supabase-storage-js-Dk_MrPYO.js +2679 -0
  210. package/dist/server/assets/vendor-supabase-supabase-js-D1EEtG3j.js +697 -0
  211. package/dist/server/assets/vendor-tailwind-merge-BHb_obmC.js +3255 -0
  212. package/dist/server/assets/vendor-tanstack-history-C4pKJmkt.js +204 -0
  213. package/dist/server/assets/vendor-tanstack-query-core-PwwTR5ld.js +2552 -0
  214. package/dist/server/assets/vendor-tanstack-react-query-hhHzXAK1.js +190 -0
  215. package/dist/server/assets/vendor-tanstack-react-router-XzqpA65A.js +1120 -0
  216. package/dist/server/assets/vendor-tanstack-react-start-RvWUpvat.js +37 -0
  217. package/dist/server/assets/vendor-tanstack-react-start-client-gpNY2xjS.js +1 -0
  218. package/dist/server/assets/vendor-tanstack-react-start-server-uj_Y9pEN.js +15 -0
  219. package/dist/server/assets/vendor-tanstack-react-store-gpNY2xjS.js +1 -0
  220. package/dist/server/assets/vendor-tanstack-router-core-6wywV3KN.js +4252 -0
  221. package/dist/server/assets/vendor-tanstack-start-client-core-DoOKV2pA.js +1741 -0
  222. package/dist/server/assets/vendor-tanstack-start-fn-stubs-l0sNRNKZ.js +1 -0
  223. package/dist/server/assets/vendor-tanstack-start-server-core-CsAstXv7.js +1421 -0
  224. package/dist/server/assets/vendor-tanstack-start-storage-context-DgH9hIJT.js +17 -0
  225. package/dist/server/assets/vendor-tanstack-store-l0sNRNKZ.js +1 -0
  226. package/dist/server/assets/vendor-tslib-_8ICaZ64.js +67 -0
  227. package/dist/server/assets/vendor-unenv-DUvF4YIF.js +544 -0
  228. package/dist/server/assets/vendor-use-callback-ref-DMFDRvmi.js +66 -0
  229. package/dist/server/assets/vendor-use-sidecar-DG1tHua4.js +106 -0
  230. package/dist/server/assets/vendor-use-sync-external-store-rZ8vi0It.js +64 -0
  231. package/dist/server/assets/vendor-vercel-analytics-oP8BDp0L.js +168 -0
  232. package/dist/server/assets/vendor-zod-BRyQdbC-.js +3580 -0
  233. package/dist/server/index.js +158 -0
  234. package/dist/server/wrangler.json +1 -0
  235. package/enable-powershell.ps1 +7 -0
  236. package/eslint.config.js +41 -0
  237. package/lint.bat +4 -0
  238. package/package.json +95 -0
  239. package/public/robots.txt +2 -0
  240. package/run-npm-build.cjs +20 -0
  241. package/run-npm-build.js +20 -0
  242. package/src/assets/hero-bg.jpg +0 -0
  243. package/src/assets/logo.png +0 -0
  244. package/src/components/scrollsy/Footer.tsx +68 -0
  245. package/src/components/scrollsy/LiveTicker.tsx +31 -0
  246. package/src/components/scrollsy/Logo.tsx +28 -0
  247. package/src/components/scrollsy/Nav.tsx +255 -0
  248. package/src/components/scrollsy/ProductCard.tsx +190 -0
  249. package/src/components/scrollsy/ProductFilters.tsx +226 -0
  250. package/src/components/scrollsy/SupportWidget.tsx +197 -0
  251. package/src/components/ui/accordion.tsx +51 -0
  252. package/src/components/ui/alert-dialog.tsx +115 -0
  253. package/src/components/ui/alert.tsx +49 -0
  254. package/src/components/ui/aspect-ratio.tsx +5 -0
  255. package/src/components/ui/avatar.tsx +47 -0
  256. package/src/components/ui/badge.tsx +32 -0
  257. package/src/components/ui/breadcrumb.tsx +101 -0
  258. package/src/components/ui/button.tsx +49 -0
  259. package/src/components/ui/calendar.tsx +177 -0
  260. package/src/components/ui/card.tsx +55 -0
  261. package/src/components/ui/carousel.tsx +240 -0
  262. package/src/components/ui/chart.tsx +331 -0
  263. package/src/components/ui/checkbox.tsx +26 -0
  264. package/src/components/ui/collapsible.tsx +11 -0
  265. package/src/components/ui/command.tsx +143 -0
  266. package/src/components/ui/context-menu.tsx +187 -0
  267. package/src/components/ui/dialog.tsx +104 -0
  268. package/src/components/ui/drawer.tsx +98 -0
  269. package/src/components/ui/dropdown-menu.tsx +188 -0
  270. package/src/components/ui/form.tsx +171 -0
  271. package/src/components/ui/hover-card.tsx +27 -0
  272. package/src/components/ui/input-otp.tsx +69 -0
  273. package/src/components/ui/input.tsx +22 -0
  274. package/src/components/ui/label.tsx +21 -0
  275. package/src/components/ui/menubar.tsx +229 -0
  276. package/src/components/ui/navigation-menu.tsx +120 -0
  277. package/src/components/ui/pagination.tsx +98 -0
  278. package/src/components/ui/popover.tsx +31 -0
  279. package/src/components/ui/progress.tsx +25 -0
  280. package/src/components/ui/radio-group.tsx +36 -0
  281. package/src/components/ui/resizable.tsx +37 -0
  282. package/src/components/ui/scroll-area.tsx +44 -0
  283. package/src/components/ui/select.tsx +152 -0
  284. package/src/components/ui/separator.tsx +24 -0
  285. package/src/components/ui/sheet.tsx +122 -0
  286. package/src/components/ui/sidebar.tsx +744 -0
  287. package/src/components/ui/skeleton.tsx +7 -0
  288. package/src/components/ui/slider.tsx +23 -0
  289. package/src/components/ui/sonner.tsx +23 -0
  290. package/src/components/ui/switch.tsx +27 -0
  291. package/src/components/ui/table.tsx +94 -0
  292. package/src/components/ui/tabs.tsx +53 -0
  293. package/src/components/ui/textarea.tsx +21 -0
  294. package/src/components/ui/toggle-group.tsx +57 -0
  295. package/src/components/ui/toggle.tsx +42 -0
  296. package/src/components/ui/tooltip.tsx +32 -0
  297. package/src/hooks/use-auth.ts +26 -0
  298. package/src/hooks/use-mobile.tsx +19 -0
  299. package/src/integrations/lovable/index.ts +41 -0
  300. package/src/lib/admin.functions.ts +564 -0
  301. package/src/lib/error-capture.ts +27 -0
  302. package/src/lib/error-page.ts +30 -0
  303. package/src/lib/product-links.ts +39 -0
  304. package/src/lib/products.functions.ts +101 -0
  305. package/src/lib/utils.ts +6 -0
  306. package/src/routeTree.gen.ts +480 -0
  307. package/src/router.tsx +16 -0
  308. package/src/routes/__root.tsx +177 -0
  309. package/src/routes/about.tsx +66 -0
  310. package/src/routes/admin.login.tsx +95 -0
  311. package/src/routes/admin.tsx +811 -0
  312. package/src/routes/affiliate-disclosure.tsx +35 -0
  313. package/src/routes/categories.tsx +57 -0
  314. package/src/routes/category.$slug.tsx +51 -0
  315. package/src/routes/contact.tsx +69 -0
  316. package/src/routes/faq.tsx +63 -0
  317. package/src/routes/index.tsx +269 -0
  318. package/src/routes/login.tsx +160 -0
  319. package/src/routes/privacy.tsx +39 -0
  320. package/src/routes/product.$id.tsx +212 -0
  321. package/src/routes/profile.tsx +393 -0
  322. package/src/routes/reset-password.tsx +71 -0
  323. package/src/routes/saved.tsx +83 -0
  324. package/src/routes/search.tsx +136 -0
  325. package/src/routes/signup.tsx +108 -0
  326. package/src/routes/sitemap[.]xml.ts +34 -0
  327. package/src/routes/terms.tsx +40 -0
  328. package/src/routes/update-password.tsx +91 -0
  329. package/src/server.ts +80 -0
  330. package/src/start.ts +24 -0
  331. package/src/styles.css +333 -0
  332. package/terminal-test-output.txt +1 -0
  333. package/tsconfig.json +27 -0
  334. package/vercel.json +26 -0
  335. package/vite.config.ts +38 -0
  336. package/wrangler.jsonc +7 -0
@@ -0,0 +1,726 @@
1
+ import { w as getSideAxis, b as getAlignmentAxis, v as getSide, g as getAlignment, e as evaluate, t as getPaddingObject, I as rectToClientRect, h as getAxisLength, c as clamp, r as getOppositePlacement, l as getExpandedPlacements, q as getOppositeAxisPlacements, d as getAlignmentSides, H as min, G as max, p as getOppositeAxis, K as sides } from "./vendor-floating-ui-utils-DmXANH-E.js";
2
+ function computeCoordsFromPlacement(_ref, placement, rtl) {
3
+ let {
4
+ reference,
5
+ floating
6
+ } = _ref;
7
+ const sideAxis = getSideAxis(placement);
8
+ const alignmentAxis = getAlignmentAxis(placement);
9
+ const alignLength = getAxisLength(alignmentAxis);
10
+ const side = getSide(placement);
11
+ const isVertical = sideAxis === "y";
12
+ const commonX = reference.x + reference.width / 2 - floating.width / 2;
13
+ const commonY = reference.y + reference.height / 2 - floating.height / 2;
14
+ const commonAlign = reference[alignLength] / 2 - floating[alignLength] / 2;
15
+ let coords;
16
+ switch (side) {
17
+ case "top":
18
+ coords = {
19
+ x: commonX,
20
+ y: reference.y - floating.height
21
+ };
22
+ break;
23
+ case "bottom":
24
+ coords = {
25
+ x: commonX,
26
+ y: reference.y + reference.height
27
+ };
28
+ break;
29
+ case "right":
30
+ coords = {
31
+ x: reference.x + reference.width,
32
+ y: commonY
33
+ };
34
+ break;
35
+ case "left":
36
+ coords = {
37
+ x: reference.x - floating.width,
38
+ y: commonY
39
+ };
40
+ break;
41
+ default:
42
+ coords = {
43
+ x: reference.x,
44
+ y: reference.y
45
+ };
46
+ }
47
+ switch (getAlignment(placement)) {
48
+ case "start":
49
+ coords[alignmentAxis] -= commonAlign * (rtl && isVertical ? -1 : 1);
50
+ break;
51
+ case "end":
52
+ coords[alignmentAxis] += commonAlign * (rtl && isVertical ? -1 : 1);
53
+ break;
54
+ }
55
+ return coords;
56
+ }
57
+ async function detectOverflow(state, options) {
58
+ var _await$platform$isEle;
59
+ if (options === void 0) {
60
+ options = {};
61
+ }
62
+ const {
63
+ x,
64
+ y,
65
+ platform,
66
+ rects,
67
+ elements,
68
+ strategy
69
+ } = state;
70
+ const {
71
+ boundary = "clippingAncestors",
72
+ rootBoundary = "viewport",
73
+ elementContext = "floating",
74
+ altBoundary = false,
75
+ padding = 0
76
+ } = evaluate(options, state);
77
+ const paddingObject = getPaddingObject(padding);
78
+ const altContext = elementContext === "floating" ? "reference" : "floating";
79
+ const element = elements[altBoundary ? altContext : elementContext];
80
+ const clippingClientRect = rectToClientRect(await platform.getClippingRect({
81
+ element: ((_await$platform$isEle = await (platform.isElement == null ? void 0 : platform.isElement(element))) != null ? _await$platform$isEle : true) ? element : element.contextElement || await (platform.getDocumentElement == null ? void 0 : platform.getDocumentElement(elements.floating)),
82
+ boundary,
83
+ rootBoundary,
84
+ strategy
85
+ }));
86
+ const rect = elementContext === "floating" ? {
87
+ x,
88
+ y,
89
+ width: rects.floating.width,
90
+ height: rects.floating.height
91
+ } : rects.reference;
92
+ const offsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(elements.floating));
93
+ const offsetScale = await (platform.isElement == null ? void 0 : platform.isElement(offsetParent)) ? await (platform.getScale == null ? void 0 : platform.getScale(offsetParent)) || {
94
+ x: 1,
95
+ y: 1
96
+ } : {
97
+ x: 1,
98
+ y: 1
99
+ };
100
+ const elementClientRect = rectToClientRect(platform.convertOffsetParentRelativeRectToViewportRelativeRect ? await platform.convertOffsetParentRelativeRectToViewportRelativeRect({
101
+ elements,
102
+ rect,
103
+ offsetParent,
104
+ strategy
105
+ }) : rect);
106
+ return {
107
+ top: (clippingClientRect.top - elementClientRect.top + paddingObject.top) / offsetScale.y,
108
+ bottom: (elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom) / offsetScale.y,
109
+ left: (clippingClientRect.left - elementClientRect.left + paddingObject.left) / offsetScale.x,
110
+ right: (elementClientRect.right - clippingClientRect.right + paddingObject.right) / offsetScale.x
111
+ };
112
+ }
113
+ const MAX_RESET_COUNT = 50;
114
+ const computePosition = async (reference, floating, config) => {
115
+ const {
116
+ placement = "bottom",
117
+ strategy = "absolute",
118
+ middleware = [],
119
+ platform
120
+ } = config;
121
+ const platformWithDetectOverflow = platform.detectOverflow ? platform : {
122
+ ...platform,
123
+ detectOverflow
124
+ };
125
+ const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(floating));
126
+ let rects = await platform.getElementRects({
127
+ reference,
128
+ floating,
129
+ strategy
130
+ });
131
+ let {
132
+ x,
133
+ y
134
+ } = computeCoordsFromPlacement(rects, placement, rtl);
135
+ let statefulPlacement = placement;
136
+ let resetCount = 0;
137
+ const middlewareData = {};
138
+ for (let i = 0; i < middleware.length; i++) {
139
+ const currentMiddleware = middleware[i];
140
+ if (!currentMiddleware) {
141
+ continue;
142
+ }
143
+ const {
144
+ name,
145
+ fn
146
+ } = currentMiddleware;
147
+ const {
148
+ x: nextX,
149
+ y: nextY,
150
+ data,
151
+ reset
152
+ } = await fn({
153
+ x,
154
+ y,
155
+ initialPlacement: placement,
156
+ placement: statefulPlacement,
157
+ strategy,
158
+ middlewareData,
159
+ rects,
160
+ platform: platformWithDetectOverflow,
161
+ elements: {
162
+ reference,
163
+ floating
164
+ }
165
+ });
166
+ x = nextX != null ? nextX : x;
167
+ y = nextY != null ? nextY : y;
168
+ middlewareData[name] = {
169
+ ...middlewareData[name],
170
+ ...data
171
+ };
172
+ if (reset && resetCount < MAX_RESET_COUNT) {
173
+ resetCount++;
174
+ if (typeof reset === "object") {
175
+ if (reset.placement) {
176
+ statefulPlacement = reset.placement;
177
+ }
178
+ if (reset.rects) {
179
+ rects = reset.rects === true ? await platform.getElementRects({
180
+ reference,
181
+ floating,
182
+ strategy
183
+ }) : reset.rects;
184
+ }
185
+ ({
186
+ x,
187
+ y
188
+ } = computeCoordsFromPlacement(rects, statefulPlacement, rtl));
189
+ }
190
+ i = -1;
191
+ }
192
+ }
193
+ return {
194
+ x,
195
+ y,
196
+ placement: statefulPlacement,
197
+ strategy,
198
+ middlewareData
199
+ };
200
+ };
201
+ const arrow = (options) => ({
202
+ name: "arrow",
203
+ options,
204
+ async fn(state) {
205
+ const {
206
+ x,
207
+ y,
208
+ placement,
209
+ rects,
210
+ platform,
211
+ elements,
212
+ middlewareData
213
+ } = state;
214
+ const {
215
+ element,
216
+ padding = 0
217
+ } = evaluate(options, state) || {};
218
+ if (element == null) {
219
+ return {};
220
+ }
221
+ const paddingObject = getPaddingObject(padding);
222
+ const coords = {
223
+ x,
224
+ y
225
+ };
226
+ const axis = getAlignmentAxis(placement);
227
+ const length = getAxisLength(axis);
228
+ const arrowDimensions = await platform.getDimensions(element);
229
+ const isYAxis = axis === "y";
230
+ const minProp = isYAxis ? "top" : "left";
231
+ const maxProp = isYAxis ? "bottom" : "right";
232
+ const clientProp = isYAxis ? "clientHeight" : "clientWidth";
233
+ const endDiff = rects.reference[length] + rects.reference[axis] - coords[axis] - rects.floating[length];
234
+ const startDiff = coords[axis] - rects.reference[axis];
235
+ const arrowOffsetParent = await (platform.getOffsetParent == null ? void 0 : platform.getOffsetParent(element));
236
+ let clientSize = arrowOffsetParent ? arrowOffsetParent[clientProp] : 0;
237
+ if (!clientSize || !await (platform.isElement == null ? void 0 : platform.isElement(arrowOffsetParent))) {
238
+ clientSize = elements.floating[clientProp] || rects.floating[length];
239
+ }
240
+ const centerToReference = endDiff / 2 - startDiff / 2;
241
+ const largestPossiblePadding = clientSize / 2 - arrowDimensions[length] / 2 - 1;
242
+ const minPadding = min(paddingObject[minProp], largestPossiblePadding);
243
+ const maxPadding = min(paddingObject[maxProp], largestPossiblePadding);
244
+ const min$1 = minPadding;
245
+ const max2 = clientSize - arrowDimensions[length] - maxPadding;
246
+ const center = clientSize / 2 - arrowDimensions[length] / 2 + centerToReference;
247
+ const offset2 = clamp(min$1, center, max2);
248
+ const shouldAddOffset = !middlewareData.arrow && getAlignment(placement) != null && center !== offset2 && rects.reference[length] / 2 - (center < min$1 ? minPadding : maxPadding) - arrowDimensions[length] / 2 < 0;
249
+ const alignmentOffset = shouldAddOffset ? center < min$1 ? center - min$1 : center - max2 : 0;
250
+ return {
251
+ [axis]: coords[axis] + alignmentOffset,
252
+ data: {
253
+ [axis]: offset2,
254
+ centerOffset: center - offset2 - alignmentOffset,
255
+ ...shouldAddOffset && {
256
+ alignmentOffset
257
+ }
258
+ },
259
+ reset: shouldAddOffset
260
+ };
261
+ }
262
+ });
263
+ const flip = function(options) {
264
+ if (options === void 0) {
265
+ options = {};
266
+ }
267
+ return {
268
+ name: "flip",
269
+ options,
270
+ async fn(state) {
271
+ var _middlewareData$arrow, _middlewareData$flip;
272
+ const {
273
+ placement,
274
+ middlewareData,
275
+ rects,
276
+ initialPlacement,
277
+ platform,
278
+ elements
279
+ } = state;
280
+ const {
281
+ mainAxis: checkMainAxis = true,
282
+ crossAxis: checkCrossAxis = true,
283
+ fallbackPlacements: specifiedFallbackPlacements,
284
+ fallbackStrategy = "bestFit",
285
+ fallbackAxisSideDirection = "none",
286
+ flipAlignment = true,
287
+ ...detectOverflowOptions
288
+ } = evaluate(options, state);
289
+ if ((_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
290
+ return {};
291
+ }
292
+ const side = getSide(placement);
293
+ const initialSideAxis = getSideAxis(initialPlacement);
294
+ const isBasePlacement = getSide(initialPlacement) === initialPlacement;
295
+ const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
296
+ const fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipAlignment ? [getOppositePlacement(initialPlacement)] : getExpandedPlacements(initialPlacement));
297
+ const hasFallbackAxisSideDirection = fallbackAxisSideDirection !== "none";
298
+ if (!specifiedFallbackPlacements && hasFallbackAxisSideDirection) {
299
+ fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement, flipAlignment, fallbackAxisSideDirection, rtl));
300
+ }
301
+ const placements = [initialPlacement, ...fallbackPlacements];
302
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
303
+ const overflows = [];
304
+ let overflowsData = ((_middlewareData$flip = middlewareData.flip) == null ? void 0 : _middlewareData$flip.overflows) || [];
305
+ if (checkMainAxis) {
306
+ overflows.push(overflow[side]);
307
+ }
308
+ if (checkCrossAxis) {
309
+ const sides2 = getAlignmentSides(placement, rects, rtl);
310
+ overflows.push(overflow[sides2[0]], overflow[sides2[1]]);
311
+ }
312
+ overflowsData = [...overflowsData, {
313
+ placement,
314
+ overflows
315
+ }];
316
+ if (!overflows.every((side2) => side2 <= 0)) {
317
+ var _middlewareData$flip2, _overflowsData$filter;
318
+ const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
319
+ const nextPlacement = placements[nextIndex];
320
+ if (nextPlacement) {
321
+ const ignoreCrossAxisOverflow = checkCrossAxis === "alignment" ? initialSideAxis !== getSideAxis(nextPlacement) : false;
322
+ if (!ignoreCrossAxisOverflow || // We leave the current main axis only if every placement on that axis
323
+ // overflows the main axis.
324
+ overflowsData.every((d) => getSideAxis(d.placement) === initialSideAxis ? d.overflows[0] > 0 : true)) {
325
+ return {
326
+ data: {
327
+ index: nextIndex,
328
+ overflows: overflowsData
329
+ },
330
+ reset: {
331
+ placement: nextPlacement
332
+ }
333
+ };
334
+ }
335
+ }
336
+ let resetPlacement = (_overflowsData$filter = overflowsData.filter((d) => d.overflows[0] <= 0).sort((a, b) => a.overflows[1] - b.overflows[1])[0]) == null ? void 0 : _overflowsData$filter.placement;
337
+ if (!resetPlacement) {
338
+ switch (fallbackStrategy) {
339
+ case "bestFit": {
340
+ var _overflowsData$filter2;
341
+ const placement2 = (_overflowsData$filter2 = overflowsData.filter((d) => {
342
+ if (hasFallbackAxisSideDirection) {
343
+ const currentSideAxis = getSideAxis(d.placement);
344
+ return currentSideAxis === initialSideAxis || // Create a bias to the `y` side axis due to horizontal
345
+ // reading directions favoring greater width.
346
+ currentSideAxis === "y";
347
+ }
348
+ return true;
349
+ }).map((d) => [d.placement, d.overflows.filter((overflow2) => overflow2 > 0).reduce((acc, overflow2) => acc + overflow2, 0)]).sort((a, b) => a[1] - b[1])[0]) == null ? void 0 : _overflowsData$filter2[0];
350
+ if (placement2) {
351
+ resetPlacement = placement2;
352
+ }
353
+ break;
354
+ }
355
+ case "initialPlacement":
356
+ resetPlacement = initialPlacement;
357
+ break;
358
+ }
359
+ }
360
+ if (placement !== resetPlacement) {
361
+ return {
362
+ reset: {
363
+ placement: resetPlacement
364
+ }
365
+ };
366
+ }
367
+ }
368
+ return {};
369
+ }
370
+ };
371
+ };
372
+ function getSideOffsets(overflow, rect) {
373
+ return {
374
+ top: overflow.top - rect.height,
375
+ right: overflow.right - rect.width,
376
+ bottom: overflow.bottom - rect.height,
377
+ left: overflow.left - rect.width
378
+ };
379
+ }
380
+ function isAnySideFullyClipped(overflow) {
381
+ return sides.some((side) => overflow[side] >= 0);
382
+ }
383
+ const hide = function(options) {
384
+ if (options === void 0) {
385
+ options = {};
386
+ }
387
+ return {
388
+ name: "hide",
389
+ options,
390
+ async fn(state) {
391
+ const {
392
+ rects,
393
+ platform
394
+ } = state;
395
+ const {
396
+ strategy = "referenceHidden",
397
+ ...detectOverflowOptions
398
+ } = evaluate(options, state);
399
+ switch (strategy) {
400
+ case "referenceHidden": {
401
+ const overflow = await platform.detectOverflow(state, {
402
+ ...detectOverflowOptions,
403
+ elementContext: "reference"
404
+ });
405
+ const offsets = getSideOffsets(overflow, rects.reference);
406
+ return {
407
+ data: {
408
+ referenceHiddenOffsets: offsets,
409
+ referenceHidden: isAnySideFullyClipped(offsets)
410
+ }
411
+ };
412
+ }
413
+ case "escaped": {
414
+ const overflow = await platform.detectOverflow(state, {
415
+ ...detectOverflowOptions,
416
+ altBoundary: true
417
+ });
418
+ const offsets = getSideOffsets(overflow, rects.floating);
419
+ return {
420
+ data: {
421
+ escapedOffsets: offsets,
422
+ escaped: isAnySideFullyClipped(offsets)
423
+ }
424
+ };
425
+ }
426
+ default: {
427
+ return {};
428
+ }
429
+ }
430
+ }
431
+ };
432
+ };
433
+ const originSides = /* @__PURE__ */ new Set(["left", "top"]);
434
+ async function convertValueToCoords(state, options) {
435
+ const {
436
+ placement,
437
+ platform,
438
+ elements
439
+ } = state;
440
+ const rtl = await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating));
441
+ const side = getSide(placement);
442
+ const alignment = getAlignment(placement);
443
+ const isVertical = getSideAxis(placement) === "y";
444
+ const mainAxisMulti = originSides.has(side) ? -1 : 1;
445
+ const crossAxisMulti = rtl && isVertical ? -1 : 1;
446
+ const rawValue = evaluate(options, state);
447
+ let {
448
+ mainAxis,
449
+ crossAxis,
450
+ alignmentAxis
451
+ } = typeof rawValue === "number" ? {
452
+ mainAxis: rawValue,
453
+ crossAxis: 0,
454
+ alignmentAxis: null
455
+ } : {
456
+ mainAxis: rawValue.mainAxis || 0,
457
+ crossAxis: rawValue.crossAxis || 0,
458
+ alignmentAxis: rawValue.alignmentAxis
459
+ };
460
+ if (alignment && typeof alignmentAxis === "number") {
461
+ crossAxis = alignment === "end" ? alignmentAxis * -1 : alignmentAxis;
462
+ }
463
+ return isVertical ? {
464
+ x: crossAxis * crossAxisMulti,
465
+ y: mainAxis * mainAxisMulti
466
+ } : {
467
+ x: mainAxis * mainAxisMulti,
468
+ y: crossAxis * crossAxisMulti
469
+ };
470
+ }
471
+ const offset = function(options) {
472
+ if (options === void 0) {
473
+ options = 0;
474
+ }
475
+ return {
476
+ name: "offset",
477
+ options,
478
+ async fn(state) {
479
+ var _middlewareData$offse, _middlewareData$arrow;
480
+ const {
481
+ x,
482
+ y,
483
+ placement,
484
+ middlewareData
485
+ } = state;
486
+ const diffCoords = await convertValueToCoords(state, options);
487
+ if (placement === ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse.placement) && (_middlewareData$arrow = middlewareData.arrow) != null && _middlewareData$arrow.alignmentOffset) {
488
+ return {};
489
+ }
490
+ return {
491
+ x: x + diffCoords.x,
492
+ y: y + diffCoords.y,
493
+ data: {
494
+ ...diffCoords,
495
+ placement
496
+ }
497
+ };
498
+ }
499
+ };
500
+ };
501
+ const shift = function(options) {
502
+ if (options === void 0) {
503
+ options = {};
504
+ }
505
+ return {
506
+ name: "shift",
507
+ options,
508
+ async fn(state) {
509
+ const {
510
+ x,
511
+ y,
512
+ placement,
513
+ platform
514
+ } = state;
515
+ const {
516
+ mainAxis: checkMainAxis = true,
517
+ crossAxis: checkCrossAxis = false,
518
+ limiter = {
519
+ fn: (_ref) => {
520
+ let {
521
+ x: x2,
522
+ y: y2
523
+ } = _ref;
524
+ return {
525
+ x: x2,
526
+ y: y2
527
+ };
528
+ }
529
+ },
530
+ ...detectOverflowOptions
531
+ } = evaluate(options, state);
532
+ const coords = {
533
+ x,
534
+ y
535
+ };
536
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
537
+ const crossAxis = getSideAxis(getSide(placement));
538
+ const mainAxis = getOppositeAxis(crossAxis);
539
+ let mainAxisCoord = coords[mainAxis];
540
+ let crossAxisCoord = coords[crossAxis];
541
+ if (checkMainAxis) {
542
+ const minSide = mainAxis === "y" ? "top" : "left";
543
+ const maxSide = mainAxis === "y" ? "bottom" : "right";
544
+ const min2 = mainAxisCoord + overflow[minSide];
545
+ const max2 = mainAxisCoord - overflow[maxSide];
546
+ mainAxisCoord = clamp(min2, mainAxisCoord, max2);
547
+ }
548
+ if (checkCrossAxis) {
549
+ const minSide = crossAxis === "y" ? "top" : "left";
550
+ const maxSide = crossAxis === "y" ? "bottom" : "right";
551
+ const min2 = crossAxisCoord + overflow[minSide];
552
+ const max2 = crossAxisCoord - overflow[maxSide];
553
+ crossAxisCoord = clamp(min2, crossAxisCoord, max2);
554
+ }
555
+ const limitedCoords = limiter.fn({
556
+ ...state,
557
+ [mainAxis]: mainAxisCoord,
558
+ [crossAxis]: crossAxisCoord
559
+ });
560
+ return {
561
+ ...limitedCoords,
562
+ data: {
563
+ x: limitedCoords.x - x,
564
+ y: limitedCoords.y - y,
565
+ enabled: {
566
+ [mainAxis]: checkMainAxis,
567
+ [crossAxis]: checkCrossAxis
568
+ }
569
+ }
570
+ };
571
+ }
572
+ };
573
+ };
574
+ const limitShift = function(options) {
575
+ if (options === void 0) {
576
+ options = {};
577
+ }
578
+ return {
579
+ options,
580
+ fn(state) {
581
+ const {
582
+ x,
583
+ y,
584
+ placement,
585
+ rects,
586
+ middlewareData
587
+ } = state;
588
+ const {
589
+ offset: offset2 = 0,
590
+ mainAxis: checkMainAxis = true,
591
+ crossAxis: checkCrossAxis = true
592
+ } = evaluate(options, state);
593
+ const coords = {
594
+ x,
595
+ y
596
+ };
597
+ const crossAxis = getSideAxis(placement);
598
+ const mainAxis = getOppositeAxis(crossAxis);
599
+ let mainAxisCoord = coords[mainAxis];
600
+ let crossAxisCoord = coords[crossAxis];
601
+ const rawOffset = evaluate(offset2, state);
602
+ const computedOffset = typeof rawOffset === "number" ? {
603
+ mainAxis: rawOffset,
604
+ crossAxis: 0
605
+ } : {
606
+ mainAxis: 0,
607
+ crossAxis: 0,
608
+ ...rawOffset
609
+ };
610
+ if (checkMainAxis) {
611
+ const len = mainAxis === "y" ? "height" : "width";
612
+ const limitMin = rects.reference[mainAxis] - rects.floating[len] + computedOffset.mainAxis;
613
+ const limitMax = rects.reference[mainAxis] + rects.reference[len] - computedOffset.mainAxis;
614
+ if (mainAxisCoord < limitMin) {
615
+ mainAxisCoord = limitMin;
616
+ } else if (mainAxisCoord > limitMax) {
617
+ mainAxisCoord = limitMax;
618
+ }
619
+ }
620
+ if (checkCrossAxis) {
621
+ var _middlewareData$offse, _middlewareData$offse2;
622
+ const len = mainAxis === "y" ? "width" : "height";
623
+ const isOriginSide = originSides.has(getSide(placement));
624
+ const limitMin = rects.reference[crossAxis] - rects.floating[len] + (isOriginSide ? ((_middlewareData$offse = middlewareData.offset) == null ? void 0 : _middlewareData$offse[crossAxis]) || 0 : 0) + (isOriginSide ? 0 : computedOffset.crossAxis);
625
+ const limitMax = rects.reference[crossAxis] + rects.reference[len] + (isOriginSide ? 0 : ((_middlewareData$offse2 = middlewareData.offset) == null ? void 0 : _middlewareData$offse2[crossAxis]) || 0) - (isOriginSide ? computedOffset.crossAxis : 0);
626
+ if (crossAxisCoord < limitMin) {
627
+ crossAxisCoord = limitMin;
628
+ } else if (crossAxisCoord > limitMax) {
629
+ crossAxisCoord = limitMax;
630
+ }
631
+ }
632
+ return {
633
+ [mainAxis]: mainAxisCoord,
634
+ [crossAxis]: crossAxisCoord
635
+ };
636
+ }
637
+ };
638
+ };
639
+ const size = function(options) {
640
+ if (options === void 0) {
641
+ options = {};
642
+ }
643
+ return {
644
+ name: "size",
645
+ options,
646
+ async fn(state) {
647
+ var _state$middlewareData, _state$middlewareData2;
648
+ const {
649
+ placement,
650
+ rects,
651
+ platform,
652
+ elements
653
+ } = state;
654
+ const {
655
+ apply = () => {
656
+ },
657
+ ...detectOverflowOptions
658
+ } = evaluate(options, state);
659
+ const overflow = await platform.detectOverflow(state, detectOverflowOptions);
660
+ const side = getSide(placement);
661
+ const alignment = getAlignment(placement);
662
+ const isYAxis = getSideAxis(placement) === "y";
663
+ const {
664
+ width,
665
+ height
666
+ } = rects.floating;
667
+ let heightSide;
668
+ let widthSide;
669
+ if (side === "top" || side === "bottom") {
670
+ heightSide = side;
671
+ widthSide = alignment === (await (platform.isRTL == null ? void 0 : platform.isRTL(elements.floating)) ? "start" : "end") ? "left" : "right";
672
+ } else {
673
+ widthSide = side;
674
+ heightSide = alignment === "end" ? "top" : "bottom";
675
+ }
676
+ const maximumClippingHeight = height - overflow.top - overflow.bottom;
677
+ const maximumClippingWidth = width - overflow.left - overflow.right;
678
+ const overflowAvailableHeight = min(height - overflow[heightSide], maximumClippingHeight);
679
+ const overflowAvailableWidth = min(width - overflow[widthSide], maximumClippingWidth);
680
+ const noShift = !state.middlewareData.shift;
681
+ let availableHeight = overflowAvailableHeight;
682
+ let availableWidth = overflowAvailableWidth;
683
+ if ((_state$middlewareData = state.middlewareData.shift) != null && _state$middlewareData.enabled.x) {
684
+ availableWidth = maximumClippingWidth;
685
+ }
686
+ if ((_state$middlewareData2 = state.middlewareData.shift) != null && _state$middlewareData2.enabled.y) {
687
+ availableHeight = maximumClippingHeight;
688
+ }
689
+ if (noShift && !alignment) {
690
+ const xMin = max(overflow.left, 0);
691
+ const xMax = max(overflow.right, 0);
692
+ const yMin = max(overflow.top, 0);
693
+ const yMax = max(overflow.bottom, 0);
694
+ if (isYAxis) {
695
+ availableWidth = width - 2 * (xMin !== 0 || xMax !== 0 ? xMin + xMax : max(overflow.left, overflow.right));
696
+ } else {
697
+ availableHeight = height - 2 * (yMin !== 0 || yMax !== 0 ? yMin + yMax : max(overflow.top, overflow.bottom));
698
+ }
699
+ }
700
+ await apply({
701
+ ...state,
702
+ availableWidth,
703
+ availableHeight
704
+ });
705
+ const nextDimensions = await platform.getDimensions(elements.floating);
706
+ if (width !== nextDimensions.width || height !== nextDimensions.height) {
707
+ return {
708
+ reset: {
709
+ rects: true
710
+ }
711
+ };
712
+ }
713
+ return {};
714
+ }
715
+ };
716
+ };
717
+ export {
718
+ arrow as a,
719
+ size as b,
720
+ computePosition as c,
721
+ flip as f,
722
+ hide as h,
723
+ limitShift as l,
724
+ offset as o,
725
+ shift as s
726
+ };